50,000 語近くの ARPA 言語モデル ファイルを作成したいと考えています。テキスト ファイルを CMU 言語ツールに渡して言語モデルを生成できません。これらの多くの単語の言語モデルを取得できる他のリンクはありますか?
2 に答える
投票数が少ないので、これに答えると思いましたが、クリスティーナの他の質問に基づいて、50,000語の言語モデルにはほぼ確実に受け入れられる単語がないため、これは彼女にとって有用な答えになるとは思いませんハードウェアの制約により、現在この形式の言語モデルを使用している iOS 用のアプリ内認識システムでは、エラー率または認識速度 (またはおそらく長時間機能することさえあります)。このサイズのボキャブラリをメモリに保持することがより実行可能なプラットフォームを使用している他の人にとって役立つかもしれないので、それを文書化する価値があると考えました.
私が知っている Web ベースのツールで、Sphinx Knowledge Base Tool のように、50,000 語の平文コーパスを書き換えて ARPA 言語モデルを返すものはありません。ただし、次の手順で、すでに完全な 64,000 語の DMP 言語モデル (コマンド ラインで Sphinx を使用するか、ARPA .lm ファイルと同じ方法で他のプラットフォームの実装で使用できます) を取得できます。
- CMU スピーチ サイトからこの言語モデルをダウンロードします。
そのフォルダーには、言語モデルとなる language_model.arpaformat.DMP というファイルがあります。
- このファイルを CMU スピーチ サイトからダウンロードすると、発音辞書になります。
https://cmusphinx.svn.sourceforge.net/svnroot/cmusphinx/trunk/pocketsphinx/model/lm/en_US/cmu07a.dic
cmu07a.dic の内容をすべて大文字に変換します。
必要に応じて、コーパス language_model.vocabulary にない単語を削除して、発音辞書を削除することもできます (これは正規表現の問題になります)。これらのファイルは、Sphinx の英語の音響モデルの 1 つで使用するためのものです。
50,000 語の英語モデルを使用したいという欲求が、特定の 50,000 語 (たとえば、医学辞書や50,000 エントリの連絡先リスト)、ハードウェアがそれを処理できる場合、このアプローチはそれらの結果を与えるはずです。このサイズのモデルでの検索を最適化するために、いくつかの Sphinx または Pocketsphinx の設定を変更する必要があるでしょう。
トレーニング コーパスのサイズはどれくらいですか? 50000 語しかない場合、それは小さい/小さすぎます。
一般に、CMU または HTK のツールキットを使用できます。
HTK Speech Recognition Toolkit の詳細なドキュメント: http://htk.eng.cam.ac.uk/ftp/software/htkbook_html.tar.gz
CMU の SLM Toolkit の説明もここにあります: http://www.speech.cs.cmu.edu/SLM/toolkit_documentation.html
より大きなコーパスに基づいて、より一般的な言語モデルを取得し、それを使用してより小さな言語モデルを補間することもできます..たとえば、バックオフ言語モデル...しかし、それは簡単な作業ではありません.
参照: http://en.wikipedia.org/wiki/Katz 's_back-off_model