(57)【要約】【課題】自動読み付与装置及び自動読み付与方法を提供する。【解決手段】発話者によって発せられるアルファベット表記の音声単語情報が入力される入力部と、予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行う対象推定部と、該対象推定部による対象推定結果に基づき、可能な読み候補を生成、列挙する読み候補生成部と、該読み候補生成部により生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行う尤度計算部と、該尤度計算部により計算された結果をもとに、複数の候補を出力する出力部とを含むものである。【選択図】図１
2013175067.tif 000002
【特許請求の範囲】
【請求項１】
発話者によって発せられるアルファベット表記の音声単語情報が入力される入力部と、
予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行う対象推定部と、
該対象推定部による対象推定結果に基づき、可能な読み候補を生成、列挙する読み候補生成部と、
該読み候補生成部により生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行う尤度計算部と、
該尤度計算部により計算された結果をもとに、複数の候補を出力する出力部と、
を含むことを特徴とする自動読み付与装置。
【請求項２】
発話者によって発せられるアルファベット表記の音声単語情報が入力されるステップと、
予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行うステップと、
該ステップによる対象推定結果に基づき、可能な読み候補を生成、列挙するステップと、
該ステップにより生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行うステップと、
該ステップにより計算された結果をもとに、複数の候補を出力するステップと、
を含むことを特徴とする自動読み付与方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動読み付与装置及び自動読み付与方法に関する。
【背景技術】
【０００２】
長年の音声認識の研究開発により、技術レベルは着実に進歩し、音声認識を応用したアプリケーションも広がってきた。自動車運転時でも音声を使ってハンズフリーでのカーナビ操作が可能な音声カーナビ、議場で行われる膨大な音声をテキスト化し、修正・編集を行う音声議会録作成支援システム等、音声認識は様々な場面で用いられている。音声認識の利点には、高齢者をはじめ、ほとんどの人間にとって扱いやすいインタフェースであること、両手がふさがっていても利用可能であること等が挙げられる。
【０００３】
しかし、音声認識は誤認識が生じる場合がある。原因としては、騒音や人の声等の雑音、発話した単語が音声認識辞書に存在しない(未知語)という理由が考えられる。特に未知語の問題は重要である。音声認識システムでは、音声認識辞書に存在しない単語の場合、その単語の発話を認識することができないからである。
【０００４】
人手によらない未知語の解決策として、テキストから未知語を自動獲得し、辞書を拡張する手法がある。しかし、この手法では、未知語を自動で獲得することができても、音声認識などで必要な単語の読みが獲得できない。このため、未知語に読みを付与することが必要になる。平仮名やカタカナで構成される単語については、容易に読みを付与することが可能である。しかし、漢字やアルファベットで構成される単語については、簡単に解決できる問題ではない。読みの曖昧性が存在するからである。アルファベット表記の単語を例に挙げると、Wi-Fiを“ワイファイ”、Wikiを“ウィキ”というような多義性である。このため、読みを自動で付与することは困難である。
【０００５】
未知語自動獲得の研究として、形態素解析結果から未知語を検出し、前後の文脈から考えられる語幹と品詞の候補を列挙し、最適な候補を選択する方法が知られている（非特許文献１）。この方法では、列挙は日本語の持つ形態論的制約を利用する。検出された未知語の後続文字列を用い、可能性のある品詞、語幹の列挙を行い用例の蓄積を行う。選択は、複数の用例の比較を行う手続きである。そして、曖昧性が十分に解消できた時点で未知語の獲得を行っている。
【０００６】
未知語の読みを付与する研究としては、非特許文献２に記載の方法が知られている。この方法では、n-gramモデルを記述するため、単語と読みの組<c,y>1hを以下のように定義した。
【数１】
2013175067.tif 000003
【０００７】
ここでcは1文字を指し、yはその1文字に対応する読みを指す。なおhは単語の総文字数を意味する。次に生成確率を以下の式で求める。
【数２】
2013175067.tif 000004
【０００８】
その上で、未知語の読み推定を行う。具体的には、はじめに漢字で構成されている未知語に対し、それぞれの文字について単漢字辞書から得られる読みを列挙する。その後、人手によって読みと単語境界が付与されているコーパスを用い、文字と読みの組を単位とするn-gramモデルから、単語と読みの同時確率を計算し、上位L個を発音辞書に追加する。その後、テキストと同じ話題を扱った音声と、音声認識用の音響モデルを用意し、音声認識の信頼度が閾値以上の音素列を抽出し、読みの付与を行っている。
【０００９】
アルファベット表記されている文字列の日本語読みへの変換精度を向上させる技術と賭して、例えば特許文献１に記載の技術がある。これは、英語発音表記と、当該英語発音表記の前後に連接する英語発音表記と、上記英語発音表記に対応するアルファベット表記とに基づいて、上記英語発音表記と当該英語発音表記に対応する日本語読みとが対応付けられた規則データが格納された規則データベースを用いて、上記アルファベット文字列に対応する日本語読みを出力するものである。
【００１０】
また、特許文献２には、アルファベット文字列から直接日本語読みに変換する技術について開示されている。これは、アルファベット文字列の部分文字列と日本語読みとの対応付けをあらかじめ学習しておき、新しいアルファベット文字列が入力された際に最も確からしい部分文字列の組み合わせを求めて日本語読みに変換する技術が開示されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００９−１９９４３４号公報
【特許文献２】特許２００１−１４２８７７号公報
【非特許文献】
【００１２】
【非特許文献１】村脇有吾、 黒橋禎夫：形態論的制約を用いたオンライン未知語獲得、 自然言語処理、 Vol. 17, No.1,pp.55-75 (2010)
【非特許文献２】笹田哲郎、 森信介、 河原達也：自動獲得した未知語の読み・文脈情報による仮名漢字変換、 自然言語処理、 Vol. 17, No.4,pp.131-153 (2010)
【発明の概要】
【発明が解決しようとする課題】
【００１３】
本発明は、アルファベット表記の単語の読みを、インターネット百科事典のWikipedia（登録商標）及びn-gramモデルを用いて、自動で付与する自動読み付与装置及び自動読み付与方法を提供するものである。
【課題を解決するための手段】
【００１４】
本発明に係る自動読み付与装置は、発話者によって発せられるアルファベット表記の音声単語情報が入力される入力部と、予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行う対象推定部と、該対象推定部による対象推定結果に基づき、可能な読み候補を生成、列挙する読み候補生成部と、該読み候補生成部により生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行う尤度計算部と、該尤度計算部により計算された結果をもとに、複数の候補を出力する出力部とを含むものである。
【００１５】
また本発明に係る自動読み付与方法は、発話者によって発せられるアルファベット表記の音声単語情報が入力されるステップと、予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行うステップと、該ステップによる対象推定結果に基づき、可能な読み候補を生成、列挙するステップと、該ステップにより生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行うステップと、該ステップにより計算された結果をもとに、複数の候補を出力するステップとを含むものである。
【発明の効果】
【００１６】
本発明によれば、自動獲得したアルファベット表記の単語に対し、アルファベット1文字と音素の対応付けを行い、n-gramモデルを用いて読みの付与を行うことにより、自動で獲得したアルファベット表記の未知語に対し、3-gramを用いた場合、上位1件では72.0%、上位3件では93.0%、上位5件では94.0%という高い正解率を得ることができた。したがって、アルファベット表記の単語に読みを自動で付与する場合、本発明装置は、アルファベット1文字と音素の対応付けが有効であるといえる。
【図面の簡単な説明】
【００１７】
【図１】本発明に係る自動読み付与装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１８】
図１において、１は、発話者によって発せられるアルファベット表記の音声単語情報が入力される入力部、２は、予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行う対象推定部、３は、対象推定部２による対象推定結果に基づき、可能な読み取り候補を生成、列挙する読み候補生成部、４は読み候補生成部３により生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行う尤度計算部、５は尤度計算部４により計算された結果をもとに、複数の候補を出力する出力部である。これらは、コンピュータにより構成される。
【００１９】
上記構成の自動読み付与装置により以下の処理がなされる。
ステップ１：発話者によって発せられるアルファベット表記の音声単語情報が入力される。
ステップ２：予め用意したヒューリスティクス、機械学習結果等によるデータベースを用い、対象の絞込みを行う。
ステップ３：ステップ２による対象推定結果に基づき、可能な読み候補を生成、列挙する。
ステップ４：ステップ３により生成された全読み候補に対し、別途用意したn-gramモデルにより、読み候補の尤度計算を行う。
ステップ５：ステップ４により計算された結果をもとに、複数の候補を出力する。
【００２０】
上記構成において、対象推定部２は、アルファベット列の対象推定を行うもので、アルファベット列が日本語読み（ローマ字読み）を前提としているとは限らない。このため、様々な言語に対応した表（アルファベットと音素との対応表）を用意しなければならない。次処理「読み候補生成」での計算量減少のため、及び「尤度計算」での精度向上のため、使用表を限定する目的を有する。対象推定部２は、予め用意したヒューリスティクス、機械学習結果等によるDBを用い、対象の絞込みを行うが、ここでの絞り込みは必ずしもひとつの候補に絞る必要はない。
【００２１】
例： 母音・子音が交互に並ぶ（日本語用）
先頭に”q”が来ない（日本語）
同一文字列の繰り返しは、同一読みの繰り返しである（日本語）
ウムラウトを含む（ゲルマン諸族語用）
子音だけのアルファベット文字列なら、アルファベットのまま読み付与を行う（アルファベット読み用）
【００２２】
ここで「対象の絞込み」と呼ぶ対象推定は、各国語（例えば日本語）を同定する作業（言語推定）に近い。ただ、実際には上記ウムラウトのように、固有の言語を超えて読みが共通する場合も多い。このため、「言語推定」ではなく、「対象推定」と表現しているのである。
【００２３】
読み候補生成部３は、可能な読み候補の生成、列挙を行うものであり、例えば、入力が”wifi”で、かつ対象が日本語または英語だった場合には”wai-fai”、”wi-fi”等を候補とする。ドイツ語読みに由来する”vai”を用いた組み合わせについては、候補として生成されないため、計算量が減るという利点がある。
【００２４】
以下、アルファベットに対する読み付与及びアルファベット表記の単語の読みを自動で付与する場合について述べる。
【００２５】
（アルファベットに対する読み付与）
漢字に関しては、読みが付与されているコーパスがあれば、漢字と読みを組とし、n-gramモデルのコーパスに用いることが可能である。しかし、アルファベットから構成される単語の場合は、1単語に対して読みを付与することが一般的であり、「 Wiki (ウィキ) 」を「Wi (ウィ) ki（キ）」という記述はされていない。そのため、読みがどの部分のアルファベットに対応しているか曖昧である。そこで、アルファベットと音素の対応付けを行う必要がある。
【００２６】
また、出現する並びによって、異なる音素が用いられる。例えば「c」を例に挙げると、「script」では“ku”、「CD」では“shi:”、「carbon」では“k”、「document」では“ky”、「zilch」では“c”など、多くの異なる音素をもつ。そのため、アルファベットに対応する可能性のある音素を網羅しておく必要がある。
【００２７】
さらに、本実施の形態では、200,000件のTweetに対し、非特許文献１に記載の方法を用いて、自動で未知語の獲得を行った。その結果、1,675個の未知語を獲得することができた。獲得した未知語を調べると、漢字を含む未知語が128個に対し、アルファベットを含む未知語は383個存在した。したがって、アルファベットから構成される単語についても、読みの付与を行い、辞書に登録する必要がある。
【００２８】
これらの理由により、本実施の形態では、アルファベットで構成される未知語に対し、n-gramモデルを用いて、自動で読みの付与を行う。
【００２９】
（アルファベットと音素の対応付け）
本実施の形態においては、非特許文献２に開示のn-gramモデルを構築し、自動で読みの付与を行う枠組みを用いる。しかし、アルファベットの場合、読みがどの部分に対応しているか曖昧なため、本発明ではアルファベット1文字と音素を1つの組としてn-gramモデルの構築を行う。
【００３０】
n-gramモデル構築のコーパスとしては、Wikipedia（登録商標）を用いる。まず、読みが付与されているアルファベット表記のみから構成されるタイトルを5,300個収集し、読みを音素に変換した。収集したアルファベット表記の単語と音素から、アルファベット1文字ごとに分割し、それぞれのアルファベットと音素の対応付けを行う。しかし、アルファベット表記の場合、アルファベットの音素がどこに対応しているか分からない。そこでアルファベット1文字に対する、可能性のある音素の候補リストを作成する。
【００３１】
初めに考えられる音素の候補として、ローマ字読み、アルファベット読みを想定し、表1に示すような候補リストを人手で作成する。
【表１】
2013175067.tif 000005
【００３２】
作成した音素の候補リストを用い、アルファベット表記の単語に対する音素列の候補を全通り推定する。例えば単語 usb の場合、表２に示す音素列の候補を生成する。
【表２】
2013175067.tif 000006
【００３３】
音素の候補リストを用いて生成した音素列が、正しい音素列と完全に一致した場合、表３に示すように、アルファベットに対応する音素とし、n-gramモデルのコーパスとして用いる。
【表３】
2013175067.tif 000007
【００３４】
初めに生成した音素の候補リストでは、5,300個の単語に対し、1,261個の単語の正しい音素列の生成を確認した。しかし、残りの4,039個については、正しい音素列の生成ができず、アルファベット1文字と音素の対応付けが行えなかった。
【００３５】
（音素の網羅）
初めに作成した表1の候補リストでは、単純な音素列しか生成できないため、考えられる音素を追加する必要がある。追加する方法としては、正しい音素列を生成できなかった単語について調べ、そのアルファベットに対応する音素が2つ以上の単語で使われていた場合、音素の候補リストに追加する。表4に対応が必要な例を挙げる。
【表４】
2013175067.tif 000008
【００３６】
このようにして、アルファベットに対する音素の候補を追加した結果、5,300個の単語に対し、5,056個の単語の正しい音素列を生成することができた。したがって、本実施の形態における音素の候補リストが重要であることがわかる。
表５に示すように、アルファベットと音素を1つの組とした5,056個の単語をn-gramモデルのコーパスに用いる。また、
は文頭、
は文末を表す記号である。
【表５】
2013175067.tif 000009
【００３７】
本実施の形態では、表５に示すアルファベットと音素の対応付けを行ったコーパスからn-gramモデルの構築を行い、読みの付与されていない未知語に対し、自動で読みの付与を行う。
【００３８】
（未知語に対する音素列の候補）
未知語に対しての読み付与は、アルファベットを1文字ごとに分割し、それぞれについて、構築したn-gramモデル中の1-gramから得られる音素を列挙する。そして、各音素を組み合わせ、可能性のある単語の音素列を全通り生成する。その後、アルファベットと音素の組を単位とするn-gramモデルにより、単語表記からの音素列の生成確率を計算し、確率の高い順に音素列を並び変える。また、表６に示すように、生成した音素列が一致する場合は、最終的に音素列から読みに変換すると、同じ読みになるため、確率の高い値を優先する。
【表６】
2013175067.tif 000010
【００３９】
（生成する音素列の選択）
1-gramを用いて、可能性のある音素列を全通り生成した場合、非常に多くの音素列の候補が生成され、処理に多大な時間を費やしてしまう。そこで、「末尾は必ず母音になる」、「qの音素は文頭に出現しない」という規則を簡易に実装するため、今回は2-gramに存在しない並びの候補は採用しないこととする。
【実施例】
【００４０】
アルファベットと音素の対応付けが行えたWikipedia（登録商標）の単語5,056個に対しての読み付与と、Twitterのコーパスに対し、自動で獲得したアルファベット表記の未知語100個に対する読み付与を行った。n-gramは2-gram,3-gram,4-gramを用い、評価は正しい音素列が、生成した音素列の上位1件、3件、5件に含まれる場合、正解とする。
【００４１】
（Wikipedia（登録商標）の単語に対しての読み付与実験）
まず、5,056個の単語に対し、Leave-one-out 法を用いた時の実験結果を表７に示す。
【表７】
2013175067.tif 000011
【００４２】
3-gramを用いた場合が上位1件、3件、5件ともに一番高い値となり、正解率はそれぞれ63.2%、77.7%、79.9%となった。上位5件までに正しい音素列を生成できた例としては、「Alex|areqkusu」,「Sylpheed|shirufi:do」,「RADWIMPS|raqdowiNpusu」等が挙げられる。
【００４３】
次に誤り例を述べる。「tobaccojuice|tabakoju:su」,「LAZYgunsBRISKY|reiji:gaNzuburisuki:」等、比較的多くのアルファベットで構成されている単語に誤りが多い傾向があった。また、上位5件ではほとんどの場合、正しい音素列を生成できた。一方、上位1件で正しい音素列を生成できなかった単語としては、「rolly」の正しい音素列“ro:ri:”に対して“rori:”と音素列を生成した。加えて、「humanizer」の正しい音素列“hyu:manaiza:”に対して“hyu:maniza:”と音素列を生成する場合があった。
【００４４】
（自動獲得した単語に対しての読み付与実験）
非特許文献１に記載の方法を用いて、200,000件のTweetから自動獲得したアルファベット表記の単語100個に対して実験を行った。また、HN(ホームネーム)やAAA(トリプルエー)、GK(ゴールキーパー)等は、本実施例では正しい音素列を作りだすことができないため、除外している。さらに、自動獲得した単語がn-gramモデル構築時のコーパスに存在する場合は、その単語をコーパスから除いてn-gramモデルの構築を行った。実験結果を表８に示す。
【表８】
2013175067.tif 000012
【００４５】
上位1件、3件では3-gramを用いた場合、それぞれ正解率72.0%、93.0%となり一番高い数値となった。上位5件では4-gramを用いた場合、正解率95.0%となった。
3-gramで上位5件までに正しい音素列を生成出来なかった単語として、「Twitter」,「Excel」,「LED」,「AI」,「hyde」,「Xbox」があった。「Twitter」について調べると、正しい音素列“tsuiqta:”に対し、“towiqta:”,“tsuwiqta:”,“towita:”,“tsuwita:”,“tsuita:”という音素列を生成していた。
「Excel」の場合は「x」に対応する音素“ku”が作成した音素の候補リストに存在しないため、正しい音素列を生成することが出来なかった。「LED」,「AI」に対しては、正しい音素列を生成することは出来たが、それぞれ上位20番目、6番目に生成していた。「Xbox」の場合は、n-gramモデル構築時のコーパスに「x」と「b」の並びが存在しなかったため、正しい音素列を生成することが出来なかった。
【００４６】
上位5件ではほとんどの場合、正しい音素列を生成できた。その一方で、上位1件で正しい音素列を生成できなかった例としては、「Tokyo」の正しい音素列“to:kyo:”に対して、“to:kyou”という音素列を生成していた。また、「firefox」の正しい音素列“faiafoqkusu”に対し“faiya:foqkusu”としている例があった。今回は正しい音素列に対し、生成した音素列が完全に一致した場合のみを正解とした。しかし、Wikipedia（登録商標）のコーパスを調べると、「fire」という表記に対し、「firebox」,「firebeat」の単語では“faiya:”、「firebird」では“faia”、「firewall」では“faia:”というそれぞれ異なる音素列であった。したがって、正解とする基準も正確に定める必要がある。
【００４７】
（構成されるアルファベットの平均数の分析）
また、構成されるアルファベットの平均数を調べたところ、Wikipediaから獲得した単語が6.07に対し、Twitterで自動獲得した単語は4.47であった。よって、Wikipedia（登録商標）に登録されているアルファベットの方が、音素列の候補を多く生成するため、Twitterから自動獲得した単語の方が、正解率が高かったと考えられる。そこで、Wikipedia（登録商標）に登録されている単語に対し、構成されるアルファベットの平均数を自動獲得した単語の平均数と同程度に調整して、実験を行った。その結果を表９に示す。
【表９】
2013175067.tif 000013
【００４８】
表７の実験結果と比べると全体的に正解率が上昇している結果となった。しかし、表８の実験結果と比べると全体的に正解率が低い。原因としては、Twitterで自動獲得した単語は日本語読みに基づいた音素列が多いのに対し、Wikipedia（登録商標）に存在する単語には、様々な言語固有の読み方に基づいた音素列が存在したため、正しい音素列を生成することが難しかったためと考えられる。
【産業上の利用可能性】
【００４９】
本発明は、英単語等のアルファベットからなる外来語に対する日本語読みへの変換を高精度に行うことができぬものであり、テキスト自動読み上げや口述筆記など、コンピュータを用いた音声合成や音声認識等の言語処理の分野に適用して有用である。
【符号の説明】
【００５０】
１      入力部
２      対象推定部
３      読み候補生成部
４      尤度計算部
５      読み候補出力部
【図１】
2013175067.tif 000014