前提
pythonで音声認識デコーダJuliusで利用できるような言語モデルを作成しています.コードを色々なサイトを参考にして作成してみたのですが,srilmのパスがうまく通っていないようで実行できません.
実現したいこと
- 以下のようなN-gramを作りたいです.
\data
ngram 1=1351
ngram 2=3718
\1-grams:
-1.16014 </s>
-99 <s> -0.2696212
-3.826711 <unk>
-3.224598 ― -0.2112396
-2.923568 -0.1517307
-1.083148 、 -0.1269155
-1.165792 。 -2.630687
-3.127688 々 -0.04573854
-3.826658 あ -0.07939662
-2.650567 ああ -1.16669
-3.826658 あおり -0.1166969
-3.826658 あがり -0.07939662
-3.826658 あきれ -0.1026808
...
発生している問題・エラーメッセージ
forward_n-gram.arpaの中身が b'/bin/sh: C:/Users/自分の名前/srilm/srilm-1.7.3/lm/src/ngram-count.cc: No such file or directory\n' となってしまいます.
該当のソースコード
python
1path = os.getcwd().replace(os.sep,'/')+"/" # 実行中のパス取得 2srilm_path = "C:/Users/asuka/srilm/srilm-1.7.3/lm/src/ngram-count.cc" 3... 4def make_forward_n_gram(): 5 cmd = "{0} -order 2 -text {1} -unk -lm {2}".format(srilm_path, path+corpus, path+forward_n_gram) 6 proc = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) 7 stdout, stderr = proc.communicate() 8 with open("forward_n-gram.arpa", "w") as o: 9 print(stderr, file=o) 10
試したこと
srilmのパスがどこにあるのか調べましたがよくわかりませんでした.また,ngram-countを用いて実行するようなのですがngram-countのパスの取得の仕方もわかりませんでした.そこらへんの仕組みをあまり理解できていなくエラーをどのように解決したらよいかわかりませんでした.
補足情報(FW/ツールのバージョンなど)
srilm 1.7.3
あなたの回答
tips
プレビュー