β» μ°Έκ³ λ§ν¬
β HMM - Part1 (κ°λ )
β― μμ°¨ λ°μ΄ν°
• μκ°μ λ°λΌ μ»μ΄μ§λ λ°μ΄ν°
• μκ°μ± νΉμ±μ΄ μμ
• μμ
βͺ νλμ μ νμ΄ μμ±νμ΄ λ λκΉμ§λ 10κ°μ 곡μ μ κ±°μΉκ³ , κ° κ³΅μ λ³λ‘ μ¬λ¬ μ€λΉ μ’ λ₯λ₯Ό κ°μ§κ³ μμ
βͺ 곡μ μ κ±°μΉλ κ²μ μκ°μ νλ¦μΌλ‘ λ³Ό μ μμ
• μμ°¨ λ°μ΄ν° μΈμ μμ
β― Hidden Markove Model (HMM)
• μμ°¨ λ°μ΄ν°λ₯Ό νλ₯ μ (Stochasic) μΌλ‘ λͺ¨λΈλ§ νλ μμ± λͺ¨λΈ (Generative model)
β― Markove Model μ΄λ
• state λ‘ μ΄λ£¨μ΄μ§ sequence λ₯Ό μν μ μ΄ νλ₯ νλ ¬λ‘ νννλ κ²
• μν μ μ΄ νλ₯ νλ ¬ : μνκ° λ³ννλ κ²μ νλ₯ λ‘ νν
βͺ μν μ μ΄ νλ₯ μ sum μΌλ‘ λλ μ£ΌκΈ°
βͺ ex. λΉμμ λΉλ‘ κ° νλ₯ μ 1/3, λΉμμ ν΄λ‘ κ° νλ₯ μ 2/3
• Markov κ°μ : μκ° t μμ κ΄μΈ‘μ, κ°μ₯ μ΅κ·Ό r κ°μ κ΄μΈ‘μλ§ μμ‘΄νλ€λ κ°μ . ν μνμμ λ€λ₯Έ μνλ‘μ μ μ΄λ μ΄μ μνμ κΈ΄ μ΄λ ₯μ νμμΉ μλ€λ κ°μ
β― Parameters of the Markov model
• μν μ μ΄ νλ₯ νλ ¬ A(aij)
βͺ aij λ€μ λͺ¨λ νλ₯ κ°
β― Hidden Markov model μ΄λ
• κ°μ μκ°μ λ°μν λ μ’ λ₯μ state sequence κ°κ°μ νΉμ±κ³Ό κ·Έλ€μ κ΄κ³λ₯Ό μ΄μ©ν΄ λͺ¨λΈλ§
• Hidden κ³Ό Observable
βͺ Hidden sequence μΈ λ μ¨λ κ°κΉμ΄ μμ μ κ³Όκ±°μλ§ μμ‘΄ (Markov κ°μ μ λ°λ¦)
βͺ ex. ν΄κ° λ¬λ€λ κ°μ νμ μΌνμ ν κ±°λ€ : Observable sequence λ μμ°¨μ νΉμ±μ λ°μνλ Hidden sequence μ μ’ μλλ€. (μ‘°κ±΄λΆ νλ₯ μ κ°λ )
• μμ μμ λ₯Ό κ·Έλν ννλ‘ ννν κ²
βͺ O1,O2,O3 : κ΄μΈ‘κ°λ₯ν μν
βͺ S1,S2,S3 : hidden state
βͺ aij : hidden state μ μ μ΄νλ₯
• HMM μμ
β― Parameters
• A(aij) : μνμ μ΄νλ₯ νλ ¬ (hidden state λ€μ΄ μ΄λ»κ² μ μ΄ λμλμ§ from - to νλ₯ μ λ΄μλμ νλ ¬)
• B(bjk) : Emission probability matrix λ°©μΆνλ₯ νλ ¬
• B νλ ¬ μ€λͺ
βͺ b11 : S1 μνμμ κ΄μΈ‘μΉ O1 μ 보κ²λ νλ₯ , b21 : S1 μνμμ κ΄μΈ‘μΉ O2 μ 보κ²λ νλ₯ , b31 : S1 μνμμ κ΄μΈ‘μΉ O3 μ 보κ²λ νλ₯
• π(πi) : Initial state probability matrix : κ° hidden state μ μ΄κΈ° νλ₯
• 3κ°μ§ μ’ λ₯μ νλΌλ―Έν° μ 리
βͺ HMM μ νλΌλ―Έν° : λ = {A,B,π}
βͺ aij : t μμ μ i λΌλ μνμ μλ€κ°, λ€μμΈ t+1 μμ μ j λΌλ μνλ‘ λλ¬ν νλ₯
βͺ bj(vk) : t μμ μ μλμν bj μμ κ΄μΈ‘μΉ vk κ° λμΆλ νλ₯
βͺ πi : Si μμ μμν νλ₯ (μ΄κΈ°κ°)
β― Main Problems of HMM
β’ HMM μ 3κ°μ§ λ¬Έμ
β΄ HMM(λ*) νλΌλ―Έν°κ° μΆμ λ νλ λ§λ₯΄μ½ν λͺ¨λΈμ΄ μ£Όμ΄μ§κ³ O (observable state) κ° μ£Όμ΄μ‘μ λ, κ·Έ O (observable state) μ νλ₯ β¨ Evaluation problem
β΅ HMM(λ*) νλΌλ―Έν°κ° μΆμ λ νλ λ§λ₯΄μ½ν λͺ¨λΈμ΄ μ£Όμ΄μ§κ³ O (observable state) κ° μ£Όμ΄μ‘μ λ, κ·Έμ ν΄λΉνλ hidden state sequence S λ₯Ό μ°Ύλ κ² β¨ Decoding problem β
βΆ X={O1, ... , ON} κ΄μΈ‘κ°λ₯ν μν (=λ°μ΄ν°) λ€μ΄ μ£Όμ΄μ‘μ λ, HMM(λ*) λ₯Ό μ°Ύλ κ² β¨ Learning problem (1,2 λ² κ³Όμ μ νκΈ° μν νμμ μΌλ‘ μ νλμ΄μΌ νλ λ¨κ³ = parameter estimation)
β¨ (3) μ λ¨κ³λ λͺ¨λΈλ§μ΄λΌ 보면 λκ³ , HMM μΌλ‘ ν μ μλ κΆκ·Ήμ μΈ λ¬Έμ λ (1), (2) μ ν΄λΉ
β’ HMM λͺ¨λΈ κ³Όμ : λ¨Όμ observable data λ‘ Learning μ μ§ν, μ΄ν Test data λ‘ λ§λ€μ΄λμ λͺ¨λΈμ μ΄μ©ν΄μ Evaluation λ¬Έμ νΉμ Decoding λ¬Έμ λ₯Ό νΌλ€.
β‘ HMM - Part1 (Evaluation)
β― HMM - Evaluation
β’ Evaluation μ μ
• Evaluation Problem : HMM(λ*) μ O κ° μ£Όμ΄μ‘μ λ, O (observable sequence) μ νλ₯ μ μ°ΎκΈ°
• Solution : Forward algorithm
• Example : μ λ°μ¬κ° μ€λ μ°μ± , λ΄μΌ μ°μ± , λͺ¨λ μ°κ΅¬, κΈνΌ μΌνν νλ₯ μ ?
βͺ probability(O) = (o1 = μ°μ± , o2 = μ°μ± , o3 = μ°κ΅¬, o4 = μΌν)
• Graph form : HMM μ parameter λ₯Ό νννκ³ μμ (Learning λ¨κ³λ₯Ό ν΅ν΄ μ»μ΄λΈ κ²°κ³Ό)
βͺ π1, π2 : initial probability (λΉκ° μ¬ νλ₯ μ 0.6, ν΄κ°λ° νλ₯ μ 0.4)
βͺ a11 : hidden state μ transition probability (μ€λ λΉμ€κ³ λ΄μΌ λ λΉκ° μ¬ νλ₯ : 0.7)
βͺ b1(μ°μ± ) : λΉκ° μ€λ λ μ μ°μ± μ ν νλ₯ μ΄ 0.1
β’ Evaluation λ¬Έμ μ
• κ·Έλ¬λ νλ₯ μ ꡬνλ €λ©΄ μ΄ 16κ°μ μν©μ μκ°ν΄ 보μμΌ νλ€ : (hidden state κ°μ)^(sequence μμ κ°μ)
βͺ μ¬κΈ°μλ state κ° 2κ°κ³ , sequence κ° 4κ°λκΉ 2^4 = 16κ°μ§ κ²½μ°λ₯Ό κ³ λ €
βͺ μ΄ μνμ κ°μλ sequence κΈΈμ΄κ° μ¦κ°νλ©΄ κ³μ°μ λͺ»ν μλ μμ (ꡬν΄μΌ λ νλ₯ μ κ°μ§μκ° λ무 λ§μΌλ©΄ λ¬Έμ λ₯Ό ν μκ° μμ) π ν΄κ²°νκΈ° μν΄ λμ¨ λ°©λ²μ΄ forward μκ³ λ¦¬μ¦
β― HMM - Evaluation : Forward algorithm
β’ forward μκ³ λ¦¬μ¦
[μμ t = 1]
• α1(1) = (첫 λ²μ§Έ μμ μμ λΉμ¬ νλ₯ ) • (λΉκ° μ¬ hidden μνμμ μ°μ± μ΄ κ΄μ°°λ νλ₯ ) = π1•b1(μ°μ± )
• α1(2) = (첫 λ²μ§Έ μμ μμ ν΄κ° λ° νλ₯ ) • (ν΄κ° λ° hidden μνμμ μ°μ± μ΄ κ΄μ°°λ νλ₯ ) = π2•b2(μ°μ± )
[μμ t = 2]
• α2(1) = { α1(1)•a11 + α1(2)•a21 } • b1(μ°μ± )
• α2(2) = { α1(1)•a12 + α1(2)•a22 } • b2(μ°μ± )
[μμ t = 3]
• α3(1) = { α2(1)•a11 + α2(2)•a21 } • b1(μ°κ΅¬)
• α3(2) = { α2(1)•a12 + α2(2)•a22 } • b2(μ°κ΅¬)
[μμ t = 4]
• α4(1) = { α3(1)•a11 + α3(2)•a21 } • b1(μΌν)
• α4(2) = { α3(1)•a12 + α3(2)•a22 } • b2(μΌν)
β» μ«μ νκΈ°μμ, μμ μ λνλ΄λ κ±΄μ§ state λ₯Ό λνλ΄λ κ±΄μ§ κ΅¬λΆ μ£ΌμνκΈ°!
π κ° λ¨κ³μμ νμ©νλ건 λ°λ‘ μ§μ μμ μ λν κ°λ€λ‘, λΉ λ₯Έ κ³μ°μ΄ κ°λ₯νλ€. 건λ 건λ κ³Όκ±°λ₯Ό 보면 κ³Όκ±° μ λ³΄κ° λμ λμ΄μ ννλλ€. μ¦, λͺ¨λ κ³Όκ±° μ 보λ₯Ό κ°μ§κ³ μλ€ : Forward μκ³ λ¦¬μ¦ (dynamic programming λ°©λ²μ ν΅μ¬)
[μ΅μ’ νλ₯ κ³μ°]
• α4(1) + α4(2) = 0.00111
β’ forward probability : α
• μ΄μ μμ μ νλ₯ μ 보λ€μ λ€ μκ³ κ³μ μμΌλ‘ κ°λ κ²μ΄ ν΅μ¬!
• μ΄μ μμ μ μ λ³΄λ§ κ°μ§κ³ λΉ λ₯΄κ² κ³μ° (κ·Έλ¬λ κ²°κ΅μλ κ³Όκ±° μ 보λ₯Ό λͺ¨λ μκ³ κ°λ κ²κ³Ό λμΌ)
• μν κΈ°νΈ μ
• Evaluation problem μ sequence classification λ¬Έμ μ νμ©μ΄ κ°λ₯νλ€. κ°λ Ή μ λ°μ¬ λ¬Έμ λ₯Ό ν΄κ²°νλλ° μμ΄μ HMM1 λͺ¨λΈμ΄ μκ³ , μ‘°λ°μ¬ λ¬Έμ λ₯Ό ν΄κ²°νλλ° HMM2 λͺ¨λΈμ΄ μμ λ (= λ μ¬λμ ν¨ν΄μ΄ λ€λ¦) , μλ₯Ό λ€μ΄ [μ°μ± , μ°μ± , μ°κ΅¬, μΌν] μ΄λΌλ sequence μμ μ λ°μ¬λ 0.78 μ΄ λμκ³ μ‘°λ°μ¬λ 0.25κ° λμλ€λ©΄ [μ°μ± , μ°μ± , μ°κ΅¬, μΌν] μ΄ sequence λ μ‘°λ°μ¬λ³΄λ€ μ λ°μ¬λ‘λΆν° λμμ νλ₯ μ΄ λμ κ² (μ¬κΈ°μ class λ μ λ°μ¬μ μ‘°λ°μ¬ 2κ°κ° λλ κ²)
• ex. sequence classification : μ μ‘° λ¬Έμ μμλ sequence κ° μ£Όμ΄μ‘μ λ λΆλμμ λμ¨κ±΄μ§ μλμ§
β’ backward probability
β― HMM - Evaluation : Backward algorithm
• forward μ λ¬λ¦¬ λ€μμλΆν° κ³μ°
[μμ t = 3]
• β3(1) = { β4(1)•a11•b1(μΌν) + β4(2)•a12•b2(μΌν) }
• β3(2) = { β4(1)•a21•b1(μΌν) + β4(2)•a22•b2(μΌν) }
[μμ t = 2]
[μμ t = 1]
[μ΅μ’ νλ₯ κ³μ°]
β’ backward μ forward μ μ΅μ’ νλ₯ κ²°κ³Όλ κ°μμΌ νλ€.
• μμ
• forward/backward probability π HMM training μ νμ© (Learning)
β’ [μ°Έκ³ ] λ§λ₯΄μ½ν κ°μ (λ λ¦½μ± κ°μ ) : Observed variable κ³Ό Hidden state κ΄κ³ : P(Yt | Ct)
• Yt κ° Ct μ λν΄ Conditionally independent νλ€λ κ²μ, Yt κ° μ£Όμ΄μ§ νμ¬ μν Ct λ₯Ό μκ³ λλ©΄ λ€λ₯Έ λͺ¨λ λ³μλ μνμλ λ 립μ μ΄λΌλ κ²μ μλ―Ένλ€. μ¦, νμ¬ μν Ct κ° μ£Όμ΄μ§ μνμμ Yt μ νλ₯ λΆν¬λ μ΄μ μ κ΄μ°°λ λ³μλ μνλ€μ λ 립μ μ΄λ€.
'1οΈβ£ AIβ’DS > π Model' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
HMM κΈ°λ³Έ μ½λ/μμ©μ¬λ‘ μ 리 (0) | 2024.01.05 |
---|---|
HMM κΈ°μ΄ κ°λ μ 리 - β‘ Decoding, Learning (1) | 2024.01.04 |
Tabnet (0) | 2022.03.31 |
λκΈ