マジセミドライブ
ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。
OSS情報
2020.01.01
【OSS情報アーカイブ】Julius


※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。
コンテンツ
「Julius」とは
概要
Julius(ジュリアス)とは、オープンソースの大語彙連続音声認識エンジンです。「高性能」「小フットプリント」のデコーダソフトウェアとして、「ワードN-gram」と「コンテキスト依存HMM」に基づいてリアルタイムデコードを実行できます。ディープニューラルネットワークもサポートしています。
経緯
Juliusは、1997年から日本のLVCSRの研究ソフトウェアとして開発され、性能向上および機能強化が続けられています。
オフィシャルサイト情報
■GitHub
→github.com →julius-speech/julius
■主要開発元
Juliusは、名古屋工業大学李研究室Juliusプロジェクトチームなどが中心となり開発が進められています。
■ライセンス情報
Juliusのライセンスは「BSD 3-Clause “New” or “Revised” License」です。
詳細について、こちらを参照ください。
→github.com →julius-speech/julius →LICENSE
■動作環境
「Linux」「Windows」「Mac」「Android」などで動作します。
■インストール
→github.com →julius-speech/julius →INSTALL.txt
同様製品
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「wav2letter@anywhere」など。
主な特徴
・高性能リアルタイム認識能力—2パス戦略に基づく
・低メモリ要件:32MB~64MB未満
・任意のNを持つN-gramのLMをサポート
・ルールベース文法サポート
・分離された単語認識のための単語リストをサポート
・「ARPA標準形式のLM」と「HTK asciihmm定義形式のAM」をサポート
・各種検索パラメーター設定機能
・DNNベースデコード機能—フレームごとの状態確率計算にフロントエンドモジュールを使用
言語認識モデル
Julius自体は言語に依存しないデコードプログラムであるため、ターゲット言語に対して、適切な「言語モデル」と「音響モデル」が与えられれば、言語認識機能を作成できます。
■モデル形式
モデルには「HTK」「SRILM」などの他の音声(言語)モデリングツールキットに対応するための標準形式が採用されています。
■認識精度
Juliusの認識精度はモデルに大きく依存し、以下のモデルを採用しています。
・HTK ascii形式の音響モデル
・ほぼHTK形式の発音辞書
・ARPA標準形式の単語3グラム言語モデル など
■2パスツリートレリス検索
アルゴリズムは、次の主要デコード手法を完全に組み込んだ「2パスツリートレリス検索」に基づいています。
・ツリー編成レキシコン
・1-ベスト/ワードペアコンテキスト近似
・ランク/スコアプルーニング
・N-グラムファクタリング
・クロスワードコンテキスト など
■日本語モデル
日本語ディクテーションキットが用意されています。
・日本語モデル—バランスの取れたコーパスでトレーニングされた60kワード
・音響モデル—トライフォンGMM/DNN
■英語モデル
ユーザー提供の英語モデルがいくつかWebで入手できます。
JuliusModels
VoxForgeプロジェクト
モジュール化構造
Juliusは、モデル構造から独立するようにモジュール化されており、さまざまなHMM構造がサポートされています。
・エンベロープビーム検索
・ガウス剪定
・ガウス選択
・共有状態トライフォン
・結合混合モデル など
スレッド同時実行
Juliusは、以下の処理を1つのスレッドで同時に実行することもできます。
・マルチインスタンス認識
・ディクテーション実行
・文法ベース認識
・孤立した単語認識 など