- Notifications
You must be signed in to change notification settings - Fork0
KentoW/hidden-markov-model
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
隠れマルコフモデル(hedden markov model)をPythonで実装
無限隠れマルコフモデル(infinite hedden markov model)をPythonで実装
# Sample code.fromhidden_markov_modelimportHMMalpha=0.01# 初期ハイパーパラメータalphabeta=0.01# 初期ハイパーパラメータbetaK=10# 隠れ変数の数N=1000# 最大イテレーション回数converge=0.01# イテレーション10回ごとに対数尤度を計算し,その差分(converge)が小さければ学習を終了するhmm=HMM("data.txt")hmm.set_param(alpha,beta,K,N,converge)hmm.learn()hmm.output_model()
# Sample code.frominfinite_hidden_markov_modelimportIHMMalpha=0.01# 初期ハイパーパラメータalpha ハイパーパラメータの値によって隠れ変数の数が変動するbeta=0.01# 初期ハイパーパラメータbeta ハイパーパラメータの値によって隠れ変数の数が変動するN=1000# 最大イテレーション回数converge=0.01# イテレーション10回ごとに対数尤度を計算し,その差分(converge)が小さければ学習を終了するihmm=IHMM("data.txt")ihmm.set_param(alpha,beta,N,converge)ihmm.learn()ihmm.output_model()
1単語をスペースで分割した1行1文形式
先頭に#(シャープ)記号を入れてコメントアウトを記述可能
# 文1単語1 単語2 単語3 ...# 文2単語1 単語1 単語2 ......
例としてWiki.pyを使用して収集した アニメのあらすじ文をdata.txtに保存
必要な情報は各自で抜き取って使用してください.
modelhidden_markov_model # モデルの種類@parametercorpus_filedata.txt # トレーニングデータのPATHhyper_parameter_alpha0.295146 # ハイパーパラメータalphahyper_parameter_beta0.088102 # ハイパーパラメータbetanumber_of_hidden_variable5 # 隠れ変数の数number_of_iteration92 # 収束した時のイテレーション回数@likelihood # 対数尤度initial likelihood-546.599624598last likelihood-511.957618247@vocaburary # 学習で使用した単語vtarget_word出産target_word拓きtarget_word土target_word吉日...@counttrans_sum02134 # 遷移分布に必要な情報(分母の数) 左の数字から順に 隠れ変数のID,その隠れ変数から遷移する単語の数 (なおID=0は初期状態を意味する)trans_freq01488 # 遷移分布に必要な情報(分子の数) 左の数字から順に 遷移元の隠れ変数のID,遷移先の隠れ変数のID,遷移した数trans_freq02862trans_freq03597trans_freq04187trans_freq050trans_sum119685trans_freq11366trans_freq125554trans_freq134173trans_freq14105trans_freq159487...word_sum120123 # 単語分布に必要な情報(分母の数) 左の数字から順に 隠れ変数のID,その隠れ変数から生成される単語の数word_freq1い1051 # 単語分布に必要な情報(分子の数) 左から順に 隠れ変数のID,その隠れ変数から生成される単語,と生成された頻度word_freq1人785word_freq1いる684word_freq1年349word_freq1しまう348...@data# 戦勇。 # コメント3+平和 5+だっ 2+た 1+世界 5+に 4+突如 3+魔物 5+が 4+現れ 3+国王 5+は 2+その 3+討伐 5+に 4+1 2+0 2+0 2+0 1+年 3+前 5+に 4+魔王 3+ルキメデス 5+を 4+封印 2+し 2+た ... # 隠れ変数のID+単語
About
Hidden Markov Model (HMM) and Infinite Hidden Markov Model (iHMM) in Python. (隠れマルコフモデルと無限隠れマルコフモデル)
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published