(58)【調査した分野】(Int.Cl.,DB名)
前記最適な候補テキストが予め設定された前記条件を満たさない場合、修正対象の前記音声認識結果を変更せずに保つステップを更に含む請求項1から請求項3のいずれかに記載の音声認識結果の修正方法。
前記最適な候補テキストが予め設定された前記条件を満たさない場合、修正対象の前記音声認識結果を変更せずに保つための保持モジュールを更に備える請求項5または6に記載の音声認識結果の修正装置。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態について詳細に説明し、実施形態の一例が添付の図面に示されている。全文において同じ又は類似の参照符号は同じ又は類似の要素を表す。下記の参照図面による説明の実施形態は例示であり、本発明の説明のみに用いられ、本発明に対する限定と理解されるものではない。その反面、本発明の実施形態は、付加要求の範囲の精神と意味の範囲内に属する全ての変化、修正及び同等物を含む。
【0016】
図1は、本出願の一実施形態により提供される音声認識結果の修正方法のフローチャートである。
【0017】
図1を参照する。本実施形態に係る方法は、以下のS11〜S14のようなステップを含む。
【0018】
S11は、修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得する。
【0019】
ここで、音声認識を介して音声認識結果を取得した後、従来技術または将来の技術により、音声認識結果において存在可能な誤りを検出し、存在可能な誤りを修正対象の音声認識結果とする。
【0020】
修正対象の音声認識結果は、テキストであるため、テキストをピンイン標記することにより、修正対象の音声認識結果のピンイン標記を完成し、修正対象の音声認識結果に対応するピンインを取得する。
【0021】
具体的には、修正対象の音声認識結果は漢字からなる文であり、対応のピンインはトーンのない中国語ピンイン文字列を意味する。
【0022】
例えば、修正対象の音声認識結果は、「窩要去外灘」であり、対応のピンインは、woyaoquwaitanである。
【0023】
S12は、ピンインに基づいて候補テキストを取得し、候補テキストにおいて、最適な候補テキストを決定する。
【0024】
ここで、ピンインを入力内容として、発音辞書によりデコードネットワークを確立し、さらに言語モデルによりデコードネットワークにおける各パスのスコアを算出する。その後、最高スコアであるN(設置可能)本パスを選択し、選択された各パスに対応するテキストを一個の候補テキストとし、N個の候補テキストを取得する。
【0025】
最適な候補テキストは、最高スコアである一本のパスに対応するテキストを意味する。
【0026】
S13は、最適な候補テキストが予め設定された条件を満たすか否かを判断する。
【0027】
必要に応じて、予め設定された条件を設けることができる。例えば、最適な候補テキストと2番目に適した候補テキストとを対比することや、最適な候補テキストと修正対象の音声認識結果とを対比することや、N−gramのバックオフ回数などの条件を設けることができる。具体的な内容は、以下の説明を参照する。
【0028】
S14は、予め設定された条件を満たす場合に、最適な候補テキストを修正対象の音声認識結果の修正結果と決定する。
【0029】
もう一つの側面において、最適な候補テキストが予め設定された条件を満たさない場合には、修正対象の音声認識結果を変更せずに保つ。即ち、修正を行わない。
【0030】
本実施形態において、修正対象の音声認識結果をピンイン標記し、かつピンインに基づいて候補テキストを取得し、及び最適な候補テキストが予め設定された条件を満たす場合、最適な候補テキストを修正結果とするため、ピンイン入力法に基づいて、音声認識結果に対する修正を実現することができ、修正結果の正確度を向上させることを実現できる。
【0031】
図2は、本発明の他の実施形態により提供される音声認識結果の修正方法のフローチャートである。
【0032】
図2を参照する。本実施形態のフローチャートは、以下のS201〜S211のようなステップを含む。
【0033】
S201は、修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得する。
【0034】
S202は、共通の言語モデルを取得し、修正対象の音声認識結果に対応する特定の言語モデルを取得し、共通の言語モデルと、特定の言語モデルと、ピンインとに基づいて、候補テキストを取得する。
【0035】
ここで、共通の言語モデルは、通常な言語モデルであり、言語モデルは、分野を区分しないコーパスにより生成されたものである。
【0036】
本実施形態において、共通の言語モデルを利用するだけではなく、特定の言語モデルを利用することがある。特定の言語モデルのトレーニング形式は、共通の言語モデルのトレーニング形式と同一でも良い。両者の相違点は、トレーニング用コーパスが異なっている。特定の言語モデルは、特定の範囲のコーパスによりトレーニングされたものである。特定の範囲は、ある特定の分野でも良い。例えば、地図の分野において、収集した地名をトレーニングコーパスとし、地図の分野に対応する特定の言語モデルを取得できる。類似的に、ニュースの分野などに対応する特定の言語モデルを取得できる。さらに、特定の範囲は、ある特定の分野の細分化された分野でもよい。また地図の分野を例示として、各都市に対応する言語モデルを生成することができる。ここで、特定の言語モデルは、例えば北京に対応する特定の言語モデルや、上海に対応する特定の言語モデルなどを含む。
【0037】
特定の言語モデルは、都市に対応する特定の言語モデルを例示とし、ユーザにより入力された都市情報またはGPS測位により取得された都市情報によって、都市に対応する特定の言語モデルを取得する。
【0038】
ピンイン標記してピンインを取得した後、ピンイン及び発音辞書によりデコードネットワークを確立する。
【0039】
例えば、デコードネットワークは、
図3に示されるようなものである(図面において、一本のパスしか示されていなく、他のパスが類似)。デコードネットワークに入力したピンインは、woyaoquwaitanである。
【0040】
デコードネットワークを確立した後、言語モデルにより各パスのスコアを算出できる。各パスは、複数のノードを含み、各ノードが一つの単語に対応するため、各パスが一つの候補テキストに対応する。例えば、「我」、「要」、「去」、「外灘」は、一本のパスを作成でき、「窩」、「要」、「去」、「外灘」も一本のパスを作成でき、「我」、「要」、「去」、「外」、「譚」も一本のパスを作成できる。各パスのスコアは、言語モデルにより取得されたものである。
【0041】
各パスのスコアを算出する際に、パスに含まれたN−gramの単語列のスコアが互いに乗算することにより、各パスのスコアを算出できる。
【0042】
本実施形態において、各N−gram単語列のスコアは、共通の言語モデルにより決定する確率値と、特定の言語モデルにより決定される確率値に対して、加重合計して取得されたものである。
【0043】
2-gramを例示として、「去」と「外灘」からなる2-gram単語列に対応し、単語列スコアscore(去,外灘)の計算式は、
score(去,外灘)=α
*P
base(去,外灘)+(1−α)
*P
city21(去,外灘)。
【0044】
ここで、
P
base(去,外灘)は、共通の言語モデルにより取得される確率値であり、
P
city21(去,外灘)は、特定の言語モデルにより取得される確率値であり、
αは、設置可能の0以上かつ1未満の加重値である。
【0045】
各パスのスコアを算出した後、スコアの高い順で予め設定された数(設置可能)のパスを選択し、選択されたパスに対応するテキストを候補テキストとする。
【0046】
S203は、候補テキストにおいて、最適な候補テキストと2番目に適した候補テキストを決定する。
【0047】
最適な候補テキストは、最高スコアのパスに対応するテキストであり、2番目に適した候補テキストは、最高スコアに次ぐスコアのパスに対応するテキストである。
【0048】
例えば、「我」、「要」、「去」、「外灘」からなるパスのスコアが最高スコアである場合、「我要去外灘」は、最適な候補テキストであり、「我」、「要」、「去」、「外」、「譚」からなるパスのスコアは、最高スコアに次ぐスコアである場合、「我要去外譚」は、2番目に適した候補テキストである。
【0049】
S204は、最適な候補テキストと、2番目に適した候補テキストとの言語モデルスコアの差分値を算出し、また言語モデルスコアの差分値が予め設定された第1の値より大きいか否かを判断し、大きい場合、S205を実行する。大きくない場合、S211を実行する。
【0050】
言語モデルスコアは、上記のステップにおいて、デコードネットワークにおいて、共通の言語モデルと特定の言語モデルに対して加重合計することにより、取得されたスコアである。
【0051】
予め設定された第1の値は、150でもよい。
【0052】
S205は、文字言語モデルを取得し、文字言語モデルによりそれぞれ最適な候補テキストと修正対象の音声認識結果をスコアリングし、また最適な候補テキストのスコアが修正対象の音声認識結果のスコアより大きいか否かを判断し、大きい場合、S206を実行し、大きくない場合、S211を実行する。
【0053】
ここで、文字言語モデルは、字をトレーニングコーパスとしてトレーニングされたものである。大量の字を予め収集して、言語モデルのトレーニングアルゴリズムに基づいてトレーニングされ、文字言語モデルを生成する。
【0054】
文字言語モデルを取得した後、二つのテキスト(最適な候補テキストと修正対象の音声認識結果)をそれぞれスコアリングし、二つのテキストに対応するスコアを取得する。
【0055】
S206、単語言語モデルにより最適な候補テキストをスコアリングし、また各N−gramのバックオフ回数を統計する。
【0056】
本出願において、特別に説明しない限り、言語モデルは、単語言語モデルを意味することと理解すべきである。
【0057】
さらに、本ステップにおける単語言語モデルは、共通の言語モデルまたは特定の言語モデルでもよい。
【0058】
ここで、一般的に、言語モデルは、N−gramにより確立され、確立するときに、疎データの課題を解決するため、いくつかの場合にバックオフアルゴリズムを利用する必要があり、高確率単語の発生確率を低確率単語の発生確率に取り替える。
【0059】
例えば、言語モデルのスコアを算出する際に、前の一つの条件概率は、4−gramであるp(w3|w2w1w0)であり、その後の単語であるw4が出現する際に、言語モデルにおいて、4−gramであるw1w2w3w4が出現しないのでバックオフする必要があり、1−gramバックオフであるp(w4|w3w2)に変えることができる。w2w3w4も出現しない場合、2−gramバックオフであるp(w4|w3)に変えることができる。そのため、ここのN−gramのバックオフは、前の確率式より何回をバックオフすることを意味する。
【0060】
S207は、1−gramバックオフ回数と2−gramバックオフ回数の合計が予め設定された第2の値より小さいか否かを判断する。
【0061】
S208は、全部のバックオフ回数が予め設定された第3の値より小さいか否かを判断し、小さい場合、S209を実行し、小さくない場合、S211を実行する。
【0062】
ここで、バックオフする時に、1−gramバックオフと2−gramバックオフを含むだけではなく、他の次数のバックオフを含むことができるため、ここで、全部の次数のバックオフ総次数を統計する。
【0063】
予め設定された第2の値と予め設定された第3の値は、同一または異なってもよい。例えば、いずれも、2に設定してもよい。
【0064】
S209は、最適な候補テキストにおける連続的な単一文字の数が予め設定された第4の値より大きいか否かを判断し、大きい場合、S210を実行し、大きくない場合、S211を実行する。
【0065】
例えば、予め設定された第4の値は、3に設定する。
【0066】
S210は、最適な候補テキストを修正結果とする。
【0067】
S211は、保持修正対象の音声認識結果を変更せずに保つ。
【0068】
本実施形態において、修正対象の音声認識結果をピンイン標記し、かつピンインに基づいて候補テキストを取得し、及び最適な候補テキストが予め設定された条件を満たす場合、最適な候補テキストを修正結果とするため、ピンイン入力法に基づいて、音声認識結果に対する修正を実現することができ、修正結果の正確度を向上させることを実現できる。最適な候補テキストが予め設定された条件を満たすか否かを判断することにより、もっと正確な修正結果を取得することを実現できる。
【0069】
図4は、本発明の一実施形態により提供される音声認識結果の修正装置の構成概略図である。
【0070】
図4を参照する。本実施形態に係る修正装置40は、ピンイン標記モジュール41と、取得モジュール42と、判断モジュール43と、決定モジュール44とを備えている。
【0071】
ピンイン標記モジュール41は、修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得する。
【0072】
取得モジュール42は、ピンインに基づいて候補テキストを取得し、候補テキストにおいて、最適な候補テキストを決定する。
【0073】
判断モジュール43は、最適な候補テキストが予め設定された条件を満たすか否かを判断する。
【0074】
決定モジュール44は、最適な候補テキストが予め設定された条件を満たす場合、最適な候補テキストを修正対象の音声認識結果の修正結果と決定する。
【0075】
変形例として、取得モジュールは、共通の言語モデルを取得し、修正対象の音声認識結果に対応する特定の言語モデルを取得し、共通の言語モデルと、特定の言語モデルと、ピンインとに基づいて候補テキストを取得するように用いられてもよい。
【0076】
変形例として、取得モジュールは、更に、候補テキストにおける2番目に適した候補テキストを決定するように用いられてもよい。
【0077】
変形例として、判断モジュールは、具体的には、最適な候補テキストと2番目に適した候補テキストとの言語モデルスコアの差分値を算出し、差分値が予め設定された第1の値より大きい場合、文字言語モデルを取得し、かつ文字言語モデルによって最適な候補テキストと修正対象の音声認識結果をスコアリングし、最適な候補テキストに対応するスコアが、修正対象の音声認識結果に対応するスコアより大きい場合、単語言語モデルにより最適な候補テキストをスコアリングし、かつスコアリングにおけるバックオフ回数を統計し、バックオフ回数が要求回数を満たす場合、最適な候補テキストにおける連続的な単一文字の数が予め設定された第4の値以下であるか否かを判断し、「はい」である場合、最適な候補テキストが予め設定された条件を満たすと決定するように用いられてもよい。
【0078】
変形例として、
図5を参照する。修正装置は、最適な候補テキストが予め設定された条件を満たさない場合、修正対象の音声認識結果を変更せずに保つように用いられる保持モジュール45を更に備えていてもよい。
【0079】
本実施形態に係る修正装置は方法の実施形態に対応し、具体的な内容は、方法の実施形態の説明を参照できるので、ここで詳しく説明しないと理解すべきである。
【0080】
本実施形態において、修正対象の音声認識結果をピンイン標記し、かつピンインに基づいて候補テキストを取得し、及び最適な候補テキストが予め設定された条件を満たす場合、最適な候補テキストを修正結果とするため、ピンイン入力法に基づいて、音声認識結果に対する修正を実現することができ、修正結果の正確度を向上させる。最適な候補テキストが予め設定された条件を満たすか否かを判断することにより、もっと正確な修正結果を取得できる。
【0081】
各実施形態に、同一または類似な部分が互いに参考でき、いくつかの実施形態において詳しく説明しない部分は、他の実施形態における同一または類似な部分を参照してもよいと理解すべきである。
【0082】
本発明の実施形態として、デバイスを提供する。デバイスは、プロセッサ、プロセッサにより実行可能な指令を記憶するメモリを備え、プロセッサが修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得し、ピンインに基づいて候補テキストを取得し、かつ候補テキストにおいて、最適な候補テキストを決定し、最適な候補テキストが予め設定された条件を満たすか否かを判断し、予め設定された条件を満たす場合、最適な候補テキストを修正対象の音声認識結果の修正結果と決定する。
【0083】
本発明の実施形態として、非一時的なコンピュータ読み取り可能な記憶媒体を提供する。プロセッサにより記憶媒体における指令が実行される場合、プロセッサが修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得し、ピンインに基づいて候補テキストを取得し、かつ候補テキストにおいて、最適な候補テキストを決定し、最適な候補テキストが予め設定された条件を満たすか否かを判断し、予め設定された条件を満たす場合、最適な候補テキストを修正対象の音声認識結果の修正結果と決定するように実行させる。
【0084】
本発明の実施形態として、コンピュータプログラム製品を提供する。コンピュータプログラム製品における指令がプロセッサにより実行される場合、プロセッサが、修正対象の音声認識結果をピンイン標記し、音声認識結果に対応するピンインを取得し、ピンインに基づいて候補テキストを取得し、候補テキストにおいて、最適な候補テキストを決定し、最適な候補テキストが予め設定された条件を満たすか否かを判断し、予め設定された条件を満たす場合、最適な候補テキストを修正対象の音声認識結果の修正結果と決定するように実行させる。
【0085】
本発明の説明において、理解しやすいため、用語「第1」、「第2」などは説明の目的に用い、相対の重要性を指示あるいは内包すると理解されるものではない。また、本発明の説明において、他の説明を除いて、「複数」の意味は二つ以上を指す。
【0086】
フローチャートまたは他の形式で何のプロセスまたは方法を説明することは、特定のロジック機能またはプロセスのステップを実現する少なくとも一つの実行可能なコードのモジュール、パートまたは部分を含むことを意味する。また、本発明の好ましい実施形態の範囲は、ほかの手段により実現されることを含み、本願の明細書に示された順番または検討された順番に合わなくてもよい。係る機能がほぼ同時または逆の形式に基づいて、機能を実行することは、本発明の実施形態に属する技術分野の当業者に理解されるべきである。
【0087】
理解しやすいため、本発明の各部分はハードウェア、ソフトフェア、ファームウェアまたはそれらの組み合わせによって実現できる。上記の実施形態において、複数のステップまたは方法はメモリに格納し、且つ指令を実行する適当なシステムで実行するソフトフェアまたはファームウェアによって、実現する。例えば、ハードウェアによって実現すれば、他の実施形態のように、本分野での公知の下記の技術のいずれか一項またはそれらの組み合わせによって実現できる:データ信号に対する論理機能を実現する論理ゲート回路に用いる離散論理ゲート回路を有し、適性な論理ゲート回路を有する専用集積回路、プログラマブルゲインアンプ(PGA)、フィールドプログラマブルゲートアレイ(FPGA)などである。
【0088】
当業者は、上記の実施形態に係る方法の一部または全てのステップが、プログラムにより相関のハードウェアを実行させることにより完成されるものであり、プログラムは、コンピュータ読み取り可能な記憶媒体に記憶してもよい。プログラムが実行される時に、方法の実施形態に係るステップにおける一つまたはその組み合わせを含む。
【0089】
また、本発明の各実施形態における各機能ユニットは、一つの処理モジュールに集合してもよく、各ユニットが物理的に存在してもよく、二つ以上のユニットが一つのモジュールに集合してもよい。集合したモジュールは、ハードウェアの形式で実現してもよいが、ソフトウェア機能モジュールの形式で実現してもよい。集合したモジュールは、ソフトウェア機能モジュールの形式で実現し、かつ独立的な製品として販売または利用する時に、コンピュータ読み取り可能な記憶媒体に記憶してもよい。
【0090】
記憶媒体は、読み取り専用メモリ、ディスクまたは光ディスクなどである。
【0091】
本明細書において、参考用語「一実施形態」、「いくつかの実施形態」、「実施例」、「具体的な一例」または「いくつかの例」などの説明は実施形態または実施例による説明の具体的な特徴、構成、材料または特長は本発明の少なくとも一つの実施形態または実施例に含まれることを指す。本明細書において、用語の概略の標記は必ずしも同じ実施形態または実施例ではない。また、説明の具体的な特徴、構成、材料または特長は何れの一つまた複数の実施形態または実施例において、適当な形で組み合わせる。
【0092】
本発明の実施形態を既に表示し、説明したが、当業者は、本発明の範囲から逸脱することなく、これらの実施形態に多種の変化、変更、インタラクション及び変形を行うことが可能であり、本発明の範囲は請求の範囲及びその同等物によって限定されると理解されるべきである。