(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-10
(45)【発行日】2023-10-18
(54)【発明の名称】音声認識方法及び装置
(51)【国際特許分類】
G10L 15/10 20060101AFI20231011BHJP
G10L 15/18 20130101ALI20231011BHJP
【FI】
G10L15/10 300G
G10L15/18 300Z
(21)【出願番号】P 2022037616
(22)【出願日】2022-03-10
【審査請求日】2022-03-10
(31)【優先権主張番号】202110390219.7
(32)【優先日】2021-04-12
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ジャン、リアオ
(72)【発明者】
【氏名】ツァオ、ユインロウ
(72)【発明者】
【氏名】ジアン、ツェンシャン
(72)【発明者】
【氏名】フ、シャオイン
(72)【発明者】
【氏名】ウェイ、ウェイ
【審査官】大野 弘
(56)【参考文献】
【文献】米国特許出願公開第2018/0349380(US,A1)
【文献】特開2014-119536(JP,A)
【文献】特開2004-219693(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/10
G10L 15/18
(57)【特許請求の範囲】
【請求項1】
音声認識方法であって、
音声認識モデルが認識対象音声に対して出力する認識スコアにおける上位N個の候補認識結果を取得するステップであって、前記Nは1より大きい正の整数であるステップと、
候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するステップと、
前記候補認識結果の認識スコアと類似度スコアを統合し、前記N個の候補認識結果から前記認識対象音声に対応する認識結果を決定するステップと、
予めにトラフィックに基づいて人気エンティティを統計し、人気エンティティリストを生成するステップと
前記人気エンティティリストをツリー構造で記憶し、エンティティリソースツリーを取得するステップと、を含み、
前記エンティティリソースツリー内のノードは人気エンティティ内のワードであり、ノード間のエッジはワード間の順序関係であり、前記エンティティリソースツリーに各ノードの発音がラベリングされ、ラベリングされた各ノードの発音は候補認識結果に類似度スコアリングするために用いられる、
音声認識方法。
【請求項2】
前記エンティティリソースツリーをローディングして予め設定された範囲内のユーザの音声認識に作用するステップをさらに含む、
請求項
1に記載の音声認識方法。
【請求項3】
前記候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するステップは、
前記N個の候補認識結果それぞれについて、類似度計算モデルを使用して候補認識結果と各人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて当該候補認識結果の類似度スコアを決定することを実行するステップを含む、
請求項
1に記載の音声認識方法。
【請求項4】
前記候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するステップは、
前記N個の候補認識結果それぞれについて、
候補認識結果をエンティティリソースファジイツリー上でマッチングすることであって、前記エンティティリソースファジイツリーは、前記エンティティリソースツリーで各ノードの類似する発音を拡張してラベリングすることによって取得されることと、
マッチング可能である場合、類似度計算モデルを使用して当該候補認識結果とマッチングして取得した人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて当該候補認識結果の類似度スコアを決定し、それ以外の場合、当該候補認識結果の類似度スコアを0と決定することと、を実行することを含む
請求項
1に記載の音声認識方法。
【請求項5】
前記候補認識結果の認識スコアと類似度スコアを統合し、前記N個の候補認識結果から前記認識対象音声に対応する認識結果を決定するステップは、
前記候補認識結果の認識スコアと類似度スコアを重み付け加算し、前記N個の候補認識結果の最終スコアを取得するステップと、
前記最終スコアを使用して前記認識対象音声に対応する認識結果を決定するステップと、を含む、
請求項1に記載の音声認識方法。
【請求項6】
前記人気エンティティは、トラフィックに基づいて統計された人気興味ポイント(POI)または人気場所を含む、
請求項1~
5のいずれか一項に記載の音声認識方法。
【請求項7】
音声認識装置であって、
音声認識モデルが認識対象音声に対して出力する認識スコアにおける上位N個の候補認識結果を取得するための候補取得ユニットであって、前記Nは1より大きい正の整数である候補取得ユニットと、
候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するための類似度スコアリングユニットと、
前記候補認識結果の認識スコアと類似度スコアを統合し、前記N個の候補認識結果から前記認識対象音声に対応する認識結果を決定するための結果決定ユニットと、
予めにトラフィックに基づいて前記人気エンティティを統計して、人気エンティティリストを生成するためのエンティティ統計ユニットと、
前記人気エンティティリストをツリー構造で記憶し、エンティティリソースツリーを取得するためのリソース記憶ユニットとを含み、
前記エンティティリソースツリー内のノードは人気エンティティ内のワードであり、ノード間のエッジはワード間の順序関係であり、前記エンティティリソースツリーに各ノードの発音がラベリングされ、ラベリングされた各ノードの発音は候補認識結果に類似度スコアリングするために用いられる、
音声認識装置。
【請求項8】
前記エンティティリソースツリーをローディングして予め設定された範囲内のユーザの音声認識に作用するためのリソースローディングユニットをさらに含む、
請求項
7に記載の音声認識装置。
【請求項9】
前記類似度スコアリングユニットは、
前記N個の候補認識結果それぞれについて、類似度計算モデルを使用して候補認識結果と各人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて当該候補認識結果の類似度スコアを決定することを実行する、
請求項
7に記載の音声認識装置。
【請求項10】
前記類似度スコアリングユニットは、前記N個の候補認識結果それぞれについて、
候補認識結果をエンティティリソースファジイツリー上でマッチングすることであって、前記エンティティリソースファジイツリーは、前記エンティティリソースツリーで各ノードの類似する発音を拡張してラベリングすることによって取得されることと、
マッチング可能である場合、類似度計算モデルを使用して当該候補認識結果とマッチングして取得した人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて当該候補認識結果の類似度スコアを決定し、それ以外の場合、当該候補認識結果の類似度スコアを0と決定することと、を実行する、
請求項
7に記載の音声認識装置。
【請求項11】
前記結果決定ユニットは、
前記候補認識結果の認識スコアと類似度スコアを重み付け加算し、前記N個の候補認識結果の最終スコアを取得し、前記最終スコアを使用して前記認識対象音声に対応する認識結果を決定するために用いられる、
請求項
7に記載の音声認識装置。
【請求項12】
前記人気エンティティは、トラフィックに基づいて統計された人気興味ポイント(POI)または人気場所を含む、
請求項
7~11のいずれか一項に記載の音声認識装置。
【請求項13】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~
6のいずれかの一つに記載の音声認識方法を実行する、
電子機器。
【請求項14】
コンピュータ
プログラムが記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ
プログラムは、コンピュータに請求項1~
6のいずれかの一つに記載の音声認識方法を実行させる、
コンピュータ
プログラムが記憶されている非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項15】
プロセッサによって実行される時に請求項1~
6のいずれかの一つに記載の音声認識方法を実現する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータアプリケーション技術の分野に関し、特に、音声和深層学習技術の分野に関する。
【背景技術】
【0002】
ここ数十年で、音声認識技術は著しい進歩を遂げ、工業、家電、通信、自動車用電子機器、医療、家庭サービス、消費電子製品などの各分野に徐々に進出する。従来の音声認識アーキテクチャでは、
図1に示すように、デコーダは、音声認識モデルにおける音響モデルを用いて音声から音節への確率計算を行い、音声認識モデルにおける言語モデルを用いて音節からテキストへの確率計算を行い、確率スコアが最も高いテキストを音声認識結果として最終的に出力する。
【0003】
しかし、いくつかの垂直分野または専門分野の音声認識シナリオでは、いくつかの特定のエンティティが通常の意味論理とは異なるため、認識精度が低い。
【発明の概要】
【発明が解決しようとする課題】
【0004】
これに鑑みて、本開示は、認識精度を向上させるための音声認識方法及び装置を提供する。
【課題を解決するための手段】
【0005】
本開示の第1の態様によれば、音声認識方法を提供し、前記音声認識方法は、
音声認識モデルが認識対象音声に対して出力する認識スコアにおける上位N個の候補認識結果を取得するステップであって、前記Nは1より大きい正の整数であるステップと、
候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するステップと、
前記候補認識結果の認識スコアと類似度スコアを統合し、前記N個の候補認識結果から前記認識対象音声に対応する認識結果を決定するステップと、を含む。
【0006】
本開示の第2の態様によれば、音声認識装置を提供し、前記音声認識装置は、
音声認識モデルが認識対象音声に対して出力する認識スコアにおける上位N個の候補認識結果を取得するための候補取得ユニットであって、前記Nは1より大きい正の整数である候補取得ユニットと、
候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングして、各候補認識結果の類似度スコアを取得するための類似度スコアリングユニットと、
前記候補認識結果の認識スコアと類似度スコアを統合し、前記N個の候補認識結果から前記認識対象音声に対応する認識結果を決定するための結果決定ユニットと、を含む。
【0007】
本開示の第3の態様によれば、電子機器を提供し、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記の方法を実行する。
【0008】
本開示の第4の態様によれば、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、前記コンピュータに上記の方法を実行させる。
【0009】
本開示の第5の態様によれば、コンピュータプログラム製品は、コンピュータプログラムを含み、前記コンピュータプログラムがプロセッサによって実行される時に上記の方法を実現する。
【0010】
上記の技術的解決策から分かるように、音声認識モデルが候補認識結果に対する認識スコアを取得することに基づいて、候補認識結果と予め収集された人気エンティティの発音類似度を各候補結果に対するスコアリングに組み込み、スコアリングとエンティティスコアを統合して最終的な認識結果を決定して、最終的な認識結果が可能な限り発音上で人気エンティティと類似するようにして、認識精度を向上させる。
【0011】
本明細書で説明された内容は、本開示の実施例のキーまたは重要な特徴を特定することを意図しておらず、本開示の範囲を制限するものでもないことを理解されたい。本開示の他の特徴は、以下の明細書を通じて容易に理解できる。
【図面の簡単な説明】
【0012】
図面は、本出願をより良く理解するためのものであり、本出願を限定しない。
【
図1】従来技術における音声認識方法の概略図を示す。
【
図2】本発明の実施例の音声認識方法または装置に適用できる例示的なシステムアーキテクチャを示す。
【
図3】本開示の実施例により提供される音声認識方法のフローチャートである。
【
図4a】本開示の実施例により提供されるエンティティリソースツリーの例示的な図である。
【
図4b】本開示の実施例により提供されるエンティティリソースファジイツリーの例示的な図である。
【
図5】本開示の実施例により提供される音声認識方法の概略図である。
【
図6】本開示の実施例により提供される音声認識装置の構造図である。
【
図7】本開示の実施例を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】
以下、図面に基づいて、本出願の例示な実施例を説明する。理解を容易にするために、本出願の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本出願の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識できるはずである。同様に、簡明のために、以下の説明では、よく知られた機能と構造の説明は省略される。
【0014】
図2は本発明の実施例の音声認識方法または装置に適用できる例示的なシステムアーキテクチャを示す。
【0015】
図2に示すように、当該システムアーキテクチャは、端末デバイス201および202、ネットワーク203、およびサーバ204を含むことができる。ネットワーク203は、端末デバイス201、202とサーバ204との間の通信リンクのための媒体を提供する。ネットワーク203は、有線、無線通信リンク、または光ファイバケーブルなどの様々な接続タイプを含むことができる。
【0016】
ユーザは、端末デバイス201および202を使用してネットワーク203を介してサーバ204とインタラクションすることができる。端末デバイス201および202には、音声インタラクションアプリケーション、地図類アプリケーション、ウェブブラウザアプリケーション、通信類アプリケーションなどの様々なアプリケーションがインストールされてもよい。
【0017】
端末デバイス201および202は音声放送をサポートする様々な電子機器であってもよい。スマートフォン、タブレット、ノートパソコン、スマートウェアラブルデバイスなどが含まれるが、これらに限定されない。本出願により提供される放送音声を生成する装置は、上記のサーバ204に設置して実行することができ、端末デバイス201および202に設置して実行することもできる。複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために)として実現することができ、単一のソフトウェアまたはソフトウェアモジュールとして実現することもでき、ここでは具体的に限定しない。
【0018】
例えば、音声認識装置は、上記のサーバ204側に設置されて実行されると、ユーザは端末デバイス201を介して音声要求を入力し、端末デバイス201によって音声要求をサーバ204に送信する。サーバ204は本開示の実施例により提供される方式を使用して音声認識を行った後に音声認識結果を取得し、当該音声認識結果に基づいて応答する。例えば、音声認識結果を端末デバイス201に返し、ユーザに表示する。さらに、例えば、音声認識結果に基づいてその中に含まれる命令などを実行する。また、サーバ204側は、本開示の実施例により提供される音声認識モデルをトレーニングする装置が設置されていることもでき、音声認識モデルを予めにトレーニングして上記の音声認識を行う。
【0019】
サーバ204は、単一のサーバであってもよく、複数のサーバによって構成されるサーバグループであってもよい。
図1の端末デバイス、ネットワーク及びサーバの数は単なる例示的なものであることを理解することができる。実現ニーズに応じて、任意の数を有する端末デバイス、ネットワーク及びサーバであってもよい。
【0020】
図3は本開示の実施例により提供される音声認識方法のフローチャートである。当該装置は、サーバ側のアプリケーションに位置するか、またはサーバ側のアプリケーション内のプラグインまたはソフトウェア開発キット(Software Development Kit、SDK)などの機能ユニットに位置することもできるか、または、強い計算能力を有するコンピュータ端末に位置することもでき、本発明の実施例はこれについて特に限定しない。
図3に示すように、当該方法は、以下のようなステップを含むことができる。
ステップ301:音声認識モデルが認識対象音声に対して出力する認識スコアの上位N個の候補認識結果を取得し、Nは1より大きい正の整数である。
【0021】
ステップ302:候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングし、各候補認識結果の類似度スコアを取得する。
【0022】
ステップ303:候補認識結果の認識スコアと類似度スコアを統合し、上記のN個の候補認識結果から認識対象音声に対応する認識結果を決定する。
【0023】
図3に示す実施例から分かるように、音声認識モデルが候補認識結果に対する認識スコアを取得することに基づいて、候補認識結果と予め収集された人気エンティティの発音類似度を各候補結果に対するスコアリングに組み込み、スコアリングとエンティティスコアを統合して最終的な認識結果を決定して、最終的な認識結果が可能な限り発音上で人気エンティティと類似するようにして、認識精度を向上させる。
【0024】
本開示により提供される上記の音声認識の方法は、様々な分野に適用することができ、したがって、上記の人気エンティティは、分野に対応する特定のタイプの人気エンティティであってもよい。例えば、地図類応用分野、すなわち上記の人気エンティティは、POIまたは場所などの特定のタイプであってもよい。さらに、例えば、医療類応用分野、すなわち上記の人気エンティティは、病気、薬品などの特定のタイプであってもよい。上記の方法の理解を容易にするために、以下の実施例は、地図類応用分野を例として説明する。
【0025】
以下は実施例を組み合わせて上記の実施例の各ステップを詳細に説明する。
【0026】
まず、上記のステップ301では、本開示は、音声認識モデルの処理に対して修改及び影響を一切与えることなく、デコーダは、依然として音響モデルと言語モデルを使用して候補認識結果と各候補認識結果の認識スコアを取得する。
【0027】
その中、認識スコアに従って各候補認識結果をソートし、上位N個の候補認識結果を選択することができる。Nは1より大きい正の整数である。
【0028】
この部分の内容に鑑みて本実施例は変更されていないので、ここでは詳細に説明しない。
【0029】
例えば、ユーザが場所を含む音声要求「鼓楼大街にナビゲーション」を入力した後、ユーザ発音、環境などの要因の影響により、デコーダの認識結果は必ずしも正確ではない可能性がある。例えば、音声認識モデルを使用して当該音声要求を認識した後、認識スコアが上位3つである認識結果:「古龍大街にナビゲーション」、「鼓楼大街にナビゲーション」、及び「胡楼大街にナビゲーション」を取得する。従来の実現方式を使用して第1番目の認識結果を直接に選択する場合、認識結果が正しくないことが分かる。
【0030】
以下は実施例を組み合わせて上記のステップ302、すなわち「候補認識結果と予め収集された特定のタイプの人気エンティティの発音類似度に基づいて、前記N個の候補認識結果をそれぞれスコアリングし、各候補認識結果の類似度スコアを取得する」を詳細に説明する。
【0031】
まず、本開示の実施例では、特定のタイプの人気エンティティを予め収集する。現在の各分野のエンティティが人気であるかどうかは、ほとんどトラフィックに基づいて判断するため、トラフィックに基づいて特定のタイプの人気エンティティを統計し、人気エンティティリストを生成することができる。その中、上記のトラフィックは、ユーザが実地に訪問することによって生成された人的トラフィックであってもよく、ユーザがオンラインで訪問または要求などをすることによって生成されたトラフィックであってもよい。
【0032】
地図類応用分野の場所を例とし、まず、ユーザが実地に訪問することによって生成された人的トラフィックに基づいて多くの人気場所を統計することができる。例えば、人的トラフィックに基づいて人的トラフィックが予め設定された人的トラフィック閾値を超える人気場所を統計するか、または人的トラフィックが前の予め設定された数量にある人気場所を統計することができる。さらに、人的トラフィックに基づいて統計された人気場所内の各人気場所に対する要求を統計し、要求トラフィックが予め設定された要求トラフィック閾値を超えた人気場所を統計するか、または要求トラフィックが前の予め設定された数量にある人気場所を統計することもできる。統計された人気場所は人気場所リストを形成する。
【0033】
上記の場所に基づく統計は、トラフィックを基準としてのみ使用し、任意のユーザのプライバシー情報を取得する必要がなく、ユーザプライバシーをよく保護する前提の下で、後続に「人気場所」をベースとする個性化に基礎を提供することができる。トラフィックの大きい場所に対する音声認識の最適化を重点に実現し、多数のユーザのニーズをより容易に満たすことができる。
【0034】
さらに、医学系応用分野を例とし、トラフィック(例えば、検索量、訪問量、ニュースにおけるキーワードとする出現量など)に基づいて統計した後、トラフィックが予め設定されたトラフィック閾値を超える人気病気または薬品を取得することができる。例えば、ロバスタチン、フミラ、セリドなどである。
【0035】
さらに、エンターテインメント系応用分野を例とし、トラフィック(例えば、検索量、訪問量、ニュースにおけるキーワードとする出現量など)に基づいて統計した後、トラフィックが予め設定されたトラフィック閾値を超える人気番組、人気スター、人気イベントなどを取得することができる。例えば、毎日、毎週、毎月などのエンターテインメントのホットワードランキングから上記の人気エンティティを取得することができる。
【0036】
また、好ましい実施形態として、上記の人気エンティティリストをツリー構造で記憶し、エンティティリソースツリーを取得することができる。その中、エンティティリソースツリーでは、各ノードは人気エンティティ内のワードであり、ノード間のエッジはワード間の順序関係であり、また、本開示の候補認識結果に対して行う類似度スコアリングは、発音類似度に基づいているため、エンティティリソースツリーに各ノードの発音がラベリングされている。
【0037】
簡単な例を挙げると、人気場所リストに以下の人気場所「北京海淀公園」、「北京海淀大厦」、及び「北京鼓楼大街」が存在すると仮定すると、形成されたエンティティリソースツリーは、
図4aに示すことができる。エンティティリソースツリーにおける各ノードに対する発音ラベリングは、ピンインの形式を使用する。ピンイン以外、他の発音ラベリング方式を使用することもできる、ここでは制限しない。
【0038】
上記のエンティティリソースツリーから分かるように、同じプレフィックスのエンティティについては、実際に同じプレフィックス部分に対して一回だけ記憶すればよく、すなわちプレフィックスを結合し、メモリを節約する。また、ツリー構造は、クエリマッチングを行うプロセスでより迅速に応答することができる。
【0039】
上記で形成されたエンティティリソースツリーについて、サーバ側またはクラウド側でローディングする時、それを予め設定された範囲内のユーザの音声認識に作用することができる。例えば、場所リソースツリーについて、距離が場所から予め設定された距離範囲内(例えば、5km)のユーザの音声認識に作用することができる。
【0040】
好ましい実施形態として、N個の候補認識結果をスコアリングする時、以下の2つのレベルのスコアリング法を使用して各候補認識結果をそれぞれスコアリングすることができ、
第1のレベルは、類似度を予め判定する。候補認識結果をエンティティリソースファジイツリー上でマッチングし、マッチングできない場合、当該候補認識結果の類似度スコアを0と直接に決定することができ、マッチングできる場合、第2のレベルのスコアリング処理を継続に行うことができる。
【0041】
その中、エンティティリソースファジイツリーは、エンティティリソースツリーを拡張した後に取得される。拡張の方式は、エンティティリソースツリー上でノードの類似する発音を拡張してラベリングし、当該類似する発音の拡張は、主に予め設定された規則に基づく。実際にノードのラベリング発音に対して「模糊」処理を行って、類似する発音をマッチングする時に微細な差異を許容することができる。上記の予め設定された規則は、主に、前後の鼻音の拡張、声調の拡張、音韻母の拡張などを含む。
【0042】
依然として、
図4aを例とし、例えば、あるユーザの発音は、前後の鼻音上で正確に把握できない可能性があるため、「京」にラベリングされた発音を「jin」に拡張することができる。さらに、例えば、あるユーザの発音は、声母または韵母上で正確に把握できない可能性があり、例えば、「l」と「n」が区別できないため、「楼」にラベリングされた発音を「nou」に拡張することができる。例えば、「ou」と「ong」が区別できないため、「楼」にラベリングされた発音を 「long」に拡張することができる。さらに、例えば、あるユーザは、いくつかのワードの認識に差異が存在する可能性があるため、多くのユーザは、「厦」を「xia」に読むため、「厦」にラベリングされた発音を「xia」に拡張することができる。そうすると、
図4bに示すエンティティリソースファジイツリーが拡張される。
【0043】
候補認識結果について、例えば、「古龍大街にナビゲーション」、「鼓楼大街にナビゲーション」、及び「胡楼大街にナビゲーション」である。上記のエンティティリソースファジイツリーとマッチングした後、「古龍大街にナビゲーション」、および「鼓楼大街にナビゲーション」は、すべてエンティティリソースファジイツリー上で発音に基づいてマッチングすることができ、「胡楼大街にナビゲーション」は、エンティティリソースファジイツリー上で発音に基づいてマッチングすることができない。したがって、「胡楼大街にナビゲーション」の類似度スコアを0と決定することができ、「古龍大街にナビゲーション」、および「鼓楼大街にナビゲーション」は、第2のレベルのスコアリング処理に送信する。
【0044】
第2のレベルは、類似度計算モデルを使用してスコアリングする。類似度計算モデルを使用して候補認識結果とマッチングして取得した人気エンティティとの発音類似度の最大値を計算し、当該最大値を候補認識結果の類似度スコアとする。
【0045】
上記の例に続いて、候補認識結果「古龍大街にナビゲーション」と「鼓楼大街にナビゲーション」に対して第2のレベルのスコアリングをそれぞれ行う。
【0046】
「鼓楼大街にナビゲーション」を例とし、エンティティリソースファジイツリー上でマッチングして2つの人気エンティティを取得し、1つは「鼓楼大街」であり、もう1つは「葫芦大街」であると仮定する。類似度計算モデルを使用して候補認識結果とマッチングして取得したこの2つの人気エンティティの発音類似度を計算し、「鼓楼大街にナビゲーション」は、「鼓楼大街」との発音類似度が100%であり、「葫芦大街」との発音類似度が60%であり、そうすると、最大値100%に基づいて当該候補認識結果「鼓楼大街にナビゲーション」の類似度スコアが100点(百分位数制を仮定する)であると決定する。同様の方式に基づいて「古龍大街にナビゲーション」に対してその類似度スコアを決定することもできる。
【0047】
類似度計算モデルによって、実際には発音類似度が正確に計算され、当該類似度計算モデルは、すべての人気エンティティ共通のモデルである。
【0048】
類似度計算モデルは、任意の2つのテキスト間の発音類似度を計算できるモデルを使用することができる。発音が類似することと類似しない人気場所ペア(2つの人気場所を含む)を発音類似度スコアのラベリングを予めに行って、トレーニングデータとしてトレーニング類似度モデルを計算することもできる。
【0049】
上記の2つのレベルのスコアリングのモードで、第1のレベル類似度の予め判定プロセスでマッチングできない場合、後続の類似度計算モデルに基づくスコアリングを行われないため、類似度計算モデルの計算回数を削減する。しかし、1つレベルのスコアリングのモードのみを使用し、すなわち第1のレベルのスコアリングを実行せず、各候補認識結果に対して上記の第2のレベルの類似度計算モデルに基づくスコアリングを直接実行し、すなわち類似度計算モデルを直接使用して候補認識結果と各人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて候補認識結果の類似度スコアのステップリングを決定することによって、実現することもできるが、2つのレベルのスコアリングのモードより効率的に及ばない。
【0050】
また、第2のレベルのスコアリングプロセスでは、ただ、第1のレベル類似度によって予め判定された候補認識結果と第1のレベル類似度の予め判定プロセスで模糊マッチングして取得したいくつかの人気エンティティのみを計算する必要があるため、元の候補認識結果とすべての人気エンティティと類似度計算を行う必要があるプロセスを、当該いくつかの人気エンティティのみと類似度計算を行うプロセスに簡略化するため、計算量を大幅に削減する。
【0051】
以下は、上記のステップ303、すなわち「候補認識結果の認識スコアと類似度スコアを統合し、上記のN個の候補認識結果から認識対象音声に対応する認識結果を決定する」を詳細に説明する。
【0052】
本ステップでは、候補認識結果の認識スコアと類似度スコアを重み付け加算し、N個の候補認識結果の最終スコアを取得し、次に、最終スコアを使用して認識対象音声に対応する認識結果を決定することができる。
【0053】
その中、上記の重み付け加算処理を行う時に使用される重みは、経験値であってもよいし、実験値であってもよい。
【0054】
最終スコアを使用して認識対象音声に対応する認識結果を決定する時、1つの認識結果のみを出力した場合、最終スコアが最も高い候補認識結果を認識対象音声に対応する認識結果とすることができる。M個の認識結果を出力できる場合、最終スコアの順序に従って前M個の認識結果を出力することができ、M≦Nである。
【0055】
上記の例に続いて、ステップ301では、音声認識モデルによって取得された認識スコアが上位3つである認識結果:「古龍大街にナビゲーション」、「鼓楼大街にナビゲーション」、及び「胡楼大街にナビゲーション」は、発音類似度に基づくスコアリングを経た後、「鼓楼大街にナビゲーション」が人気場所リスト内の場所「鼓楼大街」と発音上で類似度が最も高いため、「鼓楼大街にナビゲーション」に対する類似度スコアは、「古龍大街にナビゲーション」と「胡楼大街にナビゲーション」より大幅に高い。このように、認識スコアと類似度スコアに対して重み付け加算を行った後、「鼓楼大街にナビゲーション」の最終スコアが高くなり、最終的に取得された認識結果の精度を向上させる。
【0056】
図5に示すように、類似度スコアリングユニット(上記の発音類似度に基づくスコアリングを実行するために使用される)は、音声認識プロセスでデコーダの処理プロセスに対して介入せず、デコーダによって出力された候補認識結果に対して最終スコアの調整を行う。
【0057】
以上は、本開示により提供される方法に対して行われる詳細な説明であり、以下は、実施例を組み合わせて本開示により提供される装置を詳細に説明する。
【0058】
図6は本開示の実施例により提供される音声認識装置の構造図である。
図6に示すように、当該装置600は、候補取得ユニット601、類似度スコアリングユニット602、及び結果決定ユニット603を含むことができ、エンティティ統計ユニット604、リソース記憶ユニット605、及びリソースローディングユニット606をさらに含むことができる。各構成ユニットの主な機能は以下のようになり、
候補取得ユニット601は、音声認識モデルが認識対象音声に対して出力する認識スコアの上位N個の候補認識結果を取得するために用いられ、Nは1より大きい正の整数である。
【0059】
類似度スコアリングユニット602は、候補認識結果と予め収集された人気エンティティとの発音類似度に基づいて、N個の候補認識結果をそれぞれスコアリングし、各候補認識結果の類似度スコアを取得するために用いられる。
【0060】
結果決定ユニット603は、候補認識結果の認識スコアと類似度スコアを統合し、N個の候補認識結果から認識対象音声に対応する認識結果を決定するために用いられる。
【0061】
エンティティ統計ユニット604は、予めにトラフィックに基づいて人気エンティティを統計し、人気エンティティリストを生成するために用いられる。
【0062】
リソース記憶ユニット605は、人気エンティティリストをツリー構造で記憶し、エンティティリソースツリーを取得するために用いられ、エンティティリソースツリー内のノードは人気エンティティ内のワードであり、ノード間のエッジはワード間の順序関係であり、エンティティリソースツリーに各ノードの発音がラベリングされている。
【0063】
リソースローディングユニット606は、エンティティリソースツリーをローディングして予め設定された範囲内のユーザの音声認識に作用するために用いられる。
【0064】
実現可能な方式として、上記の類似度スコアリングユニット602は、N個の候補認識結果について、以下の内容をそれぞれ実行することができ、前記内容は、類似度計算モデルを使用して候補認識結果と各人気エンティティとの発音類似度の最大値を計算し、当該最大値を当該候補認識結果の類似度スコアとする。
【0065】
好ましい実施形態として、上記の類似度スコアリングユニット602は、N個の候補認識結果について、以下の内容をそれぞれ実行することができ、前記内容は、
候補認識結果をエンティティリソースファジイツリー上でマッチングし、エンティティリソースファジイツリーは、エンティティリソースツリーで各ノードの類似する発音を拡張してラベリングすることによって取得され、
マッチング可能である場合、類似度計算モデルを使用して当該候補認識結果とマッチングして取得した人気エンティティとの発音類似度の最大値を計算し、当該最大値に基づいて当該候補認識結果の類似度スコアを決定し、それ以外の場合、当該候補認識結果の類似度スコアを0と決定する。
【0066】
実現可能な方式として、上記の結果決定ユニット603は、候補認識結果の認識スコアとエンティティスコアに対して重み付け加算を行い、N個の候補認識結果の最終スコアを取得し、最終スコアを使用して認識対象音声に対応する認識結果を決定することができる。
【0067】
その中の1つの典型的な応用シナリオとして、人気エンティティは、トラフィックに基づいて統計された人気関心ポイントPOIまたは人気場所を含むことができる。
【0068】
それ以外、他のシナリオに適用することもでき、例えば、医学系分野の人気病気、人気薬品、エンターテインメント系分野のホット検索イベント、人気スター、人気番組などである。
【0069】
本明細書の各実施例は、すべて漸進的な方式を使用して説明し、各実施例間の同一および類似の部分は、互いに参照すればよく、各実施例は、すべて他の実施例との違いについて重点的に説明する。特に、装置の実施例は、方法の実施例に基本的に類似するため、説明は比較的に簡単であり、関連するところは、方法の実施例の部分の説明を参照すればよい。
【0070】
本開示の実施例によれば、本開示は、電子機器、読み取り可能な記憶媒体、及びコンピュータプログラム製品をさらに提供する。
【0071】
図7に示すように、本開示の実施例に係る音声認識方法または音声認識モデルのトレーニング方法の電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様の計算デバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0072】
図7に示すように、機器700は計算ユニット701を含み、計算ユニット701は、読み取り専用メモリ(ROM)702に記憶されているコンピュータプログラムまたは記憶ユニット708からランダムアクセスメモリ(RAM)703にローディングされたコンピュータプログラムに基づいて、様々な適切な動作と処理を実行することができる。RAM703には、機器700が動作するに必要な様々なプログラムとデータも記憶することができる。計算ユニット701、ROM702、およびRAM703は、バス704を介してお互いに接続される。入出力(I/O)インターフェース705もバス704に接続される。
【0073】
機器700内の複数のコンポーネントは、I/Oインターフェース705に接続されており、キーボード、マウスなどの入力ユニット706と、様々なタイプのディスプレイ、スピーカなどの出力ユニット307と、ディスク、光ディスクなどの記憶ユニット708と、およびネットワークカード、モデム、無線通信トランシーバなどの通信ユニット709と、を含む。通信ユニット709は、機器700が、インターネットなどのコンピュータネットワーク、および/または様々な電気通信ネットワークを介して他の機器と情報/データを交換することを可能にする。
【0074】
計算ユニット701は、様々な処理と計算能力を備える汎用および/または専用の処理コンポーネントである。計算ユニット701のいくつかの例は、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、様々な機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)、および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット701は、音声認識方法または音声認識モデルのトレーニング方法などの上記の様々な方法と処理を実行する。例えば、いくつかの実施例では、音声認識方法または音声認識モデルのトレーニング方法は、記憶ユニット708などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現することができる。
【0075】
いくつかの実施例では、コンピュータプログラムの一部または全部は、ROM702および/または通信ユニット709を介して機器700にローディングおよび/またはインストールされる。コンピュータプログラムがRAM703にローディングされて計算ユニット701によって実行される場合、上記の音声認識方法または音声認識モデルのトレーニング方法の一つまたは複数のステップを実行することができる。代替的に、他の実施例では、計算ユニット701は、他の任意の適切な方式(例えば、ファームウェアによって)を介して音声認識方法または音声認識モデルのトレーニング方法を実行するように構成されることができる。
【0076】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SOC)、ローディングプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0077】
本開示の方法を実施するためのプログラムコードは、一つまたは複数のプログラミング言語の任意の組み合わせを使用して作成することができる。これらのプログラムコードは、プログラムコードがプロセッサまたはコントローラによって実行される時にフローチャートおよび/またはブロック図に規定された機能/動作が実施されるように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサまたはコントローラに提供することができる。プログラムコードは、完全に機械上で実行されたり、部分的に機械上で実行されたり、独立したソフトウェアパッケージとして部分的に機械上で実行され、部分的にリモート機械上実行されたり、または完全にリモート機械またはサーバ上で実行されたりすることができる。
【0078】
本開示の文脈において、機械読み取り可能な媒体は、命令実行システム、装置、または機器の使用、または命令実行システム、装置または機器と組み合わせて使用するプログラムを含むか、または記憶することができる有形の媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線、または半導体システム、装置または機器、または上記の内容の任意の適切な組み合わせを含むが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、一つまたは複数のワイヤに基づく電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM またはフラッシュメモリ(登録商標))、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶装置、磁気記憶装置、または上記の内容の任意の適切な組み合わせを含む。
【0079】
ユーザとのインタラクションを提供するために、コンピュータ上においてここで説明されているシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0080】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0081】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上において実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。サーバは、クラウドサーバであってもよく、クラウド計算またはクラウドホストとも呼ばれ、クラウド計算サービスシステムの中の一つのホスト製品であり、従来の物理ホストと仮想プライベートサーバ(VPs、Virtual Private Server)サービスに、存在する管理困難度が高く、業務拡張性が弱い欠陥を解決する。サーバは、分散システムのサーバであってもよく、またはブロックチェーンを組み合わせるサーバであってもよい。
【0082】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0083】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。