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

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

▶ グーグル インコーポレイテッドの特許一覧

特表2024-510798ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証
<>
  • 特表-ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証 図1
  • 特表-ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証 図2
  • 特表-ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証 図3
  • 特表-ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証 図4
  • 特表-ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-11
(54)【発明の名称】ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証
(51)【国際特許分類】
   G10L 17/00 20130101AFI20240304BHJP
【FI】
G10L17/00 200D
G10L17/00 200C
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023558522
(86)(22)【出願日】2022-03-09
(85)【翻訳文提出日】2023-11-08
(86)【国際出願番号】 US2022019576
(87)【国際公開番号】W WO2023158444
(87)【国際公開日】2023-08-24
(31)【優先権主張番号】17/211,791
(32)【優先日】2021-03-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】ホイナツカ、ローザ
(72)【発明者】
【氏名】ペレケーノス、ジェイソン
(72)【発明者】
【氏名】ワン、クアン
(72)【発明者】
【氏名】ロペス モレノ、イグナシオ
(57)【要約】
話者検証方法(400)は発話(119)に対応する音声データ(120)を受信する。所定ホットワードを特徴付ける音声データの第1部分(121)を処理してテキスト依存評価ベクトル(214)を生成する。1つまたは複数のテキスト依存信頼度スコア(215)を生成する。テキスト依存信頼度スコアの1つが閾値を満たす場合、動作は発話の話者を、閾値を満たすテキスト依存信頼度スコアに関連付けられた各々の登録ユーザとして識別する。話者検証を実行せずにアクションの実行を開始する。テキスト依存信頼度スコアがいずれも閾値を満たさない場合、動作は、クエリを特徴付ける音声データの第2部分(122)を処理してテキスト非依存評価ベクトル(224)を生成する。1つまたは複数のテキスト非依存信頼度スコア(225)を生成する。発話の話者の識別(アイデンティティ)が登録ユーザのいずれかを備えるか判定する。
【特許請求の範囲】
【請求項1】
データ処理ハードウェア(510)上で実行されると前記データ処理ハードウェア(510)に動作を実行させる、話者検証のためのコンピュータ実装方法(400)であって、前記動作は、
ユーザ装置(102)によってキャプチャ済みの発話(119)に対応する音声データ(120)を受信する工程であって、前記発話(119)は、実行するアクションを指定するクエリが続く所定ホットワードを備えている、前記音声データ(120)を受信する工程と、
テキスト依存話者検証TD-SVモデル(212)を使用することで、前記所定ホットワードを特徴付ける前記音声データ(120)の第1部分(121)を処理して、前記所定ホットワードの前記発話(119)の音声特徴を表すテキスト依存評価ベクトル(214)を生成する工程と、
前記テキスト依存評価ベクトル(214)が1つまたは複数のテキスト依存参照ベクトル(252)の各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト依存信頼度スコア(215)を生成する工程であって、前記各テキスト依存参照ベクトル(252)は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人に関連付けられる、前記テキスト依存信頼度スコア(215)を生成する工程と、
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれかが、信頼度閾値を満たすかどうかを判定する工程と、
を備えており、前記動作はさらに、
前記テキスト依存信頼度スコア(215)のいずれかが前記信頼度閾値を満たす場合、
前記発話(119)の話者を、前記信頼度閾値を満たす前記テキスト依存信頼度スコア(212)に対応する前記テキスト依存参照ベクトル(252)に関連付けられた各々の登録ユーザ(10)として、識別する工程を備えているとともに、
前記所定ホットワードに続く前記クエリを特徴付ける前記音声データ(120)の第2部分(122)上で話者検証を実行することなく、前記クエリによって指定済みの前記アクションの実行を開始する工程を備えていることと、
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれもが前記信頼度閾値を満たさない場合、テキスト非依存話者検証器(220)に命令を提供する工程を備えていることと、
のうちの1つを備えており、
前記命令は前記テキスト非依存話者検証器(220)によって受信されると前記テキスト非依存話者検証器(220)に、
テキスト非依存話者検証TI-SVモデル(222)を使用することで、前記クエリを特徴付ける前記音声データ(120)の前記第2部分(122)を処理して、テキスト非依存評価ベクトル(224)を生成する工程と、
前記テキスト非依存評価ベクトル(224)が1つまたは複数のテキスト非依存参照ベクトル(254)の各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト非依存信頼度スコア(225)を生成する工程(225)であって、前記各テキスト非依存参照ベクトル(254)は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人に関連付けられる、前記テキスト非依存信頼度スコア(225)を生成する工程と、
1つまたは複数の前記テキスト依存信頼度スコア(215)および1つまたは複数の前記テキスト非依存信頼度スコア(225)に基づき、前記発話(119)を発声した前記話者の識別が、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)のいずれかを備えているかどうかを判定する工程と、
を実行させる、コンピュータ実装方法(400)。
【請求項2】
前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々は、個人リソースの異なる各々のセットにアクセスするためのアクセス許可を有しており、
前記クエリによって指定済みの前記アクションの実行は、前記発話(119)の前記話者として識別済みの各々の登録ユーザ(10)に関連付けられた個人リソースの各々のセットへのアクセスを必要にする、
請求項1に記載のコンピュータ実装方法(400)。
【請求項3】
前記データ処理ハードウェア(510)は前記テキスト依存話者検証TD-SVモデル(212)を実行しているとともに、前記ユーザ装置(102)上に存在しており、
前記テキスト非依存話者検証器(220)は、前記テキスト非依存話者検証TI-SVモデルを実行しているとともに、ネットワークを介して前記ユーザ装置(102)に通信する分散コンピューティングシステム(111)上に存在する、
請求項1または2に記載のコンピュータ実装方法(400)。
【請求項4】
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれもが前記信頼度閾値を満たさない場合、
前記テキスト非依存話者検証器(220)に前記命令を提供する工程は、前記命令と、1つまたは複数の前記テキスト依存信頼度スコア(215)と、を前記ユーザ装置(102)から前記分散コンピューティングシステム(111)に送信する工程を備えている、
請求項3に記載のコンピュータ実装方法(400)。
【請求項5】
前記データ処理ハードウェア(510)は、前記ユーザ装置(102)と、ネットワークを介して前記ユーザ装置(102)に通信する分散コンピューティングシステム(111)と、のうちの一方上に存在しており、
前記データ処理ハードウェア(510)は、前記テキスト依存話者検証TD-SVモデル(212)と前記テキスト非依存話者検証TI-SVモデル(222)との両方を実行する、
請求項1または2に記載のコンピュータ実装方法(400)。
【請求項6】
前記テキスト非依存話者検証TI-SVモデル(222)は、前記テキスト依存話者検証TD-SVモデル(212)よりも計算集約的である、
請求項1~5のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項7】
前記動作はさらに、ホットワード検出モデル(110)を用いることで、前記クエリに先行する前記音声データ(120)中の前記所定ホットワードを検出する工程を備えており、
前記所定ホットワードを特徴付ける前記音声データ(120)の前記第1部分(121)は、前記ホットワード検出モデル(110)によって抽出される、
請求項1~6のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項8】
前記テキスト依存話者検証TD-SVモデル(212)および前記テキスト非依存話者検証TI-SVモデル(222)は、複数のトレーニングデータセット(310)上でトレーニングされており、
前記各トレーニングデータセット(310)は、異なる各々の言語または方言に関連付けられているとともに、異なる話者によって各々の言語または方言で話される対応するトレーニング発話(320)を備えており、
各対応するトレーニング発話(320)は、前記所定ホットワードを特徴付けるテキスト依存部分と、前記所定ホットワードに続くクエリ文を特徴付けるテキスト非依存部分と、を備えており、
前記テキスト依存話者検証TD-SVモデル(212)は、前記複数のトレーニングデータセット(310)のうちの各トレーニングデータセット(310)のうちの各対応するトレーニング発話(320)の前記テキスト依存部分上でトレーニングされており、
前記テキスト非依存話者検証TI-SVモデル(222)は、前記複数のトレーニングデータセット(310)のうちの各トレーニングデータセット(310)のうちの各対応するトレーニング発話(320)の前記テキスト非依存部分上でトレーニングされている、
請求項1~7のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項9】
前記トレーニングデータセット(310)の少なくとも1つに関連する各々の言語または方言で話された対応する前記トレーニング発話(320)は、他のトレーニングデータセット(310)の対応するトレーニング発話(320)とは異なる前記所定ホットワードを発音する、
請求項8に記載のコンピュータ実装方法(400)。
【請求項10】
前記テキスト非依存話者検証TI-SVモデル(222)は、前記複数のトレーニングデータセット(310)のうちの1つまたは複数のトレーニングデータセット(310)のうちの少なくとも1つの対応するトレーニング発話(320)の前記テキスト依存部分上で、トレーニングされる、
請求項8または9に記載のコンピュータ実装方法(400)。
【請求項11】
前記トレーニング発話(320)の前記テキスト非依存部分によって特徴付けられる前記クエリ文は、可変の言語コンテンツを備えている、
請求項8~10のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項12】
前記テキスト非依存評価ベクトル(224)を生成するとき、前記テキスト非依存話者検証器(220)は、前記テキスト非依存話者検証TI-SVモデル(222)を使用することで、前記所定ホットワードを特徴付ける前記音声データ(120)の前記第1部分(121)と、前記クエリを特徴付ける前記音声データ(120)の前記第2部分(122)と、の両方を処理する、
請求項1~11のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項13】
1つまたは複数の前記テキスト依存参照ベクトル(252)の各々は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人によって発声された前記所定ホットワードの1つまたは複数の以前の前記発話(119)を受信することに応答して(160)、前記テキスト依存話者検証TD-SVモデル(212)によって生成される、
請求項1~12のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項14】
1つまたは複数の前記テキスト非依存参照ベクトル(254)の各々は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人によって発声された1つまたは複数の以前の前記発話(119)を受信することに応答して、前記テキスト非依存話者検証TI-SVモデル(222)によって生成される、
請求項1~13のいずれか1項に記載のコンピュータ実装方法(400)。
【請求項15】
システム(100)であって、前記システム(100)は、
データ処理ハードウェア(510)と、
前記データ処理ハードウェア(510)に通信するメモリハードウェア(720)であって、前記データ処理ハードウェア(510)上で実行されると前記データ処理ハードウェア(510)に動作を実行させる第1命令を記憶する前記メモリハードウェア(720)と、
を備えており、前記動作は、
ユーザ装置(102)によってキャプチャ済みの発話(119)に対応する音声データ(120)を受信する工程であって、前記発話(119)は、実行するアクションを指定するクエリが続く所定ホットワードを備えている、前記音声データ(120)を受信する工程と、
テキスト依存話者検証TD-SVモデルを使用することで、前記所定ホットワードを特徴付ける前記音声データ(120)の第1部分(121)を処理することによって、前記所定ホットワードの前記発話(119)の音声特徴を表すテキスト依存評価ベクトル(214)を生成する工程と、
前記テキスト依存評価ベクトル(214)が1つまたは複数のテキスト依存参照ベクトル(252)の各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト依存信頼度スコア(215)を生成する工程であって、前記各テキスト依存参照ベクトル(252)は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人に関連付けられる、前記テキスト依存信頼度スコア(215)を生成する工程と、
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれかが、信頼度閾値を満たすか否かを判定する工程と、
を備えており、前記動作はさらに、
前記テキスト依存信頼度スコア(215)のいずれかが前記信頼度閾値を満たす場合、
前記発話(119)の話者を、前記信頼度閾値を満たす前記テキスト依存信頼度スコアに対応する前記テキスト依存参照ベクトル(252)に関連付けられた各々の登録ユーザ(10)として、識別する工程を備えているとともに、
前記所定ホットワードに続く前記クエリを特徴付ける前記音声データ(120)の第2部分(122)に対して話者検証を実行することなく、前記クエリによって指定済みの前記アクションの実行を開始する工程を備えていることと、または
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれもが前記信頼度閾値を満たさない場合、テキスト非依存話者検証器(220)に第2命令を提供する工程を備えていることと、
のうちの1つを備えており、
前記第2命令は前記テキスト非依存話者検証器(220)によって受信されると前記テキスト非依存話者検証器(220)に、
テキスト非依存話者検証TI-SVモデルを使用することで、前記クエリを特徴付ける前記音声データ(120)の前記第2部分(122)を処理して、テキスト非依存評価ベクトル(224)を生成する工程と、
前記テキスト非依存評価ベクトル(224)が1つまたは複数のテキスト非依存参照ベクトル(254)の各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト非依存信頼度スコア(225)を生成する工程であって、前記各テキスト非依存参照ベクトル(254)は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人に関連付けられる、前記テキスト非依存信頼度スコア(225)を生成する工程と、
1つまたは複数の前記テキスト依存信頼度スコア(215)および1つまたは複数の前記テキスト非依存信頼度スコア(225)に基づき、前記発話(119)を発声した前記話者の識別が、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)のいずれかを備えているかどうかを判定する工程と、
を実行させる、システム(100)。
【請求項16】
前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々は、個人リソースの異なる各々のセットにアクセスするためのアクセス許可を有しており、
前記クエリによって指定済みの前記アクションの実行は、前記発話(119)の前記話者として識別済みの各々の登録ユーザ(10)に関連付けられた個人リソースの各々のセットへのアクセスを必要にする、
請求項15に記載のシステム(100)。
【請求項17】
前記データ処理ハードウェア(510)は、前記テキスト依存話者検証TD-SVモデル(212)を実行するとともに、前記ユーザ装置(102)上に存在しており、かつ
前記テキスト非依存話者検証器(220)は、前記テキスト非依存話者検証TI-SVモデルを実行するとともに、ネットワークを介して前記ユーザ装置(102)に通信する分散コンピューティングシステム(111)上に存在する、
請求項15または16に記載のシステム(100)。
【請求項18】
1つまたは複数の前記テキスト依存信頼度スコア(215)のいずれもが前記信頼度閾値を満たさない場合、前記テキスト非依存話者検証器(220)に前記第2命令を提供する工程は、前記第2命令と、1つまたは複数の前記テキスト依存信頼度スコア(215)と、を前記ユーザ装置(102)から前記分散コンピューティングシステム(111)に送信する工程を備えている、
請求項17に記載のシステム(100)。
【請求項19】
前記データ処理ハードウェア(510)は、前記ユーザ装置(102)と、ネットワークを介して前記ユーザ装置(102)に通信する分散コンピューティングシステム(111)と、のうちの一方上に存在しており、
前記データ処理ハードウェア(510)は、前記テキスト依存話者検証TD-SVモデル(212)と前記テキスト非依存話者検証TI-SVモデル(222)との両方を実行する、
請求項15または16記載のシステム(100)。
【請求項20】
前記テキスト非依存話者検証TI-SVモデル(222)は、前記テキスト依存話者検証TD-SVモデル(212)よりも計算集約的である、
請求項15~19のいずれか1項に記載のシステム(100)。
【請求項21】
前記動作はさらに、
ホットワード検出モデル(110)を用いることで、前記クエリに先行する前記音声データ(120)中の前記所定ホットワードを検出する工程を備えており、
前記所定ホットワードを特徴付ける前記音声データ(120)の前記第1部分(121)は、前記ホットワード検出モデル(110)によって抽出される、
請求項15~20のいずれか1項に記載のシステム(100)。
【請求項22】
前記テキスト依存話者検証TD-SVモデル(212)および前記テキスト非依存話者検証TI-SVモデル(222)は、複数のトレーニングデータセット(310)上でトレーニングされており、
前記各トレーニングデータセット(310)は、異なる各々の言語または方言に関連付けられているとともに、異なる話者によって各々の言語または方言で話される各対応するトレーニング発話(320)を備えており、
各対応するトレーニング発話(320)は、前記所定ホットワードを特徴付けるテキスト依存部分と、前記所定ホットワードに続くクエリ文を特徴付けるテキスト非依存部分と、を備えており、
前記テキスト依存話者検証TD-SVモデル(212)は、複数のトレーニングデータセット(310)のうちの各トレーニングデータセット(310)のうちの各対応するトレーニング発話(320)のテキスト依存部分上でトレーニングされており、
前記テキスト非依存話者検証TI-SVモデル(222)は、複数のトレーニングデータセット(310)のうちの各トレーニングデータセット(310)のうちの各対応するトレーニング発話(320)のテキスト非依存部分上でトレーニングされる、
請求項15~21のいずれか1項に記載のシステム(100)。
【請求項23】
前記トレーニングデータセット(310)の少なくとも1つに関連付けられた各々の言語または方言で話された対応するトレーニング発話(320)は、他のトレーニングデータセット(310)の対応するトレーニング発話(320)とは異なる前記所定ホットワードを発音する、
請求項22に記載のシステム(100)。
【請求項24】
前記テキスト非依存話者検証TI-SVモデル(212)は、前記複数のトレーニングデータセット(310)のうちの1つまたは複数のトレーニングデータセット(310)のうちの少なくとも1つの対応するトレーニング発話(320)のテキスト依存部分上でトレーニングされる、
請求項22または23に記載のシステム(100)。
【請求項25】
前記トレーニング発話(320)の前記テキスト非依存部分によって特徴付けられる前記クエリ文は、可変の言語コンテンツを備えている、
請求項22~24のいずれか1項に記載のシステム(100)。
【請求項26】
前記テキスト非依存評価ベクトルを生成するとき、前記テキスト非依存話者検証器(220)は、前記テキスト非依存話者検証TI-SVモデル(222)を使用することで、前記所定ホットワードを特徴付ける前記音声データ(120)の前記第1部分(121)と、前記クエリを特徴付ける前記音声データ(120)の前記第2部分(122)と、の両方を処理する、
請求項15~25のいずれか1項に記載のシステム(100)。
【請求項27】
1つまたは複数の前記テキスト依存参照ベクトルの各々は、前記ユーザ装置(102)の1人または複数の異なる登録ユーザ(10)の各々の1人によって発声された前記所定ホットワードの1つまたは複数の以前の前記発話(119)を受信することに応答して(160)、前記テキスト依存話者検証TD-SVモデル(212)によって生成される、
請求項15~26のいずれか1項に記載のシステム(100)。
【請求項28】
1つまたは複数の前記テキスト非依存参照ベクトルの各々は、前記ユーザ装置(102)の前記1人または複数の異なる登録ユーザ(10)の各々の1人によって発声された1つまたは複数の以前の前記発話(119)を受信することに応答(160)して、前記テキスト非依存話者検証TI-SVモデル(222)によって生成される、
請求項15~27のいずれか1項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ハイブリッド多言語テキスト依存およびテキスト非依存の話者検証に関する。
【背景技術】
【0002】
家庭や自動車などの音声対応環境(スピーチ_イネーブルド_エンバイロンメント)では、ユーザは、音声入力を使用することで、情報にアクセスしたり、さまざまな機能を制御したり、することができる。情報および/または機能は、所定のユーザ用にパーソナライズされる場合がある。そのため、音声対応環境に関連する話者のグループの中から、所定の話者を識別することが有利な場合がある。
【0003】
話者検証(たとえば、音声認証)は、ユーザ装置(ユーザデバイス、ユーザ機器)のユーザがユーザ装置にアクセスするための、簡単な方法を提供する。話者検証(スピーカ_ベリフィケーション)では、ユーザは、ユーザ装置にアクセスするべくパスコードを手動入力(たとえば、タイピング)することを必要にはせずに、発話を話すことによってユーザ装置のロックを解除するとともにユーザ装置にアクセスすることができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2020/117639号
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、複数の異なる言語、方言、アクセント、などが存在するので、話者検証には一定の課題がある。
【課題を解決するための手段】
【0006】
本開示の一態様は、データ処理ハードウェア上で実行されると、ユーザ装置によってキャプチャ済みの発話に対応する音声(オーディオ)データを受信する工程を含む動作をデータ処理に実行させる、話者検証のためのコンピュータ実装方法を提供する。発話は、実行するアクションを指定するクエリが続く所定ホットワードを備えている。動作はまた、テキスト依存話者検証(TD-SV)モデルを使用することで、所定ホットワードを特徴付ける音声データの第1部分を処理して、ホットワードの発話の音声特徴を表すテキスト依存評価ベクトルを生成する工程と、1つまたは複数のテキスト依存信頼度スコアを生成する工程と、を備えている。各テキスト依存信頼度スコアは、テキスト依存評価ベクトルが、1つまたは複数のテキスト依存参照ベクトルの各々の1つに一致する尤度を示している。各テキスト依存参照ベクトルは、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人に関連付けられる。動作はさらに、1つまたは複数のテキスト依存信頼度スコアのいずれかが、信頼度閾値を満たすかどうかを判定する工程を備えている。1つまたは複数のテキスト依存信頼度スコアのいずれかが信頼度閾値を満たす場合、動作は、信頼度閾値を満たすテキスト依存信頼度スコアに対応するテキスト依存参照ベクトルに関連付けられる各々の登録ユーザとして発話の話者を識別する工程と、ホットワードに続くクエリを特徴付ける音声データの第2部分に対して話者検証を実行することなく、クエリによって指定済みのアクションの実行を開始する工程と、を備えている。1つまたは複数のテキスト依存信頼度スコアのいずれもが信頼度閾値を満たさない場合、動作は、テキスト非依存話者検証器に命令を提供する工程を備えている。命令は、テキスト非依存話者検証器によって受信されると、テキスト非依存話者検証器に、テキスト非依存話者検証(TI-SV)モデルを使用することで、クエリを特徴付ける音声データの第2部分を処理させることによって、テキスト非依存評価ベクトルを生成させる。動作はさらに、テキスト非依存評価ベクトルが1つまたは複数のテキスト非依存参照ベクトルの各々の1つに一致する尤度(可能性)を各々示す、1つまたは複数のテキスト非依存信頼度スコアを生成する工程を備えている。各テキスト非依存参照ベクトルは、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人に関連付けられる。動作はまた、1つまたは複数のテキスト依存信頼度スコアおよび1つまたは複数のテキスト非依存信頼度スコアに基づき、発話を行なった話者の識別(アイデンティティ)がユーザ装置の1人または複数の異なる登録ユーザのいずれかを備えているかどうかを判定する工程を備えている。
【0007】
本開示の実装は、以下のオプションの特徴のうちの1つまたは複数を含み得る。いくつかの実装では、ユーザ装置の1人または複数の異なる登録ユーザの各々は、個人リソースの異なる各々のセットにアクセスするためのパーミッションを有しており、クエリによって指定済みのアクションの実行は、発話の話者として識別済みの各々の登録ユーザに関連付けられた個人リソースの各々のセットへのアクセスを必要にする。一部の例では、データ処理ハードウェアはテキスト依存話者検証TD-SVモデルを実行しており、ユーザ装置上に存在している。テキスト非依存話者検証器はテキスト非依存話者検証TI-SVモデルを実行しており、ネットワークを介してユーザ装置に通信する分散コンピューティングシステム上に存在する。これらの例では、1つまたは複数のテキスト依存信頼度スコアのいずれもが信頼度閾値を満たさない場合、テキスト非依存話者検証器に命令を提供する工程は、命令および1つまたは複数のテキスト依存信頼度スコアを、ユーザ装置から分散コンピューティングシステムに送信する工程を備えている。
【0008】
いくつかの実装では、データ処理ハードウェアは、ユーザ装置と、またはネットワークを介してユーザ装置に通信する分散コンピューティングシステムと、のうちの1つ上に存在する。ここで、データ処理ハードウェアは、テキスト依存話者検証TD-SVモデルとテキスト非依存話者検証TI-SVモデルとの両方を実行する。いくつかの実施例では、テキスト非依存話者検証TI-SVモデルは、テキスト依存話者検証TD-SVモデルよりも計算集約的である。いくつかの実施態様において、動作は、ホットワード検出モデルを使用することで、クエリに先行する音声データ内の所定ホットワードを検出する工程をさらに備えている。所定ホットワードを特徴付ける音声データの第1部分は、ホットワード検出モデルによって抽出される。
【0009】
いくつかの例では、テキスト依存話者検証TD-SVモデルおよびテキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットでトレーニングされる。各トレーニングデータセットは、異なる各々の言語または方言に関連付けられているだけでなく、異なる話者によって各々の言語または方言で話された対応するトレーニング発話を備えている。各対応するトレーニング発話は、所定ホットワードを特徴付けるテキスト依存部分と、所定ホットワードに続くクエリ文を特徴付けるテキスト非依存(独立)部分と、を備えている。ここで、テキスト依存話者検証TD-SVモデルは、複数のトレーニングデータセットの各トレーニングデータセットにおける各対応するトレーニング用発話のテキスト依存部分上で、トレーニングされている。テキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットの各トレーニングデータセットにおける各対応するトレーニング用発話のテキスト非依存部分上で、トレーニングされる。これらの例では、トレーニングデータセットの少なくとも1つに関連付けられた各々の言語または方言で話された対応するトレーニング発話は、他のトレーニングデータセットの対応するトレーニング発話とは異なる所定ホットワードを発音する可能性がある。いくつかの追加的な例では、テキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットのうちの1つまたは複数における少なくとも1つの対応するトレーニング用発話のテキスト依存部分上で、トレーニングされる。さらに、または代替的に、トレーニング用発話のテキスト非依存部分によって特徴付けられるクエリ文は、可変の言語コンテンツを備えている。
【0010】
いくつかの実装では、テキスト非依存評価ベクトルを生成するとき、テキスト非依存話者検証器は、テキスト非依存話者検証TI-SVモデルを使用することで、所定ホットワードを特徴付ける音声データの第1部分と、クエリを特徴付ける音声データの第2部分と、の両方を処理する。追加的または代替的に、1つまたは複数のテキスト依存参照ベクトルの各々は、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人によって発声された所定ホットワードの1つまたは複数の以前の発話を受信することに応答して、テキスト依存話者検証TD-SVモデルによって生成される場合がある。1つまたは複数のテキスト非依存参照ベクトルの各々は、ユーザ装置の1人または複数の異なる登録ユーザの各々のうちの1人によって発声された1つまたは複数の以前の発話を受信することに応答して、テキスト非依存話者検証TI-SVモデルによって生成される場合がある。
【0011】
本開示の別の態様は、話者検証のためのシステムを提供する。このシステムは、データ処理ハードウェアと、データ処理ハードウェアに通信するメモリハードウェアと、を備えている。メモリハードウェアは、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を実行させる命令を記憶する。動作は、ユーザ装置によって捕捉(キャプチャ)された発話に対応する音声(オーディオ)データを受信する工程を備えている。発話は、実行するアクションを指定するクエリが続く所定ホットワードを備えている。動作はまた、テキスト依存話者検証(TD-SV)モデルを使用することで、所定ホットワードを特徴付ける音声データの第1部分を処理して、ホットワードの発話の音声特徴を表すテキスト依存評価ベクトルを生成する工程と、1つまたは複数のテキスト依存信頼度スコアを生成する工程と、を備えている。各テキスト依存信頼度スコアは、テキスト依存評価ベクトルが1つまたは複数のテキスト依存参照ベクトルの各々の1つに一致する尤度を示している。各テキスト依存参照ベクトルは、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人に関連付けられる。動作はさらに、1つまたは複数のテキスト依存信頼度スコアのいずれかが信頼度閾値を満たすかどうかを判定する工程を備えている。テキスト依存信頼度スコアのいずれかが信頼度閾値を満たす場合、動作は、信頼度閾値を満たすテキスト依存信頼度スコアに対応するテキスト依存参照ベクトルに関連付けられた各々の登録ユーザとして、発話の話者を識別する工程と、ホットワードに続くクエリを特徴付ける音声データの第2部分に対して話者検証を実行することなく、クエリによって指定済みのアクションの実行を開始する工程と、を備えている。1つまたは複数のテキスト依存信頼度スコアのいずれもが信頼度閾値を満たさない場合、動作は、テキスト非依存話者検証器に命令を提供する工程を備えている。命令は、テキスト非依存話者検証器によって受信されると、テキスト非依存話者検証器に、テキスト非依存話者検証(TI-SV)モデルを使用することで、クエリを特徴付ける音声データの第2部分を処理させることによって、テキスト非依存評価ベクトルを生成させる。動作はさらに、テキスト非依存評価ベクトルが1つまたは複数のテキスト非依存参照ベクトルの各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト非依存信頼度スコアを生成する工程を備えている。各テキスト非依存参照ベクトルは、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人に関連付けられる。動作はまた、1つまたは複数のテキスト依存信頼度スコアおよび1つまたは複数のテキスト非依存信頼度スコアに基づき、発話を行なった話者の識別(アイデンティティ)がユーザ装置の1人または複数の異なる登録ユーザのいずれかを備えているかどうかを判定する工程を備えている。
【0012】
この態様は、以下のオプションの特徴のうちの1つまたは複数を備えていることができる。一部の実装では、ユーザ装置の1人または複数の異なる登録ユーザの各々は、個人リソースの異なる各々のセットにアクセスするための許可(パーミッション)を有している。クエリによって指定済みのアクションの実行には、発話の話者として識別済みの各々の登録ユーザに関連付けられた個人リソースの各々のセットへのアクセスが必要である。一部の例では、データ処理ハードウェアはテキスト依存話者検証TD-SVモデルを実行しており、ユーザ装置上に存在している。テキスト非依存話者検証器はテキスト非依存話者検証TI-SVモデルを実行しているとともに、ネットワークを介してユーザ装置に通信する分散コンピューティングシステム上に存在する。これらの例では、1つまたは複数のテキスト依存信頼度スコアのいずれもが信頼度閾値を満たさない場合、テキスト非依存話者検証器に命令を提供する工程は、命令と、1つまたは複数のテキスト依存信頼度スコアと、をユーザ装置から分散コンピューティングシステムに送信する工程を備えている。
【0013】
いくつかの実装では、データ処理ハードウェアは、ユーザ装置と、ネットワークを介してユーザ装置に通信する分散コンピューティングシステムと、のいずれか上に存在する。ここで、データ処理ハードウェアは、テキスト依存話者検証TD-SVモデルとテキスト非依存話者検証TI-SVモデルとの両方を実行する。いくつかの実施例では、テキスト非依存話者検証TI-SVモデルは、テキスト依存話者検証TD-SVモデルよりも計算集約的である。いくつかの実施態様において、動作は、ホットワード検出モデルを使用することで、クエリに先行する音声データ内の所定ホットワードを検出する工程をさらに備えている。所定ホットワードを特徴付ける音声データの第1部分は、ホットワード検出モデルによって抽出される。
【0014】
いくつかの例では、テキスト依存話者検証TD-SVモデルおよびテキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットでトレーニングされる。各トレーニングデータセットは、異なる各々の言語または方言に関連付けられているとともに、異なる話者によって各々の言語または方言で話された対応するトレーニング発話を備えている。各対応するトレーニング発話は、所定ホットワードを特徴付けるテキスト依存部分と、所定ホットワードに続くクエリ文を特徴付けるテキスト非依存部分と、を備えている。ここで、テキスト依存話者検証TD-SVモデルは、複数のトレーニングデータセットの各トレーニングデータセットにおける各対応するトレーニング発話のテキスト依存部分上でトレーニングされている。テキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットの各トレーニングデータセットにおける各対応するトレーニング用発話のテキスト非依存部分上でトレーニングされる。これらの例では、トレーニングデータセットの少なくとも1つに関連付けられた各々の言語または方言で話された対応するトレーニング発話は、他のトレーニングデータセットの対応するトレーニング発話とは異なる所定ホットワードを発音する可能性がある。いくつかの追加的な例では、テキスト非依存話者検証TI-SVモデルは、複数のトレーニングデータセットのうちの1つまたは複数における少なくとも1つの対応するトレーニング用発話のテキスト依存部分上でトレーニングされる。さらにまたは代替的に、トレーニング用発話のテキスト非依存部分によって特徴付けられるクエリ文は、可変の言語コンテンツを備えている。
【0015】
いくつかの実装では、テキスト非依存評価ベクトルを生成するとき、テキスト非依存話者(スピーカ)検証器は、テキスト非依存話者検証TI-SVモデルを使用することで、所定ホットワードを特徴付ける音声データの第1部分と、クエリを特徴付ける音声データの第2部分と、の両方を処理する。追加的または代替的に、1つまたは複数のテキスト依存参照ベクトルの各々は、ユーザ装置の1人または複数の異なる登録ユーザの各々の1人によって発声された所定ホットワードの1つまたは複数の以前の発話を受信することに応答して、テキスト依存話者検証TD-SVモデルによって生成される。1つまたは複数のテキスト非依存参照ベクトルの各々は、ユーザ装置の1人または複数の異なる登録ユーザのうちの各々の1人によって発声された1つまたは複数の以前の発話を受信することに応答して、テキスト非依存話者検証TI-SVモデルによって生成される場合がある。
【0016】
本開示の1つまたは複数の実施態様の詳細は、添付の図面および以下の説明に記載されている。他の態様、特徴、および利点、は説明および図面ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0017】
図1】多言語話者検証システムを有している音声環境の一例を示す概略図。
図2図1の多言語話者検証システムの概略図。
図3図1の多言語話者検証システムをトレーニングするための、トレーニング処理の一例を示す概略図。
図4】話者検証システムを用いて話者の識別を検証する、方法の動作の配置例を示すフローチャート。
図5】本明細書で説明するシステムおよび方法を実施するべく使用され得る、例示的なコンピューティング装置の概略図。
【発明を実施するための形態】
【0018】
様々な図面における同様の参照符号は、同様の要素を示す。
家庭、自動車、職場、学校、などの音声対応環境では、ユーザがクエリ(問い合わせ)やコマンドを話すと、デジタルアシスタントが問い合わせに答えたり、コマンドを実行させたり、することができる。このような音声対応環境は、環境の様々な部屋や領域に分散された、接続されたマイクデバイス同士のネットワークを使用して実装することができる。マイク同士のネットワークを通じて、ユーザは、目の前にコンピュータや他のインタフェースがなくても、話し言葉でデジタルアシスタントに問い合わせる(クエリを送る)ことができる。場合によっては、音声対応環境は、複数の登録ユーザ(例えば、世帯に住む人々)に関連付けられる。このような例は、スマートフォン、スマートスピーカ、スマートディスプレイ、タブレットデバイス、スマートテレビ、スマート家電、車両インフォテインメントシステム、など単一のデバイスが複数のユーザによって共有される場合に適用され得る。ここで、音声対応環境は、音声対応の家庭、オフィス、または自動車、において例えば2人から6人といった限られた人数のユーザによって使用される場合がある。そのため、クエリを発声する特定のユーザの識別(アイデンティティ、身元)を決定することが望ましい。特定の話者/ユーザの識別(アイデンティティ)を決定する処理は、話者検証、話者認識、話者識別、または音声認識、と呼ばれることがある。
【0019】
話者検証を使用すると、マルチユーザ環境において、ユーザが特定のユーザに代わって動作するクエリを発行したり、パーソナライズされた応答をトリガーしたり、することができる。話者検証(たとえば、音声認証)は、ユーザ装置のユーザがユーザ装置にアクセスするための、簡単な方法を提供する。話者検証では、ユーザは、ユーザ装置にアクセスするべくパスコードを手動で入力(たとえば、タイピング)する必要がないので、発話を話すことでユーザ装置のロックを解除するとともにユーザ装置にアクセスすることができる。ただし、複数の異なる言語、方言、アクセント、などが存在するので、話者検証には一定の課題がある。
【0020】
いくつかのシナリオでは、ユーザは、ユーザの個人情報に関連する、および/またはユーザに関連する個人リソースのセットからのリソースへのアクセスを要求する、クエリ(問い合わせ)をデジタルアシスタントに行なう。例えば、特定のユーザ(例えば、デジタルアシスタントに登録済みのユーザ)は、デジタルアシスタントに「マットとのミーティングはいつですか」と尋ねたり、デジタルアシスタントに「私の音楽プレイリストを再生してください」と問い合わせたりする。ここで、ユーザは、各々が各々の個人リソースセット(例えば、カレンダー、音楽プレーヤ、電子メール、メッセージング、コンタクトリスト、など)にアクセスする許可を得ている一方で、他の登録ユーザの個人リソースにはアクセスすることを制限されている、1つまたは複数の複数の登録ユーザのうちの1人であってもよい。例えば、ジョンとメグの両方がデジタルアシスタントの登録ユーザである場合、デジタルアシスタントは、ジョンとメグのどちらが「マットとの私のミーティングはいつですか」という発話をしたかを判別するとともに、適切な登録ユーザのカレンダーにアクセスすることで、マットとのミーティングがいつ予定されているかを判定するだけでなく、マットとの予定済みのミーティングの詳細を応答する必要がある。同様に、デジタルアシスタントは、ジョンとメグが固有の音楽プレイリストを持っていることから、音楽プレーヤにアクセスするとともに最終的に適切な音楽プレイリストからのトラックを音声出力するべく、ジョンとメグのどちらが「私の音楽プレイリストを再生して」という発話をしたかを判別する必要がある。
【0021】
マルチユーザの音声対応環境で、どのユーザが話しているかを判定するべく、音声対応システムには話者検証システム(たとえば、話者識別システムまたは音声認証システム)が含まれる場合がある。話者検証システムでは、2種類のモデルを使用して、話者を検証することができる。発話のうちのホットワード(キーワード、ウェイクワード、トリガーフレーズ、など)部分については、システムは1つまたは複数のテキスト依存モデルを使用することができる。一方、一般的にクエリを特徴付ける発話のうちの残りの部分については、システムは1つまたは複数のテキスト非依存モデルを使用することができる。これら2種類のモデルを組み合わせることで、話者検証の検証精度を、特に話者検証システムの初期使用時において、向上させることができる。
【0022】
発話中の1つまたは複数の用語の特定のホットワード(例えば、「ヘイ、グーグル」または「オーケー、グーグル」)が話されることによって、ユーザ装置上で実行されるデジタルアシスタントは、特定のホットワードに続く発話で話されたクエリを処理(例えば、自動音声認識(ASR)を通じて)および実行するようにトリガー/起動される場合がある。ユーザ装置上で実行されるホットワード検出器は、ユーザ装置によってキャプチャ済みのストリーミングオーディオ内の特定のホットワードの存在を検出するとともに、ユーザ装置がスリープ状態からウェイクアップして発話のクエリ部分を特徴付ける後続の音声データに対する処理(たとえば、自動音声認識ASR)を開始するようにトリガーすることができる。ホットワード検出器は、ホットワードを特徴付ける音声データの第1部分を抽出することができ、これはテキスト依存話者検証を実行するための基礎として使用することができる。音声データの最初の部分は、約500ミリ秒(ms)の音声データの固定長音声セグメントを備えていることがある。
【0023】
一般に、発話のホットワードを特徴付ける音声データの第1部分から話者の識別(アイデンティティ)を確認するためのテキスト依存モデルは、音声対応装置上で実行される。一方、ホットワードに続くクエリを特徴付ける音声データの第2部分から話者を識別するためのテキスト非依存モデルは、音声対応装置に通信するリモートサーバ上で実行される。テキスト依存モデルは、各々のテキスト依存話者ベクトルを出力することができる。このテキスト依存話者ベクトルは、ユーザ装置の1人または複数の異なる登録ユーザに各々関連付けられた1つまたは複数の参照ベクトルとで比較されることで、発話を行なった話者が特定の登録ユーザに対応する第1尤度に対応する第1信頼度スコアを決定することができる。テキスト非依存モデルはまた、各々のテキスト非依存話者ベクトルを出力することができる。このテキスト非依存話者ベクトルは、1人または複数の異なる登録ユーザに各々関連付けられた1つまたは複数の参照ベクトルとで比較されることで、発話を話した話者が特定の登録ユーザに対応する第2尤度に対応する、第2信頼度スコアを決定することができる。第1および第2信頼度スコアを組み合わせることで、最終的に、発話を行なった話者が特定の登録ユーザに対応するかどうかを判定することができる。
【0024】
注目すべきことに、話者検証システムにおいて、複数の異なる言語および方言にまたがる広範なユーザを対象として、これらのテキスト非依存モデルおよびテキスト依存モデルを大規模にトレーニングすることには課題がある。具体的には、各言語および方言のモデルを個別にトレーニングするための音声データのトレーニングサンプルを入手することは、困難であり時間がかかる。低リソース言語では、音声データの十分なトレーニングサンプルが少ないので、困難な課題がある。さらに、言語ごとにテキスト非依存モデルとテキスト依存モデルとを個別に使用する場合、運用中のモデルを維持および更新するべく多大な人的および計算的労力が必要になるので、これまでサポートされていなかった新しい言語用の新しいモデルをトレーニングする必要がある。例えば、追加される新しい言語に対して新しいテキスト依存モデルとテキスト非依存モデルをトレーニングするべく、対象言語について話者ラベル付きの音声データのトレーニングサンプルが利用可能でなければならない。
【0025】
複数の異なる言語にわたる複数の話者検証システムの構築およびサポートに関する課題を軽減するべく、本明細書の実装は、異なる言語および方言でトレーニング済みのハイブリッド多言語テキスト依存話者検証モデルおよびテキスト非依存話者検証モデルを有している、多言語話者検証システムに向けられている。テキスト依存話者検証モデルおよびテキスト非依存話者検証モデルの各々を、複数の言語および方言でトレーニングすることによって、多言語話者検証システムは、トレーニングに使用されていない未見の言語に汎化することができるだけでなく、トレーニングに使用された高リソース言語および低リソース言語の両方で話者検証性能を維持することができる。本明細書では、多言語テキスト依存話者検証モデルおよびテキスト非依存話者検証モデルは各々、異なる言語または方言を話す話者同士の識別(アイデンティティ)を正確に検証するべく使用できる、単一の各々のモデルを指す。つまり、テキスト依存話者検証モデルもテキスト非依存話者検証モデルも、特定の単一言語または方言による発話に依存または限定されない。その結果、異なる言語、方言、および/またはアクセント、に対して異なるモデルを使用するのではなく、テキスト依存話者検証モデルおよびテキスト非依存話者検証モデルの各々に対して、各々の単一のモデルをトレーニングすることができる。
【0026】
テキスト依存型話者検証モデルとテキスト非依存型話者検証モデルの組み合わせを利用することで、話者検証システムの話者検証性能/精度が最適化される一方で、テキスト非依存型話者検証モデルを採用すると計算コストが増加する。すなわち、テキスト依存話者検証モデルは、一般的にユーザ装置上で実行される軽量モデルである。一方、テキスト非依存話者検証モデルは、テキスト依存話者検証モデルよりも計算集約的であるとともに、より大きなメモリフットプリントを必要にする。よって、テキスト非依存話者検証モデル、はリモートサーバ上における実行に適している。テキスト非依存話者検証モデルを実行することで発生する計算コストの増加に加えて、クエリを実行するための待ち時間も、テキスト依存話者検証モデルとテキスト非依存話者検証モデルの両方による計算の実行に必要な時間に比例して増加する。全体的な計算負担を軽減するだけでなく、なおかつ話者検証システムの最適な話者検証性能/精度を維持するべく、本明細書の実装は、テキスト依存話者検証に関連するテキスト依存信頼度スコアが信頼度閾値を満たさない場合にのみ、テキスト非依存話者検証モデルにテキスト非依存話者検証を実行させる話者検証トリアージ段階をさらに指向する。そうではない場合、テキスト依存話者検証TD-SVモデルによって生成されたテキスト依存評価ベクトルが各々のテキスト依存参照ベクトルに一致する尤度(可能性)を示すテキスト依存信頼度スコアが信頼度閾値を満たすとき、トリアージシステムは、テキスト非依存話者検証モデルがテキスト非依存話者検証を実行する必要性を回避することを、話者検証システムに許可することができる。
【0027】
図1を参照すると、いくつかの実装では、音声対応環境における例示的なシステム100は、1人または複数のユーザ10に関連付けられているユーザ装置(ユーザデバイス、ユーザ機器)102を備えている。ユーザ装置102は、ネットワーク104を介してリモートシステム111に通信する。ユーザ装置102は、携帯電話(移動電話)、コンピュータ(ラップトップまたはデスクトップ)、タブレット、スマートスピーカ/ディスプレイ、スマート家電、スマートヘッドフォン、ウェアラブル、車両インフォテインメントシステム、などのコンピューティング機器に対応することができるとともに、データ処理ハードウェア103およびメモリハードウェア107を備えている。ユーザ装置102は、各々のユーザ10からの発話を捕捉(キャプチャ)するための1つまたは複数のマイク106を備えているか、またはそれらマイク106に通信している。リモートシステム111は、単一のコンピュータであっても、複数のコンピュータであっても、またはスケーラブル/弾性コンピューティングリソース113(例えば、データ処理ハードウェア)および/またはストレージリソース115(例えば、メモリハードウェア)を有している分散システム(例えば、クラウド環境)であってもよい。
【0028】
ユーザ装置102は、ストリーミングオーディオ118に対して意味解析または音声認識処理を実行することなく、ストリーミングオーディオ118内のホットワードの存在を検出するように構成された、ホットワード検出器110(ホットワード検出モデルとも呼ばれる)を備えている。ユーザ装置102は、ホットワード検出器110の一部として、または発話119から音声データ120を抽出するための別個の構成要素として実装される、音響特徴抽出器(図示せず)を備えていることができる。例えば、音響特徴抽出器は、ユーザ10によって発声された発話119に対応するユーザ装置102の1つまたは複数のマイク106によって捕捉されたストリーミングオーディオ118を受信するとともに、音声データ120を抽出することができる。音声データ120は、音声信号のウィンドウにわたって計算されたメル周波数セプストラム係数(MFCC)またはフィルタバンクエネルギー、などの音響特徴を備えていることができる。図示の例では、ユーザ10によって発声された発話119は、「オーケー、グーグル、私の音楽プレイリストを再生して」を備えている。
【0029】
ホットワード検出器110は、音声データ120を受信して、発話119がユーザ10によって発声された特定のホットワード(例えば、オーケー、グーグル)を備えているかどうかを判定することができる。すなわち、ホットワード検出器110は、音声データ120内のホットワード(例えば、オーケー、グーグル)またはホットワードの1つまたは複数の変形(例えば、ヘイ、グーグル)の存在を検出して、ユーザ装置102をスリープ状態または休止状態からウェイクアップさせ、自動音声認識(ASR)システム180をトリガーして、ホットワードおよび/またはホットワードに続く1つまたは複数の他の用語、例えば、ホットワードに続き、実行するアクションを指定した音声クエリについて音声認識を実行するようにトレーニングされてもよい。図示の例では、ストリーミングオーディオでキャプチャ済みの発話119のホットワードに続くクエリは、デジタルアシスタントが特定のユーザ(例えば、ジョン)10に関連付けられた音楽プレイリストにアクセスしており、スピーカからの可聴出力のためにユーザ装置10(および/または1つまたは複数の指定済みのオーディオ出力デバイス)が再生するためのジョンの音楽プレイリストからのオーディオトラックを備えている応答160を提供するためのアクションを指定する「Playmy music playlist」を備えている。ホットワードは、音声対応ユーザ装置102に向けられた音以外の音を拾う可能性がある「常時オン」のシステムにとって有用である。例えば、ホットワードの使用は、所定の発話119が、環境に存在する別の個人に向けられた発話または背景の発話とは対照的に、デバイス102に向けられた発話である場合、デバイス102が識別するのに役立つ可能性がある。そうすることで、デバイス102は、ホットワードを含まない音または発話に対して、計算コストのかかる処理(音声認識や意味解釈など)をトリガーすることを避けることができる。いくつかの例では、ホットワード検出器110は、複数の異なる言語または方言でトレーニング済みの多言語ホットワード検出器110である。
【0030】
システム100は、音声データ120を処理することによって、発話119を話しているユーザ10の識別(アイデンティティ)を決定するように構成された多言語話者検証システム200を備えている。多言語話者検証システム200は、ユーザが認可されたユーザとして識別済みの場合にのみクエリが実行される(例えば、クエリによって指定済みのアクションが実行される)ように、識別済みのユーザ10が認可されたユーザであるかどうかを判定することができる。有利なことに、多言語話者検証システム200は、ユーザがユーザ装置102にアクセスするべくパスコードを手動で入力(たとえば、タイピングを介して)または発声するか、または何らかの他の検証手段を提供する(たとえば、チャレンジ質問に答える、生体認証データを提供する、などする)ことをユーザに要求することなく、発話を話すことによってユーザ装置102のロックを解除してアクセスすることを可能にする。
【0031】
いくつかの例では、システム100は、複数の異なるユーザ10、10a~10n(図2)が各々ユーザ装置102に登録されており、そのユーザに関連付けられた個人リソース(例えば、カレンダー、音楽プレーヤ、電子メール、メッセージング、連絡先リスト、など)の各々のセットにアクセスする許可を有している、マルチユーザ、音声対応環境で動作する。登録されたユーザ10は、他の登録されたユーザに関連付けられた個人リソースの各々のセットからの個人リソースへのアクセスを制限される。各登録ユーザ10は、そのユーザに関連付けられた個人リソースの各々のセットにリンクする各々のユーザプロファイル、およびそのユーザ10に関連付けられた他の関連情報(例えば、ユーザ指定のプリファレンス設定)を有していることができる。したがって、多言語話者検証システム200を使用することで、マルチユーザの音声対応環境100においてどのユーザが発話119を話しているかを判定することができる。例えば、図示の例では、ジョンとメグの両方が、ユーザ装置102(またはユーザ装置上で実行されるデジタルアシスタントインタフェース)の登録ユーザ10である可能性があり、デジタルアシスタントは、メグとジョンが各々固有の音楽プレイリストを持っている可能性があるので、音楽プレーヤにアクセスして、最終的に適切な音楽プレイリストからのトラックを音声出力するべく、ジョンとメグのどちらが発話119「オーケー、グーグル、私の音楽プレイリストを再生して」を話したかを判別する必要がある。ここで、多言語話者検証システム200は、発話119に対応する音声データ120の1つまたは複数の部分121、122を処理して、ジョンが発話119の話者であることを特定する。
【0032】
引き続き図1を参照すると、ホットワード検出器110が音声データ120内のホットワード(例えば、オーケー、グーグル)の存在を検出した後、多言語話者検証システム200のテキスト依存(TD)検証器210は、ホットワード検出器110によって検出されたホットワードを特徴付ける音声データ120の第1部分121を受信する。ホットワード検出器110は、音声データ120から、音声データ120の第1部分121に対応する音声セグメントを抽出することができる。いくつかの例では、音声データ120の第1部分121は、ホットワード検出器が検出するようにトレーニングされており、テキスト依存TD検証器210が話者検証を実行するようにトレーニングされた、話されたホットワードまたは他の用語/フレーズの音声特徴を備えているのに十分な長さの固定長音声セグメントを備えている。テキスト依存TD検証器210は、テキスト依存話者検証(TD-SV)モデル212(図2)を使用することで、音声データ120の第1部分121を処理しており、音声データ120の第1部分121によって特徴付けられるホットワードが、ユーザ装置102の1人または複数の異なる登録ユーザ10の各々の1つによって発声された尤度を示す1つまたは複数のテキスト依存(TD)信頼度スコア215を各々出力するように構成される。注目すべきことに、発話で話されたときの所定ホットワードは、ユーザ10が後続の音声クエリを処理するべくユーザ装置102を呼び出しているかどうかを判定する工程と、発話を行なったユーザ10の識別(アイデンティティ)を判定する工程との2つの目的を果たす。テキスト依存(TD)検証器210は、ユーザ装置102上で実行するように構成される。さらに、以下でさらに詳細に説明するように、テキスト依存話者検証(TD-SV)モデル212は、ユーザ装置上における保存および実行に適した軽量モデルを備えている。
【0033】
話者検証精度を高めるべく、多言語話者検証システム200は、発話119を話したユーザ10の識別(アイデンティティ)を検証するべく、テキスト非依存(TI)検証器220を採用することもできる。テキスト非依存TI検証器220は、テキスト非依存話者検証(TI-SV)モデル222(図2)を使用することで、ホットワードに続くクエリを特徴付ける音声データ120の第2部分122を処理しており、音声データ120の第2部分122によって特徴付けられるクエリが、ユーザ装置102の1人または複数の異なる登録ユーザ10の各々の1つによって発声された尤度を示す1つまたは複数のテキスト非依存(TI)信頼度スコア225を各々出力するように構成される場合がある。図示の例では、音声データ120の第2部分122によって特徴付けられるクエリは、「私の音楽プレイリストを再生して」(プレイ_マイ_ミュージック_プレイリスト)を備えている。いくつかの実施例では、テキスト非依存話者検証(TI-SV)モデル222は、1つまたは複数のテキスト非依存TI信頼度スコア225が音声データ120の第1および第2部分121、122の両方に基づくように、音声データ120の第1部分121を追加的に処理する。一部の実装では、テキスト非依存(TI)検証器220は、テキスト依存TD検証器210から出力された1つまたは複数のテキスト依存TD信頼度スコア215を受信しており、1つまたは複数のテキスト依存TD信頼度スコア215および1つまたは複数のテキスト非依存TI信頼度スコア225に基づき、発話119を発声した話者の識別(アイデンティティ)が、ユーザ装置102の1人または複数の異なる登録済みユーザ10のいずれかを備えているかどうかを判定する。例えば、テキスト非依存TI検証器220は、発話119の話者を登録ユーザ10aジョンとして識別することができる。
【0034】
テキスト非依存TI検証器220は、テキスト依存TD検証器210よりも計算集約的であり、したがって、テキスト非依存TI検証器220は、テキスト依存TD検証器210よりも実行に計算コストがかかる。さらに、テキスト非依存TI検証器220は、テキスト依存TD検証器210よりもはるかに大きなメモリフットプリントを必要にする。そのため、テキスト非依存TI検証器220は、リモートシステム111上における実行によって適している。ただし、テキスト非依存TI検証器220は、他の実装ではユーザ装置102上で実行してもよい。
【0035】
テキスト依存TD検証器210とテキスト非依存TI検証器220を組み合わせることで、話者を検証/識別する精度が向上する一方で、テキスト非依存TI検証器220で話者検証を実行することで発生する計算コストの増加によるトレードオフがある。テキスト非依存TI検証器220を実行することで発生する計算コストの増加に加えて、クエリを実行するための待ち時間も、音声データ120の長い継続時間に対してテキスト非依存TI検証器220が追加の計算を実行するのに必要な時間に比例して増加する。多言語話者検証システム200の話者検証性能/精度を犠牲にすることなく、全体的な計算負担を軽減しており、待ち時間を短縮するべく、多言語話者検証システム200は、テキスト依存TD検証器210から出力された1つまたは複数のテキスト依存TD信頼度スコア215のいずれもが信頼度閾値を満たさない場合にのみ、多言語話者検証システム200がテキスト非依存TI検証器220を呼び出すことを可能にする中間話者検証トリアージ段階205を備えている。すなわち、話者検証SVトリアージ段階205が、テキスト依存TD検証器210から出力されたテキスト依存TD信頼度スコア215が信頼度閾値を満たす(YES)と判定するシナリオでは、多言語話者検証システム200は、テキスト非依存TI検証器220における話者検証をバイパスしており、自動音声認識ASRシステム180に、発話119の話者を、信頼度閾値を満たした発話ホットワードについてのテキスト依存TD信頼度スコア215に関連付けられた各々の登録ユーザ10として識別する話者検証SV確認208を提供することができる。話者検証SV確認208は、自動音声認識ASRシステム180によって受信されると、テキスト非依存TI検証器220がホットワードに続くクエリを特徴付ける音声データ120の第2部分122に対して話者検証を実行することを必要にせずに、クエリによって指定済みのアクションの実行を開始するように自動音声認識ASRシステム180に指示することができる。図示の例では、自動音声認識ASRシステム180は、クエリを特徴付ける音声データ120の第2部分122(およびオプションとして、第2部分122に加えて音声データ120の第1部分121)に対して音声認識を実行するように構成された自動音声認識ASRモデル182を備えている。
【0036】
自動音声認識ASRシステム180は、自動音声認識ASRモデル182によって出力された音声認識結果に対してクエリの解釈を実行するように構成された自然言語理解(NLU)モジュール184も備えている。一般に、自然言語理解NLUモジュール184は、クエリによって指定済みの実行すべきアクションを識別するべく、音声認識結果に対して意味解析を実行することができる。図示の例では、自然言語理解NLUモジュール184は、クエリ「Playmy music playlist」によって指定済みのアクションの実行には、ユーザ装置102の各々の登録ユーザ10に関連付けられた個人リソースの各々のセットへのアクセスが必要であると判定することができる。したがって、自然言語理解NLUモジュール184は、クエリによって指定済みのアクションには、アクションを実行するべく必要なパラメータ、すなわちユーザのIDが欠けていると判定する。したがって、自然言語理解NLUモジュール184は、発話119の発話者として特定の登録ユーザ(例えば、John)10aを識別するSV確認208を使用しており、したがって、クエリによって指定済みのアクションを実行する出力命令185を提供することによって、クエリの履行を開始する。図示の例では、出力命令185は、登録されたユーザJohnの音楽プレイリストからの音楽トラックをストリーミングするように音楽ストリーミングサービスに指示することができる。デジタルアシスタントインタフェースは、ユーザ装置102および/またはユーザ装置102に通信している1つまたは複数の他の機器からの可聴出力用に、音楽トラックを備えている問い合わせに対する応答160を提供してもよい。
【0037】
テキスト依存TD信頼度スコア215が信頼度閾値を満たしたので、自然言語理解NLUモジュール184は、テキスト非依存TI検証器220が登録ユーザを識別するべく追加の計算を実行するのを待つことなく、テキスト依存TD検証器210によって決定された登録ユーザの識別(アイデンティティ)に依存することができたので、自然言語理解NLUモジュール184は、クエリの履行を迅速化することができた。
【0038】
話者検証SVトリアージ段階205が、テキスト依存TD検証器210から出力された1つまたは複数のテキスト依存TD信頼度スコア215のいずれもが信頼度閾値を満たさないと判定するシナリオでは、話者検証SVトリアージ段階205は、1つまたは複数のテキスト依存TD信頼度スコア215をテキスト非依存TI検証器220に渡しており、発話119中のホットワードに続くクエリを特徴付ける音声データ120の少なくとも第2部分122に対して話者検証を実行するようにテキスト非依存TI検証器220に指示することができる。テキスト非依存TI検証部220は、音声データ120の第2部分122を処理して、クエリがユーザ装置102の1人または複数の異なる登録ユーザ10の各々の1つによって発声された可能性を各々示す1つまたは複数のテキスト非依存TI信頼度スコア225を生成することによって、話者検証を実行することができる。いくつかの実装では、テキスト非依存TI検証器220は、各々の登録ユーザ10に関連付けられたテキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225の生成されたペアを結合して、発話を行なった話者の識別(アイデンティティ)が各々の登録ユーザ10を備えているかどうかを示す結合信頼度スコアを決定する。例えば、ユーザ装置の4人の登録ユーザ10a~10dが存在する場合、テキスト非依存TI検証器220は、生成されたテキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225の4つの別々の組を組み合わせて、発話119がユーザ装置の4人の異なる登録ユーザ10の各々の1人が発声した可能性を各々示す4つの結合信頼度スコアを生成する。最も高い結合信頼度スコアに関連付けられた登録ユーザが、発話119の発話者として識別される場合がある。
【0039】
いくつかの例では、テキスト非依存TI検証器220は、テキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225を平均化することによって、テキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225を結合する。一部の例では、テキスト非依存TI検証器220は、テキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225の加重平均を計算しており、結合信頼度スコアを得る。例えば、テキスト依存TD信頼度スコア215はテキスト非依存TI信頼度スコア225よりも重く重み付けされることがある。一例では、テキスト依存TD信頼度スコア215には0.75の重みが乗じられるが、テキスト非依存TI信頼度スコア225には0.25の重みが乗じられる。他の例では、テキスト非依存TI信頼度スコア225はテキスト依存TD信頼度スコア215よりも重く重み付けされる。いくつかの実施態様では、テキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225に適用される重み付けは、適用される重みが時間とともに変化し得るように動的である。すなわち、テキスト依存TD信頼度スコア215は、テキスト非依存TI信頼度スコア225よりも、テキスト非依存TI検証器220とで比較してテキスト依存TD検証器210に関連する精度が高い可能性があることを反映して、当初は重く評価されることがある。しかし、時間の経過とともに、テキスト非依存TI検証器220はユーザの後続の発話に基づき更新されており、最終的には話者検証を実行するべくテキスト依存TD検証器210よりも精度が高くなる可能性がある。その結果、テキスト非依存TI検証器220が出力するテキスト非依存TI信頼度スコア225は、最終的にテキスト依存TD検証器210が出力するテキスト依存TD信頼度スコア215よりも重く評価される可能性がある。
【0040】
図2は、図1の多言語話者検証システム200の概略図である。多言語話者検証システム200は、多言語テキスト依存話者検証TD-SVモデル212を有しているテキスト依存TD検証器210と、多言語テキスト非依存話者検証TI-SVモデル222を有しているテキスト非依存TI検証器220と、を備えている。一部の実装では、ユーザ装置102の各登録ユーザ10は、個人リソースの異なる各々のセットにアクセスするためのアクセス許可を有しており、音声データ120の第2部分122によって特徴付けられるクエリの実行は、発話119の話者として識別される登録ユーザ10に関連付けられた個人リソースの各々のセットへのアクセスを必要にする。ここで、ユーザ装置102の各登録済みユーザ10は、登録済みユーザ10によって発声された複数の登録済みフレーズの音声サンプルから各々の登録済みユーザ参照ベクトル252、254を取得する音声登録処理を実行することができる。たとえば、多言語テキスト依存話者検証TD-SVモデル212は、各々のTD参照ベクトル252を形成するべく結合、たとえば平均化または他の方法で蓄積され得る、各登録ユーザ10によって発声された登録フレーズ内の所定の用語(たとえば、ホットワード)から、1つまたは複数のテキスト依存(TD)参照ベクトル252を生成し得る。さらに、多言語テキスト非依存話者検証TI-SVモデル222は、各々のテキスト非依存(TI)参照ベクトル254を形成するべく組み合わされており、たとえば平均化されており、または他の方法で蓄積され得る、各登録ユーザによって発声された登録フレーズの音声サンプルから、1つまたは複数のテキスト非依存TI参照ベクトル254を生成し得る。
【0041】
登録された1人または複数のユーザ10は、ユーザ装置102を使用して音声登録処理を行なうことができ、マイクロホン106は、これらのユーザが登録発話を話す音声サンプルをキャプチャしており、多言語テキスト依存話者検証TD-SVモデル212および多言語テキスト非依存話者検証TI-SVモデル222は、そこから各々のテキスト依存TD参照ベクトル252およびテキスト非依存TI参照ベクトル254を生成する。さらに、登録されたユーザ10のうちの1つまたは複数は、ユーザ装置102の既存のユーザアカウントに認可および認証資格情報を提供することによって、ユーザ装置102に登録することができる。ここで、既存のユーザアカウントは、ユーザアカウントにリンクされた別のデバイスで各々のユーザによって実施された以前の音声登録処理から取得されたテキスト依存TD参照ベクトル252およびテキスト非依存TI参照ベクトル254を記憶することができる。
【0042】
いくつかの実施例では、登録されたユーザ10のテキスト依存TD参照ベクトル252は、各々の登録されたユーザ10が、ユーザ装置をスリープ状態から目覚めさせるべく呼び出すために使用されるホットワード(たとえば、「オーケー、グーグル」)などの所定の用語を話す1つまたは複数の音声サンプルから抽出される。いくつかの実装では、テキスト依存TD参照ベクトル252は、ユーザ装置102の各々の登録済みユーザ10によって発声された所定ホットワードの1つまたは複数の以前の発話を受信することに応答して、多言語テキスト依存話者検証TD-SVモデル212によって生成される。たとえば、ホットワード検出器によって高信頼度で検出された所定ホットワードを特徴付ける音声データであって、特定の登録ユーザについて記憶されたテキスト依存TD参照ベクトル252に一致する高信頼度スコアに関連付けられたテキスト依存(TD)評価ベクトル214をもたらす音声データを使用することで、テキスト依存話者検証TD-SVモデル212を改良/更新/再学習することができる。さらに、登録されたユーザ10のテキスト非依存TI参照ベクトル254は、各々の登録されたユーザ10が、異なる用語/単語および異なる長さのフレーズを話す1つまたは複数の音声サンプルから得られてもよい。例えば、テキスト非依存TI参照ベクトル254は、ユーザ10がユーザ装置102または同じアカウントにリンクされた他の機器との音声対話から得られた音声サンプルから経時的に得られてもよい。言い換えれば、テキスト非依存TI参照ベクトル254は、ユーザ装置102の登録されたユーザ10によって発声された1つまたは複数の以前の発話を受信することに応答して、多言語テキスト非依存話者検証TI-SVモデル222によって生成される場合がある。
【0043】
いくつかの例では、多言語話者検証システム200は、テキスト依存TD検証器210を使用することで、発話119を発声したユーザ10の識別(アイデンティティ)を解決する。テキスト依存TD検証器210は、まず、ユーザによって発声された所定ホットワードを特徴付ける音声データ120の第1部分121から、ホットワードの発話の音声特徴を表すテキスト依存TD評価ベクトル214を抽出することによって、発話119を発声したユーザ10を識別する。ここで、テキスト依存TD検証器210は、音声データ120の第1部分121を入力として受け取り、テキスト依存TD評価ベクトル214を出力として生成するように構成された多言語テキスト依存話者検証TD-SVモデル212を実行することができる。多言語テキスト依存話者検証TD-SVモデル212は、テキスト依存TD評価ベクトル214を出力するように機械または人間の監視下でトレーニング済みのニューラルネットワークモデル(例えば、第1ニューラルネットワーク330)であってもよい。
【0044】
多言語テキスト依存話者検証TD-SVモデル212からテキスト依存TD評価ベクトル214が出力されると、テキスト依存TD検証器210は、テキスト依存TD評価ベクトル214が、ユーザ装置102の登録済みユーザ10、10a~10nについてユーザ装置102に(たとえば、メモリハードウェア107に)記憶されたテキスト依存TD参照ベクトル252のいずれかに一致するかどうかを判定する。上述したように、多言語テキスト依存話者検証TD-SVモデル212は、音声登録処理中に、登録されたユーザ10のテキスト依存TD参照ベクトル252を生成してもよい。各テキスト依存TD参照ベクトル252は、所定ホットワードを話す各々の登録ユーザ10の音声の特徴を表す声紋または一意の識別子に対応する参照ベクトルとして使用することができる。
【0045】
いくつかの実装では、テキスト依存TD検証器210は、テキスト依存TD評価ベクトル214を、ユーザ装置102の各登録ユーザ10a~10nに関連付けられた各々のテキスト依存TD参照ベクトル252とで比較するテキスト依存(TD)スコアラー216を使用する。ここで、テキスト依存TDスコアラー216は、発話119が各々の登録済みユーザ10のアイデンティティに対応する尤度を示すスコアを各比較に対して生成することができる。具体的には、テキスト依存TDスコアラー216は、ユーザ装置102の各登録ユーザ10についてテキスト依存(TD)信頼度スコア215を生成する。いくつかの実装では、テキスト依存TDスコアラー216は、テキスト依存TD評価ベクトル214と各テキスト依存TD参照ベクトル252との間の各々の余弦距離を計算しており、各登録ユーザ10のテキスト依存TD信頼度スコア215を生成する。
【0046】
テキスト依存TDスコアラー216が、発話119が各々の登録ユーザ10に対応する尤度を示すテキスト依存TD信頼度スコア215を生成すると、話者検証(SV)トリアージ段階205は、テキスト依存TD信頼度スコア215のいずれかが信頼度閾値を満たすかどうかを判定する。いくつかの実装では、話者検証SVトリアージ段階205は、テキスト依存TD信頼度スコア215が信頼度閾値を満たすと判定する。これらの実装では、多言語話者検証システム200は、テキスト非依存TI検証器220における話者検証をバイパスしており、代わりに、発話119の話者を、信頼度閾値を満たしたテキスト依存TD信頼度スコア215に関連付けられた各々の登録ユーザ10として識別する話者検証SV確認208を自動音声認識ASRシステム108に提供する。
【0047】
逆に、話者検証SVトリアージ段階205が、テキスト依存TD信頼度スコア215のいずれもが信頼度閾値を満たさないと判定した場合、話者検証SVトリアージ段階205は、テキスト依存TD検証器210によって生成されたテキスト依存TD信頼度スコア215と、命令207とをテキスト非依存TI検証器220に提供する。ここで、命令207は、テキスト非依存TI検証器220によって受信されると、テキスト非依存TI検証器220に、発話119を発声したユーザ10の識別(アイデンティティ)を解決させる。テキスト非依存TI検証器220は、まず、所定ホットワードに続くクエリを特徴付ける音声データ120の第2部分122から、発話119の音声特徴を表すテキスト非依存(TI)評価ベクトル224を抽出することによって、発話119を発声したユーザ10を識別する。テキスト非依存TI評価ベクトル224を生成するべく、テキスト非依存TI検証器220は、音声データ120の第2部分122を入力として受け取り、テキスト非依存TI評価ベクトル224を出力として生成するように構成された多言語テキスト非依存話者検証TI-SVモデル222を実行してもよい。いくつかの実装では、多言語テキスト非依存話者検証TI-SVモデル222は、音声データ120の第1部分121と音声データ120の第2部分122の両方を受け取り、第1部分121と第2部分122の両方を処理してテキスト非依存TI評価ベクトル224を生成する。いくつかの追加の実装では、テキスト非依存話者検証TI-SVモデル222は、発話119のクエリ部分に続く追加の音声データを処理することができる。例えば、発話119は、「ママに次のメッセージを送って」というクエリを備えており、「夕食には家にいるよ」というメッセージの内容に対応する追加の音声も備えていることができる。多言語テキスト非依存話者検証TI-SVモデル222は、テキスト非依存TI評価ベクトル224を出力するべく機械または人間の監督の下でトレーニング済みのニューラルネットワークモデル(たとえば、第2ニューラルネットワーク340)であってもよい。
【0048】
多言語テキスト非依存話者検証TI-SVモデル222からテキスト非依存TI評価ベクトル224が出力されると、テキスト非依存TI検証器220は、テキスト非依存TI評価ベクトル224が、ユーザ装置102の異なる登録済みユーザ10、10a~10nについてユーザ装置102に(たとえば、メモリハードウェア107に)記憶されたテキスト非依存TI参照ベクトル254のいずれかに一致するかどうかを判定する。上述したように、多言語テキスト非依存話者検証TI-SVモデル222は、音声登録処理中に、登録済みのユーザ10のためのテキスト非依存TI参照ベクトル254を生成してもよい。各テキスト非依存TI参照ベクトル254は、各々の登録ユーザ10の音声の特徴を表す声紋または一意識別子に対応する、参照ベクトルとして使用され得る。
【0049】
いくつかの実装では、テキスト非依存TI検証器220はスコアラー226を使用する。スコアラー226は、テキスト非依存TI評価ベクトル224を、ユーザ装置102の各登録ユーザ10a~10nに関連付けられた各々のテキスト非依存TI参照ベクトル254とで比較する。ここで、スコアラー226は、発話119が各々の登録済みユーザ10のアイデンティティに対応する尤度を示すスコアを、各比較に対して生成することができる。具体的には、スコアラー226は、ユーザ装置102の各登録ユーザ10について、テキスト非依存(TI)信頼度スコア225を生成する。いくつかの実施態様では、スコアラー226は、テキスト非依存TI評価ベクトル224と各テキスト非依存TI参照ベクトル254との間の各々の余弦距離を計算することで、各登録ユーザ10のテキスト非依存TI信頼度スコア225を生成する。さらにスコアラー226は、各登録ユーザ10について、生成済みのテキスト依存TD信頼度スコア215とテキスト非依存TI信頼度スコア225とのペアを結合することで、結合信頼度スコアを決定する。結合信頼度スコアは、発話119を発声した話者の識別(アイデンティティ、身元)が、各登録ユーザ10を備えているかどうかを示す。図1に関して上述したように、結合信頼度スコアを得るべく使用されたテキスト依存TD信頼度スコア215およびテキスト非依存TI信頼度スコア225の重みは、異なる場合があり、および/または時間の経過とともに動的に変化する場合がある。
【0050】
テキスト非依存TI検証器220は、発話119を発声したユーザ10を、最高の結合(複合、コンバインド)信頼度スコアに関連付けられた各々の登録ユーザとして、識別することができる。これらの実施態様では、テキスト非依存TI検証器220は、発話119の話者を、最高の結合スコアに関連付けられた各々の登録ユーザ10として識別する話者検証SV確認208を、自動音声認識ASRシステム108に提供する。一部の例では、テキスト非依存TI検証器220は、最高結合信頼度スコアが閾値を満たすかどうかを判定するとともに、結合信頼度スコアが閾値を満たす場合にのみ話者を識別する。そうではない場合、テキスト非依存TI検証器220は、追加の検証用発話を話すように、および/または認証用質問に答えるように、ユーザ装置に指示することができる。
【0051】
図3は、多言語話者検証システム200をトレーニングするための、多言語話者検証トレーニング処理300の例を示す。トレーニング処理300は、図1のリモートシステム111上で実行することができる。トレーニング処理300は、データ記憶装置301に記憶された複数のトレーニングデータセット310、310A~310Nを取得することで、トレーニングデータセット310上でテキスト依存話者検証TD-SVモデル212およびテキスト非依存話者検証TI-SVモデル222の各々をトレーニングする。データストレージ301は、リモートシステム111のメモリハードウェア113上に存在してもよい。各トレーニングデータセット310は、異なる各々の言語または方言に関連付けられているとともに、異なる話者によって各々の言語または方言で話された対応するトレーニング発話320、320Aa~320Nnを備えている。例えば、第1トレーニングデータセット310Aは、アメリカ英語に関連付けられているとともに、アメリカ合衆国の話者が英語で話す対応するトレーニング発話320Aa~320Anを備えている場合がある。すなわち、第1トレーニングデータセット310Aのトレーニング発話320Aa~320Anは、すべてアメリカ訛りの英語で発声される。一方、イギリス英語に関連する第2トレーニングデータセット310Bは、同じく英語で話されるがイギリス出身の話者による、対応するトレーニング発話320Ba~320Bnを備えている。したがって、第2トレーニングデータセット310Bのトレーニング発話320Ba~320Bnは、英国訛りの英語で話されているので、したがって、米国訛りの方言に関連付けられたトレーニング発話320Aa~320Anとは異なる方言(すなわち、英国訛り)に関連付けられる。特に、英国訛りの英語話者は、米国訛りの別の英語話者とは異なるように幾つかの単語を発音する場合がある。図3はまた、韓国語話者が話す対応するトレーニング発話320Na~320Nnを備えている、韓国語に関連する別のトレーニングデータセット310Nを示す。
【0052】
いくつかの実装では、トレーニング処理300は、各々が異なる各言語に関連付けられた少なくとも12個のトレーニングデータセット上で、多言語話者検証システム200をトレーニングする。追加の実装では、トレーニング処理300は、46個の異なる言語および63個の方言をカバーするトレーニング発話320上で、多言語話者検証システム200をトレーニングする。
【0053】
対応する各トレーニング発話320は、テキスト依存部分321およびテキスト非依存部分322を備えている。テキスト依存部分321は、トレーニング発話320で発声された所定ホットワード(例えば、「ヘイ、グーグル」)または所定ホットワードの変形(例えば、「オーケー、グーグル」)を特徴付ける、音声セグメント(オーディオ片)を備えている。テキスト依存部分321に関連する音声セグメントは、オーディオ特徴(例えば、40次元ログメルフィルタバンクエナジー特徴またはメル周波数セプトラル係数)を備えている固定長フレームのシーケンスによって表される、固定長音声セグメント(例えば、1,175ミリ秒のオーディオ)を備えていることができる。ここで、所定ホットワードおよびその変形は各々、ストリーミングオーディオ118で話されたときにホットワード検出器110によって検出可能にされているので、所定ホットワードまたはその変形に続く1つまたは複数の用語について、ユーザ装置がウェイクアップして音声認識を開始するトリガーになり得る。いくつかの例では、所定ホットワード(またはその変形)を特徴付ける、対応するトレーニング発話320のテキスト依存部分321に関連付けられた固定長の音声セグメントが、ホットワード検出器110によって抽出される。
【0054】
同じ所定ホットワードは、複数の異なる言語で使用される場合がある。しかし、言語や方言によってアクセントなどの言語特性が異なるので、同じ所定ホットワードまたはその変形の発音は、言語や方言によって異なる。注目すべきことに、いくつかの地理的地域に配置されたホットワード検出器110は、ストリーミングオーディオで異なる所定ホットワードを検出するようにトレーニングされる場合がある。したがって、これらの地理的地域に関連する言語または方言で話された対応するトレーニング発話320のテキスト依存部分321は、代わりに異なる所定ホットワードを特徴付ける場合がある。明らかになるように、トレーニング済み(学習済み)多言語テキスト依存話者検証TD-SVモデル212は、所定ホットワード、所定ホットワードのバリエーションに基づき、または特定の言語または地理的地域に固有の異なるホットワードに基づき、異なる言語または方言の話者を区別することができる。追加の実装では、一部のトレーニング発話320のテキスト依存部分321は、所定ホットワードまたは所定ホットワードのバリエーションに加えてまたは所定ホットワードまたは所定ホットワードのバリエーションに代えて、以下のような音声セグメントを備えている。すなわち音声セグメントは、カスタムホットワードまたは一般的に使用される音声コマンド(例えば、再生(プレイ)、一時停止(ポーズ)、音量アップ/ダウン、通話(コール)、メッセージ、ナビゲート/方向指示、など)などの、他の用語/フレーズを特徴付ける。
【0055】
各トレーニング発話320のテキスト非依存部分322は、テキスト依存部分321によって特徴付けられる所定ホットワードに続いてトレーニング発話320で話されるクエリ文を特徴付ける、音声セグメントを備えている。例えば、対応するトレーニング発話320は「オーケー、グーグル、外の天気は何ですか」(どうですか)を備えている場合がある。テキスト依存部分321は、ホットワード「オーケー、グーグル」を特徴付ける。テキスト非依存部分322は、クエリ文「外の天気は何ですか」を特徴付ける。各トレーニング発話320のテキスト依存部分321は、同じ所定ホットワードまたはそのバリエーションによって音韻的に制約される。しかし、各テキスト非依存(独立)部分322によって特徴付けられるクエリ文の語彙は、制約されない。つまり、各クエリ文に関連する継続時間および音素は、可変である。特に、テキスト依存部分321によって特徴付けられる話し言葉のクエリ文の言語は、トレーニングデータセット310に関連付けられた各々の言語を備えている。例えば、英語で話されたクエリ文「外の天気は何ですか」(ワット_イズ_ザ_ウェザー_アウトサイド)は、スペイン語で話されると「Cuales el clima afuera」(クエル_エス_エル_クリマ_アフエラ)に翻訳される。いくつかの例では、各トレーニング発話320のクエリ文を特徴付ける音声セグメントは、0.24秒から1.60秒までの範囲の可変時間を備えている。
【0056】
引き続き図3を参照すると、トレーニング処理300は、各トレーニングデータセット310、310A~310Nに関連付けられた各々の言語または方言で話されたトレーニング発話320、320Aa~320Nnのテキスト依存部分321について、第1ニューラルネットワーク330をトレーニングする。トレーニング中、テキスト依存部分321に関する追加情報が、第1ニューラルネットワーク330への入力として提供される場合がある。例えば、予測方法を学習するべくテキスト依存話者検証TD-SVモデル212をトレーニングするためのグランドトゥルース出力ラベルに対応する、テキスト依存TDターゲットベクトルなどのテキスト依存(TD)ターゲット323は、テキスト依存TD部分321を用いたトレーニング中に第1ニューラルネットワーク330への入力として提供されてもよい。したがって、各特定の話者からの所定ホットワードの1つまたは複数の発話は、特定のテキスト依存TDターゲットベクトル323とでペアにされてもよい。
【0057】
第1ニューラルネットワーク330は、各LSTM層の後に投影層を有している複数の長短記憶(LSTM)層から形成される、ディープニューラルネットワークを含み得る。いくつかの例では、第1ニューラルネットワークは128個のメモリセルを使用しており、投影サイズは64に等しい。多言語テキスト依存話者検証TD-SVモデル212は、第1ニューラルネットワーク330のトレーニング(学習)済みバージョンを備えている。テキスト依存話者検証TD-SVモデル212によって生成されるテキスト依存TD評価ベクトル214および参照ベクトル252は、最後の投影層の投影サイズに等しい埋め込みサイズを有しているdベクトルを含み得る。トレーニング処理は、第1ニューラルネットワーク330をトレーニングするべく、一般化エンドツーエンドコントラスト損失を使用してもよい。
【0058】
トレーニング後、第1ニューラルネットワーク330は、多言語テキスト依存話者検証TD-SVモデル212を生成する。トレーニング済みの多言語テキスト依存話者検証TD-SVモデル212は、複数の地理的地域に分散していて異なる言語、方言、またはその両方、を話すユーザに関連する複数のユーザ装置102に、プッシュされる場合がある。ユーザ装置102は、ストリーミングオーディオ118内のホットワード検出器110によって検出済みの所定ホットワードを特徴付ける音声(オーディオ)セグメントに対してテキスト依存話者検証を実行するべく、多言語テキスト依存話者検証TD-SVモデル212を記憶および実行することができる。前述したように、同じホットワードが異なる言語または場所で話されている場合でも、異なる言語、方言、アクセント、または場所、を持つユーザは、ホットワードを異なるように発音する可能性がある。このような発音のばらつき(バリエーション)は、1つの言語のみを対象としてトレーニングされた以前の話者検証モデルでは、言語やアクセントに起因するこの発音のばらつきを、話者識別特性として不適切に帰着させることがよくあった。例えば、これらの先行モデルが、地域アクセントの一般的な特徴を、特定の話者の音声の主な特徴的要素であると解釈する場合、検証における偽陽性(フォールス_ポジティブ)の割合が増加する。しかし、実際には、その特徴は、同じまたは類似のアクセントで話すすべてのユーザに共通である。本開示のトレーニング済みの多言語テキスト依存話者検証TD-SVモデル212は、或るユーザを、同じ言語、方言、アクセント、または場所、を持つ他のユーザから、区別することができる。
【0059】
また、トレーニング処理300は、各トレーニングデータセット310、310A~310Nに関連付けられた各々の言語または方言で話されたトレーニング発話320、320Aa~320Nnのテキスト非依存(TI)部分322上で、第2ニューラルネットワーク340をトレーニングする。ここで、トレーニング発話320Aaについて、トレーニング処理300は、アメリカ英語で話されたクエリ文「外の天気は何ですか」(ワット_イズ_ザ_ウェザー_アウトサイド)を特徴付けるテキスト非依存TI部分322上で、第2ニューラルネットワークをトレーニングする。任意選択で、トレーニング処理は、対応するトレーニング発話320のテキスト非依存TI部分322に加えて、トレーニングデータセット310のうちの1つまたは複数における少なくとも1つの対応するトレーニング発話320のテキスト依存TD部分321についても、第2ニューラルネットワーク340をトレーニングすることができる。例えば、上記のトレーニング発話320Aaを使用することで、トレーニング処理300は、発話全体「オーケー、グーグル、外の天気は何?」について第2ニューラルネットワーク340をトレーニングすることができる。トレーニング中、テキスト非依存TI部分322に関する追加情報は、第2ニューラルネットワーク340への入力として提供される場合がある。例えば、予測方法を学習するべくテキスト非依存話者検証TI-SVモデル222をトレーニングするためのグランドトゥルース出力ラベルに対応するテキスト非依存TIターゲットベクトルなどのテキスト非依存TIターゲット324は、テキスト非依存TI部分322を使用するトレーニング中に、第2ニューラルネットワーク340への入力として提供されてもよい。したがって、各特定の話者からのクエリ文の1つまたは複数の発話は、特定のテキスト非依存TIターゲットベクトル324とでペアにされてもよい。
【0060】
第2ニューラルネットワーク340は、各LSTM層の後に投影層を有している複数のLSTM層から形成された、ディープ(深層)ニューラルネットワークを含み得る。いくつかの例では、第2ニューラルネットワークは384個のメモリセルを使用しており、投影サイズは128に等しい。多言語テキスト非依存話者検証TI-SVモデル222は、第2ニューラルネットワーク340のトレーニング済み(学習済み)バージョンを備えている。テキスト非依存話者検証TI-SVモデル222によって生成されるテキスト非依存TI評価ベクトル224およびテキスト非依存TI参照ベクトル254は、最後の投影層の投影サイズに等しい埋め込みサイズを有しているdベクトルを含んでもよい。トレーニング処理300は、第1ニューラルネットワーク330をトレーニングするべく、一般化エンドツーエンドコントラスト損失を使用してもよい。いくつかの例では、トレーニング済みの多言語テキスト依存話者検証TD-SVモデル212は、ユーザ装置102上で実行するのに適した小さなメモリフットプリント(例えば、235キロパラメータ)に関連付けられる。しかし、トレーニング済みの多言語テキスト非依存話者検証TI-SVモデル222は、より計算集約的であるとともに、リモートシステム上で実行するのに適したはるかに大きな容量(例えば、130万パラメータ)を有している。
【0061】
図4は、ハイブリッド多言語テキスト依存およびテキスト非依存話者検証の方法400の動作の配置例のフローチャートを備えている。動作402において、方法400は、ユーザ装置102によってキャプチャ済みの発話119に対応する音声データ120を受信する工程を備えている。発話119は、実行するアクションを指定するクエリが続く、所定ホットワードを備えている。動作404において方法400はさらに、テキスト依存話者検証(TD-SV)モデル212を使用することで、所定ホットワードを特徴付ける音声データ120の第1部分121を処理することによって、ホットワードの発話119の音声特徴を表すテキスト依存(TD)評価ベクトル214を生成する工程を備えている。
【0062】
動作406において、方法400は、1つまたは複数のテキスト依存(TD)信頼度スコア215を生成する工程を備えている。1つまたは複数のテキスト依存(TD)信頼度スコア215は、テキスト依存TD評価ベクトル214が、1つまたは複数のテキスト依存(TD)参照ベクトル252の各々の1つに一致する尤度(可能性)を各々示す。各テキスト依存TD参照ベクトル252は、ユーザ装置102の1人または複数の異なる登録ユーザ10の各々の1人に関連付けられる。方法400はさらに、動作406において、1つまたは複数のテキスト依存TD信頼度スコア215のいずれかが、信頼度閾値を満たすかどうかを判定する工程を備えている。
【0063】
テキスト依存TD信頼度スコア215のうちの1つが信頼度閾値を満たす場合、方法400は、動作408において、信頼度閾値を満たすテキスト依存TD信頼度スコア215に対応するテキスト依存TD参照ベクトル252に関連付けられる各々の登録ユーザ10として、発話119の話者を識別する工程を備えている。方法400はまた、動作410において、ホットワードに続くクエリを特徴付ける音声データ120の第2部分122に対して話者検証を実行することなく、クエリによって指定済みのアクションの実行を開始する工程を備えている。1つまたは複数のテキスト依存TD信頼度スコア215のいずれもが信頼度閾値を満たさない場合、方法400は、動作412において、テキスト非依存話者検証(TI-SV)モデル222を使用することで、クエリを特徴付ける音声データ120の第2部分122を処理することによって、テキスト非依存(TI)評価ベクトル224を生成するように、テキスト非依存話者検証器220に命令を提供する工程を備えている。動作414において、方法400は、テキスト非依存TI評価ベクトル224が1つまたは複数のテキスト非依存(TI)参照ベクトル254の各々の1つに一致する尤度を各々示す、1つまたは複数のテキスト非依存(TI)信頼度スコア225を生成する工程も備えている。各テキスト非依存TI参照ベクトル254は、ユーザ装置102の1人または複数の異なる登録ユーザ10の各々の1人に関連付けられる。動作416において、方法400は、1つまたは複数のテキスト依存TD信頼度スコア215および1つまたは複数のテキスト非依存TI信頼度スコア225に基づき、発話119を発声した話者の識別(アイデンティティ)が、ユーザ装置102の1人または複数の異なる登録ユーザ10のいずれかを備えているかどうかを判定する工程をさらに備えている。
【0064】
図5は、本書に記載されるシステムおよび方法を実施するべく使用され得る例示的なコンピューティング装置500の概略図である。コンピューティング装置500は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータ、などの様々な形態のデジタルコンピュータを表すことを意図している。ここに示される構成要素、それらの接続および関係、ならびにそれらの機能は、例示的なものであることのみを意図しつつ本書に記載されているのであり、および/または特許請求される発明の実施を制限することを意図するものではない。
【0065】
コンピューティング装置500は、プロセッサ510と、メモリ520と、記憶装置(ストレージデバイス)530と、メモリ520および高速拡張ポート550に接続する高速インタフェース/コントローラ540と、および低速バス570およびストレージデバイス530に接続する低速インタフェース/コントローラ560と、を備えている。各構成要素510、520、530、540、550、および560、はさまざまなバスを使用して相互接続されており、共通のマザーボード上に、または適切な他の方法で、実装することができる。プロセッサ510は、高速インタフェース540に結合されたディスプレイ580などの外部入出力デバイス上にグラフィカルユーザインタフェース(GUI)のためのグラフィカル情報を表示するべく、メモリ520または記憶装置530に記憶された命令を備えている、コンピューティング装置500内で実行するための命令を処理することができる。他の実施態様では、複数のプロセッサおよび/または複数のバスは、複数のメモリおよびメモリの種類とともに、適宜使用されてもよい。また複数のコンピューティング装置500は、各装置が必要な動作の一部同士を提供するように互いに接続されてもよい(例えば、サーババンク、ブレードサーバ群、またはマルチプロセッサシステム、として)。プロセッサ510は、ユーザ装置102のデータ処理ハードウェア103またはリモートシステム111のデータ処理ハードウェア113を含む、データ処理ハードウェア510と称される場合がある。メモリ720は、ユーザ装置102のメモリハードウェア107またはリモートシステム111のメモリハードウェア115を含む、メモリハードウェア720と称されることがある。
【0066】
メモリ520は、コンピューティング装置500内で情報を非一時的(非遷移的)に記憶する。メモリ520は、コンピュータ可読媒体、揮発性メモリユニット(複数可)、または不揮発性メモリユニット(複数可)であってよい。不揮発性メモリ520は、コンピューティング装置500によって使用されるプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を一時的または永続的に記憶するべく使用される、物理的デバイスであってよい。不揮発性メモリの例としては、フラッシュメモリ、読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能プログラマブル読み出し専用メモリ(EPROM)/電子消去可能プログラマブル読み出し専用メモリ(EEPROM)(例えば、ブートプログラムなどのファームウェアに通常使用される)が挙げられるが、これらに限定されない。揮発性メモリの例としては、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクやテープ、などがあるが、これらに限定されるものではない。
【0067】
記憶装置(ストレージデバイス530)は、コンピューティング装置500に大容量ストレージを提供することができる。いくつかの実装では、記憶装置530は、コンピュータ読み取り可能な媒体である。様々な異なる実装では、記憶装置530は、フロッピー(登録商標)ディスク装置、ハードディスク装置、光ディスク装置、またはテープ装置、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークまたは他の構成のデバイスを備えているデバイスのアレイ、であってもよい。追加の実施態様では、コンピュータプログラム製品は、情報キャリアに具体化される。コンピュータプログラム製品は、実行されると上述したような1つまたは複数の方法を実行する命令を備えている。情報キャリアは、メモリ520、記憶装置530、またはプロセッサ510上のメモリ、などのコンピュータ機械可読媒体または機械可読媒体である。
【0068】
高速コントローラ540は、コンピューティング装置500の帯域幅集約的な操作を管理する。一方、低速コントローラ560は、低帯域幅集約的な操作を管理する。このような任務の割り当ては、例示的なものに過ぎない。一部の実装では、高速コントローラ540は、メモリ520に、ディスプレイ580(たとえば、グラフィックプロセッサまたはアクセラレータを介して)に、および高速拡張ポート550に、結合されるとともに、さまざまな拡張カード(図示せず)を受け入れることができる。いくつかの実装では、低速コントローラ560は、ストレージデバイス530および低速拡張ポート590に結合される。低速拡張ポート590は、様々な通信ポート(例えば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット(登録商標))を備えているとともに、キーボード、ポインティングデバイス、スキャナ、などの1つまたは複数の入出力デバイスに、またはネットワークアダプタを介してスイッチやルータなどのネットワークデバイスに、結合される。
【0069】
コンピューティング装置500は、図示のように、多数の異なる形態で実装されてもよい。例えばコンピューティング装置500は、標準的なサーバ500aとして、またはそのようなサーバ500aのグループ内の複数回、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として、実装することができる。
【0070】
本明細書で説明するシステムおよび技法の様々な実装は、デジタル電子回路および/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらの様々な実装は、特殊目的であっても汎用目的であってもよく、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信したり、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスにデータおよび命令を送信したり、するように結合された少なくとも1つのプログラマブルプロセッサを備えているプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装を備えていることができる。
【0071】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティング装置にタスクを実行させるコンピュータソフトウェアを指す場合がある。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることがある。アプリケーションの例としては、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワープロアプリケーション、表計算アプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲームアプリケーション、が挙げられるがこれらに限定されない。
【0072】
非一過性(非一時的な)メモリは、コンピューティング装置によって使用されるプログラム(例えば、命令シーケンス)またはデータ(例えば、プログラム状態情報)を一時的または永続的に記憶するべく使用される物理的デバイスであってもよい。非一過性メモリは、揮発性および/または不揮発性のアドレス指定可能な半導体メモリであってもよい。不揮発性メモリの例としては、フラッシュメモリ、リードオンリーメモリ(ROM)/プログラマブルリードオンリーメモリ(PROM)/消去可能プログラマブルリードオンリーメモリ(EPROM)/電子消去可能プログラマブルリードオンリーメモリ(EEPROM)(例えば、ブートプログラムなどのファームウェアに一般的に使用される)が挙げられるが、これらに限定されない。揮発性メモリの例としては、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクやテープ、などがあるが、これらに限定されるものではない。
【0073】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサ用の機械命令を備えており、高レベルの手続き型および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/機械言語で実装され得る。本明細書で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受信する機械可読媒体を含めて、機械命令および/またはデータをプログラマブルプロセッサに提供するべく使用される、任意のコンピュータプログラム製品、非一過性コンピュータ可読媒体、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するべく使用される、あらゆる信号を指す。
【0074】
本明細書で説明する処理および論理フローは、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサが、1つまたは複数のコンピュータプログラムを実行することで、入力データに対して動作するとともに出力を生成することによって機能を実行することで実行することができる。処理および論理フローは、特殊用途の論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても実行できる。コンピュータプログラムの実行に適したプロセッサには、一例として、汎用および特殊用途のマイクロプロセッサが、およびあらゆる種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが、含まれる。一般に、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から、命令とデータを受け取る。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令やデータを格納するための1つまたは複数のメモリ装置と、である。一般に、コンピュータも、データを記憶するための1つまたは複数の大容量記憶装置、例えば磁気ディスク、光磁気ディスク、光ディスク、などを有するか、それらからもデータを受け取るか、データを転送するか、その両方を行なうように動作可能に結合されている。しかし、コンピュータがそのような装置を有している必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体には、あらゆる形態の不揮発性メモリ、媒体およびメモリデバイスが含まれ、例えば、半導体メモリデバイス、例えば、EPROM、EEPROMおよびフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;およびCDROMおよびDVD-ROMディスクが含まれる。プロセッサとメモリは、特別な目的の論理回路によって補足されるか、または特別な目的の論理回路に組み込まれることができる。
【0075】
ユーザとの対話を提供するべく、本開示の1つまたは複数の態様は、ユーザに情報を表示するための例えばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーン、のようなディスプレイ装置と、任意選択で、ユーザがコンピュータに入力を提供することができる例えばマウスまたはトラックボール、のようなキーボードおよびポインティングデバイスと、を有しているコンピュータ上で実施することができる。ユーザとの対話(インタラクション)を提供するために、他の種類のデバイスを使用することもできる。例えば、ユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック、触覚的フィードバック、などの任意の形式の感覚的フィードバックとすることができる。ユーザからの入力は、音響入力、音声入力、触覚入力、などの任意の形式で受信することができる。さらに、コンピュータは、ユーザが使用するデバイスにドキュメントを送信したりデバイスからドキュメントを受信したりすることによって、例えば、ウェブブラウザから受信した要求に応じてユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザとで対話することができる。
【0076】
多くの実施態様を説明してきた。それにもかかわらず、本開示の精神および範囲から逸脱することなく、様々な変更がなされ得ることが理解されるであろう。従って、他の実施態様も以下の特許請求の範囲に含まれる。
図1
図2
図3
図4
図5
【国際調査報告】