11

私は、mfccと隠れマルコフモデルを使用した音声認識のための概念証明システムを開発しました。既知の音でシステムをテストすると有望な結果が得られます。未知の音が入力されたときにシステムに最も近い一致が返ってきますが、スコアはそれが不明な音であることを究明するためにはそれほど顕著ではありません。例:隠れマルコフモデルの閾値処理

私は3つの隠れマルコフモデルウォータータップから出てくる水と机の上をノックするためのもの。それから私は目に見えないデータ上でそれらをテストし、次の結果を得る:

ここ
input: speech 
HMM\knocking: -1213.8911146444477 
HMM\speech: -617.8735676792728 
HMM\watertap: -1504.4735097322673 

So highest score speech which is correct 

input: watertap 
HMM\knocking: -3715.7246152783955 
HMM\speech: -4302.67960438553 
HMM\watertap: -1965.6149147201534 

So highest score watertap which is correct 

input: knocking 
HMM\filler -806.7248912250212 
HMM\knocking: -756.4428782636676 
HMM\speech: -1201.686687761133 
HMM\watertap: -3025.181144273698 

So highest score knocking which is correct 

input: unknown 
HMM\knocking: -4369.1702184688975 
HMM\speech: -5090.37122832872 
HMM\watertap: -7717.501505674925 

入力は不明音ですが、しきい値/ごみフィルタリングのためのシステムが存在しないとして、それはまだ最も近いものを返します。

OOV(ボキャブラリ)の音を出すキーワードでは、ガベージやフィラーモデルを使用してサウンドをフィルタリングすることができますが、これは未知の単語の有限集合を使用して訓練されています私はシステムが録音するかもしれないすべての音を知りません。

同様の問題は、音声認識システムでどのように解決されますか?偽陽性を避けるために私の問題を解決するにはどうすればよいですか?

+2

これはCross Validatedに移動する必要があります。 – ziggystar

+3

私はこれがCross Validatedのより多くの(そしてより良い修飾された)注意を得ることに同意します。悲しいことに、バットシグナル(別名「十分な許可を得た十分な眼球」)が消されているように見えるので、Radekはそこに置く必要があります。 (「所属」には、CVのオプションや、所属先を手動で指定するオプションはありません。 – Godeke

答えて

3

他の言葉を拒否するには、フィラーモデルが必要です。

これは統計的仮説検定です。あなたは2つの仮説を持っています(単語は知られていて、単語は不明です)。決定を下すには、各仮説の確率を見積もる必要があります。

フィラーモデルは、あなたが持っているスピーチから訓練されています。ちょうど違う方法で、たとえば、スピーチサウンドのための単一のガウス型です。ジェネリックフィラーモデルのスコアと単語HMMのスコアを比較して決定します。より詳細な情報と高度なアルゴリズムについては、キーワードスポッティングに関する任意の論文をチェックすることができます。この論文は、良いレビューがあります。データマイニングへの応用の演説で

ACOUSTICキーワードスポッティングを AJのKishan Thambiratnam

http://eprints.qut.edu.au/37254/1/Albert_Thambiratnam_Thesis.pdf

1

だから私がやったことです:私は、フィラーモデルの私の簡易版を作成しました。ウォータータップ・サウンド、ノッキング・サウンド、スピーチ・サウンドを表すそれぞれのhmmは、それぞれ0.3秒から10秒の様々な長さの30,50,90音のトレーニング・セットからの音によって訓練された別々の6状態のHmmである。次に、ノッキング、ウォータータップ、スピーチのすべてのトレーニングセットサウンドからなる1つの状態のフィラーモデルを作成しました。したがって、モデルのスコアが与えられたサウンドのほうがフィラーのスコアよりも大きい場合、サウンドは認識されません。それ以外の場合は、未知のサウンドです。私は実際には大きなデータを持っていませんが、私は偽陽性の拒否のための次のテストと、見えない音の真の肯定的な拒絶を予測しました。

true positives rejection 
knocking 1/11 = 90% accuracy 
watertap 1/9 = 89% accuracy 
speech 0/14 = 100% accuracy 


false positives rejection 
Tested 7 unknown sounds 
6/7 = 86% accuracy 

したがって、この簡単なテストから、私はそれが十分ではないかもしれない奇妙な感覚を持っているが、このアプローチは、合理的な結果をもたらすと結論付けることができます。

0

識別モデルは、生成モデルよりも分類タスクが優れている傾向があります。

特別に設計されたCRFまたは最大マージンのクラシファイア(構造化されたSVM)を使用して、このタスクのパフォーマンスを向上させることは間違いありません。

このペーパー(http://ttic.uchicago.edu/~jkeshet/papers/KeshetGrBe07。pdf)は、あなたと同様の分類問題について論じており、マージンマージンがフィラーモデルの生成アプローチよりも優れていることを示しています。

私が説明したことを行うことができるものは何もありませんが、何らかの努力でsvm-structを拡張できる可能性があります。 (hmm-svmの実装はあなたの問題では機能しません。なぜなら、任意に接続された隠れた状態構造を学ぶのではなく、隠し状態構造をあらかじめ指定する必要があるからです)。

関連する問題