π¬ μ΅λν 맀λλ½κ² ν΄μνκ³ μ λ Έλ ₯νμ§λ§ μ΄μν λ¬Έμ₯μ΄ μμ μ μμ΅λλ€. νΌλλ°±μ μΈμ λ νμμ λλ€ π
μλ³Έ κΈ μ£Όμ : https://towardsdatascience.com/foundations-of-nlp-explained-visually-beam-search-how-it-works-1586b9849a24
NLP λͺ¨λΈμ Output μμ± λ°©λ²
κΈ°κ³ λ²μ μμ μ μμ£Ό μ¬μ©λλ sequence-to-sequence λͺ¨λΈμ μλ‘ λ€μ΄λ³΄μ.
μλ₯Ό λ€μ΄, μμ΄λ₯Ό μ€νμΈμ΄λ‘ λ²μνλ λ° μ΄ λͺ¨λΈμ΄ μ¬μ©λλ€λ©΄ λͺ¨λΈμ μμ€ μΈμ΄(μμ΄)λ₯Ό μ λ ₯μΌλ‘ λ°μ νκ² μΈμ΄μμ μμ€ μΈμ΄μ μλ―Έκ° κ°μ λ¬Έμ₯μ μΆλ ₯ν κ²μ΄λ€.
ν μ€νΈλ λ¨μ΄(λλ κΈμ)μ μνμ€μ΄κ³ , NLP λͺ¨λΈμ μμ€ μΈμ΄μ νκ² μΈμ΄μ λνλ λͺ¨λ λ¨μ΄λ‘ μ΄λ£¨μ΄μ§ vocabularyλ₯Ό μμ±νλ€.
λͺ¨λΈμ μμ€ λ¬Έμ₯μ μ λ ₯μΌλ‘ λ°μ κ·Έ λ¬Έμ₯μ μΈμ½λ λ€μμ μλ² λ© λ μ΄μ΄λ‘ μ λ¬νλ€. μΈμ½λλ μ λ ₯ λ¬Έμ₯μμ ν΅μ¬μ μΈ νΉμ§λ§μ νμ νλ μμΆλ ννμ μΆλ ₯νλ€.
μΈμ½λκ° μΆλ ₯ν ννμ "<START>" ν ν°κ³Ό ν¨κ» λμ½λλ‘ λμ΄κ°κ³ λμ½λλ μ΄λ₯Ό μ¬μ©νμ¬ νκ² μΈμ΄ λ¬Έμ₯μ μμΆλ ννμ μ체 μμ±νλ€.
λμ½λμμ μμ±ν κ²°κ³Όλ softmaxμ μ΄μ΄μ§λ λͺ κ°μ μ ν λ μ΄μ΄λ‘ ꡬμ±λ μΆλ ₯ λ μ΄μ΄λ‘ λμ΄κ°λ€. μ ν λ μ΄μ΄λ μΆλ ₯ μνμ€μ κ° μμΉμμ vocabularyμ μλ κ° λ¨μ΄μ λ°μ κ°λ₯μ±μ λν μ μλ₯Ό μΆλ ₯νλ€. Softmaxλ μ΄ μ μλ€μ νλ₯ λ‘ λ³ννλ€.
λ¬Όλ‘ μ°λ¦¬μ κΆκ·Ήμ μΈ λͺ©νλ νλ₯ μΆλ ₯μ΄ μλλΌ νκ² μΈμ΄λ‘ λ λ¬Έμ₯μ λ§λλ κ²μ΄λ€. μ΄ κ²°κ³Όλ₯Ό μ»κΈ° μν΄ λͺ¨λΈμ νκ² λ¬Έμ₯μ κ° μμΉμμ μ΄λ€ λ¨μ΄λ₯Ό μμΈ‘ν΄μΌν μ§ κ²°μ ν΄μΌ νλ€.
μ΄λ»κ² ν΄μΌ ν κΉ?
Greedy Search
νμ€ν λ°©λ²μ κ° μμΉμμ κ°μ₯ λμ νλ₯ μ κ°λ λ¨μ΄λ₯Ό μ νν΄μ κ·Έ λ¨μ΄λ‘ μμΈ‘νλ κ²μ΄λ€. μ΄ λ°©μμ λΉ λ₯΄κ³ μ΄ν΄νκΈ° μ¬μ°λ©° μ’ μ’ μ λ΅μ μΆλ ₯νκΈ°λ νλ€.
μ¬μ€ Greedy Searchλ μ΄ν΄νκΈ° μ¬μμ λ μ΄μ μ€λͺ ν κ²μ΄ μλ€. νμ§λ§ ν κ±Έμ λ λμκ° μ μμκΉ?
Beam Search
Beam Searchλ Greedy Searchλ³΄λ€ λ κ°μ§ ν₯μλ μ μ΄ μλ€.
βΎ Greedy Searchλ κ° μμΉμ κ°μ₯ μ ν©ν λ¨μ΄λ₯Ό λ¨ νλλ§ μ ννλ€. λ°λλ‘ Beam Searchλ Nκ°μ λ¨μ΄λ₯Ό μ ννλ κ²μΌλ‘ νμ₯νλ€.
βΎ Greedy Searchλ κ° μμΉλ€μ λ 립μ μΈ κ²μΌλ‘ λ³Έλ€. μ΄λ€ μμΉμμ μ΅μ μ λ¨μ΄λ₯Ό νμΈνμ λ, κ·Έ λ¨μ΄μ μ΄μ μ΄λ μ΄νμ μ΄λ€ λ¨μ΄κ° μλμ§ νμΈνμ§ μλλ€. Beam Searchλ μμ Nκ°μ λ¨μ΄λ₯Ό κ³ λ₯΄κ³ νμ¬ μμΉμ λ¨μ΄μ μ΄μ μμΉμ λ¨μ΄λ€μ κ²°ν© νλ₯ μ κ³ λ €νλ€.
νμ΄νΌνλΌλ―Έν° 'N'μ Beam widthλΌκ³ νλ€.
μ΄ λ°©μμ΄ Greedy Searchλ³΄λ€ λ λμ κ²°κ³Όλ₯Ό μ 곡νλ€λ κ²μ μ§κ΄μ μΌλ‘ μ΄ν΄ κ°λ₯νλ€. μλνλ©΄ μ°λ¦¬κ° κ΄μ¬μ κ°λ κ²μ μ΅κ³ μ μμ ν λ¬Έμ₯μΈλ° κ°κ°μ μμΉμμ κ°μ₯ μ’μ κ°λ³μ μΈ λ¨μ΄λ§ κ³ λ₯Έλ€λ©΄ μμ ν λ¬Έμ₯μ λμΉ μ μκΈ° λλ¬Έμ΄λ€.
Beam Search μν
Beam widthλ 2, λ¬Έμλ₯Ό μ¬μ©ν κ°λ¨ν μμλ₯Ό λ³Έλ€.
첫 λ²μ§Έ μμΉ
⾠첫 λ²μ§Έ μμΉμμ λͺ¨λΈμ μΆλ ₯ κ²°κ³Όλ₯Ό μκ°ν΄λ³΄μ. <START> ν ν°μΌλ‘ μμν΄μ κ° λ¨μ΄μ λν νλ₯ μ μ»λλ€. νλ₯ μ΄ λμ λ κ°μ λ¬Έμ(Beam widthκ° 2μ΄κΈ° λλ¬Έ)λ₯Ό μ ννλ€.
λ λ²μ§Έ μμΉ
βΎ λ λ²μ§Έ μμΉμμλ 첫λ²μ§Έ μμΉμ λμ¬ μ μλ λ¬Έμ(νλ₯ μ΄ λμ λ κ°μ λ¬Έμ)λ₯Ό κ³ μ ν΄λκ³ λͺ¨λΈμ λ λ² λ°λ³΅νλ€. μ¦ μ²« λ²μ§Έ μμΉμ μ¬ μ μλ λ¬Έμλ₯Ό μ ννκ³ κ°λ₯ν 첫 κΈμμ λν΄μλ§ λΈλμΉλ₯Ό λ§λ λ€.
⾠첫 λ²μ§Έ μμΉμ λ¨μ΄μ λ λ²μ§Έ μμΉμ λ¨μ΄λ₯Ό κ²°ν©νμ λμ νλ₯ μ κΈ°λ°νμ¬ μ 체 μ€μμ κ°μ₯ μ’μ μμ μ ννλ€. 첫 λ²μ§Έ μ§ν©μμ νλλ₯Ό κ³ λ₯΄κ³ λ λ²μ§Έ μ§ν©μμ νλλ₯Ό κ³ λ₯΄λ λ°©μμΌλ‘ μ§νλμ§ μλλ€.
μΈλ²μ§Έ μμΉ
βΎ μΈλ²μ§Έ μμΉμμλ μμ κ³Όμ μ λ°λ³΅νλ€. 첫λ²μ§Έ μμΉ, λλ²μ§Έ μμΉλ₯Ό κ±°μ³ κ³ μ λ λ κΈμμ μΈλ²μ§Έ μμΉ κΈμμ κ²°ν© νλ₯ μ λ³΄κ³ λͺ¨λΈμ λ λ² λ°λ³΅νλ€.
βΎ ν λ² λ μ 체 μ μ€μμ κ°μ₯ νλ₯ μ΄ λμ λ μμ κ³ λ₯Έλ€.
<END> ν ν°μ λ§λ λκΉμ§ λ°λ³΅
βΎ μ΄ κ³Όμ μ νΉμ μμΉμμ <END> ν ν°μ μΆν νλ₯ μ΄ κ°μ₯ λμ λκΉμ§ λ°λ³΅λλ€.
μ΅μ’ μ μΌλ‘ λ§λ€μ΄μ§ λ κ°μ μνμ€ μ€ νλ₯ μ΄ λ λμ μνμ€λ‘ κ²°κ³Όλ₯Ό μμΈ‘νλ€.
Beam Search μλ λ°©μ
μ°λ¦¬λ μ΄μ κ°λ μ μΈ μμ€μμ Beam Searchλ₯Ό μ΄ν΄νλ€. ν λ¨κ³ λ λ€μ΄κ° Beam Searchκ° μ΄λ»κ² μλνλμ§ μμλ³Έλ€. κ³μν΄μ κ°μ μμ λ₯Ό μ¬μ©ν κ²μ΄κ³ Beam widthλ 2μ΄λ€.
Sequence-to-sequence λͺ¨λΈμ κ³μν΄μ 보면, μΈμ½λμ λμ½λλ λͺ κ°μ LSTM λ μ΄μ΄λ‘ ꡬμ±λ μν λ€νΈμν¬μΌ κ°λ₯μ±μ΄ λλ€. μν λ€νΈμν¬ λμ νΈλμ€ν¬λ¨Έλ‘ ꡬνλμμ μλ μλ€.
λμ½λμ κ΅¬μ± μμμ μΆλ ₯μΈ΅μ μ§μ€νκΈ°λ‘ νλ€.
첫 λ²μ§Έ μμΉ
첫 λ²μ§Έ λ¨κ³μμ λμ½λλ 첫 λ²μ§Έ μμΉμ λ¬Έμλ³ νλ₯ μ ꡬνκΈ° μν΄ μΈμ½λμ μΆλ ₯κ³Ό <START> ν ν°μ μ¬μ©νλ€.
νλ₯ μ΄ λμ Aμ Cκ° μ νλλ€.
λ λ²μ§Έ μμΉ
μ΄μ κ³Ό κ°μ΄ μΈμ½λμ μΆλ ₯μ μ΄μ©ν΄ λμ½λλ₯Ό λ λ² μ€ννλ€. 첫 λ²μ§Έ μμΉμ "<START>" ν ν°κ³Ό ν¨κ» 첫 λ²μ§Έ λμ½λ μ€ν μ λ λ²μ§Έ μμΉμ μ λ ₯μ "A"λ‘ λ―Έλ¦¬ μ€μ νλ€. λ λ²μ§Έ λμ½λ μ€νμμλ λ λ²μ§Έ μμΉμ μ λ ₯μ "C"λ‘ μ€μ νλ€.
λ¬Έμκ° λ λ²μ§Έ μμΉμ μ¬ νλ₯ μ ꡬνλ€. νμ§λ§ μ΄ νλ₯ κ°μ λ 립μ μΈ νλ₯ κ°μ΄λ€. μ²μ λ μμΉμμ κ²°ν©λ λ¬Έμ μμ λν νλ₯ μ κ³μ°ν΄μΌ νλ€. 'AB'μ νλ₯ μ 첫 λ²μ§Έ μμΉμ 'A'κ° κ³ μ λμκΈ° λλ¬Έμ 첫 λ²μ§Έ μμΉμμ 'A'κ° λνλ νλ₯ κ³Ό λ λ²μ§Έ μμΉμμ 'B'κ° λνλ νλ₯ μ κ³±ν κ²μ΄λ€.
λ κ°μ λμ½λ λͺ¨λ μ΄ κ³Όμ μ μννλ€.
μΈ λ²μ§Έ μμΉ
μ²μλΆν° μΈ λ²μ§Έ μμΉκΉμ§ λ¬Έμ μΈ κ°μ κ²°ν© νλ₯ μ κ³μ°νλ€.
<END> ν ν°μ λ§λ λκΉμ§ λ°λ³΅
"<END>" ν ν°μΌλ‘ λλλ λ κ°μ μ΅μμ μνμ€λ₯Ό μμ±ν λκΉμ§ μ΄ κ³Όμ μ λ°λ³΅νλ€.
'Archive' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ²μ] The History of Open-Source LLMs: Part β . Early days (1) | 2023.10.23 |
---|---|
[λ²μ] Micro, Macro & Weighted Averages of F1 Score, Clearly Explained (1) | 2022.12.20 |
[λ²μ] Word2Vec Research Paper Explained (0) | 2022.07.04 |
[λ²μ] Introduction to Stemming and Lemmatization (0) | 2022.04.01 |
[λ²μ] Entropy, Cross-Entropy, KL-Divergence (0) | 2022.03.31 |