(57)【特許請求の範囲】
【請求項１】
一般的な音声データを用いて音声ウェイクアップモデルを訓練することであって、前記訓練することが、前記訓練が収束するまで非同期確率的勾配下降方法によって前記一般的な音声データを用いて前記音声ウェイクアップモデルのパラメータを反復最適化することを含む、訓練することと、
キーワード特有の音声データを取得することと、
前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルを訓練することであって、前記キーワード特有の音声データを用いた前記訓練で使用される学習レートが、前記一般的な音声データでの前記音声ウェイクアップモデルの前記訓練で使用されるものより少ない、訓練することと
前記一般的な音声データ及び前記キーワード特有の音声データを用いて訓練された前記音声ウェイクアップモデルに音声データを入力することと、
前記音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、前記音声ウェイクアップモデルが、ディープニューラルネットワーク（ＤＮＮ）及びコネクショニスト時系列分類法（ＣＴＣ）を含む、出力することとを含む、音声ウェイクアップ方法。
【請求項２】
前記一般的な音声データが、大語彙連続音声認識（ＬＶＣＳＲ）コーパスを含む、請求項１に記載の方法。
【請求項３】
前記一般的な音声データを用いて又は前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルを訓練することが、前記一般的な音声データを用いて又は前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルをクロス検証し、前記訓練が収束するかどうかを判断することを含む、請求項１に記載の方法。
【請求項４】
前記音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することが、
前記入力音声データから音響特徴を抽出することと、
各発音音素にそれぞれ対応する前記音響特徴のクラス確率を得るように処理するために、前記音声ウェイクアップモデルに含まれる前記ＤＮＮに前記音響特徴を入力することと、
発音音素シーケンスに対応する音声ウェイクアップ用語の信頼スコアを得るように処理するために、前記音声ウェイクアップモデルに含まれる前記ＣＴＣに前記クラス確率を入力することと、
前記信頼スコアに従ってウェイクアップを実行するかどうかを判断し、判断結果を出力することと
を含む、請求項１に記載の方法。
【請求項５】
前記入力音声データから音響特徴を抽出することが、
指定時間間隔に基づくウインドウで前記入力音声データの音響特徴フレームを抽出することであって、前記音響特徴フレームの各々が、多次元ログフィルタバンクエネルギーである、抽出することと、
複数の隣接する音響特徴フレームをそれぞれ積み重ねることと、
前記入力音声データから抽出された音響特徴として、前記積み重ねた音響特徴フレームをそれぞれ取り入れることと
を含む、請求項４に記載の方法。
【請求項６】
少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサに通信可能に接続されたメモリと
を含む、電子デバイスであって、
前記メモリが、前記少なくとも１つのプロセッサによって実行可能な命令を格納し、前記命令が、
一般的な音声データを用いて音声ウェイクアップモデルを訓練することであって、前記訓練することが、前記訓練が収束するまで非同期確率的勾配下降方法によって前記一般的な音声データを用いて前記音声ウェイクアップモデルのパラメータを反復最適化することを含む、訓練することと、
キーワード特有の音声データを取得することと、
前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルを訓練することであって、前記キーワード特有の音声データを用いた前記訓練で使用される学習レートが、前記一般的な音声データでの前記音声ウェイクアップモデルの前記訓練で使用されるものより少ない、訓練することと
前記一般的な音声データ及び前記キーワード特有の音声データを用いて訓練された前記音声ウェイクアップモデルに音声データを入力することと、
前記音声ウェイクアップモデルから、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、前記音声ウェイクアップモデルが、ディープニューラルネットワーク（ＤＮＮ）及びコネクショニスト時系列分類法（ＣＴＣ）を含む、出力することと
を前記電子デバイスに行わせるように、前記少なくとも１つのプロセッサによって実行される、電子デバイス。
【請求項７】
前記一般的な音声データが、大語彙連続音声認識（ＬＶＣＳＲ）コーパスを含む、請求項６に記載の電子デバイス。
【請求項８】
前記一般的な音声データを用いて又は前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルを訓練することが、前記一般的な音声データを用いて又は前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルをクロス検証し、前記訓練が収束するかどうかを判断することを含む、
請求項６に記載の電子デバイス。
【請求項９】
前記音声ウェイクアップモデルから、音声ウェイクアップを実行するかどうかを判断するための結果を出力することにおいて、前記命令が、
前記音声ウェイクアップモデルによって、前記入力音声データから音響特徴を抽出することと、
各発音音素にそれぞれ対応する前記音響特徴のクラス確率を得るように処理するために、前記音声ウェイクアップモデルに含まれる前記ＤＮＮに前記音響特徴を入力することと、
発音音素シーケンスに対応する音声ウェイクアップ用語の信頼スコアを得るように処理するために、前記音声ウェイクアップモデルに含まれる前記ＣＴＣに前記クラス確率を入力することと、
前記信頼スコアに従ってウェイクアップを実行するかどうかを判断し、判断結果を出力することと
を前記電子デバイスに行わせるように、前記少なくとも１つのプロセッサによって更に実行される、
請求項６に記載の電子デバイス。
【請求項１０】
前記音声ウェイクアップモデルによって、前記入力音声データから音響特徴を抽出することにおいて、前記命令が、
前記音声ウェイクアップモデルによって、指定時間間隔に基づくウインドウで前記入力音声データの音響特徴フレームを抽出することであって、前記音響特徴フレームの各々が、多次元ログフィルタバンクエネルギーである、抽出することと、
複数の隣接する音響特徴フレームをそれぞれ積み重ねることと、
前記入力音声データから抽出された音響特徴として、前記積み重ねた音響特徴フレームをそれぞれ取り入れることと
を前記電子デバイスに行わせるように、前記少なくとも１つのプロセッサによって更に実行される、
請求項９に記載の電子デバイス。
【請求項１１】
命令を格納する非一時的コンピュータ可読記憶媒体であって、前記命令が電子デバイスのプロセッサによって実行される場合に、前記電子デバイスに音声ウェイクアップ方法を実行させ、前記音声ウェイクアップ方法が、
一般的な音声データを用いて音声ウェイクアップモデルを訓練することであって、前記訓練することが、前記訓練が収束するまで非同期確率的勾配下降方法によって前記一般的な音声データを用いて前記音声ウェイクアップモデルのパラメータを反復最適化することを含む、訓練することと、
キーワード特有の音声データを取得することと、
前記キーワード特有の音声データを用いて前記音声ウェイクアップモデルを訓練することであって、前記キーワード特有の音声データを用いた前記訓練で使用される学習レートが、前記一般的な音声データでの前記音声ウェイクアップモデルの前記訓練で使用されるものより少ない、訓練することと
前記一般的な音声データ及び前記キーワード特有の音声データを用いて訓練された前記音声ウェイクアップモデルに音声データを入力することと、
前記音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、前記音声ウェイクアップモデルが、ディープニューラルネットワーク（ＤＮＮ）及びコネクショニスト時系列分類法（ＣＴＣ）を含む、出力することとを含む、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
技術分野
この明細書は、コンピュータソフトウェア技術の分野に関し、より具体的には、音声ウェイクアップ方法、装置及び電子デバイスに関する。
【背景技術】
【０００２】
技術背景
モバイルデバイスの急速な開発と共に、音声関連技術もまた、ますます一般的になりつつある。例えば、音声認識は、ユーザ経験及び自然な人間とコンピュータの相互作用レベルを強化するために、AppleのSiri、MicrosoftのCortana及びAmazonのAlexaのような人気上昇中の会話支援において使用される。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
重要な音声対話技術は、キーワードスポッティング（ＫＷＳ）であり、その技術は、一般に、音声ウェイクアップと呼ぶこともできる。先行技術に基づいて、キーワード特有の音声データに依存しない音声ウェイクアップ解決法が必要とされる。
【課題を解決するための手段】
【０００４】
発明の概要
この明細書の実施形態では、次の技術的問題、すなわち、キーワード特有の音声データに依存しない音声ウェイクアップ解決法が必要とされるという問題を解決するための音声ウェイクアップ方法、装置及び電子デバイスが提供される。
【０００５】
前述の技術的問題を解決するため、この明細書の実施形態は、以下の通り実装される。
【０００６】
この明細書の実施形態において提供される音声ウェイクアップ方法は、
一般的な音声データを用いて訓練された音声ウェイクアップモデルに音声データを入力することと、音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、音声ウェイクアップモデルが、ディープニューラルネットワーク（ＤＮＮ）及びコネクショニスト時系列分類法（ＣＴＣ）を含む、出力することとを含む。
【０００７】
この明細書の実施形態において提供される音声ウェイクアップ装置は、入力モジュール及び音声ウェイクアップモデルを含み、
音声データは、入力モジュールによって、一般的な音声データを用いて訓練された音声ウェイクアップモデルに入力され、音声ウェイクアップモデルは、音声ウェイクアップを実行するかどうかを判断するための結果を出力し、音声ウェイクアップモデルは、ＤＮＮ及びＣＴＣを含む。
【０００８】
この明細書の実施形態において提供される電子デバイスは、
少なくとも１つのプロセッサと、
少なくとも１つのプロセッサに通信可能に接続されたメモリと
を含み、
メモリは、少なくとも１つのプロセッサによって実行可能な命令を格納し、命令は、
一般的な音声データを用いて訓練された音声ウェイクアップモデルに音声データを入力することと、音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、音声ウェイクアップモデルが、ＤＮＮ及びＣＴＣを含む、出力することと
を少なくとも１つのプロセッサが行えるようにするために少なくとも１つのプロセッサによって実行される。
【発明の効果】
【０００９】
この明細書の実施形態において取り入れられる前述の技術的解決法の少なくとも１つは、次の有益な効果を達成することができる。キーワード特有の音声データに依存する代わりに、音声ウェイクアップモデルは、アクセス可能な一般的な音声データを用いて訓練することができ、次いで、訓練済みの音声ウェイクアップモデルは、音声ウェイクアップのために使用することができ、それは、音声ウェイクアップの正確度の改善につながる。
【００１０】
図面の簡単な説明
この明細書の実施形態又は先行技術の技術的解決法をより明確に説明するため、実施形態又は先行技術についての説明で使用される添付の図面を以下で簡単に紹介する。以下で説明される添付の図面はこの明細書で開示される単なるいくつかの実施形態であることは明らかである。当業者は、創造的な取り組みを行うことなく、これらの添付の図面に従って、他の添付の図面をさらに得ることができる。
【図面の簡単な説明】
【００１１】
【図１】実際の適用のシナリオにおけるこの明細書の解決法に関与する全アーキテクチャの概略図である。
【図２】この明細書の実施形態による、音声ウェイクアップ方法の概略フローチャートである。
【図３】この明細書の実施形態による、図２の音声ウェイクアップモデルのフレームワークの概略図である。
【図４】この明細書の実施形態による、実際の適用のシナリオにおける図３の特徴抽出モジュールの特徴抽出の概略図である。
【図５】この明細書の実施形態による、実際の適用のシナリオにおける図３のディープニューラルネットワーク（ＤＮＮ）の概略構造図である。
【図６】この明細書の実施形態による、実際の適用のシナリオにおける図３のコネクショニスト時系列分類法（ＣＴＣ）の概略構造図である。
【図７】この明細書の実施形態による、図２に対応する音声ウェイクアップ装置の概略構造図である。
【発明を実施するための形態】
【００１２】
詳細な説明
この明細書の実施形態では、音声ウェイクアップ方法、装置及び電子デバイスが提供される。
【００１３】
当業者がこの明細書の技術的解決法をより良く理解できるようにするため、この明細書の実施形態の技術的解決法は、この明細書の実施形態の添付の図面を参照して、以下で明確且つ完全に説明する。説明される実施形態は、この出願の実施形態のすべてというよりむしろ、単にそのうちのいくつかであることは明らかである。この明細書の実施形態に基づいて、創造的な取り組みを行うことなく当業者によって得られた他のすべての実施形態はすべて、この出願の保護範囲内に収まるべきである。
【００１４】
理解し易くするため、この明細書の解決法のアイデアは、以下の通り説明される。この明細書では、ディープニューラルネットワーク（ＤＮＮ）及びコネクショニスト時系列分類法（ＣＴＣ）を含む音声ウェイクアップモデルは、一般的な音声データを用いて訓練される。訓練済みの音声ウェイクアップモデルは、音声ウェイクアップのために使用することができ、音声ウェイクアップによってトリガされるユーザが定義したキーワードをサポートすることができる。さらに、音声ウェイクアップモデルに含まれるＤＮＮは、相対的にそれほど複雑ではなく、例えば、３つ又は４つの層（各層に２００若しくは３００のノードを有する）しか有さないため、音声ウェイクアップモデルは、携帯電話及び家庭用電化製品などの低電力デバイスにおいて使用することができる。音声ウェイクアップモデルは、ＣＴＣ−ＫＷＳと呼ぶことができ、ＫＷＳは、ここでは、背景技術において言及されているキーワードスポッティングである。
【００１５】
ＤＮＮは、多層パーセプトロンであり、入力層と出力層との間に隠れ層を有し、複雑な非線形関係をシミュレーションすることができる。ＣＴＣは、ラベルタグ付けタスクを実行するように構成された分類法であり、入力と出力との間の強制アラインメントを必要としない。
【００１６】
図１は、実際の適用のシナリオにおけるこの明細書の解決法に関与する全アーキテクチャの概略図である。全アーキテクチャでは、主に、２つの部分、すなわち、音声データ及び音声ウェイクアップモデルが関与する。音声ウェイクアップモデルは、ＤＮＮ及びＣＴＣを含む。音声ウェイクアップは、処理のために音声ウェイクアップモデルに音声データを入力することによって実装することができる。
【００１７】
この明細書の解決法は、前述のアイデア及び全アーキテクチャに基づいて、以下で詳細に説明する。
【００１８】
図２は、この明細書の実施形態による、音声ウェイクアップ方法の概略フローチャートである。プログラムの観点からすれば、フローの実行ボディは、サーバ又は端末上のプログラム（例えば、モデル訓練プログラム、音声認識プログラム、音声ウェイクアップアプリケーションなど）であり得る。デバイスの観点からすれば、可能なフローの実行ボディは、これらに限定されないが、サーバ又は端末として機能することができる次のデバイスの少なくとも１つ、すなわち、携帯電話、タブレットコンピュータ、着用可能スマートデバイス、自動車マシン、パーソナルコンピュータ、中型コンピュータ、コンピュータクラスタなどである。
【００１９】
図２のフローは、以下のステップを含み得る。
【００２０】
Ｓ２０２では、一般的な音声データを用いて訓練された音声ウェイクアップモデルに音声データが入力される。
【００２１】
この明細書の実施形態では、音声は、音声データを得るために、実行ボディ又は別のボディによってモニタすることができる。音声がモニタされる際、ユーザは、音声ウェイクアップを実行するための音声ウェイクアップモデルをトリガするために、既定のキーワードをはっきり言うことができる。
【００２２】
Ｓ２０４では、音声ウェイクアップモデルは、音声ウェイクアップを実行するかどうかを判断するための結果を出力し、音声ウェイクアップモデルは、ＤＮＮ及びＣＴＣを含む。
【００２３】
この明細書の実施形態では、背景において言及されているキーワード特有の音声データと比べると、ステップＳ２０２において説明される一般的な音声データは、それほど制限されず、従って、容易にアクセス可能である。例えば、その一般的な音声データは、大語彙連続音声認識（ＬＶＣＳＲ）コーパス又は同様のものであり得る。
【００２４】
この明細書の実施形態では、音声認識モデルに含まれるＤＮＮは、入力音声特徴に対応する発音音素シーケンスの事後確率分布を予測することができる。予測された発音音素シーケンスに対応する信頼スコアを与えるため、ＤＮＮの後にはＣＴＣを続けることができる。音声ウェイクアップを実行するかどうかを判断するための結果は、信頼スコアに基づいて出力することができる。
【００２５】
図２の方法を用いると、キーワード特有の音声データに依存する代わりに、音声ウェイクアップモデルは、アクセス可能な一般的な音声データを用いて訓練することができ、さらに、訓練済みの音声ウェイクアップモデルは、音声ウェイクアップのために使用することができ、それは、音声ウェイクアップの正確度の改善につながる。
【００２６】
また、音声ウェイクアップモデルは、キーワード特有の音声データの制限を打破し、ユーザが定義したトリガされたキーワードをサポートする。従って、実際の適用では、音声ウェイクアップモデルは、より便利で且つ柔軟であり、ユーザ経験の改善につながる。
【００２７】
図２の方法に基づいて、方法のいくつかの具体的な実装形態の解決法及び拡張された解決法は、本明細書の実施形態においてさらに提供されており、以下で説明する。
【００２８】
理解し易くするため、この明細書の実施形態では、図２の音声ウェイクアップモデルのフレームワークの概略図は、図３に示されるように提供される。
【００２９】
図３のフレームワークは、特徴抽出モジュール、ＤＮＮ及びＣＴＣを順番に含む。ステップＳ２０４では、音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することは、具体的には、
入力音声データから音響特徴を抽出することと、
各発音音素にそれぞれ対応する音響特徴のクラス確率を得るように処理するために、音響特徴をＤＮＮに入力することと、
発音音素シーケンスに対応する音声ウェイクアップ用語の信頼スコアを得るように処理するために、クラス確率をＣＴＣに入力することと、
信頼スコアに従ってウェイクアップを実行するかどうかを判断し、判断結果を出力することと
を含み得る。
【００３０】
図３のフレームワークの様々な部分は、前述の音声ウェイクアップのフローに従って、図４、図５及び図６と組み合わせてさらに詳細に説明する。
【００３１】
図４は、この明細書の実施形態による、実際の適用のシナリオにおける図３の特徴抽出モジュールの特徴抽出の概略図である。
【００３２】
図４では、現時点において「Zhi Ma Kai Men」の音声部分がモニタされる際、それに対応するターゲットラベルシーケンスは、発音音素シーケンスであり、「zhi1ma2kai1men2」として表現することができ、数値は、トーンを表す。最初と最後などの音素に加えて、トーン音素は、モデリング単位としても考慮される。実際の適用では、文脈非依存又は文脈依存の音素をすべて考慮することができ、その中でも後者の方が多い。しかし、ＤＮＮの後続の演算負荷の低減を考慮すると、文脈非依存の音素（具体的には、ブランク単位を含む７２の文脈非依存の中国語の音素単位）のみを考慮することが好ましい。
【００３３】
音響特徴は、特徴抽出モジュールによって、入力音声データから抽出することができ、具体的には、指定時間間隔に基づくウインドウで入力音声データの音響特徴フレームを抽出することであって、音響特徴フレームの各々が、多次元ログフィルタバンクエネルギーである、抽出することと、複数の隣接する音響特徴フレームをそれぞれ積み重ねることと、一般的な音声データから抽出された音響特徴として、積み重ねた音響特徴フレームをそれぞれ取り入れることとを含み得、さらに、積み重ねた音響特徴フレームは、ＤＮＮの入力としてそれぞれ使用することができる。
【００３４】
ログフィルタバンクエネルギーは、ログフィルタバンクによって抽出されたエネルギー信号を指し、モデル処理を容易にするためにこの明細書の解決法におけるベクトルとして表現することができる。前述の多次元は、ベクトルの複数の次元を表す。
【００３５】
例えば、指定された時間ウインドウの長さは、２５ミリ秒であり得、各時間ウインドウは、１０ミリ秒移動することができ、多次元は、例えば、４０次元であり得る。音声データの時間軸上では、０〜２５のミリ秒は、１つのウインドウとして使用することができ、４０次元ログフィルタバンクエネルギーは、第１の音響特徴フレームとして機能するように音声データから相応に抽出され、１０〜３５のミリ秒は、１つのウインドウとして使用することができ、４０次元ログフィルタバンクエネルギーは、第２の音響特徴フレームとして機能するように音声データから相応に抽出され、複数の音響特徴フレームは、同じ方法で抽出することができる。
【００３６】
さらに、複数の隣接する音響特徴フレームを積み重ねる目的は、現在のフレームの文脈からより多くの情報を可能にすることであり、それは、後続の予測結果の正確度の改善につながる。上記の例に続いて、現在のフレーム、現在のフレームの前の隣接する連続的な１０個のフレーム及び現在のフレームの後の隣接する連続的な５個のフレームは、例えば、後続のＤＮＮに入力するために６４０次元の積み重ね特徴を得るように積み重ねることができる。それに加えて、積み重ね特徴の次元に対してケプストラム平均及び分散正規化を実行することができ、次いで、逆方向入力を実行することができる。
【００３７】
前述の例において取り入れられた特徴抽出方法及びパラメータは、単なる例示的なものであり、実際の適用では、必要に応じて調整できることに留意すべきである。
【００３８】
図５は、この明細書の実施形態による、実際の適用のシナリオにおける図３のＤＮＮの概略構造図である。
【００３９】
図５では、ＤＮＮの様々なニューロンは、完全に接続されている。図３の特徴抽出モジュールによって抽出された音響特徴は、ＤＮＮに入力される。ＤＮＮは、以下の関数マッピングに従って、入力音響特徴
【数１】
0006877558.tif 000002
と出力層のモデリング単位ｊとの間の関係を説明することができる。
【数２】
0006877558.tif 000003
式中、
【数３】
0006877558.tif 000004
は、隠れ層の出力であり、
【数４】
0006877558.tif 000005
及び
【数５】
0006877558.tif 000006
はそれぞれ、重み及びオフセットパラメータであり、ｎｉは、ｉ番目の層上のノードの数であり、θ＝｛Ｗｉ，Ｂｉ｝であり、「Ｔ」は、行列の転置を示し、Ｎは、隠れ層の数であり、σは、非線形活性化関数であり、例えば、正規化線形ユニット（ＲｅＬＵ）関数σ（ｚ）＝ｍａｘ（ｚ，０）である。式ＩＩＩは、ソフトマックス関数であり、ラベル単位ｊの推定事後を表す。
【００４０】
実際の適用では、ＣＴＣと併せて、再帰型ニューラルネットワーク（ＲＮＮ）を使用することもできる。しかし、背景におけるものなどの訓練データが制限される事例では、モバイルデバイスの最小演算及び電力消費量要件は、ＣＴＣと併せてＤＮＮを使用することによって、より容易に満たすことができる。演算の複雑性を低減するため、隠れ層に約数百のノードを有するＤＮＮがより適している。
【００４１】
図６は、この明細書の実施形態による、実際の適用のシナリオにおける図３のＣＴＣの概略構造図である。
【００４２】
ＣＴＣは、順次ラベルタスク用に特に設計される。入力特徴とターゲットラベルとの間のフレームレベルアラインメントのための交差エントロピー基準とは異なり、ＣＴＣは、音声データとラベルシーケンス（例えば、音素、文字など）との間のアラインメントを自動的に学習することを目標とし、それにより、データの強制アラインメントの必要性が排除され、入力は、必ずしもラベル長さと同じではない。
【００４３】
図６では、指定されたモデリング単位は、Ｌから抽出され、ＣＴＣは、ＤＮＮのソフトマックス層に位置する。ＤＮＮは、｜Ｌ｜単位及びブランク単位から構成される。不確実性の間はシンボルは相応に出力されないため、ブランク単位の導入は、ラベル予測の負担を軽減する。
【００４４】
【数６】
0006877558.tif 000007
は、ＤＮＮが時間ステップｔにおいてｊを出力する確率として定義される。フレーム長さＴの入力シーケンスｘＴ及びターゲットラベルｌ≦Ｔは与えられており、ｌｉ∈Ｌである。ＣＴＣパスπ＝（π０，．．．，πＴ−１）は、フレームレベルラベルシーケンスであり、繰り返された非ブランクラベル及びブランク単位の出現をＣＴＣパスが可能にするという点で、ｌとは異なる。
【００４５】
ＣＴＣパスπは、繰り返されたラベル及びブランク単位を削除することによって、その対応するラベルシーケンスｌにマッピングすることができる。例えば、τ（”ａａ−ｂ−ｃ”）＝τ（”ａｂｂ−ｃｃ−”）＝”ａｂｃ”である。多対１のマッピング関数は、τとして定義され、「−」はブランクを表す。ｘＴが与えられており、各時間ステップの出力確率条件が独立していると想定される場合は、パスπの確率は、
【数７】
0006877558.tif 000008
である。
【００４６】
次いで、ｌの確率は、ｌにマッピングされたすべてのパスの確率の総和を求めることによって、τに基づいて計算することができる。実際の適用では、計算の観点から、ＣＴＣ上ですべてのパスの総和を求めることは面倒である。この問題に関し、順方向及び逆方向ダイナミックプログラミングアルゴリズムを取り入れることができる。可能なすべてのＣＴＣパスは、まさに図６に示されるように、アルゴリズムに基づいて、グリッドとしてコンパクトに表される。
【００４７】
訓練時、ＣＴＣは、θ＊＝ａｒｇｍｉｎθΣ（ｘ，ｌ）∈Ｓ−ｌｏｇ（ｐ（ｌ│ｘ；θ））を可能にすることを目標とし、Ｓは、使用される訓練データを表す。復号時、ＣＴＣによって出力された信頼スコアが設定閾値より大きい際は、検出エンジンは、肯定的な決定を相応に行うことができ、肯定的な決定は、対応するキーワードが検出されていると考えることができる。設定閾値は、検証データセットに基づいて微調整することができる。
【００４８】
この明細書の実施形態では、モデルは、訓練が収束するまで音声ウェイクアップモデルのパラメータを反復最適化するために、勾配下降方法によって、好ましくは、非同期ランダム勾配下降方法によって訓練することができる。
【００４９】
例えば、ＤＮＮ及びＣＴＣは、グラフィクス処理ユニット（ＧＰＵ）を有するサーバ上で訓練することができる。ネットワークパラメータは、（−０．０２，０．０２）の範囲内で均一に分布するように無作為に初期化され、初期の学習レートは０．００８であり、運動量は０．９である。
【００５０】
理解し易くするため、学習レート及びその関数は、以下の通り説明する。
【００５１】
学習レートは、勾配下降方法で使用されるパラメータである。勾配下降方法では、最初に解を初期化することができ、この解に基づいて、移動方向及び移動ステップサイズが決定され、その結果、初期の解が方向及びステップサイズに従って移動した後、目的関数の出力を低減することができる。次いで、その解は新しい解に更新され、次の移動方向及び次のステップサイズが連続的に検索され、このプロセスが反復実行された後、目的関数が比較的小さくなるように、目的関数は絶えず減少し続け、最終的に解が見出される。解を見出すプロセスでは、ステップサイズが大き過ぎて、検索が注意深く行われない場合は、良い解が回避される恐れがあり、ステップサイズが小さ過ぎる場合は、解を見出すプロセスは、遅過ぎる速度で進むことになる。従って、ステップサイズを適切に設定することが重要である。学習レートは、オリジナルのステップサイズの調整のために使用される。勾配下降方法では、各調整におけるステップサイズは、学習レートに勾配を乗じたものに等しい。
【００５２】
前述の訓練では、検証データセットを使用して、音声ウェイクアップモデルをクロス検証し、訓練が収束するかどうかを判断することもできる。
【００５３】
音声ウェイクアップモデルの性能及びロバスト性を向上させるため、この明細書の解決法では、より多くの対策がさらに提供される。
【００５４】
対策の１つは、適応訓練である。具体的には、一般モデルは、いくつかの特定のキーワードの音声データを用いて、比較的低い学習レートで微調整することができる。この考慮に基づいて、音声ウェイクアップモデルが訓練される際は、キーワード特有の音声データを取得することもでき、音声ウェイクアップモデルは、キーワード特有の音声データを用いて訓練することができる。訓練で使用される学習レートは、一般的な音声データでの音声ウェイクアップモデルの訓練で使用されるものより少ない。
【００５５】
別の対策は、転移学習である。具体的には、ネットワークパラメータは、無作為に初期化することはできないが、出力層の細粒単位を除いてターゲットネットワークと同じトポロジ構造を有する既存の対応するネットワークを参照することができ、交差エントロピー基準を使用することができる。転移学習は、訓練データが大きいスケールを有する際に特に考慮することができる。
【００５６】
他の対策は、例えば、乗算を加速させるためにアーキテクチャ関連のベクトル命令（例えば、ARMのNEON）を使用することなどを含む。
【００５７】
以前に言及されるように、この明細書の解決法は、ユーザが定義した音声ウェイクアップキーワードを容易にサポートすることができる。そのようなユーザが定義したキーワードに対応するターゲットラベルシーケンスは、辞書を通じて決定することができる。
【００５８】
この明細書の実施形態において提供される音声ウェイクアップ方法は、前述で説明した通りである。本明細書の同じアイデアに基づいて、図７に示されるように、この明細書の実施形態では、対応する装置がさらに提供される。
【００５９】
図７は、この明細書の実施形態による、図２に対応する音声ウェイクアップ装置の概略構造図である。破線ボックスは、オプションのモジュールを表す。装置は、図２のフローの実行ボディ上に位置し得、入力モジュール７０１及び音声ウェイクアップモデル７０２を含む。
【００６０】
音声データは、入力モジュール７０１によって、一般的な音声データを用いて訓練された音声ウェイクアップモデル７０２に入力され、音声ウェイクアップモデル７０２は、音声ウェイクアップを実行するかどうかを判断するための結果を出力し、音声ウェイクアップモデルは、ＤＮＮ及びＣＴＣを含む。
【００６１】
任意選択により、一般的な音声データは、ＬＶＣＳＲコーパスを含む。
【００６２】
任意選択により、装置は、訓練モジュール７０３をさらに含み、
訓練モジュール７０３によって、一般的な音声データを用いて音声ウェイクアップモデルを訓練することは、
訓練モジュール７０３によって、訓練が収束するまで非同期確率的勾配下降方法によって一般的な音声データを用いて音声ウェイクアップモデルのパラメータを反復最適化すること
を含む。
【００６３】
任意選択により、訓練モジュール７０３は、キーワード特有の音声データをさらに取得し、
キーワード特有の音声データを用いて音声ウェイクアップモデルを訓練し、訓練で使用される学習レートは、一般的な音声データでの音声ウェイクアップモデルの訓練で使用されるものより少ない。
【００６４】
任意選択により、訓練モジュール７０３は、訓練の検証データセットを用いて、音声ウェイクアップモデルをクロス検証し、訓練が収束するかどうかを判断する。
【００６５】
任意選択により、音声ウェイクアップモデル７０２によって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することは、具体的には、
音声ウェイクアップモデル７０２によって、入力音声データから音響特徴を抽出することと、
各発音音素にそれぞれ対応する音響特徴のクラス確率を得るように処理するために、音声ウェイクアップモデル７０２に含まれるＤＮＮに音響特徴を入力することと、
発音音素シーケンスに対応する音声ウェイクアップ用語の信頼スコアを得るように処理するために、音声ウェイクアップモデル７０２に含まれるＣＴＣにクラス確率を入力することと、
信頼スコアに従ってウェイクアップを実行するかどうかを判断し、判断結果を出力することと
を含む。
【００６６】
任意選択により、音声ウェイクアップモデル７０２によって、入力音声データから音響特徴を抽出することは、具体的には、
音声ウェイクアップモデル７０２によって、指定時間間隔に基づくウインドウで入力音声データの音響特徴フレームを抽出することであって、音響特徴フレームの各々が、多次元ログフィルタバンクエネルギーである、抽出することと、
複数の隣接する音響特徴フレームをそれぞれ積み重ねることと、
モニタされた音声から抽出された音響特徴として、積み重ねた音響特徴フレームをそれぞれ取り入れることと
を含む。
【００６７】
本明細書の同じアイデアに基づいて、この明細書の実施形態では、対応する電子デバイスがさらに提供され、電子デバイスは、
少なくとも１つのプロセッサと、
少なくとも１つのプロセッサに通信可能に接続されたメモリと
を含み、
メモリは、少なくとも１つのプロセッサによって実行可能な命令を格納し、命令は、
一般的な音声データを用いて訓練された音声ウェイクアップモデルに音声データを入力することと、音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、音声ウェイクアップモデルが、ＤＮＮ及びＣＴＣを含む、出力することと
を少なくとも１つのプロセッサが行えるようにするために少なくとも１つのプロセッサによって実行される。
【００６８】
本明細書の同じアイデアに基づいて、この明細書の実施形態では、コンピュータ実行可能命令が格納された対応する不揮発性のコンピュータ記憶媒体がさらに提供され、コンピュータ実行可能命令は、
一般的な音声データを用いて訓練された音声ウェイクアップモデルに音声データを入力することと、音声ウェイクアップモデルによって、音声ウェイクアップを実行するかどうかを判断するための結果を出力することであって、音声ウェイクアップモデルが、ＤＮＮ及びＣＴＣを含む、出力することと
を行うように構成される。
【００６９】
前述では、この明細書の具体的な実施形態について説明してきた。他の実施形態は、添付の請求項の範囲内に収まる。いくつかの状況下では、請求項で説明される動作又はステップは、実施形態のものとは異なる順番で実行することができ、それでもなお、所望の結果を達成することができる。それに加えて、添付の図面で描写されるプロセスは、必ずしも示される特定の順番又は連続した順番に従って所望の結果を達成する必要があるわけではない。いくつかの実装方法では、マルチタスク処理や並列処理も可能であるか又は有利であり得る。
【００７０】
本明細書の実施形態は、段階的に説明されており、実施形態の同一の又は同様の部分は、互いに参照し合って得ることができ、各実施形態は、他の実施形態とは異なる部分を重視する。特に、装置、電子デバイス及び不揮発性のコンピュータ記憶媒体の実施形態は、基本的には、方法の実施形態と同様であり、従って、簡単に説明している。関連部分に関しては、方法の実施形態の部分の説明を参照されたい。
【００７１】
この明細書の実施形態において提供される装置、電子デバイス及び不揮発性のコンピュータ記憶媒体は、方法に対応する。従って、装置、電子デバイス及び不揮発性のコンピュータ記憶媒体もまた、対応する方法のものと同様の有益な技術効果を有する。方法の有益な技術効果については前述で詳細に説明してきたため、装置、電子デバイス及び不揮発性のコンピュータ記憶媒体の有益な技術効果は、ここで詳細に述べることはしない。
【００７２】
１９９０年代には、技術の改善は、ハードウェア上の改善（例えば、ダイオード、トランジスタ、スイッチなどの回路構造上の改善）又はソフトウェア上の改善（方法手順上の改善）として明らかに区別することができた。しかし、技術の開発と共に、現在の多くの方法手順の改善は、ハードウェア回路構造上の直接的な改善と考えることができる。ほぼすべての設計者は、対応するハードウェア回路構造を得るために、改善された方法手順をハードウェア回路にプログラムする。従って、ハードウェアエンティティモジュールを使用することによって方法手順の改善を実装することはできないと想定することは不適切である。例えば、プログラマブルロジックデバイス（ＰＬＤ）（例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ））は、そのような集積回路であり、その論理機能は、ユーザプログラミングデバイスによって決定される。設計者は、彼ら自身によって、チップ製造業者に専用集積回路チップを設計及び製造するように依頼することなく、デジタルシステムをＰＬＤに「組み込む」ようにプログラムする。その上、現在は、プログラミングは、大抵は、集積回路チップを手作業で製造する代わりに、論理コンパイラソフトウェアを使用することによって実装される。論理コンパイラソフトウェアは、プログラムの開発及び記入を行うために使用されるソフトウェアコンパイラと同様であり、コンパイルの前のオリジナルのコードもまた、特定のプログラミング言語（ハードウェア記述言語（ＨＤＬ）と呼ばれる）を使用することによって記入する必要があり、アドバンストブール演算式言語（ＡＢＥＬ）、Alteraハードウェア記述言語（ＡＨＤＬ）、Confluence、Cornell Universityプログラミング言語（ＣＵＰＬ）、HDCal、Java（登録商標）ハードウェア記述言語（ＪＨＤＬ）、Lava、Lola、MyHDL、PALASM、Rubyハードウェア記述言語（ＲＨＤＬ）など、多くのタイプのＨＤＬがあり、その中でも、今は、超高速集積回路ハードウェア記述言語（ＶＨＤＬ）及びVerilogが最も一般的に使用される。また、当業者は、論理方法手順を実装するためのハードウェア回路が、上記のいくつかのハードウェア記述言語を使用して方法手順をやや論理的にプログラムし、それを集積回路にプログラムすることによって、容易に得られることも知るべきである。
【００７３】
コントローラは、任意の適切な方法で実装することができる。例えば、コントローラは、マイクロプロセッサ又はプロセッサや、マイクロプロセッサ又はプロセッサによって実行可能なコンピュータ可読プログラムコード（ソフトウェア若しくはファームウェアなど）を格納するコンピュータ可読媒体や、論理ゲート、スイッチ、特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックコントローラ及び埋め込みマイクロコントローラの形態を採用することができる。コントローラの例は、これらに限定されないが、次のマイクロコントローラ、すなわち、ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20及びSilicone Labs C8051F320を含む。メモリのコントローラは、メモリの制御論理の一部としてさらに実装することができる。また、当業者は、純粋なコンピュータ可読プログラムコードを使用することによってコントローラを実装することに加えて、論理ゲート、スイッチ、ＡＳＩＣ、プログラマブルロジックコントローラ及び埋め込みマイクロコントローラの形態での同じ機能の実装をコントローラが行えるように、方法ステップを論理的にプログラムすることが完全に実現可能であることも知っている。従って、そのようなコントローラは、ハードウェアコンポーネントと考えることができ、コントローラに含まれて様々な機能を実装するように構成された装置もまた、ハードウェアコンポーネントの内部の構造と考えることができる。或いは、様々な機能を実装するように構成された装置は、方法を実装するように構成されたソフトウェアモジュールとハードウェアコンポーネントの内部の構造の両方と考えることさえもできる。
【００７４】
前述の実施形態において示されるシステム、装置、モジュール又はユニットは、具体的には、コンピュータチップ又はエンティティによって実装することも、特定の機能を有する製品によって実装することもできる。典型的な実装デバイスはコンピュータである。具体的には、例えば、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、Ｅメールデバイス、ゲームコンソール、タブレットコンピュータ、着用可能デバイス又はこれらのデバイスの任意の組合せであり得る。
【００７５】
説明し易くするため、装置は、機能に基づいて様々なユニットに分割され、ユニットは、別々に説明される。この明細書の実装形態では、様々なユニットの機能は、ソフトウェア及び／又はハードウェアの１つ又は複数の断片において実装することもできる。
【００７６】
当業者は、この明細書の実施形態を方法、システム又はコンピュータプログラム製品として提供できることを理解すべきである。従って、この明細書の実施形態は、完全なハードウェア実施形態、完全なソフトウェア実施形態、又は、ソフトウェアとハードウェアを組み合わせた実施形態の形態で実装することができる。その上、この明細書の実施形態は、コンピュータ使用可能プログラムコードを含む１つ又は複数のコンピュータ使用可能記憶媒体（これらに限定されないが、磁気ディスクメモリ、ＣＤ−ＲＯＭ、光メモリ及び同様のもの）上で実装されたコンピュータプログラム製品の形態であり得る。
【００７７】
この明細書は、この明細書の実施形態による、方法、デバイス（システム）及びコンピュータプログラム製品のフローチャート及び／又はブロック図を参照して説明される。コンピュータプログラム命令は、フローチャート及び／又はブロック図の各プロセス及び／又はブロック並びにフローチャート及び／又はブロック図のプロセス及び／又はブロックの組合せを実装するために使用できることを理解すべきである。コンピュータプログラム命令は、機械を生成するために、汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ又は別のプログラマブルデータ処理デバイスのプロセッサに提供することができ、その結果、コンピュータ又は別のプログラマブルデータ処理デバイスのプロセッサは、フローチャートの１つ若しくは複数のプロセス及び／又はブロック図の１つ若しくは複数のブロックにおいて指定された機能を実装するように構成された装置を生成するように命令を実行することができる。
【００７８】
また、コンピュータプログラム命令は、特定の方法で動作するようにコンピュータ又は別のプログラマブルデータ処理デバイスを導くことができるコンピュータ可読メモリに格納することもでき、特定の方法は、コンピュータ可読メモリに格納された命令が命令装置を含む製造品を生成し、命令装置がフローチャートの１つ若しくは複数のプロセス及び／又はブロック図の１つ若しくは複数のブロックによって指定された機能を実装するようなものである。
【００７９】
また、コンピュータプログラム命令は、コンピュータ又は別のプログラマブルデータ処理デバイスにロードすることもでき、その結果、一連の動作ステップは、コンピュータ実装処理を生成するためにコンピュータ又は別のプログラマブルデバイス上で実行され、従って、コンピュータ又は別のプログラマブルデバイスで実行された命令は、フローチャートの１つ若しくは複数のプロセス及び／又はブロック図の１つ若しくは複数のブロックにおいて指定された機能を実装するためのステップを提供する。
【００８０】
典型的な構成では、コンピューティングデバイスは、１つ又は複数の中央処理装置（ＣＰＵ）、入力／出力インタフェース、ネットワークインタフェース及びメモリを含む。
【００８１】
メモリは、揮発性メモリ、ランダムアクセスメモリ（ＲＡＭ）及び／又は不揮発性メモリ（例えば、読み取り専用メモリ（ＲＯＭ）若しくはフラッシュＲＡＭ）などのコンピュータ可読媒体を含み得る。メモリは、コンピュータ可読媒体の例である。
【００８２】
コンピュータ可読媒体は、不揮発性又は揮発性媒体、及び、可動又は非可動媒体を含み、いかなる方法又は技術によっても情報格納を達成することができる。情報は、コンピュータ可読命令、データ構造及びプログラムのモジュール又は他のデータであり得る。コンピュータの記憶媒体の例は、これらに限定されないが、相変化メモリ（ＰＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、他のタイプのＲＡＭ、ＲＯＭ、電気的消去型プログラム可能読み取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ若しくは他のメモリ技術、コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）若しくは他の光学記憶装置、カセットテープ、磁気テープ／磁気ディスク記憶装置若しくは他の磁気記憶装置、又は、他の任意の非伝送媒体を含み、コンピューティングデバイスにアクセス可能な情報を格納するために使用することができる。このテキストの定義によれば、コンピュータ可読媒体は、変調データ信号及び搬送波などの一時的な媒体を含まない。
【００８３】
さらに、「含む（include、comprise）」という用語又は他の任意のその変形例は、非排他的包含をカバーすることが意図され、その結果、一連の要素を含むプロセス、方法、商品又はデバイスは、その要素を含むだけではなく、明示的にリストされていない他の要素も含むか、或いは、プロセス、方法、商品又はデバイス固有の要素をさらに含むことに留意すべきである。さらなる制限なしでは、「（a/an）…を含む」によって定義される要素は、さらなる要素を含むプロセス、方法、商品又はデバイスが他の同一の要素を有することを除外しない。
【００８４】
この明細書は、コンピュータによって実行されるコンピュータ実行可能命令（例えば、プログラムモジュール）の一般的な文脈において説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するか又は特定の抽象データタイプを実装するために使用されるルーチン、プログラム、オブジェクト、アセンブリ、データ構造及び同様のものを含む。また、この明細書は、分散型コンピューティング環境において実装することもできる。これらの分散型コンピューティング環境では、タスクは、通信ネットワークを介して接続されたリモート処理デバイスを使用することによって実行される。分散型コンピューティング環境では、プログラムモジュールは、記憶装置を含むローカル及びリモートコンピュータ記憶媒体に位置し得る。
【００８５】
本明細書の実施形態は、段階的に説明されており、実施形態の同一の又は同様の部分は、互いに参照し合って得ることができ、各実施形態は、他の実施形態とは異なる部分を重視する。特に、システムの実施形態は、基本的には、方法の実施形態と同様であり、従って、簡単に説明している。関連部分に関しては、方法の実施形態の部分の説明を参照されたい。
【００８６】
前述の説明は、この明細書の単なる実施形態であり、この出願を制限するために使用されない。当業者にとって、この出願は、様々な変形及び変化を有し得る。この出願の精神及び原理から逸脱することなく行われたいかなる変更、同様の置換、改善及び同様のものは、この出願の請求項の範囲に含まれるべきである。
【図１】
0006877558.tif 000009
【図２】
0006877558.tif 000010
【図３】
0006877558.tif 000011
【図４】
0006877558.tif 000012
【図５】
0006877558.tif 000013
【図６】
0006877558.tif 000014
【図７】
0006877558.tif 000015