IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ディープマインド テクノロジーズ リミテッドの特許一覧

<>
  • 特表-適応型視覚音声認識 図1
  • 特表-適応型視覚音声認識 図2
  • 特表-適応型視覚音声認識 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-05-28
(54)【発明の名称】適応型視覚音声認識
(51)【国際特許分類】
   G10L 15/25 20130101AFI20240521BHJP
   G10L 15/16 20060101ALI20240521BHJP
【FI】
G10L15/25
G10L15/16
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023560142
(86)(22)【出願日】2022-06-15
(85)【翻訳文提出日】2023-11-27
(86)【国際出願番号】 EP2022066419
(87)【国際公開番号】W WO2022263570
(87)【国際公開日】2022-12-22
(31)【優先権主張番号】20210100402
(32)【優先日】2021-06-18
(33)【優先権主張国・地域又は機関】GR
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.TENSORFLOW
(71)【出願人】
【識別番号】517030789
【氏名又は名称】ディープマインド テクノロジーズ リミテッド
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】イオアニス・アレクサンドロス・アサエル
(72)【発明者】
【氏名】ブレンダン・シリングフォード
(72)【発明者】
【氏名】ジョアン・フェルディナンド・ゴメス・デ・フレイタス
(57)【要約】
適応型視覚音声認識モデルを使用してビデオデータを処理するための、コンピュータストレージ媒体上にエンコードされたコンピュータプログラムを含む方法、システム、および装置。方法のうちの1つは、第1の話者を描写する複数のビデオフレームを含むビデオを受信するステップと、第1の話者を特徴付ける第1の埋め込みを取得するステップと、複数のパラメータを有する視覚音声認識ニューラルネットワークを使用して、(i)ビデオ、および(ii)第1の埋め込みを備える、第1の入力を処理するステップとを含み、視覚音声認識ニューラルネットワークは、ビデオ内の第1の話者によって話されている1つまたは複数の単語のシーケンスを定義する音声認識出力を生成するために、パラメータのトレーニングされた値に従ってビデオおよび第1の埋め込みを処理するように構成されている。
【特許請求の範囲】
【請求項1】
1つまたは複数のコンピュータによって実行される方法であって、
第1の話者を描写する複数のビデオフレームを含むビデオを受信するステップと、
前記第1の話者を特徴付ける第1の埋め込みを取得するステップと、
複数のパラメータを有する視覚音声認識ニューラルネットワークを使用して、(i)前記ビデオ、および(ii)前記第1の埋め込みを備える、第1の入力を処理するステップと
を備え、前記視覚音声認識ニューラルネットワークが、前記ビデオ内の前記第1の話者によって話されている1つまたは複数の単語のシーケンスを定義する音声認識出力を生成するために、前記パラメータのトレーニングされた値に従って前記ビデオおよび前記第1の埋め込みを処理するように構成されている、方法。
【請求項2】
前記視覚音声認識ニューラルネットワークが、
前記第1の埋め込みから追加の入力チャネルを生成することと、
前記音声認識出力を生成するために前記ビデオ内のフレームを処理する前に、前記追加のチャネルを前記ビデオ内の前記フレームのうちの1つまたは複数と結合することと
を行うように構成される、請求項1に記載の方法。
【請求項3】
前記視覚音声認識ニューラルネットワークが、複数の隠れ層を備え、前記視覚音声認識ニューラルネットワークが、前記隠れ層のうちの少なくとも1つについて、
前記第1の埋め込みから追加の隠れチャネルを生成することと、
前記視覚音声認識ニューラルネットワークの別の隠れ層によって処理するための出力を提供する前に、前記隠れチャネルと前記隠れ層の出力を結合することと
を行うように構成される、請求項1または2に記載の方法。
【請求項4】
前記第1の話者に対する適応データを取得するステップであって、前記適応データが、前記第1の話者の1つまたは複数のビデオと、前記ビデオの各々のグラウンドトゥルース転写を備える、ステップと、
前記適応データを使用して、前記第1の話者に対する前記第1の埋め込みを決定するステップと
をさらに備える、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記第1の話者とは異なる複数の話者に対応するトレーニング例を備えるトレーニングデータ上で前記視覚音声認識ニューラルネットワークをトレーニングすることによって決定されたモデルパラメータの事前にトレーニングされた値を取得するステップをさらに備え、前記第1の埋め込みを決定するステップが、前記事前にトレーニングされた値および前記適応データを使用して前記第1の埋め込みを決定するステップを備える、請求項4に記載の方法。
【請求項6】
前記第1の埋め込みを決定するステップが、
前記第1の埋め込みを初期化するステップを備え、
動作を繰り返し実行することによって前記第1の埋め込みを更新するステップが、
1つまたは複数のビデオセグメントの各々についてそれぞれの音声認識出力を生成するために、前記パラメータの現在の値に従って前記視覚音声認識ニューラルネットワークを使用して前記適応データ内の1つまたは複数の前記ビデオセグメントの各々と前記第1の埋め込みを処理するステップと、
前記1つまたは複数のビデオセグメントの各々について、前記ビデオセグメントの前記グラウンドトゥルース転写と前記ビデオセグメントの前記それぞれの音声認識出力との間のそれぞれの誤差を測定する損失関数を最小化するために前記第1の埋め込みを更新するステップと
を備える、請求項5に記載の方法。
【請求項7】
前記1つまたは複数のビデオセグメントの各々について、前記ビデオセグメントの前記グラウンドトゥルース転写と前記ビデオセグメントの前記それぞれの音声認識出力との間のそれぞれの誤差を測定する損失関数を最小化するために前記第1の埋め込みを更新するステップが、
前記第1の埋め込みに関する前記損失関数の勾配を決定するために、前記視覚音声認識ニューラルネットワークを通じて前記損失関数の勾配を逆伝播するステップと、
前記第1の埋め込みに関する前記損失関数の前記勾配を使用して前記第1の埋め込みを更新するステップと
を備える、請求項6に記載の方法。
【請求項8】
前記現在の値が、前記事前にトレーニングされた値および前記トレーニングされた値に等しく、前記第1の埋め込みを決定する際に前記モデルパラメータが固定される、請求項6または請求項7に記載の方法。
【請求項9】
前記動作が、
前記視覚音声認識ニューラルネットワークの前記パラメータに関する前記損失関数の勾配に基づいて、前記視覚音声認識ニューラルネットワークの前記パラメータの前記現在の値を更新するステップをさらに備え、前記トレーニングされた値が、第1の埋め込みベクトルを決定した後の前記現在の値と等しい、請求項6または請求項7に記載の方法。
【請求項10】
前記ビデオ内の前記第1の話者によって話されている1つまたは複数の単語の前記シーケンスを生成するために、前記ビデオの前記音声認識出力にデコーダを適用するステップをさらに備える、請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記音声認識出力は、前記ビデオフレームの各々について、テキスト要素の語彙にわたるそれぞれの確率分布を備える、請求項1から10のいずれか一項に記載の方法。
【請求項12】
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって遂行されると、前記1つまたは複数のコンピュータに、請求項1から11のいずれか一項に記載のそれぞれの方法の動作を実行させる命令を記憶する1つまたは複数のストレージデバイスとを備える、システム。
【請求項13】
1つまたは複数のコンピュータによって遂行されると、前記1つまたは複数のコンピュータに、請求項1から11のいずれか一項に記載のそれぞれの方法の動作を実行させる命令を記憶する1つまたは複数のコンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、視覚音声認識ニューラルネットワークに関する。
【背景技術】
【0002】
ニューラルネットワークは、受信した入力の出力を予測するために、非線形ユニットの1つまたは複数の層を使用する機械学習モデルである。いくつかのニューラルネットワークは、出力層に加えて1つまたは複数の隠れ層を含む。各隠れ層の出力は、ネットワーク内の次の層、たとえば次の隠れ層または出力層への入力として使用される。ネットワークの各層は、それぞれのパラメータセットの現在の値に従って、受信した入力から出力を生成する。
【0003】
ニューラルネットワークの一例は、視覚音声認識ニューラルネットワークである。視覚音声認識ニューラルネットワークは、話者の口の動きから音声をデコードする。言い換えれば、視覚音声認識ニューラルネットワークは、話者の顔のビデオを入力として受け取り、ビデオに描かれている話者によって話されている単語を表すテキストを出力として生成する。
【0004】
視覚音声認識ニューラルネットワークの一例は、LipNetである。LipNetは、arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1611.01599(2016年)における、Assaelらによる、LipNet:End-to-End Sentence-Level Lipreadingにおいて最初に説明された。LipNetは、時空間畳み込みおよびリカレントニューラルネットワークを利用して、ビデオフレームの可変長シーケンスをテキストにマッピングするディープニューラルネットワークである。
【0005】
視覚音声認識ニューラルネットワークの別の例は、arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1807.05612(2018年)における、Shillingfordらによる、Large-Scale Visual Speech Recognitionに記載されている。大規模視覚音声認識は、唇のビデオを音素分布のシーケンスにマッピングするディープ視覚音声認識ニューラルネットワークと、ディープニューラルネットワークによって生成された音素分布のシーケンスから単語のシーケンスを出力する音声デコーダについて説明している。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1611.01599(2016年)における、Assaelらによる、LipNet:End-to-End Sentence-Level Lipreading
【非特許文献2】arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1807.05612(2018年)における、Shillingfordらによる、Large-Scale Visual Speech Recognition
【非特許文献3】機械学習に関する国際会議pp. 369-376、2006年における、Alex Graves、Santiago Fernandez、Faustino Gomez、およびJurgen Schmidhuberによる、Connectionist temporal classification: Labelling unsegmented sequence data with recurrent neural networks
【非特許文献4】arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1911.04890(2019年)における、Makinoらによる、Recurrent Neural Network Transducer for Audio-Visual Speech Recognition
【発明の概要】
【課題を解決するための手段】
【0007】
本明細書は、サンプル効率的な、適応型視覚音声認識モデルを生成することができる1つまたは複数の場所にある1つまたは複数のコンピュータ上でコンピュータプログラムとして実装されるシステムについて説明する。この文脈において、サンプル効率的で適応性があるということは、適応モデルをトレーニングするために使用されていたものよりもはるかに少ないトレーニングデータを用いて新しい話者の音声を認識するようにモデルをカスタマイズできることを意味する。たとえば、適応モデルのトレーニングには個々の話者ごとに数時間のビデオ録画が必要になる場合があるが、新しい話者にモデルを適応させるには、新しい話者のビデオ録画は数分しか必要ない場合がある。
【0008】
トレーニングシステムは、個々の話者に対する複数の埋め込みベクトルと視覚音声認識ニューラルネットワークを使用して視覚音声認識モデルをトレーニングすることができる。トレーニングプロセスの計算集約的な性質のため、トレーニングは、数百または数千のコンピュータを備えた分散コンピューティングシステム、たとえば、データセンタによって実行することができる。
【0009】
トレーニングプロセスの出力は、新しい話者に効率的に適応することができる適応型視覚音声認識モデルである。モデルの適応は一般に、新しい話者に対する新しい埋め込みベクトルの学習を含み、任意で新しい話者に対するニューラルネットワークのパラメータの微調整を含み得る。適応データは、新しい話者のわずか数秒または数分のビデオと、対応するテキストの転写にすることができる。たとえば、ビデオは、ユーザデバイス上でユーザに提示されているテキストプロンプト上のテキストを話者が話している間の話者のビデオであり得る。
【0010】
したがって、適応プロセスは、元のトレーニングプロセスよりも計算量が大幅に少なくなる。したがって、適応プロセスは、ほんの数例を挙げると、モバイル電話または別のウェアラブルデバイス、デスクトップまたはラップトップコンピュータ、あるいはユーザの自宅に設置されている別のインターネット対応デバイスなど、はるかに強力ではないハードウェア上で実行することができる。
【0011】
一態様では、方法は、第1の話者を描写する複数のビデオフレームを含むビデオを受信するステップと、第1の話者を特徴付ける第1の埋め込みを取得するステップと、複数のパラメータを有する視覚音声認識ニューラルネットワークを使用して、(i)ビデオ、および(ii)第1の埋め込みを備える、第1の入力を処理するステップとを含み、視覚音声認識ニューラルネットワークは、ビデオ内の第1の話者によって話されている1つまたは複数の単語のシーケンスを定義する音声認識出力を生成するために、パラメータのトレーニングされた値に従ってビデオおよび第1の埋め込みを処理するように構成されている。
【0012】
いくつかの実装形態では、視覚音声認識ニューラルネットワークは、第1の埋め込みから追加の入力チャネルを生成することと、音声認識出力を生成するためにビデオ内のフレームを処理する前に、追加のチャネルをビデオ内のフレームのうちの1つまたは複数と結合することとを行うように構成される。
【0013】
いくつかの実装形態では、視覚音声認識ニューラルネットワークは、複数の隠れ層を備え、ニューラルネットワークは、隠れ層のうちの少なくとも1つについて、第1の埋め込みから追加の隠れチャネルを生成することと、視覚音声認識ニューラルネットワークの別の隠れ層によって処理するための出力を提供する前に、隠れチャネルと隠れ層の出力を結合することとを行うように構成される。
【0014】
いくつかの実装形態では、本方法は、第1の話者に対する適応データを取得するステップであって、適応データが、第1の話者の1つまたは複数のビデオと、ビデオの各々のグラウンドトゥルース転写を備える、ステップと、適応データを使用して、第1の話者に対する第1の埋め込みを決定するステップとをさらに備える。
【0015】
いくつかの実装形態では、本方法は、第1の話者とは異なる複数の話者に対応するトレーニング例を備えるトレーニングデータ上で視覚音声認識ニューラルネットワークをトレーニングすることによって決定されたモデルパラメータの事前にトレーニングされた値を取得するステップをさらに備え、第1の埋め込みを決定するステップが、事前にトレーニングされた値および適応データを使用して第1の埋め込みを決定するステップを備える。
【0016】
いくつかの実装形態では、第1の埋め込みを決定するステップが、第1の埋め込みを初期化するステップを備え、動作を繰り返し実行することによって第1の埋め込みを更新するステップが、1つまたは複数のビデオセグメントの各々についてそれぞれの音声認識出力を生成するために、パラメータの現在の値に従って視覚音声認識ニューラルネットワークを使用して適応データ内の1つまたは複数のビデオセグメントの各々と第1の埋め込みを処理するステップと、1つまたは複数のビデオセグメントの各々について、ビデオセグメントのグラウンドトゥルース転写とビデオセグメントのそれぞれの音声認識出力との間のそれぞれの誤差を測定する損失関数を最小化するために第1の埋め込みを更新するステップとを備える。
【0017】
いくつかの実装形態では、1つまたは複数のビデオセグメントの各々について、ビデオセグメントのグラウンドトゥルース転写とビデオセグメントのそれぞれの音声認識出力との間のそれぞれの誤差を測定する損失関数を最小化するために第1の埋め込みを更新するステップが、第1の埋め込みに関する損失関数の勾配を決定するために、視覚音声認識ニューラルネットワークを通じて損失関数の勾配を逆伝播するステップと、第1の埋め込みに関する損失関数の勾配を使用して第1の埋め込みを更新するステップとを備える。
【0018】
いくつかの実装形態では、現在の値は、事前にトレーニングされた値およびトレーニングされた値に等しく、第1の埋め込みを決定する際にモデルパラメータが固定される。
【0019】
いくつかの実装形態では、動作は、視覚音声認識ニューラルネットワークのパラメータに関する損失関数の勾配に基づいて、視覚音声認識ニューラルネットワークのパラメータの現在の値を更新するステップをさらに備え、トレーニングされた値は、第1の埋め込みベクトルを決定した後の現在の値と等しい。
【0020】
いくつかの実装形態では、本方法は、ビデオ内の第1の話者によって話されている1つまたは複数の単語のシーケンスを生成するために、ビデオの音声認識出力にデコーダを適用するステップをさらに備える。
【0021】
いくつかの実装形態では、音声認識出力は、ビデオフレームの各々について、テキスト要素の語彙にわたるそれぞれの確率分布を備える。
【0022】
本明細書に記載される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実装することができる。
【0023】
モデルをトレーニングするために使用されたデータよりも桁違いに少ないデータを使用して、新しい話者に迅速に適応するために、本明細書で説明されている適応型視覚音声認識モデルを使用することができる。これにより、適応プロセスを、データセンタにおいて実行されるのではなく、エンドユーザの消費者向けハードウェアによって実行できるようになる。
【0024】
さらに、複数話者の視覚音声認識モデルは、複数話者のビデオを表す大規模なデータセットにおいてトレーニングされる場合、トレーニングデータからの多数のデータサンプルがアンダーフィットする傾向がある。これは、収集されたビデオデータにおける小さい不均衡が原因である場合もあれば、大規模なビデオデータセットにおいて表される様々なシナリオをすべてキャプチャするためのモデルの容量が有限であることが原因である場合もある。説明されている技法は、第1に(i)話者のビデオと(ii)話者の埋め込みを条件とする話者条件付き視覚音声認識モデルをトレーニングし、次いで、新しい話者の埋め込みを学習することによって(任意で、モデルの重みを微調整することによって)話者条件付き視覚音声認識モデルを適応させることによって、これらの問題に対処する。
【0025】
本明細書の主題の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に示される。主題の他の機能、態様、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0026】
図1】適応型視覚音声認識モデルをトレーニングするための例示的なアーキテクチャを示す図である。
図2】適応型視覚音声認識モデルを新しい個々の話者に適応させるための例示的なアーキテクチャを示す図である。
図3】適応型視覚音声認識モデルを生成および使用するための例示的なプロセスのフローチャートである。
【発明を実施するための形態】
【0027】
様々な図面における同様の参照番号および名称は、同様の要素を示す。
【0028】
図1は、適応型視覚音声認識モデルをトレーニングするための例示的なアーキテクチャ100を示す図である。
【0029】
アーキテクチャ100は、複数の異なるそれぞれの個々の話者についての埋め込みベクトルを記憶する埋め込みテーブル120を使用してトレーニングされる視覚音声認識ニューラルネットワーク110aを含む。
【0030】
視覚音声認識ニューラルネットワーク110aは、入力として話者のビデオと、後述するように話者の埋め込みベクトルとを受け取ることと、ビデオ内で話者によって話されている音声の予測転写を表す音声認識出力を出力として生成するために、ビデオおよび埋め込みベクトルを処理することとを行う、任意の適切な視覚音声認識ニューラルネットワークとすることができる。
【0031】
本明細書で使用される「ビデオ」は、ビデオフレームのシーケンスのみを含み、ビデオフレームシーケンスに対応するオーディオは含まない。したがって、視覚音声認識ニューラルネットワーク110aは、話者によって実際に話されている音声のオーディオデータにアクセスすることなく、音声認識出力を生成する。
【0032】
視覚音声認識ニューラルネットワークの一例は、LipNetである。LipNetは、arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1611.01599(2016年)における、Assaelらによる、LipNet:End-to-End Sentence-Level Lipreadingにおいて最初に説明された。LipNetは、時空間畳み込みおよびリカレントニューラルネットワークを利用して、ビデオフレームの可変長シーケンスをテキストにマッピングするディープニューラルネットワークである。
【0033】
視覚音声認識ニューラルネットワークの別の例は、arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1807.05612(2018年)における、Shillingfordらによる、Large-Scale Visual Speech Recognitionに記載されている。Large-Scale Visual Speech Recognitionは、時空間畳み込みおよびリカレントニューラルネットワークも利用して、リップビデオを音素分布のシーケンスにマッピングするディープ視覚音声認識ニューラルネットワークについて説明している。
【0034】
一般に、上記の2つの視覚音声認識ニューラルネットワークアーキテクチャのいずれか、または任意の他の視覚音声認識ニューラルネットワークアーキテクチャは、複数のタイムステップの各々において、話者、たとえば話者の顔、あるいは話者の口または唇を描写するビデオとともに埋め込みベクトルを入力として受け入れるように修正することができる。アーキテクチャは、様々な方法のいずれかで埋め込みベクトルを処理するように修正することができる。
【0035】
一例として、システムは、ビデオフレームと同じ空間次元を有する埋め込みベクトルを使用して追加の入力チャネルを生成し、次いで、たとえば、追加のチャネルをチャネルの次元に沿って各ビデオフレームに連結することによって(たとえば、入力チャネルがビデオフレームの色(たとえば、RBG)に追加される色の強度値であるかのように)、追加のチャネルをビデオフレームと結合することができる。たとえば、システムは、ビデオフレームと同じ次元を有する2次元空間マップを生成するために、埋め込みベクトルにおける値にブロードキャスト動作を適用することによって、埋め込みベクトルを使用して追加のチャネルを生成することができる。
【0036】
別の例として、システムは、ニューラルネットワークの隠れ層の特定の1つの出力、たとえば、ニューラルネットワークにおける時空間畳み込み層のうちの1つと同じ空間次元を有する埋め込みベクトルを使用して、追加の隠れチャネルを生成し、次いで、たとえば、追加のチャネルをチャネル次元に沿って隠れ層の出力に連結することによって、追加のチャネルを隠れ層の出力に追加することによって、追加のチャネルと隠れ層の出力を要素ごとに乗算することによって、または隠れ層の出力と追加のチャネルとの間にゲート機構を適用することによって、追加の隠れチャネルを特定の隠れ層の出力と結合することができる。
【0037】
図1に示されるコンポーネントは、視覚音声認識ニューラルネットワーク110aをトレーニングするために調整する複数のコンピュータを備える分散コンピューティングシステムによって実装することができる。
【0038】
コンピューティングシステムは、複数のトレーニング例132を含むトレーニングデータ130上で視覚音声認識ニューラルネットワーク110aをトレーニングすることができる。各トレーニング例132はそれぞれの話者に対応し、(i)対応する話者のビデオ140、および(ii)ビデオ内で対応する話者によって話されている音声のそれぞれのグラウンドトゥルース転写150を含む。
【0039】
1つまたは複数のトレーニング例132に対応する話者の各々は、埋め込みテーブル120に記憶されるそれぞれの埋め込みベクトルを有する。埋め込みベクトルは、数値のベクトル、たとえば、固定次元(コンポーネントの数)を有する浮動小数点値または量子化浮動小数点値である。
【0040】
トレーニング中に、所与の話者の埋め込みベクトルを様々な方法で生成することができる。
【0041】
一例として、埋め込みベクトルは、話者の1つまたは複数の特性に基づいて生成することができる。
【0042】
特定の例として、コンピュータシステムは、話者の顔の顔埋め込みベクトルを生成するために、人々を区別するために使用することができる、または人々の顔の他のプロパティを反映する、顔の埋め込みを生成するために、埋め込みニューラルネットワーク、たとえばトレーニングされた畳み込みニューラルネットワークを使用して、たとえば対応するトレーニング例における話者のビデオから切り取られた話者の顔の1つまたは複数の画像を処理することができる。たとえば、コンピュータシステムは、画像ごとにそれぞれの画像埋め込みベクトルを生成し、次いで、話者の顔の顔埋め込みベクトルを生成するために画像埋め込みベクトルを結合、たとえば平均するために、埋め込みニューラルネットワークを使用して話者の顔の複数の画像を処理することができる。
【0043】
別の特定の例として、コンピュータシステムは、話しているときの話者の外見の特定のプロパティを測定し、たとえばあらかじめ定められたマッピングを使用して、測定された各プロパティをそれぞれのプロパティ埋め込みベクトルにマッピングすることができる。そのようなプロパティの一例は、話しているときに口を開ける頻度である。そのようなプロパティの別の例は、話しているときの最大の口の開き具合である。そのようなプロパティのさらに別の例は、話しているときの平均的な口の開き具合である。
【0044】
システムが、話者の複数の特性の各々についてそれぞれの埋め込みベクトル、たとえば、顔埋め込みベクトルおよび1つまたは複数のそれぞれのプロパティ埋め込みベクトルを生成するとき、システムは、話者の埋め込みベクトルを生成するために、複数の特性のそれぞれの埋め込みベクトルを結合、たとえば平均、合計、または連結することができる。
【0045】
別の例として、システムは、埋め込みテーブル120内の各話者埋め込み(埋め込みベクトル)をランダムに初期化し、次いで、ニューラルネットワーク110aのトレーニングと共同して話者埋め込みを更新することができる。
【0046】
トレーニングの各反復において、システムは、1つまたは複数のトレーニング例132のミニバッチをサンプリングし、各トレーニング例132について、予測された音声認識出力、たとえば、トレーニング例132の文字、音素、または単語片などのテキスト要素のセットにわたる確率分布を生成するために、ニューラルネットワーク110aを使用して、トレーニング例におけるそれぞれの話者のビデオ140と、埋め込みテーブル120からの対応する話者の埋め込みベクトルを処理する。
【0047】
次いで、システムは、ミニバッチ内の各トレーニング例132について、トレーニング例132の音声のグラウンドトゥルース転写150とトレーニング例132の予測された音声認識出力との間のそれぞれの誤差を測定する損失関数を最小化するために、勾配ベースの技法、たとえば、確率的勾配降下法、Adam、またはrmsPropを使用してニューラルネットワーク110aをトレーニングする。たとえば、損失関数は、コネクショニスト時間分類(CTC)損失関数にすることができる。CTCの損失については、機械学習に関する国際会議pp. 369-376、2006年における、Alex Graves、Santiago Fernandez、Faustino Gomez、およびJurgen Schmidhuberによる、Connectionist temporal classification: Labelling unsegmented sequence data with recurrent neural networksにより詳しく説明されている。
【0048】
いくつかの実装形態では、システムはまた、たとえば、ニューラルネットワーク110aを通じて適切な埋め込みベクトルに勾配を逆伝播することによって、ミニバッチ内の話者ビデオの埋め込みベクトルを更新する。より具体的には、埋め込みテーブル120内の埋め込みベクトルがランダムに初期化されるとき、システムは、埋め込みベクトルも更新する。埋め込みテーブル120内の埋め込みベクトルが、対応する話者の特性またはプロパティに基づいて生成される場合、いくつかの実装形態では、システムは、トレーニング中に埋め込みベクトルを固定に保持するが、他の実装形態では、システムは、ニューラルネットワーク110aのトレーニングと併せて埋め込みテーブル120内の埋め込みベクトルを更新することによって、埋め込みベクトルを微調整する。
【0049】
トレーニング後、新しい話者ビデオの転写を生成するために、システム(または、別のシステム)は、新しい話者ビデオの予測された音声認識出力を生成するために、新しい話者ビデオと話者の新しい埋め込みを入力として処理することができる。任意で、次いでシステムは、音声認識出力を単語のシーケンスにマッピングするために、予測された音声認識出力にデコーダ、たとえば、ビーム検索デコーダまたは有限状態トランスデューサ(FST)ベースのデコーダを適用することができる。
【0050】
しかしながら、トレーニング時には、話者の特性を使用して埋め込みが生成されるが、これらの特性は通常、新しい話者には利用することができない。したがって、システムは、新しい話者に対する転写を生成するためにトレーニングされたニューラルネットワーク110aを使用する前に、トレーニングされたニューラルネットワーク110aを新しい話者に適応させることができる。
【0051】
図2は、適応型視覚音声認識モデルを新しい個々の話者に適応させるための例示的なアーキテクチャ200を示す図である。適応プロセス中、ニューラルネットワーク110aが特定の個人の特性に適応されるように、新しい話者の埋め込みが調整される。言い換えれば、図1に示されるトレーニングプロセスの目的は事前に学習することである。適応中に、新しい話者の特性に迅速に適応するために、この事前情報が新しいデータと組み合わされる。
【0052】
通常、図1に示されるトレーニングプロセスは、複数のコンピュータを有する分散コンピューティングシステム上で実行される。そして、上述のように、適応プロセスは、計算コストがはるかに低いハードウェア、たとえば、デスクトップコンピュータ、ラップトップコンピュータ、またはモバイルコンピューティングデバイス上で実行することができる。便宜上、適応プロセスは、1つまたは複数のコンピュータのシステムによって実行されるものとして説明する。
【0053】
アーキテクチャ200は、たとえば、図1を参照して上述したプロセスを使用してトレーニングされた視覚音声認識ニューラルネットワーク110aのトレーニングされたバージョンに対応する視覚音声認識ニューラルネットワーク110bを含む。
【0054】
モデルを新しい個々の話者に適応させるために、システムは、新しい個々の話者が話しているビデオ230のセット(「ビデオセグメント」)と、各ビデオにおいて話されているテキストの対応する転写240を表す適応データ220を使用する。たとえば、各ビデオ230は、話者がテキストプロンプト上に書かれたテキスト、またはユーザデバイス上でユーザに提示されているテキストを話している間に撮影された話者のビデオであり得る。
【0055】
一般に、適応プロセスに使用される適応データ220は、トレーニングプロセスに使用されるトレーニングデータ130よりも桁違いに小さい可能性がある。いくつかの実装形態では、トレーニングデータ130は、複数の異なる個々の話者の各個々の話者について複数時間のビデオ記録を含むが、適応データ220は、新しい個々の話者の10分未満のビデオ記録を使用することができる。
【0056】
さらに、適応プロセスは一般に、トレーニングプロセスよりも計算量が大幅に少なくなる。したがって、上で示したように、いくつかの実装形態では、トレーニングプロセスは数十、数百、または数千のコンピュータを備えたデータセンタにおいて実行され、適応プロセスはモバイルデバイスまたは単一のインターネット対応デバイスにおいて実行される。
【0057】
適応フェーズを開始するために、システムは、新しい話者に対して新しい埋め込みベクトル210を初期化することができる。一般に、新しい埋め込みベクトル210は、トレーニングプロセス中に使用される埋め込みベクトルのいずれとも異なっていてもよい。
【0058】
たとえば、システムは、ランダムに、または新しい話者を特徴付ける利用可能なデータを使用して、新しい埋め込みベクトル210を初期化することができる。特に、システムは、テーブル120内に話者埋め込みを生成するための上述の技法の1つを使用して、新しい埋め込みベクトル210をランダムに、または適応データ220から初期化することができる。話者の特性を利用して埋め込みを生成するための上記の技法のうちのいずれかが使用された場合でも、適応データ220は一般に、任意の所与の話者のトレーニングデータにおいて利用可能なデータよりも少ないデータを有するため、新たに生成された埋め込みベクトル210は、一般に、トレーニング中に使用される話者埋め込みベクトルよりも話者の音声に関する情報が少ない。
【0059】
適応プロセスは複数の方法で実行することができる。特に、システムは非パラメトリック技法またはパラメトリック技法を使用することができる。
【0060】
非パラメトリック技法は、適応データ220を使用して、新しい話者埋め込み210、および任意でニューラルネットワーク110bのモデルパラメータ、またはその両方を適応させることを含む。
【0061】
特に、非パラメトリック技法を実行する際、適応フェーズの反復ごとに、システムは、各ビデオセグメント230に対する予測された音声認識出力を生成するために、ニューラルネットワーク110bを使用して、適応データ220内の1つまたは複数のビデオセグメント230および新しい話者の現在の埋め込みベクトル210を処理する。
【0062】
次いで、システムは、埋め込みベクトル210に関する勾配を計算するために、ニューラルネットワーク110bを通じて、ビデオセグメント230のグラウンドトゥルース転写240とビデオセグメント230の予測音声認識出力との間の損失、たとえばCTC損失の勾配を逆伝播することによって、埋め込みベクトル210を更新し、次いで、確率的勾配降下法更新規則、Adam更新規則、またはrmsProp更新規則などの更新規則を使用して、埋め込みベクトル210を更新する。
【0063】
これらの場合のいくつかでは、システムは、適応フェーズ中にニューラルネットワーク110bのモデルパラメータの値を固定して保持する。これらの他の場合では、システムはまた、たとえば、埋め込みベクトル210を更新するために使用されるのと同じ損失を使用してモデルパラメータを更新するために勾配ベースの技法を使用することによって、適応フェーズの各反復においてモデルパラメータを更新する。
【0064】
あるいは、システムは、ニューラルネットワーク110bをトレーニングするために使用されるトレーニングデータにおけるものとは異なるデモンストレーションデータのセット、たとえばビデオのセットを使用して、新しい話者の埋め込みベクトルを予測するために、補助ネットワークのトレーニングを伴うパラメトリック技法を使用することができる。次いで、話者の適応データ220が与えられた場合に、新しい話者の埋め込みベクトル210を予測するために、トレーニングされた補助ニューラルネットワークを使用することができる。
【0065】
図3は、適応型視覚音声認識モデルを生成および使用するための例示的なプロセス300のフローチャートである。上述のように、プロセスはトレーニング、適応、および推論の3つの段階を含む。
【0066】
通常、トレーニング段階は、複数のコンピュータを有する分散コンピューティングシステム上で実行される。
【0067】
そして、上述のように、他の2つの段階は、計算コストがはるかに低いハードウェア、たとえば、デスクトップコンピュータ、ラップトップコンピュータ、またはモバイルコンピューティングデバイス上で実行することができる。
【0068】
便宜上、例示的なプロセス300は、1つまたは複数のコンピュータのシステムによって実行されるものとして説明されるが、プロセス300の異なるステップは、異なるハードウェア機能を有する異なるコンピューティングデバイスによって実行できることが理解されよう。
【0069】
システムは、複数の異なる個々の話者による音声のビデオを表すトレーニングデータを使用して、適応型視覚音声認識モデルを生成する(310)。図1を参照して上述したように、システムは、複数の個々の話者に対して異なる埋め込みベクトルを生成することができる。次いで、システムは、テキストの一部を話している複数の異なる個々の話者を表すテキストおよびビデオデータを含むトレーニングデータを使用して、神経視覚音声認識モデルのパラメータ値をトレーニングすることができる。埋め込みベクトルの各々は、一般に、複数の異なる個々の話者のうちの1人のそれぞれの特性を表す。
【0070】
システムは、新しい個々の話者によって話されている音声のビデオを表す適応データを使用して、新しい個々の話者に適応型視覚音声認識モデルを適応させる(320)。図2を参照して上述したように、適応プロセスは、テキストの一部を話している新しい個々の話者を表すビデオデータを使用する。
【0071】
適応フェーズ中、システムは適応データを使用して新しい話者用の新しい埋め込みベクトルを生成し、任意で、トレーニングされた視覚音声認識ニューラルネットワークのモデルパラメータを微調整することができる。
【0072】
適応後、システムは、新しい話者のビデオと新しい話者の埋め込みをビデオ内で話されているテキストの転写に変換するために、推論プロセスを実行する(330)。一般に、システムは、新しい個々の話者に適応された視覚音声認識モデルを使用し、これは、適応フェーズ中に決定された個々の話者の新しい埋め込みベクトルと新しいビデオを入力として使用することを含む。上述のように、システムは、適応された視覚音声認識モデルによって生成された音声認識出力にデコーダを適用することによって、単語のシーケンスとして、また場合によっては句読点として転写を生成することができる。推論を実行することはまた、ユーザインターフェースに転写を表示すること、転写を別の言語に翻訳すること、あるいは1つまたは複数のオーディオデバイスにおいて再生するための転写の言語化を表すオーディオデータを提供することのうちの1つまたは複数を含むことができる。
【0073】
上記の説明では適応型視覚音声認識について説明しているが、説明した技法は適応型オーディオ視覚音声認識モデルを生成するためにも適用することができ、モデルへの入力は、話者が話しているビデオシーケンスと、話者が話している対応するオーディオシーケンス(ただし、この2つは時間的に一致していない可能性がある)および話者の埋め込みであり、出力は、オーディオとビデオのペアで話されているテキストの転写である。埋め込みを入力として受け入れるように修正することができ、上述のように適応することができるオーディオ視覚音声認識モデルの例は、arxiv.orgにおいて入手可能な、arXivプレプリントarXiv:1911.04890(2019年)における、Makinoらによる、Recurrent Neural Network Transducer for Audio-Visual Speech Recognitionにおいて説明されている。入力がオーディオデータも含む場合、話者埋め込みは、オーディオデータを使用して、またはその代わりに、たとえば話者を一意に識別する埋め込みを生成するようにトレーニングされたオーディオ埋め込みニューラルネットワークを使用してオーディオを処理することによって生成することもできる。
【0074】
提案された適応型視覚音声認識モデル、またはオーディオ視覚音声認識モデルは、たとえば、聴覚に障害のあるユーザにとって、新しい話者の発言を表すテキストを生成してユーザが読めるようにするために役立つ。別の例では、ユーザが新しい話者となり得、視覚音声認識モデル、またはオーディオ視覚音声認識モデルが、テキストを生成するためにディクテーションシステムにおいて使用されてもよく、電子システムまたは電気機械システムなどの別のシステムによって実装されるテキストコマンドを生成するために、制御システムにおいて使用されてもよい。適応型視覚音声認識モデルは、ステップ320および/または330において処理される新しい話者のビデオをキャプチャするための少なくとも1つのビデオカメラを備えるコンピュータシステムによってステップ320および/または330を実行するように実装され得る。オーディオ視覚音声認識モデルの場合、ビデオカメラは、キャプチャされたビデオに付随するオーディオトラックをキャプチャするためのマイクロフォンを備え得る。
【0075】
本明細書で説明するシステムが個人情報を含む可能性のあるデータを使用する状況では、そのデータは、記憶または使用されるデータからそのような個人情報が決定できないように、記憶または使用される前に集約および匿名化などの1つまたは複数の方法で処理される場合がある。さらに、そのような情報は、そのような情報を使用するシステムの出力から個人を特定できる情報が決定されないように使用される場合がある。
【0076】
本明細書で説明される主題および機能動作の実施形態は、デジタル電子回路、具体的に具現化されたコンピュータソフトウェアまたはファームウェア、本明細書で開示される構造およびそれらの構造的等価物を含むコンピュータハードウェア、あるいはそれらの1つまたは複数の組合せにおいて実装することができる。本明細書で説明される主題の実施形態は、1つまたは複数のコンピュータプログラム、たとえば、データ処理装置による遂行のために、またはデータ処理の動作を制御するために、有形の非一時的ストレージ媒体上にエンコードされたコンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。コンピュータストレージ媒体は、機械可読ストレージデバイス、機械可読ストレージ基板、ランダムまたはシリアルアクセスメモリデバイス、あるいはそれらのうちの1つまたは複数の組合せとすることができる。代替的または追加的に、プログラム命令は、人工的に生成された伝搬信号、たとえば、データ処理装置による遂行のために適切な受信装置に送信するための情報をエンコードするために生成される機械生成の電気信号、光信号、または電磁気信号においてエンコードすることができる。
【0077】
「データ処理装置」という用語は、データ処理ハードウェアを指し、例としてプログラム可能なプロセッサ、コンピュータ、あるいは複数のプロセッサまたはコンピュータを含む、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。装置はまた、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの専用論理回路であってもよく、またはさらにそれを含んでもよい。装置は、ハードウェアに加えて、コンピュータプログラムの遂行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つまたは複数の組合せを構成するコードを任意で含むことができる。
【0078】
プログラム、ソフトウェア、ソフトウェアアプリケーション、アプリ、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれる、または記述されることもあるコンピュータプログラムは、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含む、任意の形式のプログラミング言語で記述することができ、スタンドアロンプログラムとして、あるいはモジュール、コンポーネント、サブルーチン、またはコンピューティング環境における使用に適した他のユニットとしてなど、任意の形式で展開することができる。プログラムは、ファイルシステム内のファイルに対応する場合があるが、必ずしもそうである必要はない。プログラムは、他のプログラムまたはデータ、たとえば、マークアップ言語ドキュメントに記憶された1つまたは複数のスクリプトを保持するファイルの一部、問題のプログラム専用の単一のファイル、あるいは複数の調整されたファイル、たとえば1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイルに記憶することができる。コンピュータプログラムは、1つのコンピュータ、または1つのサイトに配置されているか、複数のサイトに分散され、データ通信ネットワークによって相互接続されている複数のコンピュータにおいて遂行されるように展開することができる。
【0079】
本明細書は、システムおよびコンピュータプログラムコンポーネントに関連して「構成される(configured)」という用語を使用する。特定の動作またはアクションを実行するように構成された1つまたは複数のコンピュータのシステムは、システムに、動作中にシステムに動作またはアクションを実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せがインストールされていることを意味する。特定の動作またはアクションを実行するように構成された1つまたは複数のコンピュータプログラムは、その1つまたは複数のプログラムが、データ処理装置によって遂行されると、装置に動作またはアクションを実行させる命令を含むことを意味する。
【0080】
本明細書では、「データベース(database)」という用語は、データの任意の集合を指すために広く使用されており、データは任意の特定の方法で構造化する必要はなく、またはまったく構造化する必要がなく、1つまたは複数の場所にあるストレージデバイスに記憶することができる。したがって、たとえば、索引データベースは、データの複数の集合を含むことができ、その各々が異なる方法で編成およびアクセスされ得る。
【0081】
同様に、本明細書では、「エンジン(engine)」という用語は、1つまたは複数の特定の機能を実行するようにプログラムされたソフトウェアベースのシステム、サブシステム、またはプロセスを指すために広く使用されている。通常、エンジンは1つまたは複数のソフトウェアモジュールあるいはコンポーネントとして実装され、1つまたは複数の場所にある1つまたは複数のコンピュータにインストールされる。場合によっては、1つまたは複数のコンピュータが特定のエンジン専用になり、他の場合では、複数のエンジンを同じコンピュータにインストールして実行することもできる。
【0082】
本明細書で説明するプロセスおよび論理フローは、入力データ上で動作して出力を生成することによって機能を実行するために、1つまたは複数のコンピュータプログラムを遂行する1つまたは複数のプログラマブルコンピュータによって実行することができる。プロセスおよび論理フローはまた、たとえばFPGAまたはASICなどの専用論理回路によって、あるいは専用論理回路と1つまたは複数のプログラムされたコンピュータとの組合せによって実行することができる。
【0083】
コンピュータプログラムの遂行に適したコンピュータは、汎用マイクロプロセッサまたは専用マイクロプロセッサまたはその両方、あるいは他の種類の中央処理装置に基づくことができる。一般に、中央処理装置は、読取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令およびデータを受信する。コンピュータの必須要素は、命令を実行または遂行するための中央処理装置と、命令およびデータを記憶するための1つまたは複数のメモリデバイスである。中央処理装置およびメモリは、専用論理回路によって補足または組み込むことができる。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量ストレージデバイス、たとえば磁気、光磁気ディスク、または光ディスクを含むか、そこからデータを受信する、そこにデータを転送する、あるいはその両方を行うように動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを備えている必要はない。さらに、コンピュータは、たとえば、ほんの数例を挙げると、モバイル電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、あるいはポータブルストレージデバイス、たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブなどの別のデバイスに組み込むことができる。
【0084】
コンピュータプログラム命令およびデータを記憶することに適したコンピュータ可読媒体は、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、磁気ディスク、たとえば内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。
【0085】
ユーザとの相互作用を提供するために、本明細書に記載された主題の実施形態は、ユーザに情報を表示するための表示デバイス、たとえば、CRT(陰極線管)またはLCD(液晶表示装置)モニタ、ならびにユーザがコンピュータに入力を提供することができるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールを有するコンピュータ上に実装することができる。ユーザとの相互作用を提供するために他の種類のデバイスを使用することもでき、たとえば、ユーザに提供されるフィードバックは、たとえば視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックなど、任意の形態の感覚的フィードバックであってよく、またユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受信することができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって、たとえば、ウェブブラウザから受信した要求に応じて、ユーザのデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと相互作用することができる。また、コンピュータは、テキストメッセージまたは他の形式のメッセージをパーソナルデバイス、たとえば、メッセージングアプリケーションを実行しているスマートフォンに送信し、ユーザからの応答メッセージを受信することによって、ユーザと相互作用することができる。
【0086】
機械学習モデルを実装するためのデータ処理装置はまた、たとえば、機械学習トレーニングまたは生産の一般的で計算集約的な部分、たとえば推論、ワークロードを処理するための専用ハードウェアアクセラレータユニットを含むことができる。
【0087】
機械学習モデルは、たとえば、TensorFlowフレームワークなどの機械学習フレームワークを使用して実装および展開することができる。
【0088】
本明細書に記載されている主題の実施形態は、たとえば、データサーバとしてのバックエンドコンポーネントを含む、またはミドルウェアコンポーネント、たとえばアプリケーションサーバを含む、あるいは、フロントエンドコンポーネント、たとえば、グラフィカルユーザインターフェース、ウェブブラウザ、またはユーザが本明細書で説明されている主題の実装形態と相互作用することができるアプリを備えたクライアントコンピュータを含む、または1つまたは複数のそのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムにおいて実装することができる。システムのコンポーネントは、デジタルデータ通信の任意の形式または媒体、たとえば通信ネットワークによって相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)、たとえばインターネットを含む。
【0089】
コンピューティングシステムは、クライアントとサーバを含むことができる。通常、クライアントとサーバは互いに離れており、通常は通信ネットワークを通じて相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアントとサーバの関係を有するコンピュータプログラムによって発生する。いくつかの実施形態では、サーバは、クライアントとして機能するデバイスと相互作用するユーザにデータを表示し、ユーザからのユーザ入力を受信するなどの目的で、HTMLページなどのデータをユーザデバイスに送信する。ユーザデバイスにおいて生成されたデータ、たとえばユーザ相互作用の結果は、デバイスからサーバにおいて受信することができる。
【0090】
本明細書は多くの特定の実装形態の詳細を含むが、これらは、発明の範囲または特許請求の範囲に対する制限として解釈されるべきではなく、特定の発明の特定の実施形態に固有の機能の説明として解釈されるべきである。別個の実施形態の文脈において本明細書に記載されている特定の機能は、単一の実施形態において組み合わせて実装することもできる。逆に、単一の実施形態の文脈において説明されている様々な機能は、複数の実施形態で個別に、または任意の適切なサブコンビネーションで実装することもできる。さらに、機能は特定の組合せにおいて作用するものとして上で説明され、最初はそのように主張されることさえあるが、主張された組合せからの1つまたは複数の機能は、場合によっては組合せから削除される可能性があり、主張された組合せはサブコンビネーションまたはサブコンビネーションのバリエーションを対象とする場合がある。
【0091】
同様に、動作は特定の順序で図面に示され、特許請求の範囲に記載されているが、これは、望ましい結果を達成するために、そのような動作が示されている特定の順序または連続した順序で実行されること、または示されているすべての動作が実行されることを必要とするものとして理解されるべきではない。特定の状況では、マルチタスクと並列処理が有利な場合がある。さらに、上述の実施形態における様々なシステムモジュールおよびコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものと理解されるべきではなく、説明したプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品に統合するか、または複数のソフトウェア製品にパッケージ化することができることを理解されたい。
【0092】
主題の特定の実施形態が説明された。他の実施形態は、以下の特許請求の範囲内にある。たとえば、特許請求の範囲に記載されているアクションは、異なる順序で実行することができ、依然として望ましい結果を達成することができる。一例として、添付の図面に示されるプロセスは、望ましい結果を達成するために、示された特定の順序または連続した順序を必ずしも必要としない。場合によっては、マルチタスクと並列処理が有利な場合がある。
【符号の説明】
【0093】
100 アーキテクチャ
110a 視覚音声認識ニューラルネットワーク
110b 視覚音声認識ニューラルネットワーク
120 埋め込みテーブル
130 トレーニングデータ
132 トレーニング例
140 ビデオ
150 グラウンドトゥルース転写
200 アーキテクチャ
210 新しい埋め込みベクトル
210 現在の埋め込みベクトル
220 適応データ
230 ビデオ
240 転写
300 プロセス
図1
図2
図3
【国際調査報告】