大語彙音声認識Juliusのクラウドサービス化
Julius(http://julius.osdn.jp/)は、オープンソースの高性能な汎用大語彙連続音声認識エンジンです。コミュニケーション知能OpenHRIでも音声認識を実現するコンポーネントのエンジンとして利用しております。
このJuliusには、大語彙音声認識の他に記述文法音声認識の機能も実装されており非常に使い勝手はよいのですが、これまでは混合カウスモデル(Gaussian Mixture Model)の隠れマルコフモデル(Hidden Markov Model)ベースのエンジン(GMM-HMM)が主体であったため、深層学習(Deep Learning)ベースのものよりも認識率が悪いとされてきました。
しかしながら、最新バージョンでは、従来の手法に加えて深層学習を使ったエンジン(DNN-HMM)も実装されており、音声認識の精度がかなり上がってきています。
Juliusの配布パッケージでは、サーバーモードも実装されており、クラウドサービスへの対応もできそうなのですが、残念ながら独自プロトコルによるサービスのみであり、実際に使う場合には、かなりの事前準備が必要になっています。
一方、最近ではGoogleやNTTドコモ,東芝デジタルソリューションズ等によるクラウド音声認識サービスも充実してきており、これらのサービスと同様な使い方ができれば、さらに便利に利用可能だと思います。
そこで、Pythonによる独自Webサーバーの実装(PyWebSock)の活用例として、Julius+REST-APIによるクラウドサーバー化を行ってみました。
ここでは、Juliusディクテーションキットを使ったクラウドサービス化について説明していきます。
参考
PyWebSockの応用から派生させたCloudlJulisServerの簡単な説明は、こちらを参照してください。