(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022028772
(43)【公開日】2022-02-16
(54)【発明の名称】オーディオデータおよび画像データに基づいて人の発声を解析する車載装置および発声処理方法、ならびにプログラム
(51)【国際特許分類】
G10L 15/10 20060101AFI20220208BHJP
G10L 15/16 20060101ALI20220208BHJP
G10L 15/25 20130101ALI20220208BHJP
G10L 15/00 20130101ALI20220208BHJP
【FI】
G10L15/10 400K
G10L15/16
G10L15/25
G10L15/00 200J
【審査請求】未請求
【請求項の数】28
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2021183302
(22)【出願日】2021-11-10
(62)【分割の表示】P 2019152908の分割
【原出願日】2019-08-23
(71)【出願人】
【識別番号】507134068
【氏名又は名称】サウンドハウンド,インコーポレイテッド
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】ステフェン・ホーム
(57)【要約】 (修正有)
【課題】オーディオデータ及び画像データに基づいて人の発声を解析することで、精度及び堅牢性を改善する車載装置、発声を処理する方法及びプログラムコードを提供する。
【解決手段】音声処理装置120は、画像データ145を受け取る画像インターフェイス140と、オーディオデータ155を受け取るオーディオインターフェイス150と、画像データより話者特徴ベクトルを生成し、オーディオデータ及び話者特徴ベクトルより発声を解析するのに使用可能な言語的特徴160のセットを生成する音声処理モジュール130と、を備える。
【選択図】
図1B
【特許請求の範囲】
【請求項1】
車両のオーディオキャプチャデバイスからオーディオデータを受け取るように構成されるオーディオインターフェイスと、
前記車両からの画像をキャプチャするよう画像キャプチャデバイスから画像データを受け取るように構成される画像インターフェイスと、
前記オーディオデータおよび前記画像データに基づいて人の発声を解析するように構成される音声処理モジュールと、
前記画像データを受け取り、かつ、音素データを予測するために前記画像データに基づいて話者特徴ベクトルを得るように構成される話者前処理モジュールとを含む、車載装置。
【請求項2】
前記音声処理モジュールは、前記オーディオデータを処理し、前記発声を解析するために使用される前記音素データを予測するように構成される音響モデルを含む、請求項1に記載の車載装置。
【請求項3】
前記音響モデルはニューラルネットワークアーキテクチャを含む、請求項2に記載の車載装置。
【請求項4】
前記音響モデルは、入力として前記話者特徴ベクトルおよび前記オーディオデータを受け取るように構成され、前記音素データを予測するために前記話者特徴ベクトルおよび前記オーディオデータを使用するように学習される、請求項2または3に記載の車載装置。
【請求項5】
前記画像データは、前記車両内の人の顔エリアを含む、請求項1~4に記載の車載装置。
【請求項6】
前記話者前処理モジュールは、
前記車両内の前記人を識別するために前記画像データに対して顔認識を行なうことと、
識別された前記人に関連付けられる話者特徴ベクトルを抽出することとを行うように構成される、請求項1~5に記載の車載装置。
【請求項7】
前記話者前処理モジュールは、
プロセッサによって実現される読唇モジュールを含み、前記読唇モジュールは、前記人の前記顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するように構成される、請求項1または6に記載の車載装置。
【請求項8】
前記話者前処理モジュールはニューラルネットワークアーキテクチャを含み、前記ニューラルネットワークアーキテクチャは、前記オーディオデータおよび前記画像データのうちの1つ以上に由来するデータを受け取り、前記話者特徴ベクトルを予測するように構成される、請求項1~7のいずれか1項に記載の車載装置。
【請求項9】
前記話者前処理モジュールは、
予め規定された数の発声について話者特徴ベクトルを計算することと、
前記予め規定された数の発声について複数の前記話者特徴ベクトルに基づいて静的な話者特徴ベクトルを計算することとを行うように構成される、請求項1~8のいずれか1項に記載の車載装置。
【請求項10】
前記静的な話者特徴ベクトルは前記車両のメモリ内に格納される、請求項9に記載の車載装置。
【請求項11】
1つ以上のユーザプロファイルを格納するように構成されるメモリを含み、
前記話者前処理モジュールは、
前記車両内の前記人に関連付けられる前記メモリ内のユーザプロファイルを識別するために前記画像データに対して顔認識を行なうことと、
前記人について話者特徴ベクトルを計算することと、
前記メモリに前記話者特徴ベクトルを格納することと、
格納された前記話者特徴ベクトルを識別された前記ユーザプロファイルに関連付けることとを行うように構成される、請求項1~10のいずれか1項に記載の車載装置。
【請求項12】
前記話者前処理モジュールは、
所与のユーザプロファイルに関連付けられる格納された話者特徴ベクトルの数が予め規定されたしきい値より大きいか否かを決定することと、
前記予め規定されたしきい値を上回ることに応答して、
前記格納された話者特徴ベクトルの数に基づいて静的な話者特徴ベクトルを計算することと、
前記静的な話者特徴ベクトルを前記メモリに格納することと、
格納された前記静的な話者特徴ベクトルを前記所与のユーザプロファイルに関連付けることと、
前記静的な話者特徴ベクトルは、前記人についての前記話者特徴ベクトルの計算の代わりに、将来の発声解析のために使用されるべきものであるということを示すこととを行うように構成される、請求項11に記載の車載装置。
【請求項13】
赤外線波長を有する電磁放射をキャプチャするように構成される画像キャプチャデバイスを含み、前記画像キャプチャデバイスは前記画像インターフェイスへ前記画像データを送るように構成される、請求項1~12のいずれか1項に記載の車載装置。
【請求項14】
前記話者前処理モジュールは、前記画像データのうちの1つ以上の部分を抽出するために前記画像データを処理するように構成されており、
抽出された前記1つ以上の部分は前記話者特徴ベクトルを得るために使用される、請求項1~13のいずれか1項に記載の車載装置。
【請求項15】
前記プロセッサは前記車両内に位置する、請求項1~14のいずれか1項に記載の車載装置。
【請求項16】
前記音声処理モジュールは前記車両からリモートであり、前記装置は、
前記オーディオデータおよび前記画像データに由来するデータを前記音声処理モジュールに送信し、前記発声の前記解析からの制御データを受け取るトランシーバを含む、請求項1~15のいずれか1項に記載の車載装置。
【請求項17】
前記音響モデルは、ニューラルネットワークアーキテクチャおよび混合ガウスモデルを含むハイブリッド音響モデルを含み、前記混合ガウスモデルは、前記ニューラルネットワークアーキテクチャによって出力されるクラス確率のベクトルを受け取り、前記発声を解析するための音素データを出力するように構成される、請求項1~16のいずれか1項に記載の車載装置。
【請求項18】
前記音響モデルは、コネクショニストテンポラルクラシフィケーション(CTC: connectionist temporal classification)モデルを含む、請求項1~17のいずれか1項に記載の車載装置。
【請求項19】
前記音声処理モジュールは、
前記音素データを受け取るとともに前記発声を表わすトランスクリプションを生成するために、前記音響モデルに通信可能に結合される言語モデルを含む、請求項1~18のいずれか1項に記載の車載装置。
【請求項20】
前記言語モデルは、前記発声を表わす前記トランスクリプションを生成するために前記話者特徴ベクトルを使用するように構成される、請求項19に記載の車載装置。
【請求項21】
前記音響モデルは、
音響モデル構成のデータベースと、
前記話者特徴ベクトルに基づいて前記データベースから音響モデル構成を選択する音響モデルセレクタと、
前記オーディオデータを処理する音響モデルインスタンスとを含み、前記音響モデルインスタンスは、前記音響モデルセレクタによって選択される前記音響モデル構成に基づいてインスタンス化されており、前記音響モデルインスタンスは、前記発声を解析するために使用される前記音素データを生成するように構成される、請求項1~20のいずれか1項に記載の車載装置。
【請求項22】
前記話者特徴ベクトルはiベクトルおよびxベクトルのうちの1つ以上である、請求項1~21のいずれか1項に記載の車載装置。
【請求項23】
前記話者特徴ベクトルは、
前記オーディオデータに基づいて生成される、話者に依存する第1の部分と、
前記画像データに基づいて生成される、前記話者の唇の動きに依存する第2の部分とを含む、請求項1~22のいずれか1項に記載の車載装置。
【請求項24】
前記話者特徴ベクトルは、前記画像データに基づいて生成される、前記話者の顔に依存する第3の部分を含む、請求項23に記載の車載装置。
【請求項25】
車両内に位置するオーディオキャプチャデバイスから、前記車両内の人の発声を特徴とするオーディオデータを受け取ることと、
前記車両内の画像をキャプチャするために、前記人の顔エリアを特徴とする画像データを画像キャプチャデバイスから受け取ることと、
前記画像データに基づいて話者特徴ベクトルを得ることと、
プロセッサによって実現される音声処理モジュールを使用して前記発声を解析することとを含み、
前記発声を解析することは、
前記音声処理モジュールの音響モデルへの入力として、前記話者特徴ベクトルおよび前記オーディオデータを提供することを含み、前記音響モデルはニューラルネットワークアーキテクチャを含んでおり、さらに、
前記話者特徴ベクトルおよび前記オーディオデータに基づいて、少なくとも前記ニューラルネットワークアーキテクチャを使用して音素データを予測することを含む、発声を処理する方法。
【請求項26】
話者特徴ベクトルを得ることは、
前記車両内の前記人を識別するために前記画像データに対して顔認識を行なうことと、
前記顔認識に基づいて前記人についてユーザプロファイルデータを得ることと、
前記ユーザプロファイルデータに従って前記話者特徴ベクトルを得ることとを含む、請求項25に記載の方法。
【請求項27】
前記ユーザプロファイルデータに関連付けられる格納された話者特徴ベクトルの数を予
め規定されたしきい値と比較することと、
前記格納された話者特徴ベクトルの数が前記予め規定されたしきい値を下回ることに応答して、前記オーディオデータおよび前記画像データのうちの1つ以上を使用して前記話者特徴ベクトルを計算することと、
前記格納された話者特徴ベクトルの数が前記予め規定されたしきい値より大きいことに応答して、前記ユーザプロファイルデータに関連付けられる静的な話者特徴ベクトルを得ることとを含み、前記静的な話者特徴ベクトルは、前記格納された話者特徴ベクトルの数を使用して生成される、請求項26に記載の方法。
【請求項28】
話者特徴ベクトルを得ることは、
前記人の前記顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するために前記画像データを処理することを含む、請求項25~27のいずれか1項に記載の方法。
【請求項29】
前記発声を解析することは、
前記音声処理モジュールの言語モデルに前記音素データを提供することと、
前記言語モデルを使用して前記発声のトランスクリプトを予測することと、
前記トランスクリプトを使用して前記車両のための制御コマンドを決定することとを含む、請求項25~28のいずれか1項に記載の方法。
【請求項30】
命令を含むプログラムコードであって、前記命令は、少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
オーディオキャプチャデバイスからオーディオデータを受け取ることと、
画像キャプチャデバイスからの画像データに基づいて得られる話者特徴ベクトルを受け取ることとを行わせ、前記画像データはユーザの顔エリアを特徴としており、さらに、
音声処理モジュールを使用して前記発声を解析することを行わせ、
前記発声を解析することは、
前記音声処理モジュールの音響モデルへの入力として、前記話者特徴ベクトルおよび前記オーディオデータを提供することを含み、前記音響モデルはニューラルネットワークアーキテクチャを含んでおり、さらに、
前記話者特徴ベクトルおよび前記オーディオデータに基づいて、少なくとも前記ニューラルネットワークアーキテクチャを使用して音素データを予測することと、
前記音声処理モジュールの言語モデルに前記音素データを提供することと、
前記言語モデルを使用して前記発声のトランスクリプトを生成することとを含む、プログラムコード。
【請求項31】
前記話者特徴ベクトルは、
前記オーディオデータに基づいて生成される、話者に依存するベクトル要素と、
前記画像データに基づいて生成される、前記話者の唇の動きに依存するベクトル要素と、
前記画像データに基づいて生成される、前記話者の顔に依存するベクトル要素とのうちの1つ以上を含む、請求項30に記載のプログラムコード。
【請求項32】
前記オーディオデータおよび前記話者画像ベクトルは自動車両から受け取られる、請求項30に記載のプログラムコード。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の技術分野
本技術は音声処理の分野にある。ある例は、車両内部からキャプチャされる音声を処理することに関する。
【背景技術】
【0002】
背景
コンピューティングにおける最近の進歩によって、多くの長く望まれていた音声制御アプリケーションを実現する可能性が高まっている。たとえば、有効なニューラルネットワークアーキテクチャについての実際的なフレームワークを含む統計モデルにおける改善によって、以前の音声処理システムの精度および信頼性が大幅に増加している。これがワイドエリアコンピュータネットワークの興隆と組み合わされ、単にアプリケーションプログラミングインターフェイスを使用してアクセスされ得るある範囲のモジュラーサービスを提供する。音声は急速に、ユーザインターフェイスを提供するための実行可能オプションになっている。
【0003】
音声制御デバイスは、家庭内で一般的になっているが、車両内で音声処理を提供することにはさらなる困難が示される。たとえば、車両は、しばしば(音声インターフェイスのような)補助的な機能のための処理リソースが限られており、顕著なノイズ(たとえばハイレベルの道路ノイズおよび/またはエンジンノイズ)に見舞われ、音響環境での制約を提示する。如何なるユーザインターフェイスも、車両を制御する安全性への影響によって更に制約される。これらの要因によって、車両内で音声制御を実際上達成することが困難になっている。
【0004】
さらに音声処理における進歩にもかかわらず、高度なコンピューティングデバイスのユーザでさえしばしば、現在のシステムは人間レベルの応答性および知能を欠いていると報告している。空気中の圧力変動を解析されたコマンドへ変換することは、信じられないほど困難である。音声処理は典型的に複雑な処理パイプラインを伴い、如何なるステージでのエラーによっても機械の解釈の成功が損なわれることになる。これらの困難のうちの多くは、意識的な思考なしで皮質構造または皮質下構造を使用して音声を処理することができる人間にとっては直ちに明白ではない。しかしながら、当該分野で働くエンジニアは急速に、人間の能力と現状技術の音声処理との間のギャップに気付いている。
【0005】
US8,442,820B2(特許文献1)は、読唇および音声認識組合マルチモーダルインターフェイスシステムを記載している。当該システムは、音声および唇の動きによるのみナビゲーションオペレーション命令を発行し得、これにより、運転手がナビゲーションオペレーションの間に前方を見ることが可能になり、運転中のナビゲーションオペレーションに関係する車両事故を低減する。US8,442,820B2に記載される読唇および音声認識組合マルチモーダルインターフェイスシステムは、オーディオ音声入力ユニットと、音声認識ユニットと、音声認識命令および推定確率出力ユニットと、唇ビデオ画像入力ユニットと、読唇ユニットと、読唇認識命令出力ユニットと、音声認識命令を出力する音声認識および読唇認識結果組合ユニットとを含む。US8,442,820B2は車両内制御の1つのソリューションを提供しているが、提案されたシステムは複雑であり、多くの相互動作するコンポーネントによって、エラーおよび解析の失敗の機会が増加する。
【0006】
より正確に人間の発声を文字起こし(transcribe)して解析する音声処理システムおよ
び方法を提供することが望まれている。さらに、車両のための埋込型コンピューティングシステムのような現実世界のデバイスにより実際に実現され得る音声処理方法を提供することが望まれている。実際的な音声処理ソリューションを実現することは、システムインテグレーションおよび接続性について多くの困難が車両に存在するため、困難である。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】米国特許明細書第8,422,820号
【発明の概要】
【課題を解決するための手段】
【0008】
発明の概要
本願明細書において記載されるある例は、スピーチを処理するための方法およびシステムを提供する。ある例は、スピーチを処理するためにオーディオデータおよび画像データの両方を使用する。ある例は、車両内でキャプチャされる発声を処理する困難に対応するために適合される。ある例は、たとえば車両内の人といった少なくとも人の顔エリアを特徴とする画像データに基づいて、話者特徴ベクトルを得る。その後、音声処理は、発声の話者に依存する視覚由来情報を使用して行なわれる。これにより、精度および堅牢性が改善され得る。
【0009】
1つの局面では、車両のための装置は、車両内に位置するオーディオキャプチャデバイスからオーディオデータを受け取るように構成されるオーディオインターフェイスと、車両内で画像データをキャプチャするために、車両内の人の顔エリアを特徴とする画像データを画像キャプチャデバイスから受け取るように構成される画像インターフェイスと、オーディオデータおよび画像データに基づいて人の発声を解析するように構成される音声処理モジュールとを含む。音声処理モジュールは、オーディオデータを処理し、発声を解析するために使用される音素データを予測するように構成される音響モデルを含み、音響モデルはニューラルネットワークアーキテクチャを含む。装置はさらに、プロセッサによって実現される話者前処理モジュールを含み、話者前処理モジュールは、画像データを受け取り、かつ、画像データに基づいて話者特徴ベクトルを得るように構成されており、音響モデルは、入力として話者特徴ベクトルおよびオーディオデータを受け取るように構成され、音素データを予測するために話者特徴ベクトルおよびオーディオデータを使用するように学習される。
【0010】
上記の局面では、話者特徴ベクトルは、話している人の顔エリアを特徴とする画像データを使用して得られる。この話者特徴ベクトルは、音響モデルのニューラルネットワークアーキテクチャへの入力として提供され、音響モデルは、発声を特徴とするオーディオデータと同様にこの入力を使用するように構成される。これにより、発声の解析を改善するために、たとえば車両内の望ましくない音響およびノイズ特徴を補償するために、ニューラルネットワークアーキテクチャが使用し得る付加的な視覚由来情報が音響モデルに提供される。たとえば、画像データから決定される特定の人および/またはその人の口エリアに基づいて音響モデルを構成することによって、たとえば、付加的な情報がなければ、車両の状況に基づいて誤って文字起こしされ得る曖昧な音素の決定が向上され得る。
【0011】
1つの変形例において、話者前処理モジュールは、車両内の人を識別し、識別された人に関連付けられる話者特徴ベクトルを抽出するために、画像データに対して顔認識を行なうように構成される。たとえば、話者前処理モジュールは、車両内で話しているユーザを識別するために使用される顔認識モジュールを含み得る。話者特徴ベクトルがオーディオデータに基づいて決定される場合、人の識別は、所定の(たとえば、あらかじめ計算された)話者特徴ベクトルがメモリから抽出されることを可能にし得る。これにより、制限の
ある埋込型車両制御システムについての処理レイテンシが向上され得る。
【0012】
1つの変形例において、話者前処理モジュールは、プロセッサによって実現される読唇モジュールを含み、読唇モジュールは、人の顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するように構成される。これは、顔認識モジュールと一緒に使用されてもよく、または、顔認識モジュールとは独立して使用されてもよい。この場合、1つ以上の話者特徴ベクトルは、音響モデルのニューラルネットワークアーキテクチャによって使用され得る話者の口または唇エリアの表現を提供し、これにより処理が向上する。
【0013】
ある場合において、話者前処理モジュールは、ニューラルネットワークアーキテクチャを含み得、ニューラルネットワークアーキテクチャは、オーディオデータおよび画像データのうちの1つ以上に由来するデータを受け取り、話者特徴ベクトルを予測するように構成される。たとえば、このアプローチは、音響の処理を向上させるために、視覚ベースのニューラル読唇システムと音響「xベクトル」システムとを組み合わせ得る。1つ以上のニューラルネットワークアーキテクチャが使用される場合、これらは、画像データと、オーディオデータと、音素データおよび/またはテキストトランスクリプションのグラウンドトゥルース(ground truth)セットのような言語的特徴のグラウンドトゥルースセットとを含む学習セットを使用して学習され得る。
【0014】
ある場合において、話者前処理モジュールは、予め規定された数の発声について話者特徴ベクトルを計算し、予め規定された数の発声について複数の話者特徴ベクトルに基づいて静的な話者特徴ベクトルを計算するように構成される。たとえば、静的な話者特徴ベクトルは、画像データを使用して特定のユーザにリンクされる話者特徴ベクトルのセットの平均を含み得る。静的な話者特徴ベクトルは、車両のメモリ内に格納され得る。また、これにより、リソースが制限された車両コンピューティングシステム内の音声処理能力が向上され得る。
【0015】
1つの場合では、装置は、1つ以上のユーザプロファイルを格納するように構成されるメモリを含む。この場合、話者前処理モジュールは、車両内の人に関連付けられるメモリ内のユーザプロファイルを識別するために画像データに対して顔認識を行なうことと、人について話者特徴ベクトルを計算することと、メモリに話者特徴ベクトルを格納することと、格納された話者特徴ベクトルを識別されたユーザプロファイルに関連付けることとを行うように構成される。顔認識は、特定の人に依存する音響の処理のための有益な情報(たとえば話者特徴ベクトル)を抽出するための迅速かつ簡便なメカニズムを提供し得る。1つの場合では、話者前処理モジュールは、所与のユーザプロファイルに関連付けられる格納された話者特徴ベクトルの数が予め規定されたしきい値より大きいか否かを決定するように構成され得る。これがそうである場合、話者前処理モジュールは、格納された話者特徴ベクトルの数に基づいて静的な話者特徴ベクトルを計算することと、静的な話者特徴ベクトルをメモリに格納することと、格納された静的な話者特徴ベクトルを所与のユーザプロファイルに関連付けることと、静的な話者特徴ベクトルは、人についての話者特徴ベクトルの計算の代わりに、将来の発声解析に使用されるべきものであるということを示すこととを行い得る。
【0016】
1つの変形例では、装置は、赤外線波長を有する電磁放射をキャプチャするように構成される画像キャプチャデバイスを含み、画像キャプチャデバイスは画像インターフェイスへ画像データを送るように構成される。これにより、画像データ処理を向上させる照度不変画像が提供され得る。話者前処理モジュールは、画像データのうちの1つ以上の部分を抽出するために画像データを処理するように構成され得、抽出された1つ以上の部分は話者特徴ベクトルを得るために使用される。たとえば、1つ以上の部分は、顔エリアおよび/または口エリアに関係があり得る。
【0017】
1つの場合において、オーディオインターフェイス、画像インターフェイス、音声処理モジュールおよび話者前処理モジュールのうちの1つ以上は、車両内に位置し得、たとえば、ローカルの埋込システムの部分を含み得る。この場合、プロセッサは車両内に位置し得る。別の場合では、音声処理モジュールは車両からリモートであり得る。この場合、装置は、オーディオデータおよび画像データに由来するデータを音声処理モジュールに送信し、発声の解析からの制御データを受け取るトランシーバを含み得る。異なる分散された構成が可能である。たとえば、1つの場合において、装置は、車両内にローカルに実現され得るが、装置の少なくとも1つのコンポーネントのさらに別のコピーがリモートサーバデバイス上で実行され得る。この場合、ある機能は、たとえば、ローカル処理と一緒にまたはローカル処理の代わりにリモートで実行され得る。リモートサーバデバイスは、精度を向上させる処理リソースの向上を有し得るが、処理レイテンシを増加させ得る。
【0018】
1つの場合において、音響モデルは、ニューラルネットワークアーキテクチャおよび混合ガウスモデルを含むハイブリッド音響モデルを含み、混合ガウスモデルは、ニューラルネットワークアーキテクチャによって出力されるクラス確率のベクトルを受け取り、発声を解析するための音素データを出力するように構成される。音響モデルは付加的または代替的には、ニューラルネットワークアーキテクチャとともに、たとえば隠れマルコフモデル(HMM: Hidden Markov Model)を含む。1つの場合において、音響モデルは、コネクショニストテンポラルクラシフィケーション(CTC: connectionist temporal classification)モデルを含み得るか、または、回帰型ニューラルネットワークアーキテクチャを有するニューラルネットワークモデルの別の形態を含み得る。
【0019】
1つの変形例では、音声処理モジュールは、音素データを受け取るとともに発声を表わすトランスクリプションを生成するために、音響モデルに通信可能に結合される言語モデルを含む。この変形例において、言語モデルは、たとえば音響モデルに加えて、発声を表わすトランスクリプションを生成するために話者特徴ベクトルを使用するように構成され得る。これは、言語モデルが回帰型ニューラルネットワークまたはトランスフォーマアーキテクチャのようなニューラルネットワークアーキテクチャを含む場合、言語モデル精度を向上させるために使用され得る。
【0020】
1つの変形例では、音響モデルは、音響モデル構成のデータベースと、話者特徴ベクトルに基づいてデータベースから音響モデル構成を選択する音響モデルセレクタと、オーディオデータを処理する音響モデルインスタンスとを含み、音響モデルインスタンスは、音響モデルセレクタによって選択される音響モデル構成に基づいてインスタンス化されており、音響モデルインスタンスは、発声を解析するために使用される音素データを生成するように構成される。
【0021】
ある例において、話者特徴ベクトルはiベクトルおよびxベクトルのうちの1つ以上である。話者特徴ベクトルは合成ベクトルを含み得、たとえば、オーディオデータに基づいて生成される、話者に依存する第1の部分と、画像データに基づいて生成される、話者の唇の動きに依存する第2の部分と、画像データに基づいて生成される、話者の顔に依存する第3の部分とのうちの2つ以上を含み得る。
【0022】
別の局面に従うと、発声を処理する方法が存在し、当該方法は、車両内に位置するオーディオキャプチャデバイスから、車両内の人の発声を特徴とするオーディオデータを受け取ることと、人の顔エリアを特徴とする画像データを、車両内に位置する画像キャプチャデバイスから受け取ることと、画像データに基づいて話者特徴ベクトルを得ることと、プロセッサによって実現される音声処理モジュールを使用して発声を解析することとを含む。発声を解析することは、音声処理モジュールの音響モデルへの入力として、話者特徴ベクトルおよびオーディオデータを提供することを含み、音響モデルはニューラルネットワークアーキテクチャを含んでおり、発声を解析することはさらに、話者特徴ベクトルおよびオーディオデータに基づいて、少なくともニューラルネットワークアーキテクチャを使用して音素データを予測することを含む。
【0023】
上記方法は、車両内での音声処理に同様の改善を提供し得る。ある場合において、話者特徴ベクトルを得ることは、車両内の人を識別するために画像データに対して顔認識を行なうことと、顔認識に基づいて人についてユーザプロファイルデータを得ることと、ユーザプロファイルデータに従って話者特徴ベクトルを得ることとを含む。上記方法はさらに、ユーザプロファイルデータに関連付けられる格納された話者特徴ベクトルの数を予め規定されたしきい値と比較することを含み得る。格納された話者特徴ベクトルの数が予め規定されたしきい値を下回ることに応答して、上記方法は、オーディオデータおよび画像データのうちの1つ以上を使用して話者特徴ベクトルを計算することを含み得る。格納された話者特徴ベクトルの数が予め規定されたしきい値より大きいことに応答して、上記方法は、ユーザプロファイルデータに関連付けられる静的な話者特徴ベクトルを得ることを含み得、静的な話者特徴ベクトルは、格納された話者特徴ベクトルの数を使用して生成される。1つの場合では、話者特徴ベクトルは、人の顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するために画像データを処理することを含む。発声を解析することは、音声処理モジュールの言語モデルに音素データを提供することと、言語モデルを使用して発声のトランスクリプトを予測することと、トランスクリプトを使用して車両のための制御コマンドを決定することとを含み得る。
【0024】
別の局面に従うと、命令を格納している一時的でないコンピュータ読取可能記憶媒体が存在する。上記命令は、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、オーディオキャプチャデバイスからオーディオデータを受け取ることと、画像キャプチャデバイスからの画像データに基づいて得られる話者特徴ベクトルを受け取ることとを行わせ、画像データはユーザの顔エリアを特徴としており、さらに、音声処理モジュールを使用して発声を解析することを行わせ、発声を解析することは、音声処理モジュールの音響モデルへの入力として、話者特徴ベクトルおよびオーディオデータを提供することを含み、音響モデルはニューラルネットワークアーキテクチャを含んでおり、さらに、話者特徴ベクトルおよびオーディオデータに基づいて、少なくともニューラルネットワークアーキテクチャを使用して音素データを予測することと、音声処理モジュールの言語モデルに音素データを提供することと、言語モデルを使用して発声のトランスクリプトを生成することとを含む。
【0025】
少なくとも1つのプロセッサは、たとえば自動車両(motor vehicle)からリモートで
あるコンピューティングデバイスといったコンピューティングデバイスを含み得、オーディオデータおよび話者画像ベクトルは自動車両から受け取られる。上記命令によって、プロセッサは、より低い誤り率で自動音声認識を行なうことが可能になり得る。ある場合、話者特徴ベクトルは、オーディオデータに基づいて生成される、話者に依存するベクトル要素と、画像データに基づいて生成される、話者の唇の動きに依存するベクトル要素と、画像データに基づいて生成される、話者の顔に依存するベクトル要素とのうちの1つ以上を含む。
【図面の簡単な説明】
【0026】
【
図1A】ある例に従った車両の内部を示す概略図である。
【
図1B】ある例に従った車両のための装置を示す概略図である。
【
図2】ある例に従った話者前処理モジュールを有する車両のための装置を示す概略図である。
【
図3】ある例に従った話者前処理モジュールのコンポーネントを示す概略図である。
【
図4】ある例に従った音声処理モジュールのコンポーネントを示す概略図である。
【
図5】ある例に従ったニューラル話者前処理モジュールおよびニューラル音声処理モジュールを示す概略図である。
【
図6】ある例に従った音声処理モジュールの音響モデルを構成するコンポーネントを示す概略図である。
【
図7】ある例に従った画像プリプロセッサを示す概略図である。
【
図8】ある例に従った異なる画像キャプチャデバイスからの画像データを示す概略図である。
【
図9】ある例に従った唇の特徴を抽出するように構成される話者前処理モジュールのコンポーネントを示す概略図である。
【
図10A】ある例に従った音声処理のための装置を有する自動車両を示す概略図である。
【
図10B】ある例に従った音声処理のための装置を有する自動車両を示す概略図である。
【
図11】ある例に従った自動車両のためのユーザインターフェイスのコンポーネントを示す概略図である。
【
図12】車両のための例示的なコンピューティングデバイスを示す概略図である。
【
図13】ある例に従った発声を処理する方法を示すフロー図である。
【
図14】ある例に従った一時的でないコンピュータ読取可能記憶媒体を示す概略図である。
【発明を実施するための形態】
【0027】
詳細な説明
さまざまな興味深い局面を示す本技術のさまざまな例を以下に説明する。一般に、例は、記載された局面を任意の組合せで使用し得る。
【0028】
本願明細書において記載されるある例は、音声処理を向上させるために視覚情報を使用する。この視覚情報は車両内部から得られ得る。例において、視覚情報は、たとえば運転手または乗客といった車両内の人を特徴とする。ある例は、適合された音声処理モジュールによる使用のために話者特徴ベクトルを生成するために視覚情報を使用する。音声処理モジュールは、たとえば車両内のオーディオキャプチャデバイスに由来するオーディオデータといった関連付けられるオーディオデータの処理を向上させるために話者特徴ベクトルを使用するように構成され得る。例は、車両内音声インターフェイスの応答性および精度を向上させ得る。ある例は、音声トランスクリプションを向上させるためにコンピューティングデバイスによって使用されてもよい。したがって、記載された例は、音声処理の精度および信頼性を向上させるマルチモーダルな能力により音声処理システムを拡張するように思われ得る。
【0029】
本願明細書において記載されるある例は、話者特徴ベクトルを生成するために異なるアプローチを提供する。あるアプローチは相補的であり、音声処理を相乗的に向上させるために一緒に使用され得る。一例において、たとえば運転手および/または乗客カメラからの車両の内部から得られた画像データが処理されて、人を識別し、当該人のある特徴を数的に表わす特徴ベクトルを決定する。これらの特徴は、たとえば音響モデルのためのオーディオデータ内の予測される変動の数的表現といったオーディオ特徴を含み得る。別の例では、たとえば運転手および/または乗客カメラからの車両の内部から得られた画像データが処理されて、たとえば当該人による発声に関連付けられる特徴といった、当該人のある視覚的な特徴を数的に表わす特徴ベクトルを決定する。1つの場合では、視覚的な特徴は、人の口エリアに関連付けられ、たとえば、唇の位置および/または動きを表わす。両方の例において、話者特徴ベクトルは同様のフォーマットを有し得るので、音素データを
生成するために使用される音響モデルの入力パイプラインに容易に統合され得る。ある例は、車両の制限された内部、この限られた内部で複数人が話し得る可能性、および、ハイレベルのエンジンおよび環境ノイズといった、車両内での自動音声認識のある困難を克服する改善を提供し得る。
【0030】
例示的な車両のコンテキスト
図1Aは、音声処理装置についての例示的なコンテキストを示す。
図1Aでは、当該コンテキストは自動車両である。
図1Aは、自動車両の内部100の概略図である。内部100は、自動車両の前部の運転手側について示される。人102が内部100内に存在するのが示される。
図1Aでは、人は自動車両の運転手である。運転手は、車両において前方に向いており、ウインドシールド104を介して道路を観察する。人は、ハンドル106を使用して車両を制御し、ダッシュボードまたはインストルメントパネル108を介して車両状態指示を観察する。
図1Aでは、画像キャプチャデバイス110は、自動車両の内部100内においてダッシュボード108の底部の近傍に位置する。画像キャプチャデバイス110は、人102の顔エリア114をキャプチャする視野112を有する。この例において、画像キャプチャデバイス110は、ハンドル106のアパーチャを通じて画像をキャプチャするように位置決めされる。
図1Aはさらに、自動車両の内部100内に位置するオーディオキャプチャデバイス116を示す。オーディオキャプチャデバイス116は人102によって発される音をキャプチャするように配される。たとえば、オーディオキャプチャデバイス116は、人102からの音声、すなわち、人の顔エリア114から発せられる音をキャプチャするために配され得る。オーディオキャプチャデバイス116はウインドシールド104にマウントされているのが示される。たとえば、オーディオキャプチャデバイス116は、バックミラーの近傍またはバックミラー上にマウントされてもよく、人102の側に対するドアフレーム上にマウントされてもよい。
図1Aはさらに音声処理装置120を示す。音声処理装置120は自動車両にマウントされ得る。音声処理装置120は、自動車両のための制御システムを含み得るか、または、制御システムの部分を形成し得る。
図1Aの例において、画像キャプチャデバイス110およびオーディオキャプチャデバイス116は、たとえば1つ以上の有線および/または無線インターフェイスを介して音声処理装置120に通信可能に結合される。画像キャプチャデバイス110は、自動車両の窓ガラスを介して自動車両内の画像をキャプチャするために自動車両外に位置され得る。
【0031】
図1Aのコンテキストおよび構成は、次の記載の理解を支援するために例として提供される。なお、当該例は自動車両に限定される必要はなく、他の形態の乗り物で同様に実現され得る。他の形態の乗り物は、ボートおよび船のような船舶乗り物、ヘリコプタ、飛行機およびグライダのような航空乗り物、電車および路面電車のようなレール用乗り物、宇宙船、建設車両および重量機器を含むがこれらに限定されない。自動車両は、たとえば、車、トラック、スポーツ多目的車、モータバイク、バス、および、モータ付きカートを含み得る。本願明細書における「車両」という用語の使用はさらに、クレーン、リフティング装置およびボーリング装置のような、静止のままでモータ駆動され得るある重量機器を含む。車両は、手動で制御されてもよく、および/または、自律機能を有してもよい。
図1Aの例はハンドル106およびダッシュボード108を特徴とするが、他の制御構成が提供されてもよい(たとえば、自律運転車両は、示されるようなハンドル106を有さない場合がある)。運転席のコンテキストが
図1Aにおいて示されるが、同様の構成は1つ以上の乗客席(たとえば前部および後部の両方)に提供され得る。
図1Aは、例示のためにのみ提供されており、明確さのための自動車両内に存在し得るある特徴を省略している。ある場合において、本願明細書において記載されるアプローチは、車両のコンテキスト外で使用されてもよく、たとえば、デスクトップもしくはラップトップコンピュータ、スマートフォン、または、埋込型デバイスのようなコンピューティングデバイスによって実現されてもよい。
【0032】
図1Bは、
図1Aにおいて示される音声処理装置120の概略図である。
図1Bでは、音声処理装置120は、音声処理モジュール130、画像インターフェイス140、および、オーディオインターフェイス150を含む。画像インターフェイス140は画像データ145を受け取るように構成される。画像データは、
図1Aにおける画像キャプチャデバイス110によってキャプチャされる画像データを含み得る。オーディオインターフェイス150はオーディオデータ155を受け取るように構成される。オーディオデータ155は、
図1Aにおけるオーディオキャプチャデバイス116によってキャプチャされるオーディオデータを含み得る。音声処理モジュール130は、画像インターフェイス140およびオーディオインターフェイス150の両方に通信可能に結合される。音声処理モジュール130は、人102の発声を解析するのに使用可能な言語的特徴160のセットを生成するために、画像データ145およびオーディオデータ155を処理するように構成される。言語的特徴は、音素、単語部分(たとえば語幹または祖語)、および、単語(句読点にマッピングされる休止のようなテキスト特徴を含む)、ならびに、これらの言語ユニットに関する確率および他の値を含み得る。1つの場合では、言語的特徴は、発声を表わすテキスト出力を生成するために使用され得る。この場合、テキスト出力はそのまま使用されてもよく、または、コマンドおよび/またはコマンドデータの予め規定されたセットにマッピングされてもよい。別の場合では、言語的特徴は、(たとえば明示的なテキスト出力なしで)コマンドおよび/またはコマンドデータの予め規定されたセットに直接的にマッピングされてもよい。
【0033】
(人102のような)人は、
図1Aおよび
図1Bの構成を使用して、自動車両を操作しながらボイスコマンドを発し得る。たとえば、人102は、自動車両を制御するまたは情報を得るために、内部において喋り得る、たとえば、発声を生成し得る。このコンテキストにおける発声は、音声のような言語情報を表わす人によって作り出されるボーカル音に関連付けられる。たとえば、発声は、人102の喉頭から出る音声を含み得る。発声は、たとえばユーザが話した要求といったボイスコマンドを含み得る。たとえば、ボイスコマンドは、(たとえば「音楽を再生」、「エアコンをオン」、「クルーズコントロールをアクティベート」といった)あるアクションを行う要求、(たとえば、「アルバムXY」、「華氏68度」、「30分間60mph」)といった要求に関するさらに別の情報、(たとえば、「私のtodoリストに…を追加」または「ユーザAに次のメッセージを送信」といった)書き起こされるスピーチ、ならびに/または、(たとえば「Cの交通量は?」、「今日の天気は?」、もしくは、「最も近いガソリンスタンドはどこ?」といった)情報についての要求を含み得る。
【0034】
オーディオデータ155は、実現例に依存してさまざまな形態を取り得る。一般に、オーディオデータ155は、
図1Aにおけるオーディオキャプチャデバイス116のような1つ以上のオーディオキャプチャデバイス(たとえば1つ以上のマイクロフォン)からの1つ以上のオーディオキャプチャデバイス(たとえば1つ以上のマイクロフォン)からの時系列測定に由来し得る。ある場合には、オーディオデータ155は、1つのオーディオキャプチャデバイスからキャプチャされ得る。他の場合には、オーディオデータ155は複数のオーディオキャプチャデバイスからキャプチャされ得、たとえば、内部100内の異なる位置に複数のマイクロフォンが存在し得る。後者の場合において、オーディオデータは、各オーディオキャプチャデバイスからの時間的に相関されるオーディオデータの1つ以上のチャネルを含み得る。キャプチャの時点でのオーディオデータはたとえば、予め規定されたサンプリングレート(たとえば16kHz)でのパルス符号変調(PCM: Pulse Code Modulation)データの1つ以上のチャネルを含み得、各サンプルは、予め規定されたビット数によって表わされる(たとえば各サンプルが整数または浮動小数点値を含む場合、サンプル当たり8ビット、16ビットまたは24ビット)。
【0035】
ある場合において、オーディオデータ155は、キャプチャの後であるが、オーディオインターフェイス150での受け取りの前に処理され得る(たとえば、音声処理に関して前処理される)。処理は、時間および周波数ドメインのうちの1つ以上におけるフィルタリングのうちの1つ以上を含み得、ノイズ低減および/または正規化を適用する。1つの場合では、オーディオデータは、たとえばスペクトログラムデータの1つ以上のフレームを作り出すために高速フーリエ変換を行なうことによって、周波数ドメインにおいて時間に亘る測定値に変換され得る。ある場合において、1つ以上の周波数ドメインの特徴についての値を決定するために、メルフィルタバンク(Mel filter bank)またはメル周波数
ケプストラム係数(Mel-Frequency Cepstral Coefficient)といった、フィルタバンクが適用され得る。これらの場合では、オーディオデータ155は、1つ以上のフィルタバンクの出力を含み得る。他の場合では、オーディオデータ155は、時間ドメインサンプルを含み得、音声処理モジュール130内において前処理が行なわれ得る。アプローチの異なる組合せが可能である。したがって、オーディオインターフェイス150にて受け取られるようなオーディオデータは、音声処理パイプラインに沿ってなされる任意の測定を含み得る。
【0036】
オーディオデータと同様の態様で、本願明細書において記載される画像データは、実現例に依存してさまざまな形態を取り得る。1つの場合において、画像キャプチャデバイス110はビデオキャプチャデバイスを含み得、画像データはビデオデータの1つ以上のフレームを含む。別の場合では、画像キャプチャデバイス110は静止画像キャプチャデバイスを含み得、画像データは、静止画像の1つ以上のフレームを含む。従って、画像データはビデオ画像源および静止画像源の両方に由来し得る。本願明細書における画像データへの参照は、たとえば、(たとえば、アレイの行および列と同等である)高さおよび幅を有する2次元アレイに由来する画像データに関し得る。1つの場合では、画像データは、複数の色チャネルを有し得、たとえば、赤緑青(RGB)の色の各々について3つの色チャネルを含み得、各色チャネルは色値の関連付けられる2次元アレイを有する(たとえばアレイ要素当たり8ビット、16ビットまたは24ビット)。色チャネルは、異なる画像「面」と称され得る。ある場合では、たとえば「グレー」または明るさチャネルを表わす単一のチャネルのみが使用されてもよい。異なる色空間が用途に依存して使用され得る。たとえば、画像キャプチャデバイスは本来、明るさチャネルY(たとえば輝度)を特徴とするYUV画像データのフレームと、2つの反対色チャネルUおよびV(たとえば概略的に青-緑および赤-緑で整列された2つのクロミナンス成分)とを生成し得る。オーディオデータ155と同様に、画像データ145は、キャプチャの後で処理され得る。たとえば、1つ以上の画像フィルタリング動作が適用され得、および/または、画像データ145は、リサイズおよび/または切り取り(crop)され得る。
【0037】
図1Aおよび
図1Bの例を参照して、画像インターフェイス140およびオーディオインターフェイス150のうちの1つ以上が自動車両内のハードウェアに対してローカルであり得る。たとえば、画像インターフェイス140およびオーディオインターフェイス150の各々は、音声処理モジュール130を実現するように構成される少なくとも1つのプロセッサへのそれぞれの画像およびオーディオキャプチャデバイスの有線結合を含み得る。1つの場合において、画像およびオーディオインターフェイス140,150は、画像およびオーディオデータ145,155が受け取られ得るシリアルインターフェイスを含み得る。分散車両制御システムにおいて、画像およびオーディオキャプチャデバイス140,150は、中央システムバスに通信可能に結合され得、画像およびオーディオデータ145,155は1つ以上のストレージデバイス(たとえばランダムアクセスメモリまたはソリッドステートストレージ)に格納され得る。この後者の場合、画像およびオーディオインターフェイス140,150は、1つ以上のストレージデバイスへの、音声処理モジュールを実現するように構成される少なくとも1つのプロセッサの通信結合を含み得る。たとえば、少なくとも1つのプロセッサは、画像およびオーディオデータ145,1
55の各々にアクセスするために、所与のメモリ位置からデータを読み出すように構成され得る。ある場合には、画像およびオーディオインターフェイス140,150は、無線インターフェイスを含み得、音声処理モジュール130は自動車両からリモートであり得る。異なるアプローチおよび組合せが可能である。
【0038】
図1Aは、人102が自動車両の運転手である例を示すが、他の適用例では、乗客のような自動車両を制御していない人を特徴としている画像データをキャプチャするために、1つ以上の画像およびオーディオキャプチャデバイスが配され得る。たとえば、自動車両は、車両の1つ以上の乗客席(たとえば前部および後部のような車両内の異なる位置)において存在する人々に関する画像データをキャプチャするために配される複数の画像キャプチャデバイスを有し得る。オーディオキャプチャデバイスも同様に、異なる人々からの発声をキャプチャするために配され得、たとえばマイクロフォンが車両の各ドアまたはドアフレームに位置し得る。1つの場合では、複数のオーディオキャプチャデバイスが車両内に提供され得、オーディオデータは、オーディオインターフェイス150へのデータの供給のために、これらのうちの1つ以上からキャプチャされ得る。1つの場合において、オーディオデータの前処理は、発声をする人に最も近いと考えられるチャネルからオーディオデータを選択すること、および/または、自動車両内の複数のチャネルからオーディオデータを組み合わせることを含み得る。後述するように、本願明細書において記載されるある例は、複数の乗客が存在する車両における音声処理を促進する。
【0039】
例示的な話者前処理モジュール
図2は、例示的な音声処理装置200を示す。たとえば、音声処理装置200は、
図1Aおよび
図1Bにおいて示される音声処理装置120を実現するために使用され得る。音声処理装置200は、車両内自動音声認識システムの部分を形成し得る。他の場合では、音声処理装置200は、家またはオフィスといった車両外部での使用に適合され得る。
【0040】
音声処理装置200は、話者前処理モジュール220および音声処理モジュール230を含む。音声処理モジュール230は、
図1Bの音声処理モジュール130と同様であり得る。この例において、画像インターフェイス140およびオーディオインターフェイス150は、明確さのために省略されているが、これらはそれぞれ話者前処理モジュール220の画像入力および音声処理モジュール230のための音声入力の部分を形成し得る。話者前処理モジュール220は、画像データ245を受け取り、話者特徴ベクトル225を出力するように構成される。音声処理モジュール230は、オーディオデータ255および話者特徴ベクトル225を受け取り、言語的特徴260を生成するためにこれらを使用するように構成される。
【0041】
音声処理モジュール230はプロセッサによって実現される。プロセッサは、車両内のローカルの埋込型コンピューティングシステムのプロセッサおよび/またはリモートサーバコンピューティングデバイス(いわゆる「クラウド」処理デバイス)のプロセッサであり得る。1つの場合において、プロセッサは、たとえば1つ以上の特定用途向け集積回路(ASIC: Application Specific Integrated Circuit)、フィールドプログラマブルゲートアレイ(FPGA: Field Programmable Gate Array)、および、いわゆる「システムオンチップ」(SoC:system on chip)コンポーネントといった専用の音声処理ハードウェアの部分を含み得る。別の場合では、プロセッサは、アクセス可能なストレージデバイス内に格納されプロセッサによる実行のためにメモリにロードされる、たとえばファームウェアなどのコンピュータプログラムコードを処理するように構成され得る。音声処理モジュール230は、オーディオデータ225および画像データ245に基づいて、たとえば人102のような人の発声を解析するように構成される。現在の場合では、画像データ245は、話者前処理モジュール220によって前処理され、話者特徴ベクトル225を生成する。音声処理モジュール230と同様に、話者前処理モジュール220は、
ハードウェアおよびソフトウェアの任意の組合せであり得る。1つの場合では、話者前処理モジュール220および音声処理モジュール230は、車両のための共通の埋込型回路基板上で実現され得る。
【0042】
1つの場合において、音声処理モジュール230は、オーディオデータ255を処理し、発声を解析するために使用される音素データを予測するように構成される音響モデルを含む。この場合、言語的特徴260は音素データを含み得る。音素データは、たとえば予め規定されたアルファベットまたは辞書からの1つ以上の音素シンボルに関し得る。1つの場合では、音素データは、音素の予測されたシーケンスを含み得る。別の場合において、音素データは、たとえば音素シンボルおよび/または予め規定されたアルファベットもしくは辞書からのサブシンボルと、(たとえば隠れマルコフモデルについての)状態遷移のセットといった、音素コンポーネントのセットのうちの1つ以上についての確率を含み得る。音響モデルは、オーディオ特徴ベクトルの形態にあるオーディオデータを受け取るように構成され得る。オーディオ特徴ベクトルは、メル周波数ケプストラム係数(MFCC)およびフィルタバンク出力のうちの1つ以上を表す数値を含み得る。ある場合において、オーディオ特徴ベクトルは、時間内の現在のウィンドウ(しばしば「フレーム」と称される)に関し得、現在のウィンドウと時間における1つ以上の他のウィンドウ(たとえば以前のウィンドウ)との間での特徴の変化に関する差を含む。現在のウィンドウは、wミリ秒の範囲内の幅を有し得、たとえば、1つの場合では、wは約25ミリ秒であり得る。他の特徴はたとえば、信号エネルギーメトリックおよび対数スケーリングの出力を含み得る。前処理の後のオーディオデータ255は、複数の要素(たとえば10個から1000個を上回る要素)のフレーム(たとえばベクトル)を含み得、各要素は特定のオーディオ特徴に関連付けられる数値表現を含む。ある例において、約25~50のメルフィルタバンク特徴と、イントラ特徴(intra feature)の同様のサイズのセットと、(たとえば
、一階導関数(first-order derivative)を表わす)デルタ特徴の同様のサイズのセットと、(たとえば、二階導関数を表わす)ダブルデルタ特徴の同様のサイズのセットとが存在し得る。
【0043】
話者前処理モジュール220は、多くの異なる態様で話者特徴ベクトル225を取得するように構成され得る。1つの場合では、話者前処理モジュール220は、メモリからたとえばルックアップオペレーションを介して話者特徴ベクトル225の少なくとも部分を取得し得る。1つの場合では、以下に記載されるiおよび/またはxベクトルを含む話者特徴ベクトル225の部分がメモリから抽出され得る。この場合、画像データ245は、メモリから抽出するために特定の話者特徴ベクトル225を決定するように使用され得る。たとえば、画像データ245は、登録ユーザのセットから1人の特定のユーザを選択するために話者前処理モジュール220によって分類され得る。この場合、話者特徴ベクトル225は、選択された特定のユーザに相関される特徴の数値表現を含み得る。別の場合では、話者前処理モジュール220は、話者特徴ベクトル225を計算し得る。たとえば、話者前処理モジュール220は、画像データ245内の顕著な情報の圧縮または密な数値表現を計算し得る。これは、画像データ245よりサイズが小さい多くの要素を有するベクトルを含み得る。この場合、話者前処理モジュール220は、話者特徴ベクトル225を計算するために情報ボトルネックを実現し得る。1つの場合では、計算は、重み、バイアスおよび/または確率係数のセットのようなパラメータのセットに基づいて決定される。これらのパラメータについての値は、学習データのセットを使用する学習フェーズを介して決定され得る。1つの場合では、話者特徴ベクトル225は、計算のセットの後、静的な値(static value)としてバッファまたは格納され得る。この場合、話者特徴ベクトル225は、その後の発声の際、画像データ245に基づいてメモリから抽出され得る。話者特徴ベクトルがどのように計算され得るかを説明するさらに別の例を以下に説明する。話者特徴ベクトル225が唇の動きに関するコンポーネントを含む場合、このコンポーネントは、リアルタイムまたはリアルタイムに近いベースで提供され得、データストレ
ージから抽出され得ない。
【0044】
1つの場合では、話者特徴ベクトル225は、たとえばアレイの各要素につき1つの値といった、数値の固定長1次元アレイ(たとえばベクトル)を含み得る。他の場合では、話者特徴ベクトル225は多次元アレイを含み得、たとえば2つ以上の次元が複数の1次元アレイを表わす。数値は、(たとえば特定のビット長(8ビットは0~255の範囲を与える)によってセットされる範囲内の)整数値、または、(たとえば、32ビットもしくは64ビットの浮動小数点値として規定される)浮動小数点値を含み得る。正規化が視覚的特徴テンソルに適用される場合、たとえば、値が0~1または-1~1の範囲にマッピングされる場合、浮動小数点値が使用され得る。例として、話者特徴ベクトル225は256の要素アレイを含み得る。各要素が8または16ビットの値であるが、その形態は実現例に基づいて異なり得る。一般に、話者特徴ベクトル225は、たとえば前述の例を使用する、画像データの対応するフレーム未満の情報コンテンツを有しており、8ビットの値を有する長さ256の話者特徴ベクトル225は、8ビット値の3つのチャネルを有する640×480のビデオフレームより小さい。すなわち、2048ビットvs7372800ビットである。情報コンテンツは、ビットで測定され得るか、または、エントロピー測定の形態で測定され得る。
【0045】
1つの場合では、音声処理モジュール230は音響モデルを含み、音響モデルはニューラルネットワークアーキテクチャを含む。たとえば、音響モデルは、複数の隠れ層を有するディープニューラルネットワーク(DNN: Deep Neural Network)アーキテクチャと、ニューラルネットワークアーキテクチャならびに混合ガウスモデル(GMM: Gaussian Mixture Model)および隠れマルコフモデル(HMM:Hidden Markov Model)のうちの1つ以上を含むハイブリッドモデルと、たとえば、入力のシーケンスに対して動作するとともに出力として言語的特徴のシーケンスを生成する1つ以上の回帰型ニューラルネットワークを含むコネクショニストテンポラルクラシフィケーション(CTC:Connectionist Temporal Classification)モデルとのうちの1つ以上を含み得る。音響モデルは、フ
レームレベルで(たとえば音素シンボルまたはサブシンボルについて)予測を出力し得、以前の(およびいくつかの場合では将来の)予測を使用し得、これにより、発声についての音素データの可能または最も可能性のあるシーケンスを決定する。ビームサーチおよびビタビアルゴリズム(Viterbi algorithm)のようなアプローチが、音響モデルの出力端
上で使用され得、これにより、音響モデルから出力される音素データのシーケンスをさらに決定する。音響モデルの学習は、時間ステップバイ時間ステップで行われ得る。
【0046】
音声処理モジュール230が音響モデルを含み、音響モデルがニューラルネットワークアーキテクチャを含む(たとえば、「ニューラル」音響モデルである)場合、話者特徴ベクトル225は、オーディオデータ255と一緒に、ニューラルネットワークアーキテクチャへの入力として提供され得る。話者特徴ベクトル225およびオーディオデータ255は多くの態様で組み合わされ得る。シンプルな場合では、話者特徴ベクトル225およびオーディオデータ255は連結されてより長い結合ベクトルになり得る。別の場合では、異なる入力前処理が、話者特徴ベクトル225およびオーディオデータ255の各々に対して行なわれ得る。たとえば1つ以上のアテンション(attention)層、フィードフォ
ワード(feed-forward)層および/または埋込層(embedding layer)が適用され得、そ
の後、これらの層の結果が組み合わされ得る。層の異なるセットが異なる入力に適用され得る。他の場合では、音声処理モジュール230は、たとえば確率音響モデルといった統計モデルの別の形態を含み得、話者特徴ベクトル225は、特定の話者のために音声処理モジュール230を構成するために1つ以上の数値パラメータ(たとえば確率係数)を含む。
【0047】
例示的な音声処理装置200は、車両内の音声処理のための改善を提供する。車両内に
おいて、道路およびエンジンノイズのようなハイレベルの環境ノイズが存在し得る。自動車両の囲まれた内部空間によって引き起こされる音響の歪みがさらに存在し得る。これらのファクタによって、比較例においてはオーディオデータを処理することが困難となり得る。たとえば、音声処理モジュール230は言語的特徴260を生成するのに失敗し得、および/または、言語的特徴260の不十分にマッチするシーケンスを生成し得る。しかしながら、
図2の構成により、音声処理モジュール230は、画像データ245に基づいて決定される話者特徴に基づいて構成または適合されることが可能になる。これは、たとえば外観と音響特徴との間の相関を利用することによって特定の話者と一貫している言語的特徴を選択し得るように、音声処理モジュール230に付加的な情報を提供する。これらの相関は、一般的な顔の外観のような長期的な時間的相関であり得、および/または、特定の唇位置および口位置のような短期的な時間的相関であり得る。これは、困難なノイズおよび音響コンテキストにもかかわらず、より高い精度につながる。これは、たとえば、エンドツーエンドのトランスクリプションパスを向上させ、および/または、ボイスコマンドを行なうためのオーディオインターフェイスを向上させるといった、発声解析エラーを低減するのを支援し得る。ある場合において、本例は、眠気および/または注意散漫をチェックするために運転手をモニターするように通常構成される存在する運転手に面するカメラを利用することが可能であり得る。ある場合において、認識された話者に基づいて抽出される話者依存特徴ベクトルコンポーネント、および/または、口の動きの特徴を含む話者依存特徴ベクトルコンポーネントが存在し得る。後者のコンポーネントは、個人ユーザのために構成されない機能に基づいて決定され得、たとえば、すべてのユーザのための共通の機能が適用され得るが、口の動きは話者に関連付けられる。ある他の場合では、口の動きの特徴の抽出は、特定の識別されたユーザに基づいて構成され得る。
【0048】
顔認識例
図3は、例示的な音声処理装置300を示す。音声処理装置300は、
図2における話者前処理モジュール220を実現するために使用され得る付加的なコンポーネントを示す。
図3に示されるあるコンポーネントは、
図2に示されるそれらの相当物と同様であり、同様の参照番号を有する。
図2を参照して上で記載される特徴はさらに、
図3の例300にも該当し得る。
図2の例示的な音声処理装置200のように、
図3の例示的な音声処理装置300は、話者前処理モジュール320および音声処理モジュール330を含む。音声処理モジュール330はオーディオデータ355および話者特徴ベクトル325を受け取り、言語的特徴360のセットを計算する。音声処理モジュール330は、
図2を参照して上で記載された例と同様の態様で構成され得る。
【0049】
図3では、話者前処理モジュール320の多くのサブコンポーネントが示される。これらは、顔認識モジュール370、ベクトルジェネレータ372およびデータストア374を含む。これらは、
図3において話者前処理モジュール320のサブコンポーネントとして示されるが、他の例において、別個のコンポーネントとして実現され得る。
図3の例では、話者前処理モジュール320は、人の顔エリアを特徴とする画像データ345を受け取る。人は、上述したように車両中の運転手または乗客を含み得る。顔認識モジュール370は、たとえば車両内の運転手または乗客といった人を識別するために画像データに対して顔認識を行なう。顔認識モジュール370は、顔認識を行なうためにハードウェアおよびソフトウェアの任意の組合せを含み得る。1つの場合では、顔認識モジュール370は、オムロンエレクトロニクス社によって供給されるB5T-007001のような既製のハードウェアコンポーネントを使用して実現され得る。本例では、顔認識モジュール370は、画像データ345に基づいてユーザを検出し、ユーザ識別子376を出力する。ユーザ識別子376はベクトルジェネレータ372に渡される。ベクトルジェネレータ372は、識別された人に関連付けられる話者特徴ベクトル325を得るためにユーザ識別子376を使用する。ある場合には、ベクトルジェネレータ372は、データストア374から話者特徴ベクトル325を抽出し得る。その後、話者特徴ベクトル325は、
図2
を参照して記載されるように、使用のために音声処理モジュール330に渡される。
【0050】
図3の例では、ベクトルジェネレータ372は、オペレーティングパラメータのセットに依存して、異なる態様で話者特徴ベクトル325を取得し得る。1つの場合において、オペレーティングパラメータは、特定の数の話者特徴ベクトル325が(たとえばユーザ識別子376によって識別されたような)特定の識別されたユーザについて計算されたか否かを示すパラメータを含む。1つの場合では、ある数の以前に計算された話者特徴ベクトルに関連付けられるしきい値が規定される。このしきい値が1である場合、話者特徴ベクトル325は第一の発声について計算され得、その後、データストア374に格納され得、その後の発声について、話者特徴ベクトル325はデータストア374から抽出され得る。しきい値がnのように1以上である場合、n個の話者特徴ベクトル325が生成され得、(n+1)番目の話者特徴ベクトル325が、データストア374から抽出される以前のn個の話者特徴ベクトル325の合成関数として得られ得る。合成関数は平均または補間を含み得る。1つの場合では、ひとたび(n+1)番目の話者特徴ベクトル325が計算されると、構成可能な数の将来の発声について静的な話者特徴ベクトルとして使用される。
【0051】
上記の例において、話者特徴ベクトル325を保存するデータストア374の使用によって、車両内システムのためのランタイム計算要求が低減され得る。たとえば、データストア374は、車両内のローカルデータストレージデバイスを含み得、したがって、話者特徴ベクトル325は、ベクトルジェネレータ372によって計算されるのではなく、特定のユーザについてデータストア374から抽出され得る。
【0052】
1つの場合では、ベクトルジェネレータ372によって使用される少なくとも1つの計算機能は、クラウド処理リソース(たとえばリモートサーバコンピューティングデバイス)を伴い得る。この場合、車両とクラウド処理リソースとの間の接続に制限がある状況において、話者特徴ベクトル325は、クラウド処理リソースによって提供される任意の機能に依存するのではなく、静的なベクトルとしてローカルストレージから抽出され得る。
【0053】
1つの場合では、話者前処理モジュール320は、車両内の各新しく認識された人のユーザプロファイルを生成するように構成され得る。たとえば、オーディオキャプチャデバイスによってキャプチャされるといったような発声の検出に先立ってまたは発声の検出の際に、顔認識モジュール370は、以前に観察された顔に対して画像データ345をマッチすることを試み得る。マッチが見つからない場合、顔認識モジュール370は、新しいユーザ識別子376を生成し得る(または新しいユーザ識別子376の生成を指示し得る)。1つの場合において、顔認識モジュール370またはベクトルジェネレータ372のような話者前処理モジュール320のコンポーネントは、マッチが見つからない場合に、新しいユーザプロファイルを生成するように構成され得、新しいユーザプロファイルは新しいユーザ識別子を使用してインデックス付けされ得る。その後、話者特徴ベクトル325は、新しいユーザプロファイルに関連付けられ、新しいユーザプロファイルは、将来のマッチが顔認識モジュール370によってなされる場合に抽出される準備ができている状態で、データストア374に格納され得る。したがって、ユーザ特定音声認識プロファイルを選択するために、顔認識のために車両内画像キャプチャデバイスが使用され得る。ユーザプロファイルは、たとえば運転手が最初に車を使用する際に、エンロールメントプロセスを通じて較正され得るか、または、使用中に集められたデータに基づいて学習され得る。
【0054】
1つの場合では、話者処理モジュール320は、データストア374のリセットを行なうように構成され得る。製造時において、デバイス374にはユーザプロファイル情報が存在しない場合がある。使用中に新しいユーザプロファイルが上述したように作成され、
データストア374に加えられ得る。ユーザは、格納されたユーザ識別子のリセットを命じ得る。いくつかの場合には、自動車がサービス店でメンテナンスされるかまたは公認ディーラによって販売される場合のように、リセットはプロフェッショナルサービス中にのみ行なわれ得る。いくつかの場合において、ユーザによって提供されたパスワードを通じて、リセットは任意の時に提供され得る。
【0055】
車両が複数の画像キャプチャデバイスおよび複数のオーディオキャプチャデバイスを含む例において、話者前処理モジュール320は、1つ以上のキャプチャされた画像から適切な顔エリアを決定するためにさらに別の機能を提供し得る。1つの場合において、複数のオーディオキャプチャデバイスからのオーディオデータが、発声に関連付けられる最も近いオーディオキャプチャデバイスを決定するために処理され得る。この場合、決定された最も近いオーディオキャプチャデバイスに関連付けられる最も近い画像キャプチャデバイスが選択され得、このデバイスからの画像データ345が顔認識モジュール370に送信され得る。別の場合において、顔認識モジュール370は、複数の画像キャプチャデバイスから複数の画像を受け取るように構成され得、各画像は、現在話しているユーザを識別するためにそれが使用されるべきであるか否かを示すために、関連付けられるフラグを含む。これにより、
図3の音声処理装置300は、車両内の複数の人々から話者を識別するために使用され得、その話者の特定の特徴に対して音声処理モジュール330を構成し得る。これはさらに、複数の人々が車両の制約のある内部で話している場合、車両内での音声処理を向上させ得る。
【0056】
iベクトル
本願明細書において記載されるある例において、話者特徴ベクトル225または325のような話者特徴ベクトルは、たとえば
図2および
図3におけるオーディオデータ255または355といったオーディオデータに基づいて生成されるデータを含み得る。これは
図3において破線によって示される。1つの場合では、話者特徴ベクトルの少なくとも部分は、ファクタ解析に基づいて生成されるベクトルを含み得る。この場合、発声は、1つ以上のファクタの線形関数であるベクトルMとして表わされ得る。ファクタは、線形および/または非線形モデルにおいて組み合わされ得る。これらのファクタのうちの1つは、話者およびセッション独立スーパーベクトル(speaker and session independent supervector)mを含み得る。これは、ユニバーサルバックグランドモデル(UBM: Universal Background Model)に基づき得る。これらのファクタのうちの別の物は、話者依存ベクトルwを含み得る。この後者のファクタはさらに、チャネルもしくはセッションに依存し得、または、チャネルおよび/またはセッションに依存するさらに別のファクタが提供され得る。1つの場合では、ファクタ解析は、混合ガウスモデル(GMM)混合を使用して行なわれる。シンプルな場合では、話者発声は、M=m+Twとして決定されるスーパーベクトルMによって表わされ得、式中、Tは少なくとも話者サブスペースを定義するマトリックスである。話者依存ベクトルwは、浮動小数点値を有する複数の要素を有し得る。この場合における話者特徴ベクトルは、話者依存のベクトルwに基づき得る。時に「iベクトル」と称されるwを計算する1つの方法は、Najim Dehak、Patrick Kenny、Reda Dehak、Pierre DumouchelおよびPierre Ouelletによる論文「話者照合のためのフロントエンドファクタ分析(Front-End Factor Analysis For Speaker Verification)」に記載されている。当該論文は、2010年、IEEE Transactions On Audio, Speech And Language Processing 19, no.4, pages 788-798において発表されており、本願明細書において参照により援用される。ある例において、話者特徴ベクトルの少なくとも部分は、iベクトルの少なくとも部分を含む。iベクトルは、オーディオデータからの発声について決定される話者依存ベクトルであると見られ得る。
【0057】
図3の例では、ベクトルジェネレータ372は、1つ以上の発声についてのiベクトルを計算し得る。データストア374内に格納された話者特徴ベクトルが存在しない場合、
iベクトルは、発声355についてのオーディオデータの1つ以上のフレームに基づいて、ベクトルジェネレータ372によって計算され得る。この例において、ベクトルジェネレータ372は、たとえば顔認識モジュール370から決定されるユーザ識別子376を使用して識別されるように、しきい値数の計算が特定のユーザについて行なわれるまで、発声ごと(たとえばボイスクエリごと)のiベクトル計算を繰り返し得る。この場合、画像データ345に基づいて特定のユーザが識別された後、発声ごとにユーザについてiベクトルがデータストア374に格納される。iベクトルも話者特徴ベクトル325を出力するために使用される。たとえば100程度のiベクトルが計算されるといったようなしきい値数の計算がひとたび行なわれると、ベクトルジェネレータ372は、データストア374に格納されるiベクトルを使用して、特定のユーザについてのプロファイルを計算するように構成され得る。プロファイルは、インデックスとしてユーザ識別子376を使用し得、格納されたiベクトルの合成関数として計算される静的な(たとえば変化しない)iベクトルを含み得る。ベクトルジェネレータ372は、(n+1)番目のクエリの受信の際に、または、バックグラウンドまたは周期関数の部分としてプロファイルを計算するように構成され得る。1つの場合では、静的なiベクトルは、格納されたiベクトルの平均として計算され得る。たとえば特定のユーザにプロファイルを関連付けるためにユーザ識別子を使用してプロファイルがひとたびベクトルジェネレータ372によって生成されてデータストア374に格納されると、ユーザについてのiベクトルの計算の代わりにデータストア374から抽出され、将来の発声解析に使用され得る。これにより、話者特徴ベクトルを生成する計算オーバーヘッドが低減され得、iベクトル変動が低減され得る。
【0058】
xベクトル
ある例において、話者特徴ベクトル225または325のような話者特徴ベクトルは、ニューラルネットワークアーキテクチャを使用して計算され得る。たとえば、1つの場合では、
図3の話者前処理モジュール320のベクトルジェネレータ372は、ニューラルネットワークアーキテクチャを含み得る。この場合、ベクトルジェネレータ372は、オーディオデータ355の次元数を低減することにより話者特徴ベクトルの少なくとも部分を計算し得る。たとえば、ベクトルジェネレータ372は、オーディオデータ355の1つ以上のフレームを受け取るとともに固定長ベクトル出力(たとえば1言語当たり1つのベクトル)を出力するように構成される1つ以上のディープニューラルネットワーク層を含み得る。1つ以上のプーリング、非線形関数およびソフトマックス(SoftMax)層がさら
に提供され得る。1つの場合では、話者特徴ベクトルは、David Snyder、Daniel Garcia-Romero、Alan McCree、Gregory Sell、Daniel PoveyおよびSanjeev Khudanpurによる論文「Xベクトルを使用した発声言語認識(Spoken Language Recognition using X-vectors
)」に記載されるようにxベクトルに基づいて生成され得る。当該論文は、2018年、Odyssey(pp.105-111)において発表されており、本願明細書において参照により援用される。
【0059】
xベクトルは、上記iベクトルと同様の態様で使用され得、上記のアプローチは、xベクトルおよびiベクトルを使用して生成される話者特徴ベクトルに適用される。1つの場合において、iベクトルおよびxベクトルの両方が決定され得、話者特徴ベクトルは、iベクトルおよびxベクトルの両方からの要素を含むスーパーベクトルを含み得る。iベクトルおよびxベクトルの両方は、たとえば典型的に浮動小数点値および/または所与の範囲内で正規化された値といった、連結(concatenation)または加重和によって組み合わ
され得る数値の要素を含む。この場合、データストア374は、iベクトルおよびxベクトルのうちの1つ以上について格納された値を含み得、これにより、しきい値にひとたび達すると、静的な値が計算され、将来の抽出のために特定のユーザ識別子とともに格納される。1つの場合では、1つ以上のiベクトルおよびxベクトルからの話者特徴ベクトルを決定するために補間が使用され得る。1つの場合では、補間は、同じベクトル源から異
なる話者特徴ベクトルを平均することにより行なわれ得る。
【0060】
音声処理モジュールがニューラル音響モデルを含む場合、話者特徴ベクトルについての固定長フォーマットが定義され得る。その後、ニューラル音響モデルは、たとえば、
図2および
図3における話者前処理モジュール220または320によって決定されるように、規定された話者特徴ベクトルを使用して学習され得る。話者特徴ベクトルがiベクトルおよびxベクトル計算の1つ以上に由来する要素を含む場合、ニューラル音響モデルは、話者特徴ベクトル内に具現化または埋め込まれる話者固有の情報に基づいて、音響処理を構成することを「学習し」得る。これは、特に自動車両のような車両内に音響処理精度を増加し得る。この場合、画像データは、計算または格納されたベクトル要素に特定のユーザを迅速に関連付けるようなメカニズムを提供する。
【0061】
例示的な音声処理モジュール
図4は、例示的な音声処理モジュール400を示す。音声処理モジュール400は、
図1、
図2および
図3における音声処理モジュール130、230または330を実現するために使用され得る。他の例において、他の音声処理モジュール構成が使用され得る。
【0062】
以前の例により、音声処理モジュール400はオーディオデータ455および話者特徴ベクトル425を受け取る。オーディオデータ455および話者特徴ベクトル425が、本願明細書において記載される例のうちのいずれかにより構成され得る。
図4の例では、音声処理モジュール400は、音響モデル432と、言語モデル434と、発声パーサー436とを含む。上述したように、音響モデル432は音素データ438を生成する。音素データは、音素シンボルまたはサブシンボルのうちの1つ以上の予測されたシーケンス、または、祖語言語ユニット(proto-language unit)の他の形態を含み得る。ある場合
において、各時間ステップにおける特定のシンボルまたはサブシンボルの可能性を示す確率データとともに、複数の予測されたシーケンスが生成され得る。
【0063】
音素データ438は言語モデル434に通信され、たとえば、音響モデル432は言語モデル434に通信可能に結合される。言語モデル434は、音素データ438を受け取り、かつ、トランスクリプション440を生成するように構成される。トランスクリプション440は、たとえば文字列、単語部分(たとえば語幹および語尾など)または単語といったテキストデータを含み得る。文字、単語部分および単語は、たとえば各時間ステップでの可能な出力の予め規定されたセットといった予め規定された辞書から選択され得る。ある場合には、音素データ438が言語モデル434に渡す前に処理され得るか、または、言語モデル434によって前処理され得る。たとえば、ビーム形成は、音響モデル432から出力される(たとえば音素についての)確率分布に適用され得る。
【0064】
言語モデル434は、発声パーサー436に通信可能に結合される。発声パーサー436はトランスクリプション440を受け取り、発声を解析するためにこれを使用する。ある場合には、発声パーサー436が、発声の解析の結果、発声データ442を生成する。発声パーサー436は、トランスクリプションに基づいて発声に関連付けられるコマンドおよび/またはコマンドデータを決定するように構成され得る。1つの場合では、言語モデル434は、たとえばテキスト内でのユニットについて確率情報により、複数の可能なテキストシーケンスを生成し得、発声パーサー436は、たとえば、ASCIIもしくはUnicodeの文字エンコードまたは音声コマンドもしくはコマンドデータの形態で、終了したテキスト出力を決定するように構成され得る。トランスクリプション440がボイスコマンドを含むと決定されると、発声パーサー436は、コマンドデータに従ってコマンドを実行するか、または、当該コマンドの実行を命令するように構成され得る。これにより、発声データ442として出力される応答データが得られ得る。発声データ442は、たとえばコマンド命令といった、発声をする人にリレーされる応答を含み得、これに
より、ダッシュボード108上および/または車両の音声システムを介して出力を提供する。ある場合において、言語モデル434は、統計的言語モデルを含み得、発声パーサー436は、統計的言語モデルによる出力として代替的な仮定を再スコアリングするように構成される別個の「メタ」言語モデルを含み得る。これは、たとえば最終トランスクリプションまたはコマンド識別といった最終出力を決定するために投票(voting)を使用するアンサンブルモデルを介し得る。
【0065】
図4は、音響モデル432が入力として話者特徴ベクトル425およびオーディオデータ455を受け取り、音素データ438を生成するために当該入力を使用する例を実線で示す。たとえば、音響モデル432は、(他の非ニューラルコンポーネントを有するハイブリッドモデルを含む)ニューラルネットワークアーキテクチャを含み得、話者特徴ベクトル425およびオーディオデータ455は、ニューラルネットワークアーキテクチャに入力として提供され得、音素データ438はニューラルネットワークアーキテクチャの出力に基づいて生成される。
【0066】
図4における破線は、ある実現例において構成され得る付加的な結合を示す。第1の場合では、話者特徴ベクトル425は、言語モデル434および発声パーサー436のうちの1つ以上によってアクセスされ得る。たとえば、言語モデル434および発声パーサー436がさらにそれぞれのニューラルネットワークアーキテクチャを含む場合、これらのアーキテクチャは、たとえば音素データ438およびトランスクリプション440それぞれに加えて、付加的な入力として話者特徴ベクトル425を受け取るように構成され得る。発声データ442がコマンド識別子および1つ以上のコマンドパラメータを含む場合、完全な音声処理モジュール400は、グラウンドトゥルース出力を有する学習セットと、オーディオデータ455および話者特徴ベクトル425についての学習サンプルとが与えられると、エンドツーエンドの態様で学習され得る。
【0067】
第2の実現例では、
図4の音声処理モジュール400は1つ以上の回帰型接続を含み得る。1つの場合では、音響モデルは、たとえばLSTMといった回帰型モデルを含み得る。他の場合では、モジュール間でのフィードバックが存在し得る。
図4において、破線が、発声パーサー436と言語モデル434との間の第1の回帰型結合を示しており、破線が、言語モデル434と音響モデル432との間の第2の回帰型結合を示す。この第2の場合において、発声パーサー436の現在の状態は、言語モデル434の将来の予測を構成するために使用され得、言語モデル434の現在の状態は、音響モデル432の将来の予測を構成するために使用され得る。回帰型結合は、ある場合において、処理パイプラインを簡素化し、かつより容易な学習を可能にするために省略され得る。1つの場合では、回帰型結合は、次の時間ステップで適用されるアテンションまたは加重ベクトルを計算するために使用され得る。
【0068】
ニューラル話者前処理モジュール
図5は、ニューラル話者前処理モジュール520およびニューラル音声処理モジュール530を使用する例示的な音声処理装置500を示す。
図5において、
図2および
図3におけるモジュール220または320を実現し得る話者前処理モジュール520は、ニューラルネットワークアーキテクチャ522を含む。
図5では、ニューラルネットワークアーキテクチャ522は、画像データ545を受け取るように構成される。他の場合では、ニューラルネットワークアーキテクチャ522はさらに、たとえば
図3における破線のパスウェイ(pathway)によって示されるような、オーディオデータ355のようなオーデ
ィオデータを受け取り得る。これらの他の場合では、
図3のベクトルジェネレータ372はニューラルネットワークアーキテクチャ522を含み得る。
【0069】
図5において、ニューラルネットワークアーキテクチャ522は少なくとも畳み込みニ
ューラルアーキテクチャを含む。あるアーキテクチャにおいて、最後の畳み込みニューラルネットワーク層とニューラルネットワークアーキテクチャ522の出力層との間に1つ以上のフィードフォワードニューラルネットワーク層が存在し得る。ニューラルネットワークアーキテクチャ522は、AlexNet、VGGNet、GoogLeNetまたはResNetアーキテクチャの適合された形態を含み得る。ニューラルネットワークアーキテクチャ522は、より正確なアーキテクチャが利用可能になると、モジュラーな態様で置換され得る。
【0070】
ニューラルネットワークアーキテクチャ522は、少なくとも1つの話者特徴ベクトル525を出力し、話者特徴ベクトルは、他の例のうちのいずれかに記載されるように導出および/または使用され得る。
図5は、たとえば画像データ545がビデオカメラからの複数のフレームを含む場合を示しており、フレームは人の顔エリアを特徴とする。この場合、複数の話者特徴ベクトル525は、たとえば画像データの各入力フレームについて1つ、ニューラルネットワークアーキテクチャを使用して計算され得る。他の場合では、入力データのフレームと話者特徴ベクトルとの間に多対一の関係が存在し得る。なお、回帰型ニューラルネットワークシステムを使用して、入力画像データ545および出力話者特徴ベクトル525のサンプルを時間的に同期する必要はない。たとえば、回帰型ニューラルネットワークアーキテクチャは、時間にわたってエンコーダ(またはインテグレータ)として動作し得る。1つの場合では、ニューラルネットワークアーキテクチャ522は、上述したようにxベクトルを生成するように構成され得る。1つの場合において、xベクトルジェネレータは、画像データ545を受け取り、畳み込みニューラルネットワークアーキテクチャを使用してこの画像データを処理し、次いで畳み込みニューラルネットワークアーキテクチャの出力をオーディオベースのxベクトルと組み合わせるように構成され得る。1つの場合において、公知のxベクトル構成は、画像データとオーディオデータとを受け取り、かつ、両方のモーダルパスウェイからの情報を具現化する単一の話者特徴ベクトルを生成するために拡張され得る。
【0071】
図5では、ニューラル音声処理モジュール530は、ニューラルネットワークアーキテクチャを含むモジュール230、330、400のうちの1つのような音声処理モジュールである。たとえば、ニューラル音声処理モジュール530は、ハイブリッドDNN-HMM/GMMシステムを含み得、および/または、完全にニューラルのCTCシステムを含み得る。
図5では、ニューラル音声処理モジュール530は、入力としてオーディオデータ555のフレームを受け取る。各フレームは、たとえばオーディオキャプチャデバイスからの時系列データに対して経過するwミリ秒のウィンドウといった時間ウィンドウに対応し得る。オーディオデータ555のフレームは画像データ545のフレームと非同期であり得、たとえば、オーディオデータ555のフレームはより高いフレームレートを有する可能性が高い。また、保持メカニズムおよび/または回帰型ニューラルネットワークアーキテクチャは、時間的なエンコーディングおよび/またはサンプルの積分を提供するようニューラル音声処理モジュール530内で適用され得る。他の例において、ニューラル音声処理モジュール530は、言語的特徴のセットを生成するために、オーディオデータ555のフレームおよび話者特徴ベクトル525を処理するように構成される。本願明細書において議論されるように、ニューラルネットワークアーキテクチャへの参照は、1つ以上のニューラルネットワーク層(1つの場合において、1つ以上の隠れ層および複数の層を有する「ディープ」アーキテクチャ)を含み、各層は、双曲線正接単位(tanh unit)または正規化線形関数単位(RELU: REctified Linear Unit)のような非線形性によって次の層から分離され得る。他の関数は、プーリングオペレーションを含む層内で具現化され得る。
【0072】
ニューラル音声処理モジュール530は、
図4に示されるような1つ以上のコンポーネントを含み得る。たとえば、ニューラル音声処理モジュール530は、少なくとも1つの
ニューラルネットワークを含む音響モデルを含み得る。
図5の例では、ニューラル話者前処理モジュール520およびニューラル音声処理モジュール530のニューラルネットワークアーキテクチャは共同で学習され得る。この場合、学習セットは、画像データ545のフレームと、オーディオデータ555のフレームと、グラウンドトゥルース言語的特徴(たとえばグラウンドトゥルース音素シーケンス、テキストトランスクリプションまたはボイスコマンド分類、および、コマンドパラメータ値)とを含み得る。ニューラル話者前処理モジュール520およびニューラル音声処理モジュール530の両方は、この学習セットを使用して、エンドツーエンドの態様で学習され得る。この場合、予測された言語的特徴とグラウンドトゥルース言語的特徴との間のエラーは、ニューラル音声処理モジュール530の後、ニューラル話者前処理モジュール520を通じて戻るように伝播され得る。次いで、両方のニューラルネットワークアーキテクチャのためのパラメータが、勾配降下法アプローチ(gradient descent approach)を使用して決定され得る。これにより、
ニューラル話者前処理モジュール520のニューラルネットワークアーキテクチャ522は、車両内環境において少なくとも音響処理を向上させる1つ以上の話者特徴ベクトル525を生成する(1つ以上のニューラルネットワーク層についての重みおよび/またはバイアスについての値のような)パラメータ値を「学習」し得、ニューラル話者前処理モジュール520は、出力される言語的特徴の精度を向上させるのを支援する人の顔エリアから特徴を抽出することを学習する。
【0073】
本願明細書に記載されるようなニューラルネットワークアーキテクチャの学習は、車両内デバイス上で(所望の場合、行なわれ得るが)典型的には行なわれない。1つの場合において、学習は、(CPU、GPU、フィールドプログラマブルゲートアレイ(FPGA: Field Programmable Gate Array)または他の専用のプロセッサアーキテクチャに関わらず)複数の処理ユニットと、学習データの組を保持する大きなメモリ部分とを有するサーバコンピュータデバイスのような、かなりの処理リソースへのアクセスを有するコンピューティングデバイス上で行なわれ得る。ある場合において、学習は、たとえば結合可能なFPGAまたはGPUベースのデバイスといった結合されたアクセレレイタデバイスを使用して行なわれ得る。ある場合では、学習されたパラメータは、たとえば無線経由のアップデート(over-the-air update)の部分として、リモートサーバデバイスから車両内
の埋込システムまで通信され得る。
【0074】
音響モデル選択の例
図6は、音響モデルを構成するために話者特徴ベクトル625を使用する例示的な音声処理モジュール600を示す。音声処理モジュール600は、他の例に記載される音声処理モジュールのうちの1つを少なくとも部分的に実現するために使用され得る。
図6では、音声処理モジュール600は、音響モデル構成632のデータベースと、音響モデルセレクタ634と、音響モデルインスタンス636とを含む。音響モデル構成632のデータベースは、音響モデルを構成するためにある数のパラメータを格納する。この例において、音響モデルインスタンス636は、音響モデル構成632のデータベースからのパラメータ値の特定のセットを使用して、インスタンス化される(たとえば、構成または較正される)一般的な音響モデルを含み得る。たとえば、音響モデル構成636のデータベースは、複数の音響モデル構成を格納し得る。各音響モデル構成は、異なるユーザに関連付けられ得、ユーザが検出されないかまたはユーザが検出されるが特に認識されない場合に使用される1つ以上のデフォルト音響モデル構成を含む。
【0075】
ある場合では、話者特徴ベクトル625は、特定のユーザの代わりに(または特定のユーザとともに)特定の地方アクセントを表わすために使用され得る。これは、多くの異なる地方アクセントが存在し得るインドのような国々において有用であり得る。この場合、話者特徴ベクトル625は、話者特徴ベクトル625を使用して行なわれるアクセント認識に基づいて動的に音響モデルをロードするために使用され得る。たとえば、これは、話
者特徴ベクトル625が上述したようにxベクトルを含む場合において可能であり得る。これは、車両のメモリ内に格納される複数のアクセントモデル(たとえば各アクセントについての複数の音響モデル構成)を有する場合に有用であり得る。次いで、これは、複数の別々に学習されたアクセントモデルが使用されることを可能にし得る。
【0076】
1つの場合では、話者特徴ベクトル625は、車両内の人の分類を含み得る。たとえば、話者特徴ベクトル625は、
図3における顔認識モジュール370によって出力されるユーザ識別子376に由来し得る。別の場合において、話者特徴ベクトル625は、
図5におけるモジュール520のようなニューラル話者前処理モジュールによって出力される分類および/または確率のセットを含み得る。後者の場合では、ニューラル話者前処理モジュールは、潜在ユーザのセット(「未認識」についての分類を含む)について「確率」を出力するソフトマックス層を含み得る。この場合、入力画像データ545の1つ以上のフレームが単一の話者特徴ベクトル525に帰着し得る。
【0077】
図6では、音響モデルセレクタ634は、たとえば話者前処理モジュールから話者特徴ベクトル625を受け取り、音響モデル構成632のデータベースから音響モデル構成を選択する。これは、上で記載された
図3の例と同様の態様で動作され得る。話者特徴ベクトル625がユーザ分類のセットを含む場合、音響モデルセレクタ634は、たとえば確率ベクトルをサンプリングし、および/または、決定された人として最も大きい確率値を選択することによって、これらの分類に基づいて音響モデル構成を選択し得る。選択された構成に関するパラメータ値は、音響モデル構成632のデータベースから抽出され、音響モデルインスタンス636をインスタンス化するために使用され得る。従って、車両内の異なる識別されたユーザのために異なる音響モデルインスタンスが使用され得る。
【0078】
図6において、たとえば、音響モデル構成632のデータベースから抽出された構成を使用して音響モデルセレクタ634によって構成されるような音響モデルインスタンス636もオーディオデータ655を受け取る。音響モデルインスタンス636は、オーディオデータ655に関連付けられる(たとえばオーディオデータ655内で特徴とされる)発声を解析するために使用するよう、音素データ660を生成するように構成される。音素データ660は、たとえば予め規定されたアルファベットまたは辞書からの音素シンボルのシーケンスを含み得る。従って、
図6の例において、音響モデルセレクタ634は、話者特徴ベクトルに基づいてデータベース632から音響モデル構成を選択し、音響モデル構成は、音響モデルインスタンス636をインスタンス化してオーディオデータ655を処理するために使用される。
【0079】
音響モデルインスタンス636は、ニューラルおよび非ニューラルアーキテクチャの両方を含み得る。1つの場合では、音響モデルインスタンス636は非ニューラルモデルを含み得る。たとえば、音響モデルインスタンス636は統計モデルを含み得る。統計モデルは、シンボル周波数および/または確率を使用し得る。1つの場合では、統計モデルは、ベイジアンネットワークまたは分類器のようなベイジアンモデルを含み得る。これらの場合では、音響モデル構成は、シンボル周波数の特定のセット、および/または、異なる環境において測定された以前の確率を含み得る。したがって、音響モデルセレクタ634は、発声の特定の源(たとえば人またはユーザ)が、両方の視覚的(およびある場合ではオーディオ)情報に基づいて決定されることを可能にし、これにより、音素シーケンス660を生成するためにオーディオデータ655を単独で使用することに対して改善が提供され得る。
【0080】
別の場合では、音響モデルインスタンス636はニューラルモデルを含み得る。この場合、音響モデルセレクタ634および音響モデルインスタンス636は、ニューラルネットワークアーキテクチャを含み得る。この場合、音響モデル構成632のデータベースは
省略され得、音響モデルセレクタ634は、インスタンスを構成するために音響モデルインスタンス636にベクトル入力を供給し得る。この場合、学習データは、話者特徴ベクトル625、オーディオデータ655および音素出力660のグラウンドトゥールースセットを生成するために使用される画像データから構築され得る。そのようなシステムは共同で学習され得る。
【0081】
例示的な画像前処理
図7および
図8は、自動車両のような車両の内部から得られる画像データに適用され得る例示的な画像前処理オペレーションを示す。
図7は、画像プリプロセッサ710を含む例示的な画像前処理パイプライン700を示す。画像プリプロセッサ710は、本願明細書に記載されるように、機能を実現するためにハードウェアおよびソフトウェアの任意の組合せを含み得る。1つの場合において、画像プリプロセッサ710は、1つ以上の画像キャプチャデバイスに結合される画像キャプチャ回路の部分を形成するハードウェアコンポーネントを含み得、別の場合では、画像プリプロセッサ710は、車両内制御システムのプロセッサによって実行される(ファームウェアのような)コンピュータプログラムコードによって実現され得る。1つの場合では、画像プリプロセッサ710は、本願明細書における例に記載される話者前処理モジュールの部分として実現され得、他の場合では、画像プリプロセッサ710は、話者前処理モジュールに通信可能に結合され得る。
【0082】
図7では、画像プリプロセッサ710は、
図1Aにおける画像キャプチャデバイス110からの画像のような画像データ745を受け取る。画像プリプロセッサ710は、画像データの1つ以上の部分を抽出するために画像データを処理する。
図7は、画像プリプロセッサ710の出力750を示す。出力750は、たとえば画像データ745の1つ以上のピクセルに関連付けられるメタデータといった1つ以上の画像アノテーション、および/または、画像データ745内でのピクセル座標を使用して定義される特徴を含み得る。
図7の例では、画像プリプロセッサ710は、第1の画像エリア752を決定するために、画像データ745上で顔検出を行なう。第1の画像エリア752は画像部分762として切り取りおよび抽出され得る。第1の画像エリア752は、バウンディングボックス(bounding box)(たとえば、矩形エリアについての少なくとも左上および右下(x,y))ピクセル座標)を使用して定義され得る。顔検出は、顔認識のための前駆ステップであり得る。たとえば、顔検出が画像データ745内の顔エリアを決定し得、顔認識が(たとえば人々のセット内の)所与の人に属するものとして顔エリアを分類し得る。
図7の例では、画像プリプロセッサ710はさらに、第2の画像エリア754を決定するために画像データ745内で口エリアを識別する。第2の画像エリア754は画像部分764として切り取りおよび抽出され得る。第2の画像エリア754もバウンディングボックスを使用して定義され得る。1つの場合では、第1および第2の画像エリア752,754は検出された顔の特徴756のセットに関連して決定され得る。これらの顔の特徴756は、目、鼻および口エリアの1つ以上を含み得る。顔の特徴756および/または第1および第2のエリア752,754の1つ以上の検出は、ニューラルネットワークアプローチを使用し得、または、2004年、オランダ、International Journal of Computer Vision 57, pp. 137-154において発表された、本願明細書において参照により援用されるPaul ViolaおよびMichael J Jonesによる「堅牢なリアルタイム顔検出(Robust Real-Time Face Detection)」に記載されるようなビオラ-ジョーンズ(Viola-Jones)顔検出アルゴリズ
ムといった公知の顔検出アルゴリズムを使用し得る。ある例において、第1および第2の画像エリア752,754のうちの1つ以上は、話者特徴ベクトルを得るために、本願明細書において記載される話者前処理モジュールによって使用される。たとえば、第1の画像エリア752は、
図3における顔認識モジュール370のために入力画像データを提供し得る(すなわち、画像データ345を供給するために使用され得る)。第2の画像エリア754を使用する例は、
図9を参照して以下に記載される。
【0083】
図8は、赤外線波長を有する電磁放射をキャプチャするように構成される画像キャプチャデバイスを使用する効果を示す。ある場合において、
図1Aにおける画像キャプチャデバイス110のような画像キャプチャデバイスによって得られた画像データ810は低い光の状況によって影響を受け得る。
図8では、画像データ810は、(たとえば
図7における第1および第2の画像エリア752,754を含む)顔エリアを部分的に不明瞭にする影820のエリアを含む。これらの場合では、赤外線波長を有する電磁放射をキャプチャするように構成される画像キャプチャデバイスが使用され得る。これは、
図1Aにおける画像キャプチャデバイス110に(たとえばハードウェアおよび/もしくはソフトウェアにおいて除去可能なフィルタのような)適応(adaptations)を提供すること、ならび
に/または、近赤外線(NIR:Near-Infra-Red)カメラを提供することを含み得る。そのような画像キャプチャデバイスからの出力は、画像データ830として概略的に示される。画像データ830では、顔エリア840は確実にキャプチャされる。この場合、画像データ830は、たとえば夜のドライブにおいて生じ得る照度の変化といった照度の変化によって影響を受けない照度不変表現を提供する。これらの場合、画像データ830は、本願明細書に記載されるように、画像プリプロセッサ710および/または話者前処理モジュールモジュールに提供されるものである。
【0084】
読唇例
ある例において、本願明細書において記載される話者特徴ベクトルは少なくとも、人の口または唇の特徴を表わす要素のセットを含み得る。これらの場合では、話者特徴ベクトルは、人の口または唇エリアを特徴とする画像データのコンテンツに基づいて変化するので、話者に依存し得る。
図5の例では、ニューラル話者前処理モジュール520は、話者特徴ベクトル525を生成するために使用される唇または口の特徴をエンコードし得る。これらは音声処理モジュール530のパフォーマンスを向上させるために使用され得る。
【0085】
図9は、話者特徴ベクトルの少なくとも部分を形成するために唇特徴を使用する別の例示的な音声処理装置900を示す。以前の例と同様に、音声処理装置900は、話者前処理モジュール920および音声処理モジュール930を含む。音声処理モジュール930は、オーディオデータ955(この場合ではオーディオデータのフレーム)を受け取り、言語的特徴960を出力する。音声処理モジュール930は、本願明細書において記載される他の例のように構成され得る。
【0086】
図9では、話者前処理モジュール920は、画像データの2つの異なる源を受け取るように構成される。この例において、話者前処理モジュール920は、人の顔エリアを特徴とする画像データ962の第1のセットを受け取る。これは、
図7において画像プリプロセッサ710によって抽出されるような第1の画像エリア762を含み得る。話者前処理モジュール920はさらに、人の唇または口のエリアを特徴とする画像データ964の第2のセットを受け取る。これは、
図7における画像プリプロセッサ710によって抽出されるような第2の画像エリア764を含み得る。画像データ964の第2のセットは、たとえば
図1Aの画像キャプチャデバイス110を使用して得られるより大きな画像の小さな切り取られた部分といったように相対的に小さくあり得る。他の例において、画像データ962,964の第1および第2のセットは切り取られなくてもよく、画像キャプチャデバイスからの画像のセットのコピーを含み得る。異なる構成は可能である。すなわち、画像データを切り取ることによって、処理速度および学習における改善が提供され得るが、ニューラルネットワークアーキテクチャは、幅広いさまざまな画像サイズに対して動作するように学習され得る。
【0087】
話者前処理モジュール920は、特徴抽出コンポーネント922および唇特徴抽出器924という
図9における2つのコンポーネントを含む。唇特徴抽出器924は、読唇モジュールの部分を形成する。特徴抽出コンポーネント922は、
図3における話者前処理モ
ジュール320と同様の態様で構成され得る。この例において、特徴抽出コンポーネント922は、画像データ962の第1のセットを受け取り、(たとえば上述したような)iベクトルおよびxベクトルのうちの1つ以上からなるベクトル部分926を出力する。1つの場合では、特徴抽出コンポーネント922は、発声当たりの単一の画像を受け取り、唇特徴抽出器924および音声処理モジュール930は、発声の時間に亘って複数のフレームを受け取る。1つの場合では、特徴抽出コンポーネント922によって行なわれる顔認識がしきい値を下回る信頼値を有する場合、画像データ962の第1のセットが(たとえば、ビデオの別/現在のフレームを使用することによって)アップデートされ得、信頼値がしきい値に到達する(または、予め規定された数の試行を上回る)まで顔認識が再適用される。
図3を参照して記載されるように、ベクトル部分926は、第1の数の発声についてのオーディオデータ955に基づいて計算され得、第1の数の発声をひとたび上回ると、メモリから静的な値として抽出される。
【0088】
唇特徴抽出器924は、画像データ964の第2のセットを受け取る。画像データ964の第2のセットは、口または唇エリアに注目する画像データの切り取られたフレームを含み得る。唇特徴抽出器924は、画像キャプチャデバイスのフレームレートおよび/またはサブサンプリングされるフレームレート(たとえば2フレームごと)で、画像データ964の第2のセットを受け取り得る。唇特徴抽出器924は、ベクトル部分928のセットを出力する。これらのベクトル部分928は、ニューラルネットワークアーキテクチャを含むエンコーダの出力を含み得る。唇特徴抽出器924は、固定長ベクトル出力(たとえば整数または浮動小数点値を有する256または512個の要素)を提供するために畳み込みニューラルネットワークアーキテクチャを含み得る。唇特徴抽出器924は、画像データ964の各入力フレームについてベクトル部分を出力し得、および/または、回帰型ニューラルネットワークアーキテクチャを使用して(たとえば長短期記憶(LSTM: Long Short Term Memory)、ゲート付き回帰型ユニット(GRU:Gated Recurrent Unit)、または「トランスフォーマ」アーキテクチャを使用して)時間ステップ上の特徴
をエンコードし得る。後者の場合では、唇特徴抽出器924の出力は、回帰型ニューラルネットワークの隠れ状態および回帰型ニューラルネットワークの出力のうちの1つ以上を含み得る。唇特徴抽出器924のための一つの例示的な実現例は、本願明細書において参照により援用される、2017年、IEEE Conference on Computer Vision and Pattern Recognition (CVPR)におけるChung, Joon Sonらによる「自然な状態の文の唇読(Lip reading sentences in the wild)」に記載される。
【0089】
図9において、音声処理モジュール930は、入力として、特徴抽出コンポーネント922からベクトル部分926を受け取り、唇特徴抽出器924からベクトル部分928を受け取る。1つの場合では、話者前処理モジュール920は、単一の話者特徴ベクトルになるようにベクトル部分926,928を組み合わせ得る。別の場合では、音声処理モジュール930は、ベクトル部分926,928を別々に受け取り得るが、話者特徴ベクトルの異なる部分として当該ベクトル部分を取り扱い得る。ベクトル部分926,928は、たとえば連結またはより複雑なアテンションベースのメカニズムを使用して、話者前処理モジュール920および音声処理モジュール920のうちの1つ以上によって、単一の話者特徴ベクトルになるように組み合わせ得る。ベクトル部分926、ベクトル部分928およびオーディオデータ955のフレームの1つ以上のサンプルレートが異なる場合、たとえば、受取および保持アーキテクチャ(receive-and-hold architecture)(新しい
サンプル値が受け取られるまでより遅くより変動する値が所与の値に一定に保持される)、(たとえば上記のようにLSTMまたはGRUを使用する)回帰型時間エンコーディング(recurrent temporal encoding)、または、時間ステップ当たりにアテンション加重
ベクトルが変化するアテンションベースのシステムによって、共通のサンプルレートが実現され得る。
【0090】
音声処理モジュール930は、本願明細書において記載される他の例に記載されるようにベクトル部分926,928を使用するように構成され得、たとえば、これらは、オーディオデータ955と共に、話者特徴ベクトルとしてニューラル音響モデルに入力され得る。音声処理モジュール930がニューラル音響モデルを含む例において、画像キャプチャデバイスからの入力ビデオと、オーディオキャプチャデバイスからの入力オーディオと、グラウンドトゥルース言語的特徴とに基づき学習セットが生成され得る(たとえば、
図7における画像プリプロセッサ710は、生の入力ビデオから画像データ962,964の第1および第2のセットを得るために使用され得る)。
【0091】
ある例において、ベクトル部分926はさらに要素の付加的なセットを含み得る。当該要素の付加的なセットの値は、たとえば
図5における522のようなニューラルネットワークアーキテクチャを使用して画像データ962の第1のセットのエンコーディングから導出される。これらの付加的な要素は「顔エンコーディング」を表わし得、ベクトル部分928は「唇エンコーディング」を表わし得る。顔エンコーディングは、発声について静的なままであり得、唇エンコーディングは、発声の間に変化し得るか、または、発声について複数の「フレーム」を含み得る。
図9は唇特徴抽出器924および特徴抽出コンポーネント922の両方を使用する例を示すが、一例では、特徴抽出コンポーネント922が省略され得る。この後の例では、車両内での使用のための読唇システムは、
図5の音声処理装置500と同様の態様で使用され得る。
【0092】
例示的な自動車両
図10Aおよび
図10Bは、本願明細書に記載される車両が自動車両である例を示す。
図10Aは、自動車1005の側面
図1000を示す。自動車1005は、自動車1005のコンポーネントを制御するための制御ユニット1010を含む。
図1Bに示されるような音声処理装置120のコンポーネント(および他の例)は、この制御ユニット1010に組み込まれ得る。他の場合において、音声処理装置120のコンポーネントは、制御ユニット1010との接続のオプションにより、別個のユニットとして実現され得る。自動車1005はさらに、少なくとも1つの画像キャプチャデバイス1015を含む。たとえば、少なくとも1つの画像キャプチャデバイス1015は、
図1Aに示される画像キャプチャデバイス110を含み得る。この例において、少なくとも1つの画像キャプチャデバイス1015は、通信可能に制御ユニット1010に結合され得、制御ユニット1010によって制御され得る。他の例において、少なくとも1つの画像キャプチャデバイス1015は制御ユニット1010と通信し、リモートに制御される。本願明細書において記載される機能とともに、少なくとも1つの画像キャプチャデバイス1015は、たとえばビデオデータによるボイスオーバインターネットプロトコルコール、環境モニタリング、運転手覚醒モニタリングなどといったビデオ通信に使用され得る。
図10Aはさらに、側面にマウントされたマイクロフォン1020の形態にある少なくとも1つのオーディオキャプチャデバイスを示す。これらは、
図1Aにおいて示されるオーディオキャプチャデバイス116を実現し得る。
【0093】
本願明細書において記載される画像キャプチャデバイスは、コマンドに対してまたは予め規定されたサンプリングレートで画像データのフレームをキャプチャするように構成される1つ以上の静止画またはビデオカメラを含み得る。画像キャプチャデバイスは、車両内部の前部および後部の両方のカバレージを提供し得る。1つの場合において、予め規定されたサンプリングレートは、全解像度ビデオのためのフレームレート未満であり得、たとえば、ビデオストリームは30フレーム/秒でキャプチャされ得るが、画像キャプチャデバイスのサンプリングレートは、このレートでキャプチャし得るか、または、1フレーム/秒のような低いレートでキャプチャし得る。画像キャプチャデバイスは、1つ以上の色チャネル(たとえば、上述したようなRGBまたはYUV)を有する画像データの1つ以上のフレームをキャプチャし得る。ある場合において、フレームレートと、フレームサ
イズおよび解像度と、色チャネルの数と、サンプルフォーマットといった画像キャプチャデバイスの局面が構成可能であり得る。ある場合において、画像データのフレームはダウンサンプリングされ得る。たとえば3840×2160の「4K」解像度でビデオをキャプチャするビデオキャプチャデバイスは、640×480またはそれを下回るまでダウンサンプリングされ得る。代替的には、低コストの埋込型デバイスの場合、320×240以下で画像データのフレームをキャプチャする低解像度画像キャプチャデバイスが使用され得る。ある場合において、安い低解像度画像キャプチャデバイスでも、音声処理について向上するのに十分な視覚情報を提供し得る。上記のように、画像キャプチャデバイスはさらに、画像前処理および/またはフィルタリングコンポーネント(たとえばコントラスト調節、ノイズ除去、色調整、切り取りなど)を含み得る。ある場合において、ISO26262自動車セーティスタンダードについてのより厳格な自動車セーフティレベル(ASIL: Automotive Safety Integrity Level)を満たす低レイテンシおよび/または高フレームレートの画像カメラが利用可能である。それらのセーフティ上の利点とは別に、より高い時間情報を提供することにより、読唇精度が向上し得る。それは、より正確な特徴確率推定のために回帰型ニューラルネットワークにとって有用であり得る。
【0094】
図10Bは、自動車1005の俯瞰
図1030を示す。自動車1005は、音声キャプチャのための前部にマウントされたマイクロフォンの向きに乗客を保持するための前部シート1032および後部シート1034を含む。自動車1005は、セーフティクリティカル表示情報を有する運転手視覚コンソール1036を含む。運転手視覚コンソール1036は、
図1Aに示されるようなダッシュボード108の部分を含み得る。自動車1005はさらに、ナビゲーション、娯楽および環境制御機能を有する一般的なコンソール1038を含む。制御ユニット1010は、一般的なコンソール1038を制御し得、
図1Aにおける120のようなローカル音声処理モジュールおよびワイヤレスネットワーク通信モジュールを実現し得る。ワイヤレスネットワーク通信モジュールは、制御ユニット1010によって生成される画像データ、オーディオデータおよび話者特徴ベクトルのうちの1つ以上を処理のためにリモートサーバに送信し得る。自動車1005は、側面にマウントされたマイクロフォン1020と、前部の頭上のマルチマイクロフォンスピーチキャプチャユニット1042と、後部の頭上のマルチマイクロフォンスピーチキャプチャユニット1044とをさらに含む。前部および後部スピーチキャプチャユニット1042,1044は、スピーチオーディオをキャプチャし、ノイズをキャンセルし、話者の位置を識別するための付加的なオーディオキャプチャデバイスを提供する。1つの場合において、前部および後部スピーチキャプチャユニット1042,1044はさらに、車両の乗客の各々を特徴とする画像データをキャプチャするために付加的な画像キャプチャデバイスを含み得る。
【0095】
図10Bの例において、マイクロフォンおよびスピーチキャプチャユニット1020、1042および1044のうちのいずれか1つ以上が、
図1Bにおける140のようなオーディオインターフェイスにオーディオデータを提供し得る。マイクロフォンまたはマイクロフォンのアレイは、予め規定されたサンプリングレートでオーディオサンプルをキャプチャまたは記録するように構成され得る。ある場合において、サンプリングレート、ビット分解能、チャネルの数およびサンプルフォーマットといった各オーディオキャプチャデバイスの局面は構成可能であり得る。キャプチャされたオーディオデータはパルス符号変調(Pulse Code Modulated)であり得る。いずれかのオーディオキャプチャデバイスはさらに、オーディオ前処理コンポーネントおよび/またはフィルタリングコンポーネント(たとえばコントラスト調節、ノイズ除去など)を含み得る。同様に、画像キャプチャデバイスのうちのいずれか1つ以上が、
図1Bにおける150のような画像インターフェイスに画像データを提供し得、さらに、ビデオ前処理および/またはフィルタリングコンポーネントを含み得る(たとえばコントラスト調節、ノイズ除去など)。
【0096】
図11は、前部シート1032から見られるような自動車1100の内部の例を示す。たとえば、
図11は、
図1Aのウインドシールド104へ向かう視界を含み得る。
図11は、(
図1におけるハンドル106のような)ハンドル1106と、(
図10Aおよび
図10Bにおけるサイドマイクロフォン1020のうちの1つのような)サイドマイクロフォン1120と、(前部頭上マルチマイクロフォンスピーチキャプチャユニット1042を含み得る)バックミラー1142と、投射デバイス1130とを示す。投射デバイス1130は、(たとえば、運転手視覚コンソール1036および一般的なコンソール1038に加えて)たとえば付加的な視覚的出力デバイスとしての使用のために、ウインドシールド上に画像1140を投射するように用いられ得る。
図11では、画像1140は方向を含む。これらは、「モールマートへの方向を教えて」というボイスコマンドの後に投射される方向であり得る。他の例はよりシンプルな応答システムを使用し得る。
【0097】
車両のためのローカルおよびリモート音声処理
ある場合には、音声処理モジュールの機能が本願明細書に記載されるように分散され得る。たとえば、ある機能は、自動車1005内でローカルに計算され得、また、ある機能はリモート(「クラウド」)のサーバデバイスによって計算され得る。ある場合には、機能が、自動車(「クライアント」)側およびリモートサーバデバイス(「サーバ」)側で複製され得る。これらの場合において、リモートサーバデバイスへの接続が利用可能でない場合、処理はローカル音声処理モジュールによって行なわれ得、リモートサーバデバイスへの接続が利用可能な場合、オーディオデータ、画像データおよび話者特徴ベクトルのうちの1つ以上は、キャプチャされた発声を解析するためにリモートサーバデバイスに送信され得る。リモートサーバデバイスは、処理リソース(たとえば中央処理装置すなわちCPU、グラフィカル処理ユニットすなわちGPU、およびランダムアクセスメモリ)を有し得るので、接続が利用可能な場合、ローカルパフォーマンスに対する改善を提供し得る。これは、処理パイプラインにおけるレイテンシに対してトレードオフとなり得る(たとえば、ローカル処理はより応答が早い)。1つの場合では、ローカル音声処理モジュールは、第1の出力を提供し得、これはリモート音声処理モジュールの結果によって補足および/または向上され得る。
【0098】
1つの場合において、たとえば自動車1005のような車両は、少なくとも1つのネットワークを介してリモートサーバデバイスに通信可能に結合され得る。ネットワークは、さまざまな物理的な技術(たとえばイーサネット(登録商標)のような有線技術、ならびに/または、Wi-Fi(登録商標)(IEEE802.11)規格およびセルラー通信技術)といった無線技術)を使用して実現され得る1つ以上のローカルおよび/またはワイドエリアネットワークを含み得る。ある場合には、ネットワークが、インターネットのような1つ以上のプライベートおよびパブリックネットワークの混合を含み得る。車両およびリモートサーバデバイスは、異なる技術および通信パスウェイを使用してネットワークを介して通信し得る。
【0099】
図3の例示的な音声処理装置300を参照して、1つの場合において、ベクトルジェネレータ372によるベクトル生成は、ローカルまたはリモートで行なわれ得るが、データストア374は自動車1005内にローカルに存在する。この場合、静的な話者特徴ベクトルは、ローカルおよび/またはリモートで計算され得るが、データストア374内にローカルに格納される。この後、話者特徴ベクトル325は、リモートサーバデバイスから受け取られるのではなく、自動車内のデータストア374から抽出され得る。これにより音声処理レイテンシが向上され得る。
【0100】
音声処理モジュールが車両からリモートである場合、ローカル音声処理装置は、オーディオデータ、画像データおよび話者特徴ベクトルのうちの1つ以上に由来するデータを音声処理モジュールへ送信し、発声の解析からの制御データを受け取るトランシーバを含み
得る。1つの場合では、トランシーバは、有線または無線の物理インターフェイスと、予め規定されたフォーマットで要求を送信および/または受信するための方法を提供する1つ以上の通信プロトコルとを含み得る。1つの場合では、トランシーバは、インターネットプロトコルスイート上で動作するアプリケーション層インターフェイスを含み得る。この場合、アプリケーション層インターフェイスは、リモートサーバデバイスを識別する特定のインターネットプロトコルアドレスの方へ方向付けされた通信を受けるように構成され得、パス名またはウェブアドレスに基づいたルーティングが1つ以上のプロキシおよび/または通信(たとえば「ウェブ」)サーバによって行なわれる。
【0101】
ある場合には、音声処理モジュールによって生成される言語的特徴が、(たとえば
図4における発声パーサー436を参照して記載されるように)ボイスコマンドおよびボイスコマンドについてのデータのセットにマッピングされ得る。1つの場合では、発声データ442は、自動車1005の制御ユニット1010によって使用され、ボイスコマンドを実行するために使用され得る。1つの場合において、発声パーサー436はリモートサーバデバイス内に存在し得、発声解析は、音声処理モジュールの出力からのボイスコマンドを実行するよう適切なサービスを識別することを伴い得る。たとえば、発声パーサー436は、識別されたサーバへアプリケーションプログラミングインターフェイス(API:
application programming interface)要求をするように構成され得る。当該要求は、言語モデルの出力から識別されるコマンドと任意のコマンドデータとを含む。たとえば、「モールマートはどこ?」という発声によって、「モールマートはどこ」というテキスト出力が得られ得、「モールマート」の所望の位置パラメータと、たとえばグローバルポジショニングシステムのような測位システムから導出される車両の現在の位置とを有する車両マッピングデータについての方向サービスAPI要求にマッピングされ得る。応答は、抽出され、車両に通信され得、
図11に示されるように表示され得る。
【0102】
1つの場合では、リモート発声パーサー436は、自動車1005の制御ユニット1010に応答データを通信する。これは、たとえばユーザインターフェイスまたはオーディオ出力を介して、ユーザに通信されるマシン読取可能データを含み得る。応答データが処理され得、ユーザへの応答は、運転手視覚コンソール1036および一般的なコンソール1038のうちの1つ以上の上で出力され得る。ユーザへ応答を提供することは、運転手視覚コンソール1036および一般的なコンソール1038のうちの1つ以上のディスプレイスクリーン上でのテキストおよび/または画像の表示を含み得るか、または、テキストツースピーチモジュールを介する音の出力を含み得る。ある場合において、応答データは、制御ユニット1005で処理され得るとともにたとえば1つ以上の話者を介してオーディオ出力を生成するために使用されるオーディオデータを含み得る。自動車1005の内部内にマウントされるスピーカを介して応答がユーザに話され得る。
【0103】
例示的な埋込型コンピューティングシステム
図12は、本願明細書に記載されるように音声処理装置を実現し得る例示的な埋込型コンピューティングシステム1200を示す。埋込型コンピューティングシステム1200と同様のシステムは、
図10において制御ユニット1010を実現するために使用され得る。例示的な埋込型コンピューティングシステム1200は、1つ以上のコンピュータプロセッサ(CPU)コア1210と、0以上のグラフィックスプロセッサ(GPU)コア1220とを含む。プロセッサは、プログラムコードおよびデータストレージのためにランダムアクセスメモリ(RAM)デバイス1240に基板レベルの配線1230を通じて接続する。埋込型コンピューティングシステム1200はさらに、プロセッサがリモートシステムおよび特定の車両制御回路1260と通信することを可能にするためにネットワークインターフェイス1250を含む。インターフェイス1230を通じてRAMデバイスに格納される命令を実行することによって、CPU1210および/またはGPU1220は、本願明細書に記載されるような機能を実行し得る。ある場合には、制約された埋
込型コンピューティングデバイスが、コンポーネントの同様の一般的な配置を有し得るが、ある場合において、より少ないコンピューティングリソースを有してもよく、専用のグラフィックスプロセッサ1220を有さなくてもよい。
【0104】
例示的な音声処理方法
図13は、車両内音声認識を向上させるために行なわれ得る音声を処理するための例示的な方法1300を示す。方法1300は、オーディオデータがオーディオキャプチャデバイスから受け取られるブロック1305から始まる。オーディオキャプチャデバイスは車両内に位置し得る。オーディオデータは、ユーザからの発声を特徴とし得る。ブロック1305は、
図10Aおよび
図10Bにおけるデバイス1020、1042および1044のような1つ以上のマイクロフォンからのデータをキャプチャすることを含む。1つの場合では、ブロック1305は、ローカルオーディオインターフェイスを介してオーディオデータを受け取ることを含み得、別の場合では、ブロック1305は、たとえば車両からリモートであるオーディオインターフェイスにてネットワークを介してオーディオデータを受け取ることを含み得る。
【0105】
ブロック1310において、画像キャプチャデバイスからの画像データが受け取られる。画像キャプチャデバイスは車両内に位置し得、たとえば、
図10Aおよび
図10Bにおける画像キャプチャデバイス1015を含み得る。1つの場合では、ブロック1310は、ローカル画像インターフェイスを介して画像データを受け取ることを含み得、別の場合では、ブロック1310は、たとえば車両からリモートである画像インターフェイスにてネットワークを介して画像データを受け取ることを含み得る。
【0106】
ブロック1315では、話者特徴ベクトルが画像データに基づいて得られる。これはたとえば、話者前処理モジュール220,320,520および920のうちのいずれか1つを実現することを含み得る。ブロック1315は、自動車1005のローカルプロセッサまたはリモートサーバデバイスによって行なわれ得る。ブロック1320では、発声は音声処理モジュールを使用して解析される。たとえば、これはたとえば、音声処理モジュール230、330、400、530および930のうちのいずれか1つを実現することを含み得る。ブロック1320は、ある数のサブブロックを含む。これらは、サブブロック1322において、音声処理モジュールの音響モデルへの入力として話者特徴ベクトルおよびオーディオデータを提供することを含む。これは、
図4を参照して記載されるオペレーションと同様のオペレーションを含み得る。ある場合には、音響モデルがニューラルネットワークアーキテクチャを含む。サブブロック1324では、音素データは、話者特徴ベクトルおよびオーディオデータに基づいて、少なくともニューラルネットワークアーキテクチャを使用して予測される。これは、オーディオデータに加えて、入力として話者特徴ベクトルを受け取るように学習されるニューラルネットワークアーキテクチャを使用することを含み得る。話者特徴ベクトルおよびオーディオデータの両方が数値表現を含むので、これらは同様にニューラルネットワークアーキテクチャによって処理され得る。ある場合において、既存のCTCまたはハイブリッド音響モデルは、話者特徴ベクトルおよびオーディオデータの連結を受け取るように構成され得、(たとえば話者特徴ベクトルを導出するために使用される)画像データを付加的に含む学習セットを使用して学習され得る。
【0107】
ある場合には、ブロック1315は、車両内の人を識別するために画像データに対して顔認識を行なうことを含む。たとえば、これは、
図3における顔認識モジュール370を参照して記載されるように行なわれ得る。これの後、(たとえば車両中の)人についてのユーザプロファイルデータが顔認識に基づいて得られ得る。たとえば、ユーザプロファイルデータは、
図3を参照して記載されるように、ユーザ識別子376を使用して、データストア374から抽出され得る。その後、話者特徴ベクトルはユーザプロファイルデータ
に従って得られ得る。1つの場合では、話者特徴ベクトルは、要素値の静的なセットとしてユーザプロファイルデータから抽出され得る。別の場合では、ユーザプロファイルデータは、たとえばブロック1305および1310にて受け取ったオーディオデータおよび画像データのうちの1つ以上を使用して話者特徴ベクトルが計算されることになっていることを示し得る。ある場合において、ブロック1315は、ユーザプロファイルデータに関連付けられるある数の格納された話者特徴ベクトルを予め規定されたしきい値と比較することを含む。たとえば、ユーザプロファイルデータは顔認識を使用して識別されるユーザによってどれくらい多くの以前のボイスクエリーが行なわれたかを示し得る。ある数の格納された話者特徴ベクトルが予め規定されたしきい値を下回ることに応答して、オーディオデータおよび画像データのうちの1つ以上を使用して話者特徴ベクトルが計算され得る。ある数の格納された話者特徴ベクトルが予め規定されたしきい値より大きいことに応答して、たとえば、ユーザプロファイルデータ内に格納されるか、または、ユーザプロファイルデータを介してアクセス可能である話者特徴ベクトルといった、静的な話者特徴ベクトルが得られ得る。この場合、静的な話者特徴ベクトルは、ある数の格納された話者特徴ベクトルを使用して生成され得る。
【0108】
ある例において、ブロック1315は、人の顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するために画像データを処理することを含み得る。たとえば、唇特徴抽出器924または好適に構成されたニューラル話者前処理モジュール520のような読唇モジュールが使用され得る。読唇モジュールの出力は、音声処理モジュールに1つ以上の話者特徴ベクトルを供給するために使用され得、および/または、より大きな話者特徴ベクトルを生成するために他の値(たとえばiまたはxベクトル)と結合され得る。
【0109】
ある例において、ブロック1320は、音声処理モジュールの言語モデルに音素データを提供することと、言語モデルを使用して発声のトランスクリプトを予測することと、トランスクリプトを使用して車両のための制御コマンドを決定することとを含む。たとえば、ブロック1320は、
図4を参照して記載されるオペレーションと同様のオペレーションを含み得る。
【0110】
発声解析例
図14は、命令1420を格納する一時的でないコンピュータ読取可能記憶媒体1410を含む例示的な処理システム1400を示す。命令1420は、少なくとも1つのプロセッサ1430によって実行されると、少なくとも1つのプロセッサに一連のオペレーションを実行させる。この例のオペレーションは、発声のトランスクリプションを生成するために以前に記載されたアプローチを使用する。これらのオペレーションは、たとえば前述のように車両内において行なわれ得るか、または、車両内の例を、たとえばデスクトップ、ラップトップ、モバイルまたはサーバコンピューティングデバイスを使用して実現され得る車両ベースでない状況まで拡張し得る。
【0111】
命令1432を介して、プロセッサ1430は、オーディオキャプチャデバイスからオーディオデータを受け取るように構成される。これは、オーディオデータを含むローカルメモリへアクセスすること、および/または、ネットワークを介してアレイ値のデータストリームまたはセットを受け取ることを含み得る。オーディオデータは、本願明細書における他の例を参照して記載されるような形態を有し得る。命令1434を介して、プロセッサ1430は話者特徴ベクトルを受け取るように構成される。話者特徴ベクトルは、画像キャプチャデバイスからの画像データに基づいて得られる。当該画像データは、ユーザの顔エリアを特徴とする。たとえば、話者特徴ベクトルは、
図2、
図3、
図5および
図9のうちのいずれかを参照して記載されるアプローチを使用して得られ得る。話者特徴ベクトルはたとえば、プロセッサ1430によってローカルに計算され得、ローカルメモリか
らアクセスされ得、および/または、(たとえば)ネットワークインターフェイスを介して受け取られ得る。命令1436を介して、プロセッサ1430は、音声処理モジュールを使用して発声を解析するように命令される。音声処理モジュールは、
図2、
図3、
図4、
図5および
図9のうちのいずれかを参照して記載されるモジュールのうちのいずれかを含み得る。
【0112】
図14は、命令1436がある数のさらに別の命令に分解され得ることを示す。命令1440を介して、プロセッサ1430は、音声処理モジュールの音響モデルへの入力として、話者特徴ベクトルおよびオーディオデータを提供するように命令される。これは、
図4を参照して記載されたものと同様の態様で達成され得る。本例では、音響モデルはニューラルネットワークアーキテクチャを含む。命令1442を介して、プロセッサ1430は、話者特徴ベクトルおよびオーディオデータに基づいて、少なくともニューラルネットワークアーキテクチャを使用して、音素データを予測するように命令される。命令1444を介して、プロセッサ1430は、音声処理モジュールの言語モデルに音素データを提供するように命令される。これはさらに、
図4に示されるものと同様の態様で行なわれ得る。命令1446を介して、プロセッサ1430は、言語モデルを使用して発声のトランスクリプトを生成するように命令される。たとえば、トランスクリプトは言語モデルの出力として生成され得る。ある場合には、トランスクリプトは、ボイスコマンドを実行するために、自動車1005における制御ユニット1010のような制御システムによって使用され得る。他の場合では、トランスクリプトは、スピーチツーテキストシステムのための出力を含み得る。後者の場合では、画像データは、プロセッサ1430を含むコンピューティングデバイスに通信可能に結合されるウェブカメラなどから抽出され得る。モバイルコンピューティングデバイスについては、画像データは前向き画像キャプチャデバイスから得られ得る。
【0113】
ある例において、命令1434に従って受け取られる話者特徴ベクトルは、オーディオデータに基づいて生成される、話者に依存するベクトル要素(たとえばiベクトルまたはxベクトルコンポーネント)と、画像データに基づいて生成される、話者の唇の動きに依存するベクトル要素(たとえば読唇モジュールによって生成されるような)と、画像データに基づいて生成される、話者の顔に依存するベクトル要素とのうちの1つ以上を含む。1つの場合では、プロセッサ1430は、リモートサーバデバイスの部分を含み得、オーディオデータおよび話者画像ベクトルは、たとえば分散処理パイプラインの部分として自動車両から受け取られ得る。
【0114】
例示的な実現例
自動音声認識を含む音声処理に関するある例が記載される。ある例は、ある話された言語の処理に関する。さまざまな例は、他の言語または言語の組合せについて同様に動作する。ある例は、発声をする人の画像から導出される付加的な情報を組み込むことによって、音声処理の精度および堅牢性を向上させる。この付加的な情報は、言語的モデルを向上させるために使用され得る。言語的モデルは、音響モデル、発音モデルおよび言語モデルの1つ以上を含み得る。
【0115】
本願明細書において記載されるある例は、自動車のような車両内で自動音声認識を行なうユニークな困難さに対処するために実現され得る。ある組み合わされた例において、読唇特徴を決定し、iベクトルおよび/またはxベクトルプロファイルが構築および選択されることを可能にするために顔を認識するよう、カメラからの画像データが使用され得る。本願明細書に記載されるようにアプローチを実現することによって、自動車両の騒々しくマルチチャネルの環境内において、自動音声認識を行なうことが可能であり得る。
【0116】
本願明細書において記載されるある例は、たとえばオーディオ入力またはオーディオお
よび画像データについての別個の音響モデルを受け取るのみの音響モデルを有するのではなく、入力(シンギュラーモデル)としてオーディオデータも受け取る音響モデルに入力として提供される話者特徴ベクトル内にたとえば唇位置または動きといった画像データに由来する1つ以上の特徴を含むことによって、音声処理の効率を増加させ得る。
【0117】
ある方法およびオペレーションのセットは、一時的でないコンピュータ読取可能媒体上に格納される命令によって行なわれ得る。一時的でないコンピュータ読取可能媒体は、1つ以上のコンピュータによって実行されると、本願明細書において記載される方法のステップをコンピュータに行なわせる命令を含むコードを格納する。一時的でないコンピュータ読取可能媒体は、回転する磁気ディスク、回転する光ディスク、フラッシュランダムアクセスメモリ(RAM)チップ、および、他の機械的に動く記憶媒体もしくはソリッドステート記憶媒体のうちの1つ以上を含み得る。任意のタイプのコンピュータ読取可能媒体が、さまざまな例に従った命令を含むコードを格納するために適切である。
【0118】
本願明細書において記載されるある例は、いわゆるシステムオンチップ(SoC:system-on-chip)デバイスとして実現され得る。SoCデバイスは、多くの埋込型車両内システムを制御し、本願明細書において記載される機能を実現するために使用され得る。1つの場合では、話者前処理モジュールおよび音声処理モジュールのうちの1つ以上は、SoCデバイスとして実現され得る。SoCデバイスは、1つ以上のプロセッサ(たとえばCPUまたはGPU)と、ランダムアクセスメモリ(たとえばオフチップダイナミックRAMまたはDRAMといったRAM)と、イーサネット(登録商標)、WiFi(登録商標)、3G、4Gロングタームエボリューション(LTE:long-term evolution)、5G
、および、他のワイヤレスインターフェイス規格無線といった有線または無線接続のためのネットワークインターフェイスとを含み得る。SoCデバイスはさらに、たとえばタッチスクリーンセンサ、ジオロケーションレシーバ、マイクロフォン、スピーカ、ブルートゥース(登録商標)周辺装置、ならびに、キーボードおよびマウスのようなUSBデバイスといった、異なる周辺機器について必要とされるようなさまざまなI/Oインターフェイスデバイスを含み得る。RAMデバイスに格納される命令を実行することによって、SoCデバイスのプロセッサは、本願明細書に記載されるように方法のステップを行ない得る。
【0119】
ある例が本願明細書において記載されたが、異なる例とは異なるコンポーネントの異なる組合せが可能であり得ることが言及される。顕著な特徴が例をより良好に説明するために示されているが、ある特徴が、記載されたようにこれらの例の機能的な局面を修正することなく追加、修正および/または省略され得るということは明らかである。
【0120】
さまざまな例は、人間およびマシンのいずれかまたは組合せの挙動を使用する方法である。方法例は、世界のどこであってもほとんどの構成ステップが生じるため、完全である。いくつかの例は、本願明細書において記載される方法のためのそのような命令を格納するように構成される1つ以上の一時的でないコンピュータ読取可能媒体である。必要なコードのうちのいずれかを含む一時的でないコンピュータ読取可能媒体をどのようなマシンが保持しても、例が実現され得る。いくつかの例は、半導体チップのような物理デバイス、そのようなデバイスの論理または機能的挙動のハードウェア記述言語表現、および、そのようなハードウェア記述言語表現を格納するように構成される1つ以上の一時的でないコンピュータ読取可能媒体として実現され得る。原則、局面および実施形態を説明する本願明細書における記載は、その構造的および機能的な等価物を包含する。本願明細書において結合されるように記載される要素は、直接的な接続によって実現可能な有効な関係を有するか、または、1つ以上の他の介在要素を間接的に有する。
【手続補正書】
【提出日】2021-11-22
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
車両のオーディオキャプチャデバイスからオーディオデータを受け取るように構成されるオーディオインターフェイスと、
画像キャプチャデバイスから画像データを受け取るように構成される画像インターフェイスと、
前記オーディオデータおよび前記画像データに基づいて人の発声を解析するように構成される音声処理モジュールとを含み、
前記音声処理モジュールは、前記オーディオデータを処理し、前記発声を解析するために使用される音素データを予測するように構成される音響モデルを含み、
前記音響モデルは、入力として話者特徴ベクトルおよび前記オーディオデータを受け取るように構成され、前記音素データを予測するために前記話者特徴ベクトルおよび前記オーディオデータを使用するように学習される、車載装置。
【請求項2】
話者前処理モジュールを含み、
前記話者前処理モジュールは、
前記画像データを受け取ることと、
前記車両内の前記人に関連付けられるユーザプロファイルを識別するために前記画像データに対して顔認識を行なうことと、
前記ユーザプロファイルを使用することにより、メモリから前記車両内の前記人に関連付けられる前記話者特徴ベクトルを読み出すこととを行うように構成される、請求項1に記載の車載装置。
【請求項3】
前記音声処理モジュールは、
前記音素データを受け取るとともに前記発声を表わすトランスクリプションを生成するために、前記音響モデルに通信可能に結合される言語モデルを含む、請求項1または2に記載の車載装置。
【請求項4】
車両のオーディオキャプチャデバイスからオーディオデータを受け取るように構成されるオーディオインターフェイスと、
画像キャプチャデバイスから画像データを受け取るように構成される画像インターフェイスと、
前記オーディオデータおよび前記画像データに基づいて人の発声を解析するように構成される音声処理モジュールとを含み、
前記音声処理モジュールは、音素データを受け取るとともに前記発声を表わすトランスクリプションを生成するために、音響モデルに通信可能に結合される言語モデルを含む、車載装置。
【請求項5】
話者前処理モジュールをさらに含み、
前記話者前処理モジュールは、
前記画像データを受け取ることと、
前記音素データを予測するために前記画像データに基づいて話者特徴ベクトルを計算することとを行うように構成され、
前記話者特徴ベクトルは、
前記オーディオデータに基づいて生成される、話者に依存する第1の部分と、
前記画像データに基づいて生成される、話者の唇の動きに依存する第2の部分とを含む、請求項4に記載の車載装置。
【請求項6】
前記話者特徴ベクトルは、前記画像データに基づいて生成される、前記話者の顔に依存する第3の部分をさらに含む、請求項5に記載の車載装置。
【請求項7】
前記音声処理モジュールは、前記オーディオデータを処理し、前記発声を解析するために使用される前記音素データを予測するように構成される音響モデルをさらに含む、請求項4~6のいずれか1項に記載の車載装置。
【請求項8】
前記音響モデルはニューラルネットワークアーキテクチャを含む、請求項1~3および7のいずれか1項に記載の車載装置。
【請求項9】
前記音響モデルは、前記ニューラルネットワークアーキテクチャおよび混合ガウスモデルを含むハイブリッド音響モデルを含み、前記混合ガウスモデルは、前記ニューラルネットワークアーキテクチャによって出力されるクラス確率のベクトルを受け取り、前記発声を解析するための音素データを出力するように構成される、請求項8に記載の車載装置。
【請求項10】
前記音響モデルは、コネクショニストテンポラルクラシフィケーション(CTC: connectionist temporal classification)モデルを含む、請求項1~3および7~9のいずれか1項に記載の車載装置。
【請求項11】
前記話者前処理モジュールは、
前記車両内の前記人を識別するために前記画像データに対して顔認識を行なうことと、 識別された前記人に関連付けられる話者特徴ベクトルを抽出することとを行うように構成される、請求項2または5に記載の車載装置。
【請求項12】
前記話者前処理モジュールは、
前記人の顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するように構成される読唇モジュールを含む、請求項11に記載の車載装置。
【請求項13】
前記話者前処理モジュールはニューラルネットワークアーキテクチャを含み、前記ニューラルネットワークアーキテクチャは、前記オーディオデータおよび前記画像データのうちの1つ以上に由来するデータを受け取り、前記話者特徴ベクトルを予測するように構成される、請求項2、5、11および12のいずれか1項に記載の車載装置。
【請求項14】
前記話者前処理モジュールは、前記画像データのうちの1つ以上の部分を抽出するために前記画像データを処理するように構成されており、
抽出された前記1つ以上の部分は前記話者特徴ベクトルを計算するために使用される、請求項2、5および10~13のいずれか1項に記載の車載装置。
【請求項15】
前記話者前処理モジュールを実現するプロセッサが前記車両内に位置する、請求項2、5および10~14のいずれか1項に記載の車載装置。
【請求項16】
前記画像データは、前記車両内の人の顔エリアを含む、請求項1~15のいずれか1項に記載の車載装置。
【請求項17】
赤外線波長を有する電磁放射を前記画像データとしてキャプチャするように構成される画像キャプチャデバイスを含み、前記画像キャプチャデバイスは前記画像インターフェイスへ前記画像データを送るように構成される、請求項1~16のいずれか1項に記載の車載装置。
【請求項18】
前記音声処理モジュールは前記車両からリモートであり、前記装置は、
前記オーディオデータおよび前記画像データに由来するデータを前記音声処理モジュールに送信し、前記発声の前記解析に基づく制御データを受け取るトランシーバを含む、請求項1~16のいずれか1項に記載の車載装置。
【請求項19】
前記音声処理モジュールは、
音響モデル構成のデータベースと、
前記話者特徴ベクトルに基づいて前記データベースから音響モデル構成を選択する音響モデルセレクタと、
前記オーディオデータを処理する音響モデルインスタンスとを含み、前記音響モデルインスタンスは、前記音響モデルセレクタによって選択される前記音響モデル構成に基づいてインスタンス化されており、前記音響モデルインスタンスは、前記発声を解析するために使用される前記音素データを生成するように構成される、請求項1~18のいずれか1項に記載の車載装置。
【請求項20】
前記話者特徴ベクトルはiベクトルおよびxベクトルのうちの1つ以上である、請求項1~19のいずれか1項に記載の車載装置。
【請求項21】
車両内に位置するオーディオキャプチャデバイスから、前記車両内の人の発声を特徴とするオーディオデータを受け取ることと、
前記車両内の画像をキャプチャするために、前記人の顔エリアを特徴とする画像データを画像キャプチャデバイスから受け取ることと、
前記画像データに基づいて話者特徴ベクトルを得ることと、
音声処理モジュールを使用して前記発声を解析することとを含み、
前記発声を解析することは、
前記音声処理モジュールの音響モデルへの入力として、前記話者特徴ベクトルおよび前記オーディオデータを提供することと、
前記話者特徴ベクトルおよび前記オーディオデータに基づいて、前記音響モデルを使用して音素データを予測することを含む、
発声を処理する、コンピュータによって実現される方法。
【請求項22】
話者特徴ベクトルを得ることは、
前記車両内の前記人を識別するために前記画像データに対して顔認識を行なうことと、
前記顔認識に基づいて前記人についてユーザプロファイルデータを得ることと、
前記ユーザプロファイルデータに従って前記話者特徴ベクトルを得ることとを含む、請求項21に記載のコンピュータによって実現される方法。
【請求項23】
前記ユーザプロファイルデータに関連付けられる格納された話者特徴ベクトルの数を予め規定されたしきい値と比較することと、
前記格納された話者特徴ベクトルの数が前記予め規定されたしきい値を下回ることに応答して、前記オーディオデータおよび前記画像データのうちの1つ以上を使用して前記話者特徴ベクトルを計算することと、
前記格納された話者特徴ベクトルの数が前記予め規定されたしきい値より大きいことに応答して、前記ユーザプロファイルデータに関連付けられる静的な話者特徴ベクトルを得ることとをさらに含み、前記静的な話者特徴ベクトルは、前記格納された話者特徴ベクトルの数を使用して生成される、請求項22に記載のコンピュータによって実現される方法。
【請求項24】
話者特徴ベクトルを得ることは、
前記人の前記顔エリア内の唇の動きに基づいて1つ以上の話者特徴ベクトルを生成するために前記画像データを処理することを含む、請求項21~23のいずれか1項に記載のコンピュータによって実現される方法。
【請求項25】
前記発声を解析することは、
前記音声処理モジュールの言語モデルに前記音素データを提供することと、
前記言語モデルを使用して前記発声のトランスクリプトを予測することと、
前記トランスクリプトを使用して前記車両のための制御コマンドを決定することとを含む、請求項21~24のいずれか1項に記載のコンピュータによって実現される方法。
【請求項26】
命令を含むプログラムコードであって、前記命令は、少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
オーディオキャプチャデバイスからオーディオデータを受け取ることと、
画像キャプチャデバイスからの画像データに基づいて計算される話者特徴ベクトルを受け取ることとを行わせ、前記画像データはユーザの顔エリアを特徴としており、さらに、
音声処理モジュールを使用して発声を解析することを行わせ、
前記発声を解析することは、
前記音声処理モジュールの音響モデルへの入力として、前記話者特徴ベクトルおよび前記オーディオデータを提供することと、
前記話者特徴ベクトルおよび前記オーディオデータに基づいて、前記音響モデルを使用して音素データを予測することと、
前記音声処理モジュールの言語モデルに前記音素データを提供することと、
前記言語モデルを使用して前記発声のトランスクリプトを生成することとを含む、プログラムコード。
【請求項27】
前記話者特徴ベクトルは、
前記オーディオデータに基づいて生成される、話者に依存するベクトル要素と、
前記画像データに基づいて生成される、話者の唇の動きに依存するベクトル要素と、
前記画像データに基づいて生成される、話者の顔に依存するベクトル要素とのうちの1つ以上を含む、請求項26に記載のプログラムコード。
【請求項28】
前記オーディオデータおよび前記話者特徴ベクトルは自動車両から受け取られる、請求項26に記載のプログラムコード。
【外国語明細書】