LSTM(Long Short-Term Memory, μ₯λ¨κΈ° λ©λͺ¨λ¦¬)
Reference
μλ μν(hidden state)
: λ©λͺ¨λ¦¬ μ μ΄ μΆλ ₯μΈ΅ λ°©ν₯ or λ€μ μμ μΈ t+1μ μμ μκ² λ³΄λ΄λ κ°
μ¦, tμμ μ λ©λͺ¨λ¦¬ μ μ t-1μμ μ λ©λͺ¨λ¦¬ μ μ΄ λ³΄λΈ μλ μνμ κ°μ tμμ μ μλ μν κ³μ°μ μν μ λ ₯κ°μΌλ‘ μ¬μ©!!
λ°λλΌ RNN
: κ°μ₯ κΈ°λ³Έμ μΈ λ§μ μμ΄μ€ν¬λ¦Όμ΄ λ°λλΌλ§ μμ΄μ€ν¬λ¦ΌμΈ κ²μ²λΌ, RNNμμλ κ°μ₯ λ¨μν ννμ RNNμ λ°λλΌ RNN (Vanilla RNN, Simple RNN)μ΄λΌκ³ νλ€.
λ°λλΌ RNNμ κΈΈμ΄κ° μ§§μ μνμ€(sequence)μμλ§ ν¨κ³Όλ₯Ό 보μ΄λ©°, μΆλ ₯ κ²°κ³Όκ° μ΄μ μ κ³μ° κ²°κ³Όμ μμ‘΄νλ€λ λ¨μ μ΄ μλ€.
μ΄μ²λΌ λ°λλΌ RNNμ μμ (time step)μ΄ κΈΈμ΄μ§μλ‘ μμ μ λ³΄κ° λ€λ‘ μΆ©λΆν μ λ¬λμ§ λͺ»νλ νμμ΄ λ°μνλ€.
μ κ·Έλ¦Όμμ μμ΄ μ μ΄μ§λ κ²μ μκ°μ΄ μ§λ μλ‘ μ 보λμ΄ μμ€λμ΄κ°λ κ³Όμ μ νννλ€.
λ§μ½ κ°μ₯ μ€μν μ λ³΄κ° λ§¨ μμ μ‘΄μ¬νκ² λ λ, RNNμ΄ μΆ©λΆν κΈ°μ΅λ ₯μ κ°μ§κ³ μμ§ μλλ€λ©΄ λ€μ λ¨μ΄λ₯Ό μλ±νκ² μμΈ‘ν κ²μ΄λ€.
μ΄λ₯Ό μ₯κΈ° μμ‘΄μ± λ¬Έμ (the problem of Long-Term Dependencies)λΌκ³ νλ€.
μ κ·Έλ¦Όμ λ°λλΌ RNNμ λ΄λΆ ꡬ쑰μ΄λ©°, νΈν₯ bλ₯Ό μλ΅ν κ·Έλ¦Όμ΄λ€.
λ°λλΌ RNNμ xtμ ht-1μ΄λΌλ λ κ°μ μ λ ₯μ΄ κ°κ°μ κ°μ€μΉμ κ³±ν΄μ Έ λ©λͺ¨λ¦¬ μ μ μ λ ₯μ΄ λλ€.
μ΄λ₯Ό tanhν¨μμ μ λ ₯μΌλ‘ μ¬μ©ν΄ μ΄ κ°μ μλμΈ΅μ μΆλ ₯μΈ μλ μνκ° λλ€.
μ ν΅μ μΈ RNNμ λ¨μ μ 보μν RNNμ μΌμ’ μ LSTMμ΄λΌ νλ.
LSTMμ μλμΈ΅μ λ©λͺ¨λ¦¬ μ μ μ λ ₯ κ²μ΄νΈ, λ§κ° κ²μ΄νΈ, μΆλ ₯ κ²μ΄νΈλ₯Ό μΆκ°νμ¬ λΆνμν κΈ°μ΅μ μ§μ°κ³ , κΈ°μ΅ν΄μΌ ν κ²λ€μ μ νλ€.
μμ½νλ©΄, LSTMμ μλ μν(hidden state)λ₯Ό κ³μ°νλ μμ΄ μ ν΅μ RNNλ³΄λ€ λ³΅μ‘ν΄μ‘μΌλ©°, μ μν(cell state)λΌλ κ°μ μΆκ°νλ€.
μ κ·Έλ¦Όμμ tμμ μ μ μνλ₯Ό CtλΌ νννκ³ μκ³ , LSTMμ RNNμ λΉν΄ κΈ΄ μνμ€μ μ λ ₯μ μ²λ¦¬νλλ° νμν μ±λ₯μ 보μΈλ€.
μ μν(cell state)λ μμ κ·Έλ¦Όμμ μΌμͺ½μμ μ€λ₯Έμͺ½μΌλ‘ κ°λ κ΅΅μ μ μ΄λ€.
μ μν λν μλ μνμ²λΌ μ΄μ μμ μ μ μνκ° λ€μ μμ μ μ μνλ₯Ό ꡬνκΈ° μν μ λ ₯μΌλ‘μ μ¬μ©λλ€.
μλ μνμ μ μνμ κ°μ ꡬνκΈ° μν΄ μλ‘ μΆκ°λ 3κ°μ κ²μ΄νΈλ₯Ό μ¬μ©νκ² λλλ°,
κ°κ° μμ κ²μ΄νΈ, μ λ ₯ κ²μ΄νΈ, μΆλ ₯ κ²μ΄νΈλΌ νλ©° μ΄ 3κ°μ κ²μ΄νΈμ 곡ν΅μ μΌλ‘ μκ·Έλͺ¨μ΄λ ν¨μκ° μ‘΄μ¬νλ€.
μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό ν΅κ³Όνλ©΄ 0-1 μ¬μ΄μ κ°μ΄ λμ€κ² λλ―λ‘ μ΄ κ°λ€μ ν΅ν΄ κ²μ΄νΈλ₯Ό μ‘°μ νλ€.
σ
(1) μ λ ₯ κ²μ΄νΈ
μ λ ₯ κ²μ΄νΈλ νμ¬ μ 보λ₯Ό κΈ°μ΅νκΈ° μν κ²μ΄νΈ.
νμ¬ μμ tμ xκ°κ³Ό μ λ ₯ κ²μ΄νΈλ‘ μ΄μ΄μ§λ κ°μ€μΉ Wxiλ₯Ό κ³±ν κ°κ³Ό / μ΄μ μμ μ t-1 μμ μ μλ μνκ° μ λ ₯ κ²μ΄νΈλ‘ μ΄μ΄μ§λ κ°μ€μΉ Whiλ₯Ό κ³±ν κ°μ λνμ¬ / μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό μ§λλ€. μ΄λ₯Ό itλΌ νλ€.
νμ¬ μμ tμ xκ°κ³Ό μ λ ₯ κ²μ΄νΈλ‘ μ΄μ΄μ§λ κ°μ€μΉ Wxgλ₯Ό κ³±ν κ°κ³Ό / μ΄μ μμ t-1μ μλ μνκ° μ λ ₯ κ²μ΄νΈλ‘ μ΄μ΄μ§λ κ°μ€μΉ Whgλ₯Ό κ³±ν κ°μ λνμ¬ / νμ΄νΌλ³Όλ¦νμ νΈ ν¨μλ₯Ό μ§λλ€. μ΄λ₯Ό gtλΌ νλ€.
μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό μ§λ 0-1 μ¬μ΄μ κ°μ κ°μ§λ itμ νμ΄νΌλ³Όλ¦νμ νΈ ν¨μλ₯Ό μ§λ -1~1 μ¬μ΄μ κ°μ κ°μ§λ gt.
μ΄ λ κ°μ κ°μ§κ³ μ΄λ²μ μ νγ±λ κΈ°μ΅ν μ 보μ μμ μ νλλ°, ꡬ체μ μΌλ‘ μ΄λ»κ² κ²°μ ν μ§λ μλμμ λ°°μ°κ² λ μ μν μμμ μ°Έκ³ νμ.
(2) μμ κ²μ΄νΈ
μμ κ²μ΄νΈλ κΈ°μ΅μ μμ νκΈ° μν κ²μ΄νΈ.
νμ¬ μμ tμ xκ°κ³Ό μ΄μ μμ t-1μ μλ μνκ° μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό μ§λκ² λλ€.
μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό μ§λλ©΄ 0-1 μ¬μ΄μ κ°μ΄ λμ€λλ°, μ΄ κ°μ΄ κ³§ μμ κ³Όμ μ κ±°μΉ μ 보μ μμ΄λ€.
0μ κ°κΉμΈμλ‘ μ λ³΄κ° λ§μ΄ μμ λ κ², 1μ κ°κΉμΈμλ‘ μ 보λ₯Ό μ¨μ ν κΈ°μ΅ν κ².
μ΄λ₯Ό ν΅ν΄ μ μνλ₯Ό ꡬνλλ° μμΈν 건 μλμ ~
(3) μ μν
μ μν Ctλ₯Ό ꡬνλ λ°©λ²μ λν΄ λ°°μ보μ. μμ κ²μ΄νΈμμ μΌλΆ κΈ°μ΅μ μμ μνλ€.
μ λ ₯ κ²μ΄νΈμμ ꡬν itμ gtμ λν΄ μμλ³ κ³±μ μ§ννλ€. (ν¬κΈ°κ° κ°μ λ νλ ¬μ΄ μμ λ, κ°μ μμΉμ μ±λΆλΌλ¦¬ κ³±νλ κ²)
μ΄κ²μ΄ μ΄λ²μ μ νλ κΈ°μ΅ν κ°μ΄λ€.
μ λ ₯ κ²μ΄νΈμμ μ νλ κΈ°μ΅μ μμ κ²μ΄νΈμ κ²°κ΄κ°(ft)κ³Ό λνλ€.
μ΄ κ°μ νμ¬ μμ tμ μ μνλΌ ν¨, μ΄ κ°μ λ€μ t+1 μμ μ LSTM μ λ‘ λ겨μ§λ€.
μμ κ²μ΄νΈμ μΆλ ₯κ°μΈ ftκ° 0μ΄λΌλ©΄, μ΄μ μμ μ μ μνμ κ°μΈ Ct-1μ νμ¬ μμ μ μ μνμ κ°μ κ²°μ νκΈ° μν μν₯λ ₯μ΄ 0μ΄ λλ©΄μ, μ€μ§ μ λ ₯ κ²μ΄νΈμ κ²°κ³Όλ§μ΄ νμ¬ μμ μ μ μνμ κ° Ctλ₯Ό κ²°μ ν μ μλ€.
(ftμ Ct-1μ΄ κ³±ν΄μ§λ μν₯λ ₯μ΄ 0μ΄λΌλ λ»!)
μ΄λ μμ κ²μ΄νΈκ° μμ ν λ«νκ³ μ λ ₯ κ²μ΄νΈλ₯Ό μ° μνλ₯Ό μλ―Έ.
λ°λλ‘ μ λ ₯ κ²μ΄νΈμ itκ°μ 0μ΄λΌκ³ νλ€λ©΄, νμ¬ μμ μ μ μνμ κ° Ctλ μ€μ§ μ΄μ μμ μ μ μνμ κ° Ct-1μλ§ μμ‘΄νκ² λλ€.
μ΄λ μ λ ₯ κ²μ΄νΈλ₯Ό μμ ν λ«κ³ μμ κ²μ΄νΈλ§ μ° μνλ₯Ό μλ―Έ.
κ²°κ³Όμ μΌλ‘ μμ κ²μ΄νΈλ μ΄μ μμ μ μ λ ₯μ μΌλ§λ λ°μν μ§λ₯Ό μλ―Ένκ³ , μ λ ₯ κ²μ΄νΈλ νμ¬ μμ μ μ λ ₯μ μΌλ§λ λ°μν μ§λ₯Ό μλ―Ένλ€.
(4) μΆλ ₯ κ²μ΄νΈμ μλ μν
μΆλ ₯ κ²μ΄νΈλ νμ¬ μμ tμ xκ°κ³Ό μ΄μ μμ t-1μ μλ μνκ° μκ·Έλͺ¨μ΄λ ν¨μλ₯Ό μ§λ κ°.
ν΄λΉ κ°μ νμ¬ μμ tμ μλ μνλ₯Ό κ²°μ νλ μΌμ μ°μ΄κ² λλ€.
μ μνμ κ°μ΄ tanh ν¨μλ₯Ό μ§λ -1~1 μ¬μ΄μ κ°μ΄ λκ³ , ν΄λΉ κ°μ μΆλ ₯ κ²μ΄νΈμ κ°κ³Ό μ°μ°λλ©°, κ°μ΄ κ±Έλ¬μ§λ ν¨κ³Όκ° λ°μν΄ μλ μνκ° λλ€. μλ μνμ κ°μ λν μΆλ ₯μΈ΅μΌλ‘λ ν₯νλ€.