音声認識装置、音声認識方法およびプログラム
【課題】音声認識の精度を向上させる。
【解決手段】音声認識装置は、番組情報記憶部と、辞書記憶部と、算出部と、更新部と、認識部と、操作制御部とを備える。番組情報記憶部は、放送番組のメタデータとユーザの視聴状態とを記憶する。辞書記憶部は、音声認識の対象となる認識語と優先度とを含む認識辞書を記憶する。算出部は、メタデータと視聴状態とに基づいて、放送番組の特徴語と特徴語に対するユーザの嗜好の度合いを表す第1スコアとを算出する。更新部は、特徴語を含む認識語の優先度を第1スコアに応じて更新する。認識部は、認識辞書を用いて音声を認識する。操作制御部は、認識結果に基づいて放送番組に対する操作を制御する。
【解決手段】音声認識装置は、番組情報記憶部と、辞書記憶部と、算出部と、更新部と、認識部と、操作制御部とを備える。番組情報記憶部は、放送番組のメタデータとユーザの視聴状態とを記憶する。辞書記憶部は、音声認識の対象となる認識語と優先度とを含む認識辞書を記憶する。算出部は、メタデータと視聴状態とに基づいて、放送番組の特徴語と特徴語に対するユーザの嗜好の度合いを表す第1スコアとを算出する。更新部は、特徴語を含む認識語の優先度を第1スコアに応じて更新する。認識部は、認識辞書を用いて音声を認識する。操作制御部は、認識結果に基づいて放送番組に対する操作を制御する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、音声認識装置、音声認識方法およびプログラムに関する。
【背景技術】
【0002】
放送番組の電子番組表の情報を用いて音声制御を行う技術が知られている。例えば、電子番組表から放送番組の番組名、出演者、および、キーワードに含まれる語を抽出して認識の対象とし、ユーザの発声にいずれかの語が該当する場合に該当する放送番組を選局する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−250575号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術では、電子番組表から抽出される出演者やキーワードは大量であるため、音声認識の対象となる語彙数が多く誤認識が起こりやすいという問題があった。
【課題を解決するための手段】
【0005】
実施形態の音声認識装置は、番組情報記憶部と、辞書記憶部と、算出部と、更新部と、認識部と、操作制御部とを備える。番組情報記憶部は、放送番組のメタデータとユーザの視聴状態とを記憶する。辞書記憶部は、音声認識の対象となる認識語と優先度とを含む認識辞書を記憶する。算出部は、メタデータと視聴状態とに基づいて、放送番組の特徴語と特徴語に対するユーザの嗜好の度合いを表す第1スコアとを算出する。更新部は、特徴語を含む認識語の優先度を第1スコアに応じて更新する。認識部は、認識辞書を用いて音声を認識する。操作制御部は、認識結果に基づいて放送番組に対する操作を制御する。
【図面の簡単な説明】
【0006】
【図1】本実施形態にかかる音声認識装置のブロック図。
【図2】番組情報記憶部に格納された番組情報の一例を示す図。
【図3】番組名および番組嗜好スコアの例を表す図。
【図4】認識辞書のデータ構造例を示す図。
【図5】音声認識処理のフローチャート。
【図6】嗜好情報算出処理のフローチャート。
【図7】嗜好モデル算出処理のフローチャート。
【図8】特徴語の一例を示す図。
【図9】嗜好モデルの一例を示す図。
【図10】表示制御処理のフローチャート。
【図11】推薦状態0の場合の推薦画面の図。
【図12】推薦状態1の場合の推薦画面の図。
【図13】辞書更新処理のフローチャート。
【図14】推薦状態1の場合の認識辞書の一例を示す図。
【図15】音声認識処理のフローチャート。
【図16】アクセス制御処理のフローチャート。
【図17】音声認識装置のハードウェア構成図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、この発明にかかる音声認識装置の好適な実施形態を詳細に説明する。以下では、放送番組を視聴する機器として音声認識装置を実現する場合を説明するが、適用可能な装置はこれに限られるものではない。
【0008】
放送番組を視聴する機器では、音声認識の精度が必ずしも十分でないことが問題となっている。例えば、放送番組が視聴されている際には、スピーカから放送番組の音声が出力されている。このため、ユーザの発声を認識する際の妨げとなると考えられる。また、視聴機器は生活空間に備えられていることが多く、多様な生活雑音が混入すると考えられる。そのため、視聴機器による音声認識の精度は低下することが予想される。従って、従来技術のように、電子番組表全体から抽出した多数の単語を認識対象とした場合、十分な精度が得られない可能性がある。また、音声による制御を行う際に、ユーザが音声により入力可能な単語を知ることができないことも問題となる。従来技術のように電子番組表に含まれる単語を認識対象とする方法では、ユーザが予め電子番組表の内容を知らない場合には、どのような単語で番組を選択することが可能かを知ることができない。そのため、ユーザはどのような発声を行えば所望した番組を選択できるか分からず、意図した制御を行うことが困難であると考えられる。
【0009】
そこで、本実施形態にかかる音声認識装置は、放送番組に付与されたジャンルや出演者などのメタデータとユーザの視聴履歴(視聴状態)から放送番組の特徴を表す語である特徴語を抽出する。また、特徴語と番組に対するユーザの嗜好の度合いを示す嗜好スコアをそれぞれ算出し、嗜好スコアから特徴語と番組名の認識重みを算出して音声認識を行う。また、当該スコアが高い特徴語や番組名を入力候補としてユーザに提示する。
【0010】
嗜好スコアを利用して音声認識の認識重みを算出することで、ユーザの嗜好に合った特徴語や番組名を高い精度で認識することが可能になる。また嗜好スコアに基づいて入力候補を提示することで、ユーザは嗜好に合った特徴語や番組名が入力可能であることを知ることができる。
【0011】
図1は、本実施形態にかかる音声認識装置1の構成の一例を示すブロック図である。図1に示すように、音声認識装置1は、番組情報記憶部11と、算出部12と、嗜好情報記憶部13と、更新部14と、辞書記憶部15と、認識部16と、受信部17と、操作制御部18と、表示制御部19と、推薦状態記憶部20と、表示部21と、を備えている。
【0012】
番組情報記憶部11は、放送番組のメタデータとユーザの視聴状態とを対応づけた放送番組情報を記憶する。メタデータは、ID、放送日時、番組名(タイトル)、出演者、キーワード、および、ジャンルの項目を含む。メタデータは、例えば、一般的な電子番組表から容易に抽出することが可能である。メタデータに含まれる各項目の情報から、特徴語が抽出される。以下では、特徴語の抽出対象となるメタデータ内の各項目を特徴語属性ともいう。
【0013】
視聴状態は、放送番組に対するユーザの視聴状態を表す。視聴状態は、例えばユーザが番組を一定の割合以上視聴した場合には「視聴」とし、そうでない場合には「未視聴」とすることができる。電子番組表では放送が予定されている番組の情報も配信されており、例えば1週間後の番組の情報を抽出することが可能である。放送番組情報が得られているが放送されていない番組の視聴状態は「未放送」とすることができる。
【0014】
図2は、番組情報記憶部11に格納された放送番組情報の一例を示す図である。各番組について、ID、日付、時間、番組名、出演者、キーワード、および、ジャンルのメタデータが得られている。一般的な電子番組表にはキーワードが付与されていない。このような場合は、番組の概要を記述したテキストから、形態素解析を用いることでキーワードを容易に抽出可能である。本実施形態では、番組Aと番組Bの視聴状態は「視聴」であり、番組Cの視聴状態は「未視聴」であるとする。また本実施形態では番組X、番組Y、および番組Zは放送されていないため、視聴状態は「未放送」であるとする。
【0015】
算出部12は、放送番組情報を利用して、特徴語に対するユーザの嗜好の度合いを表す特徴語嗜好スコアを算出し、特徴語嗜好スコアをもとにユーザ嗜好モデルを学習する。また、算出部12は、未視聴の放送番組に対するユーザの嗜好の度合いを表す番組嗜好スコアを算出する。算出部12は、嗜好情報記憶部13に特徴語、特徴語嗜好スコア、番組名、および、番組嗜好スコアを含む嗜好情報を出力する。
【0016】
嗜好情報記憶部13は、出力された嗜好情報を記憶する。図3は、嗜好情報のうち、番組名および番組嗜好スコアの例を表す図である。嗜好情報記憶部13は、特徴語および特徴語嗜好スコアについても同様に、例えば、IDと特徴語と特徴語嗜好スコアとを対応づけて記憶する。
【0017】
辞書記憶部15は、音声認識で用いる認識辞書を記憶する。例えば、辞書記憶部15は、音声認識の対象となる認識語の音素列と、認識語の認識重み(優先度)とを含む認識辞書を記憶する。図4は、認識辞書のデータ構造の一例を示す図である。図4に示すように、認識辞書は、音素列と、当該音素列に対する認識重みとを含む。なお、図4の認識辞書のデータ構造は一例であり、これに限られるものではない。
【0018】
更新部14は、嗜好情報記憶部13に格納された嗜好情報を利用して、認識辞書の認識重みを更新する。例えば、更新部14は、特徴語嗜好スコアが大きいほど値が大きくなるように、この特徴語嗜好スコアに対応する特徴語を含む認識語の認識重みを更新する。また、更新部14は、番組嗜好スコアが大きいほど値が大きくなるように、この番組嗜好スコアに対応する番組名を含む認識語の認識重みを更新する。
【0019】
受信部17は、ユーザが発声した音声を受信し音声信号として認識部16に出力する。受信部17は例えば一般的なマイクで実現することが可能である。
【0020】
認識部16は、受信部17から入力される音声信号と辞書記憶部15に格納された認識辞書を用いて音声認識を行い、認識結果を操作制御部18に出力する。認識部16は、認識重みが大きい単語ほど優先して音声認識を実行する。
【0021】
操作制御部18は、認識部16から出力される認識結果と推薦状態記憶部20に格納された推薦状態を用いて、番組情報記憶部11に格納された放送番組情報の検索や録画予約等のアクセス操作を制御する。
【0022】
推薦状態記憶部20は、表示制御部19が推薦を行う情報の種類を表す推薦状態を記憶する。推薦状態記憶部20は、例えば、推薦状態0および推薦状態1の2つの状態を記憶する。推薦状態0は、特徴語嗜好スコアを利用して、特徴語嗜好スコアが高い特徴語に関連する情報を推薦する状態を表す。推薦状態1は、番組嗜好スコアを利用して、番組嗜好スコアが高い番組に関連する情報を推薦する状態を表す。推薦状態記憶部20には初期値として推薦状態0が格納されているものとする。なお、推薦状態の個数は2に限られるものではなく、3以上の推薦状態を用いてもよい。
【0023】
表示部21は、各種情報を表示する液晶ディスプレイなどの表示装置である。
【0024】
表示制御部19は、表示部21に対する情報の表示を制御する。例えば、表示制御部19は、嗜好情報記憶部13に格納された嗜好情報を利用して、表示部21に単語や番組名を提示する。また、表示制御部19は、例えばユーザにより指定された推薦状態を推薦状態記憶部20に出力する。また、ユーザの指定により推薦状態が変更された場合、表示制御部19は、推薦状態に応じて認識重みを更新することを更新部14に指示する。
【0025】
更新部14は、推薦状態に応じて、特徴語嗜好スコアに対応する特徴語を含む認識語の認識重みを更新するか、番組嗜好スコアに対応する番組名を含む認識語の認識重みを更新するかを切り替える。
【0026】
なお、各記憶部(番組情報記憶部11、嗜好情報記憶部13、辞書記憶部15、推薦状態記憶部20)は、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0027】
次に、このように構成された本実施形態にかかる音声認識装置1による音声認識処理について図5を用いて説明する。図5は、本実施形態における音声認識処理の全体の流れを示すフローチャートである。
【0028】
まず、算出部12が、放送番組情報を利用して嗜好情報を算出するとともに、ユーザ嗜好モデルを算出する嗜好情報算出処理を実行する(ステップS101)。次に、更新部14が、嗜好情報を利用して認識辞書を更新する辞書更新処理を実行する(ステップS102)。次に、認識部16が、受診された音声を認識する音声認識処理を実行する(ステップS103)。次に、操作制御部18が、音声認識処理の認識結果に従い、放送番組に対する各種のアクセス制御処理を実行する(ステップS104)。表示制御部19は、必要に応じて、アクセス制御処理の結果等を表示部21に表示する表示制御処理を実行する(ステップS105)。
【0029】
次に、図5の各ステップの詳細について以下に説明する。図6は、ステップS101の嗜好情報算出処理の一例を示すフローチャートである。
【0030】
算出部12は、ユーザの視聴状態を含む放送番組情報を利用して、ユーザ嗜好モデルを算出する嗜好モデル算出処理を実行する(ステップS121)。
【0031】
図7は、ステップS121の嗜好モデル算出処理の一例を示すフローチャートである。嗜好モデル算出処理は、ブースティング手法に基づいている。ブースティング手法は、データ重みを導入し、データ重みを逐次更新しながら学習を行うことを特徴としている。ブースティング手法は高い分類性能を示すことが知られている。
【0032】
まず、算出部12は、既に放送された放送番組について初期番組重みを与える(ステップS121−1)。以下の数1は、放送番組の初期番組重みwi0の一例を表している。なお、witは、繰り返し回数tのときの放送番組iの重み(番組重み)を表す。
【数1】
【0033】
ここでiは放送番組のIDを表しており、既に放送された放送番組の数はNp個であるとする。数1は、i=1からi=Npまでの全ての放送番組に1/Npの均等な番組重みを与えることを示す。Npの値は、過去に放送された番組の情報をどの程度格納しておくかに依存する。例えば、一般的に1週間の地上波7チャンネルで放送される放送番組は2,000件程度であることが知られている。本実施形態では過去1週間分の放送番組の情報が格納されているとする。
【0034】
次に、算出部12は、計算(学習)の繰り返し回数tが予め設定された上限回数T未満であるか否かを判定する(ステップS121−2)。tがTに等しければ(ステップS121−2:No)、嗜好モデル算出処理を終了する。
【0035】
tがT未満の場合(ステップS121−2:Yes)、算出部12は、メタデータに含まれる特徴語のうち、選択されていない特徴語が存在するか否かを判定する(ステップS121−3)。
【0036】
図8は、本実施形態における特徴語の一例を示す図である。図8は、特徴語属性と、この特徴語属性のメタデータから抽出された特徴語とを対応づけた組の例を示している。例えば図2の番組Aに対応する放送番組情報からは、(出演者,福○雅治)、(キーワード,生放送)、(ジャンル,音楽)の組が得られる。算出部12は、このようにして得られる特徴語から、未選択の特徴語を逐次選択する。
【0037】
図7に戻り、選択されていない特徴語が存在する場合(ステップS121−3:Yes)、算出部12は、選択されていない特徴語の中から未選択の特徴語を1つ選択する(ステップS121−4)。算出部12は、選択された特徴語に対する特徴語嗜好スコアを計算する(ステップS121−5)。以下の数2は、特徴語嗜好スコアfiの算出式の一例を示す。
【数2】
【0038】
ここでI(i)は、放送番組iをユーザが視聴していた場合に1となり、そうでない場合に0となる関数である。数2の特徴語嗜好スコアは、番組重みを反映した形で加算される。後述するように例えばユーザが視聴した番組の値が高くなるように番組重みが更新される。このため、ユーザが視聴したことなどにより番組重みが高い放送番組に含まれる特徴語ほど特徴語嗜好スコアの値は高くなる。
【0039】
次に、算出部12は、特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコアよりも大きいか否かを判断する(ステップS121−6)。本実施形態では、一時最大スコア情報に含まれる特徴語嗜好スコアの初期値は0であるとする。数3は、本実施形態における一時最大スコア情報の一例を表している。数3の例では、一時最大スコア情報は、特徴語属性、特徴語、および、特徴語嗜好スコアの組で構成される。
【数3】
【0040】
特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコアよりも大きい場合(ステップS121−6:Yes)、算出部12は、選択されている特徴語属性と特徴語および特徴語嗜好スコアによって一時最大スコア情報を更新する(ステップS121−7)。一時最大スコア情報は、例えばRAMなどの記憶部(図示せず)に保存しておく。
【0041】
一時最大スコア情報の更新後、または、特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコア以下の場合(ステップS121−6:No)、ステップS121−3に戻り処理を繰り返す。
【0042】
選択されていない特徴語が存在しない場合(ステップS121−3:No)、算出部12は、一時最大スコア情報を保持することで嗜好モデルを更新し(ステップS121−8)、一時最大スコア情報を初期値に戻す。
【0043】
図9は、嗜好モデルの一例を示す図である。嗜好モデルは、繰り返し回数tと、一時最大スコア情報に含まれる特徴語属性、特徴語、および、特徴語嗜好スコアと、を含む。図9では、1回目の繰り返し計算で(出演者,福○雅治,0.92)が嗜好モデルとして格納され、2回目の繰り返し計算で(キーワード,サスペンス,0.83)が嗜好モデルとして格納された例が示されている。
【0044】
図7に戻り、算出部12は、既に放送された放送番組について番組重みを算出する(ステップS121−9)。算出後、ステップS121−2に戻り処理が繰り返される。数4は、放送番組の番組重みを更新する式の一例を表している。
【数4】
【0045】
ここでft−1は、嗜好モデルに格納された(t−1)回目の繰り返し計算の特徴語嗜好スコアであり、xt−1は特徴語である。yiはユーザが放送番組iを視聴した場合に1となり、視聴していない場合に−1となる変数である。ht−1(x)は特徴語xが放送番組iのメタデータに含まれている場合に1をとり、含まれていない場合に−1をとる関数である。
【0046】
数4により番組重みの更新を行うことで、特徴語嗜好スコアの高い特徴語を含んでいながら視聴されていない番組や、特徴語嗜好スコアの高い特徴語を含まないが視聴されている番組の番組重みが高くなる。このような番組重みの更新はブースティング手法で用いられており、精度の高い嗜好モデルの学習が可能である。
【0047】
繰り返し計算の上限回数Tは任意の値に設定することが可能である。本実施形態ではTの値は1000であるとする。
【0048】
図6に戻り、嗜好モデル算出処理後の処理の説明を続ける。算出部12は、嗜好モデル算出処理で求めたユーザ嗜好モデルを嗜好情報記憶部13に出力する(ステップS122)。
【0049】
図9は、ユーザ嗜好モデルの一例を示す図である。繰り返し計算の上限回数T=1000であることから、1000の特徴語と特徴語嗜好スコアとを含むユーザ嗜好モデルが嗜好情報記憶部13に格納される。
【0050】
次に、算出部12は、ユーザ嗜好モデルにより未放送の放送番組の番組嗜好スコアを算出する(ステップS123)。数5は、未放送の放送番組jの番組嗜好スコアfsjの算出式の一例を表している。
【数5】
【0051】
ここでjは未放送の放送番組に固有のIDである。ftは嗜好モデルのt番目の特徴語嗜好スコアの値である。xtは嗜好モデルのt番目の特徴語である。ht(x)は特徴語xが放送番組jのメタデータに含まれている場合に1をとり、含まれていない場合に−1をとる関数である。数5では、特徴語嗜好スコアの高い特徴語が多く含まれる放送番組ほどの番組嗜好スコアの値は高くなる。
【0052】
次に、算出部12は、未放送の放送番組の番組嗜好スコアを嗜好情報記憶部13に出力する(ステップS124)。図3は、このようにして算出された未放送の番組X、Y、Zの番組嗜好スコアの例を示している。図3の例では、図2の未放送の番組X、番組Y、番組Zのうち、特徴語嗜好スコアの高い特徴語を含む番組Xと番組Yの番組嗜好スコアが高くなっている。
【0053】
図10は、ステップS105の表示制御処理の一例を示すフローチャートである。
【0054】
表示制御部19は、嗜好情報記憶部13に格納された嗜好情報を読み込む(ステップS191)。表示制御部19は、推薦状態記憶部20から推薦状態を読み込む(ステップS192)。表示制御部19は、ユーザが実際に視聴を行う表示部21に、読み込んだ推薦状態に応じた推薦画面を表示する(ステップS193)。
【0055】
図11は、推薦状態0の場合に表示制御部19が出力する推薦画面の一例を示す図である。表示制御部19は、推薦状態0のとき特徴語嗜好スコアの順にK個(Kは予め定められた1以上の整数)の特徴語を表示する。また、表示制御部19は、出演者やジャンルなどの特徴語属性ごとに特徴語を表示する。
【0056】
図12は、推薦状態1の場合に表示制御部19が出力する推薦画面の一例を示す図である。図12の例では、未視聴の番組嗜好スコアの順に番組が表示されている。表示制御部19が特徴語や番組名を画面上に表示することで、ユーザは入力可能な単語を知ることができ、ユーザが発話時に発話する単語を容易に決定することができる。
【0057】
図13は、ステップS102の辞書更新処理の一例を示すフローチャートである。
【0058】
更新部14は、推薦状態記憶部20から推薦状態を読み込む(ステップS141)。更新部14は、嗜好情報記憶部13に格納された嗜好情報を読み込む(ステップS142)。更新部14は、特徴語と番組名を音素列に変換し、推薦状態と嗜好情報とから、変換した各音素列の認識重みを計算する(ステップS143)。
【0059】
数6は、推薦状態0のときの認識重みを表している。数6は、特徴語xiに対しては認識重み0〜1の値をとり、番組名pjに対しては認識重み0.0の値をとる。fav(xi)は、特徴語xiの特徴語嗜好スコアを表す。max(fav(x))は、特徴語嗜好スコアの最大値を表す。
【数6】
【0060】
上述の図4は、推薦状態0の場合の認識辞書の例を表している。音素列では、特徴語である「福○雅治」および「サスペンス」、並びに、番組名である「番組A」および「番組B」が、それぞれ音素列「fukumarumasaharu」、「sasupeNsu」、「baNgumiee」および「baNgumibii」に変換されている。特徴語や番組名の文字列から音素列への変換は、形態素解析を用いることで容易に実現可能である。
【0061】
認識重みには数6により算出された認識重みの値が格納されている。音声認識では、認識重みが大きい単語ほど優先して認識される。本実施形態では、推薦状態0は画面上に特徴語が推薦されている状態である。このため、番組名の認識重みを0.0にすることで、特徴語を番組名と誤認識することを防ぐことが可能となる。
【0062】
数7は、推薦状態1のときの認識重みを表している。数7は、特徴語xiに対しては認識重み0.0の値をとり、番組名pjに対しては認識重み0〜1の値をとる。
【数7】
【0063】
図14は、推薦状態1の場合の認識辞書の一例を示す図である。本実施形態では、推薦状態1は画面上に番組名が推薦されている状態である。このため、特徴語の認識重みを0.0にすることで、番組名を特徴語と誤認識することを防ぐことが可能となる。
【0064】
図13に戻り、更新部14は、辞書記憶部15に認識重みを更新した認識辞書を出力する(ステップS144)。このように、更新部14は、ユーザの嗜好に合った特徴語や番組名に高い認識重みを与えることで、ユーザが発話すると予想される単語を高い精度で認識することを可能にする。
【0065】
図15は、ステップS103の音声認識処理の一例を示すフローチャートである。
【0066】
認識部16は、受信部17より音声信号を読み込む(ステップS161)。認識部16は、音声信号から音声認識に用いるための特徴量を抽出する(ステップS162)。一般的な特徴量抽出は公知の技術を用いて容易に実現することが可能である。例えば、一定間隔で区切ったフレームごとにMFCC(Mel−Frequency−Cepstrum−Coefficient)を算出することでスペクトル特徴量列を得ることができる。
【0067】
認識部16は、抽出した特徴量を音素列に変換する(ステップS163)。一般的な音素列への変換は公知技術で容易に実現することができる。例えば隠れマルコフモデルを用いた変換により、スペクトル特徴量列を音素列に変換することが可能である。
【0068】
認識部16は、音素列を単語に変換する(ステップS164)。音素列を単語に変換する際には、認識重みを反映する。ユーザは嗜好に合った単語を発する機会が多いと考えられる。このため、音素列を認識重みの高い単語に優先的に変換する。これにより、音素列変換で誤認識があった場合でも頑健に単語認識を行うことが可能になる。認識部16は、認識された単語を操作制御部18に出力する(ステップS165)。
【0069】
図16は、ステップS104のアクセス制御処理の一例を示すフローチャートである。
【0070】
操作制御部18は、認識部16から認識結果を読み込む(ステップS181)。操作制御部18は、推薦状態記憶部20から推薦状態を読み込む(ステップS182)。操作制御部18は、番組情報記憶部11に格納された放送番組情報を検索する(ステップS183)。推薦状態が0の場合、操作制御部18は、認識結果が放送番組の特徴語に含まれる番組を検索結果として表示制御部19に出力する。推薦状態が1の場合、操作制御部18は、認識結果が番組名と一致する番組の録画予約を行う。
【0071】
操作制御部18は、推薦状態を更新して推薦状態記憶部20に出力する(ステップS184)。推薦状態が0の場合、操作制御部18は、推薦状態を1に更新して推薦状態記憶部20に出力する。推薦状態が1の場合、操作制御部18は、推薦状態を0に更新して推薦状態記憶部20に出力する。
【0072】
上述の図11および図12を用いて本実施形態の効果の一例を示す。本実施形態によれば、音声認識装置1は適切なタイミングで図11のような音声認識可能なキーワードを提示することが可能である。ここで適切なタイミングとして、例えば番組終了直後のタイミングが考えられる。提示されたキーワードは認識重みにより重みづけされている。このため、ユーザが発声する確率の高いキーワードを高精度で認識することが可能になる。すなわち、リモコンやキーボードの煩雑な作業なしにキーワードを入力することが可能になる。以下では、ユーザはシステムに対して「サスペンス」と発声したこととする。
【0073】
音声認識装置1は、キーワードを認識すると推薦状態を更新し、検索結果を図12のように表示する。図12では特徴語に「サスペンス」を含む放送番組を含む番組が提示されている。このように、本実施形態の音声認識装置1によれば、ユーザの嗜好に合ったキーワードから所望のキーワードを選択させ、選択されたキーワードで放送番組を絞込んで、キーワードに該当する個々の放送番組を表示させることができる。
【0074】
「サスペンス」は一般的な語であるため、「サスペンス」を特徴語に含む未放送の番組は多数存在する場合が考えられる。放送番組の検索結果が多い場合には、画面表示が煩雑になるだけでなく、好みの番組を探すための画面のスクロール操作など新たな作業が必要となる可能性が考えられる。本実施形態では、ユーザの嗜好に合った番組Yが上位に表示され、嗜好に合っていない番組Zが下位に表示される。嗜好に合った番組が画面に簡潔に示されることで、ユーザは直感的に音声で番組の視聴や録画予約を行うことができ、好みの番組に対して簡単に意図した操作を行うことができる。
【0075】
音声認識装置1は、複数のユーザにより利用される場合がある。従って、上記処理をユーザごとに実行するように構成してもよい。この場合、例えば各記憶部(番組情報記憶部11、嗜好情報記憶部13、辞書記憶部15、推薦状態記憶部20)が、ユーザごとに各情報を記憶するように構成すればよい。
【0076】
ユーザの判定は、例えば、認識部16が音声に基づく話者判定機能を備えるように構成する。具体的には、認識部16が、例えば受信部17により受信された音声の基本周波数、スペクトル分布、フォルマント分布、または発話速度などの音響的な特徴量を分析する話者判定機能を備えるように構成すればよい。なお、話者判定機能はこれに限られるものではない。例えば、リモコン等の操作入力部(図示せず)により事前にユーザを特定する情報(ユーザID等)を入力させ、この情報により判定するように構成してもよい。
【0077】
以上説明したとおり、本実施形態によれば、ユーザは容易に好みの番組を視聴および録画予約することが可能になる。
【0078】
次に、本実施形態にかかる音声認識装置のハードウェア構成について図17を用いて説明する。図17は、本実施形態にかかる音声認識装置のハードウェア構成を示す説明図である。
【0079】
本実施形態にかかる音声認識装置は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0080】
本実施形態にかかる音声認識装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0081】
本実施形態にかかる音声認識装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0082】
さらに、本実施形態にかかる音声認識装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に記憶し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態にかかる音声認識装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0083】
本実施形態にかかる音声認識装置で実行されるプログラムは、コンピュータを上述した音声認識装置の各部(算出部、更新部、認識部、受信部、操作制御部、表示制御部)として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0084】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0085】
11 番組情報記憶部
12 算出部
13 嗜好情報記憶部
14 更新部
15 辞書記憶部
16 認識部
17 受信部
18 操作制御部
19 表示制御部
20 推薦状態記憶部
21 表示部
【技術分野】
【0001】
本発明の実施形態は、音声認識装置、音声認識方法およびプログラムに関する。
【背景技術】
【0002】
放送番組の電子番組表の情報を用いて音声制御を行う技術が知られている。例えば、電子番組表から放送番組の番組名、出演者、および、キーワードに含まれる語を抽出して認識の対象とし、ユーザの発声にいずれかの語が該当する場合に該当する放送番組を選局する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−250575号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術では、電子番組表から抽出される出演者やキーワードは大量であるため、音声認識の対象となる語彙数が多く誤認識が起こりやすいという問題があった。
【課題を解決するための手段】
【0005】
実施形態の音声認識装置は、番組情報記憶部と、辞書記憶部と、算出部と、更新部と、認識部と、操作制御部とを備える。番組情報記憶部は、放送番組のメタデータとユーザの視聴状態とを記憶する。辞書記憶部は、音声認識の対象となる認識語と優先度とを含む認識辞書を記憶する。算出部は、メタデータと視聴状態とに基づいて、放送番組の特徴語と特徴語に対するユーザの嗜好の度合いを表す第1スコアとを算出する。更新部は、特徴語を含む認識語の優先度を第1スコアに応じて更新する。認識部は、認識辞書を用いて音声を認識する。操作制御部は、認識結果に基づいて放送番組に対する操作を制御する。
【図面の簡単な説明】
【0006】
【図1】本実施形態にかかる音声認識装置のブロック図。
【図2】番組情報記憶部に格納された番組情報の一例を示す図。
【図3】番組名および番組嗜好スコアの例を表す図。
【図4】認識辞書のデータ構造例を示す図。
【図5】音声認識処理のフローチャート。
【図6】嗜好情報算出処理のフローチャート。
【図7】嗜好モデル算出処理のフローチャート。
【図8】特徴語の一例を示す図。
【図9】嗜好モデルの一例を示す図。
【図10】表示制御処理のフローチャート。
【図11】推薦状態0の場合の推薦画面の図。
【図12】推薦状態1の場合の推薦画面の図。
【図13】辞書更新処理のフローチャート。
【図14】推薦状態1の場合の認識辞書の一例を示す図。
【図15】音声認識処理のフローチャート。
【図16】アクセス制御処理のフローチャート。
【図17】音声認識装置のハードウェア構成図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、この発明にかかる音声認識装置の好適な実施形態を詳細に説明する。以下では、放送番組を視聴する機器として音声認識装置を実現する場合を説明するが、適用可能な装置はこれに限られるものではない。
【0008】
放送番組を視聴する機器では、音声認識の精度が必ずしも十分でないことが問題となっている。例えば、放送番組が視聴されている際には、スピーカから放送番組の音声が出力されている。このため、ユーザの発声を認識する際の妨げとなると考えられる。また、視聴機器は生活空間に備えられていることが多く、多様な生活雑音が混入すると考えられる。そのため、視聴機器による音声認識の精度は低下することが予想される。従って、従来技術のように、電子番組表全体から抽出した多数の単語を認識対象とした場合、十分な精度が得られない可能性がある。また、音声による制御を行う際に、ユーザが音声により入力可能な単語を知ることができないことも問題となる。従来技術のように電子番組表に含まれる単語を認識対象とする方法では、ユーザが予め電子番組表の内容を知らない場合には、どのような単語で番組を選択することが可能かを知ることができない。そのため、ユーザはどのような発声を行えば所望した番組を選択できるか分からず、意図した制御を行うことが困難であると考えられる。
【0009】
そこで、本実施形態にかかる音声認識装置は、放送番組に付与されたジャンルや出演者などのメタデータとユーザの視聴履歴(視聴状態)から放送番組の特徴を表す語である特徴語を抽出する。また、特徴語と番組に対するユーザの嗜好の度合いを示す嗜好スコアをそれぞれ算出し、嗜好スコアから特徴語と番組名の認識重みを算出して音声認識を行う。また、当該スコアが高い特徴語や番組名を入力候補としてユーザに提示する。
【0010】
嗜好スコアを利用して音声認識の認識重みを算出することで、ユーザの嗜好に合った特徴語や番組名を高い精度で認識することが可能になる。また嗜好スコアに基づいて入力候補を提示することで、ユーザは嗜好に合った特徴語や番組名が入力可能であることを知ることができる。
【0011】
図1は、本実施形態にかかる音声認識装置1の構成の一例を示すブロック図である。図1に示すように、音声認識装置1は、番組情報記憶部11と、算出部12と、嗜好情報記憶部13と、更新部14と、辞書記憶部15と、認識部16と、受信部17と、操作制御部18と、表示制御部19と、推薦状態記憶部20と、表示部21と、を備えている。
【0012】
番組情報記憶部11は、放送番組のメタデータとユーザの視聴状態とを対応づけた放送番組情報を記憶する。メタデータは、ID、放送日時、番組名(タイトル)、出演者、キーワード、および、ジャンルの項目を含む。メタデータは、例えば、一般的な電子番組表から容易に抽出することが可能である。メタデータに含まれる各項目の情報から、特徴語が抽出される。以下では、特徴語の抽出対象となるメタデータ内の各項目を特徴語属性ともいう。
【0013】
視聴状態は、放送番組に対するユーザの視聴状態を表す。視聴状態は、例えばユーザが番組を一定の割合以上視聴した場合には「視聴」とし、そうでない場合には「未視聴」とすることができる。電子番組表では放送が予定されている番組の情報も配信されており、例えば1週間後の番組の情報を抽出することが可能である。放送番組情報が得られているが放送されていない番組の視聴状態は「未放送」とすることができる。
【0014】
図2は、番組情報記憶部11に格納された放送番組情報の一例を示す図である。各番組について、ID、日付、時間、番組名、出演者、キーワード、および、ジャンルのメタデータが得られている。一般的な電子番組表にはキーワードが付与されていない。このような場合は、番組の概要を記述したテキストから、形態素解析を用いることでキーワードを容易に抽出可能である。本実施形態では、番組Aと番組Bの視聴状態は「視聴」であり、番組Cの視聴状態は「未視聴」であるとする。また本実施形態では番組X、番組Y、および番組Zは放送されていないため、視聴状態は「未放送」であるとする。
【0015】
算出部12は、放送番組情報を利用して、特徴語に対するユーザの嗜好の度合いを表す特徴語嗜好スコアを算出し、特徴語嗜好スコアをもとにユーザ嗜好モデルを学習する。また、算出部12は、未視聴の放送番組に対するユーザの嗜好の度合いを表す番組嗜好スコアを算出する。算出部12は、嗜好情報記憶部13に特徴語、特徴語嗜好スコア、番組名、および、番組嗜好スコアを含む嗜好情報を出力する。
【0016】
嗜好情報記憶部13は、出力された嗜好情報を記憶する。図3は、嗜好情報のうち、番組名および番組嗜好スコアの例を表す図である。嗜好情報記憶部13は、特徴語および特徴語嗜好スコアについても同様に、例えば、IDと特徴語と特徴語嗜好スコアとを対応づけて記憶する。
【0017】
辞書記憶部15は、音声認識で用いる認識辞書を記憶する。例えば、辞書記憶部15は、音声認識の対象となる認識語の音素列と、認識語の認識重み(優先度)とを含む認識辞書を記憶する。図4は、認識辞書のデータ構造の一例を示す図である。図4に示すように、認識辞書は、音素列と、当該音素列に対する認識重みとを含む。なお、図4の認識辞書のデータ構造は一例であり、これに限られるものではない。
【0018】
更新部14は、嗜好情報記憶部13に格納された嗜好情報を利用して、認識辞書の認識重みを更新する。例えば、更新部14は、特徴語嗜好スコアが大きいほど値が大きくなるように、この特徴語嗜好スコアに対応する特徴語を含む認識語の認識重みを更新する。また、更新部14は、番組嗜好スコアが大きいほど値が大きくなるように、この番組嗜好スコアに対応する番組名を含む認識語の認識重みを更新する。
【0019】
受信部17は、ユーザが発声した音声を受信し音声信号として認識部16に出力する。受信部17は例えば一般的なマイクで実現することが可能である。
【0020】
認識部16は、受信部17から入力される音声信号と辞書記憶部15に格納された認識辞書を用いて音声認識を行い、認識結果を操作制御部18に出力する。認識部16は、認識重みが大きい単語ほど優先して音声認識を実行する。
【0021】
操作制御部18は、認識部16から出力される認識結果と推薦状態記憶部20に格納された推薦状態を用いて、番組情報記憶部11に格納された放送番組情報の検索や録画予約等のアクセス操作を制御する。
【0022】
推薦状態記憶部20は、表示制御部19が推薦を行う情報の種類を表す推薦状態を記憶する。推薦状態記憶部20は、例えば、推薦状態0および推薦状態1の2つの状態を記憶する。推薦状態0は、特徴語嗜好スコアを利用して、特徴語嗜好スコアが高い特徴語に関連する情報を推薦する状態を表す。推薦状態1は、番組嗜好スコアを利用して、番組嗜好スコアが高い番組に関連する情報を推薦する状態を表す。推薦状態記憶部20には初期値として推薦状態0が格納されているものとする。なお、推薦状態の個数は2に限られるものではなく、3以上の推薦状態を用いてもよい。
【0023】
表示部21は、各種情報を表示する液晶ディスプレイなどの表示装置である。
【0024】
表示制御部19は、表示部21に対する情報の表示を制御する。例えば、表示制御部19は、嗜好情報記憶部13に格納された嗜好情報を利用して、表示部21に単語や番組名を提示する。また、表示制御部19は、例えばユーザにより指定された推薦状態を推薦状態記憶部20に出力する。また、ユーザの指定により推薦状態が変更された場合、表示制御部19は、推薦状態に応じて認識重みを更新することを更新部14に指示する。
【0025】
更新部14は、推薦状態に応じて、特徴語嗜好スコアに対応する特徴語を含む認識語の認識重みを更新するか、番組嗜好スコアに対応する番組名を含む認識語の認識重みを更新するかを切り替える。
【0026】
なお、各記憶部(番組情報記憶部11、嗜好情報記憶部13、辞書記憶部15、推薦状態記憶部20)は、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0027】
次に、このように構成された本実施形態にかかる音声認識装置1による音声認識処理について図5を用いて説明する。図5は、本実施形態における音声認識処理の全体の流れを示すフローチャートである。
【0028】
まず、算出部12が、放送番組情報を利用して嗜好情報を算出するとともに、ユーザ嗜好モデルを算出する嗜好情報算出処理を実行する(ステップS101)。次に、更新部14が、嗜好情報を利用して認識辞書を更新する辞書更新処理を実行する(ステップS102)。次に、認識部16が、受診された音声を認識する音声認識処理を実行する(ステップS103)。次に、操作制御部18が、音声認識処理の認識結果に従い、放送番組に対する各種のアクセス制御処理を実行する(ステップS104)。表示制御部19は、必要に応じて、アクセス制御処理の結果等を表示部21に表示する表示制御処理を実行する(ステップS105)。
【0029】
次に、図5の各ステップの詳細について以下に説明する。図6は、ステップS101の嗜好情報算出処理の一例を示すフローチャートである。
【0030】
算出部12は、ユーザの視聴状態を含む放送番組情報を利用して、ユーザ嗜好モデルを算出する嗜好モデル算出処理を実行する(ステップS121)。
【0031】
図7は、ステップS121の嗜好モデル算出処理の一例を示すフローチャートである。嗜好モデル算出処理は、ブースティング手法に基づいている。ブースティング手法は、データ重みを導入し、データ重みを逐次更新しながら学習を行うことを特徴としている。ブースティング手法は高い分類性能を示すことが知られている。
【0032】
まず、算出部12は、既に放送された放送番組について初期番組重みを与える(ステップS121−1)。以下の数1は、放送番組の初期番組重みwi0の一例を表している。なお、witは、繰り返し回数tのときの放送番組iの重み(番組重み)を表す。
【数1】
【0033】
ここでiは放送番組のIDを表しており、既に放送された放送番組の数はNp個であるとする。数1は、i=1からi=Npまでの全ての放送番組に1/Npの均等な番組重みを与えることを示す。Npの値は、過去に放送された番組の情報をどの程度格納しておくかに依存する。例えば、一般的に1週間の地上波7チャンネルで放送される放送番組は2,000件程度であることが知られている。本実施形態では過去1週間分の放送番組の情報が格納されているとする。
【0034】
次に、算出部12は、計算(学習)の繰り返し回数tが予め設定された上限回数T未満であるか否かを判定する(ステップS121−2)。tがTに等しければ(ステップS121−2:No)、嗜好モデル算出処理を終了する。
【0035】
tがT未満の場合(ステップS121−2:Yes)、算出部12は、メタデータに含まれる特徴語のうち、選択されていない特徴語が存在するか否かを判定する(ステップS121−3)。
【0036】
図8は、本実施形態における特徴語の一例を示す図である。図8は、特徴語属性と、この特徴語属性のメタデータから抽出された特徴語とを対応づけた組の例を示している。例えば図2の番組Aに対応する放送番組情報からは、(出演者,福○雅治)、(キーワード,生放送)、(ジャンル,音楽)の組が得られる。算出部12は、このようにして得られる特徴語から、未選択の特徴語を逐次選択する。
【0037】
図7に戻り、選択されていない特徴語が存在する場合(ステップS121−3:Yes)、算出部12は、選択されていない特徴語の中から未選択の特徴語を1つ選択する(ステップS121−4)。算出部12は、選択された特徴語に対する特徴語嗜好スコアを計算する(ステップS121−5)。以下の数2は、特徴語嗜好スコアfiの算出式の一例を示す。
【数2】
【0038】
ここでI(i)は、放送番組iをユーザが視聴していた場合に1となり、そうでない場合に0となる関数である。数2の特徴語嗜好スコアは、番組重みを反映した形で加算される。後述するように例えばユーザが視聴した番組の値が高くなるように番組重みが更新される。このため、ユーザが視聴したことなどにより番組重みが高い放送番組に含まれる特徴語ほど特徴語嗜好スコアの値は高くなる。
【0039】
次に、算出部12は、特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコアよりも大きいか否かを判断する(ステップS121−6)。本実施形態では、一時最大スコア情報に含まれる特徴語嗜好スコアの初期値は0であるとする。数3は、本実施形態における一時最大スコア情報の一例を表している。数3の例では、一時最大スコア情報は、特徴語属性、特徴語、および、特徴語嗜好スコアの組で構成される。
【数3】
【0040】
特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコアよりも大きい場合(ステップS121−6:Yes)、算出部12は、選択されている特徴語属性と特徴語および特徴語嗜好スコアによって一時最大スコア情報を更新する(ステップS121−7)。一時最大スコア情報は、例えばRAMなどの記憶部(図示せず)に保存しておく。
【0041】
一時最大スコア情報の更新後、または、特徴語嗜好スコアが一時最大スコア情報に含まれる特徴語嗜好スコア以下の場合(ステップS121−6:No)、ステップS121−3に戻り処理を繰り返す。
【0042】
選択されていない特徴語が存在しない場合(ステップS121−3:No)、算出部12は、一時最大スコア情報を保持することで嗜好モデルを更新し(ステップS121−8)、一時最大スコア情報を初期値に戻す。
【0043】
図9は、嗜好モデルの一例を示す図である。嗜好モデルは、繰り返し回数tと、一時最大スコア情報に含まれる特徴語属性、特徴語、および、特徴語嗜好スコアと、を含む。図9では、1回目の繰り返し計算で(出演者,福○雅治,0.92)が嗜好モデルとして格納され、2回目の繰り返し計算で(キーワード,サスペンス,0.83)が嗜好モデルとして格納された例が示されている。
【0044】
図7に戻り、算出部12は、既に放送された放送番組について番組重みを算出する(ステップS121−9)。算出後、ステップS121−2に戻り処理が繰り返される。数4は、放送番組の番組重みを更新する式の一例を表している。
【数4】
【0045】
ここでft−1は、嗜好モデルに格納された(t−1)回目の繰り返し計算の特徴語嗜好スコアであり、xt−1は特徴語である。yiはユーザが放送番組iを視聴した場合に1となり、視聴していない場合に−1となる変数である。ht−1(x)は特徴語xが放送番組iのメタデータに含まれている場合に1をとり、含まれていない場合に−1をとる関数である。
【0046】
数4により番組重みの更新を行うことで、特徴語嗜好スコアの高い特徴語を含んでいながら視聴されていない番組や、特徴語嗜好スコアの高い特徴語を含まないが視聴されている番組の番組重みが高くなる。このような番組重みの更新はブースティング手法で用いられており、精度の高い嗜好モデルの学習が可能である。
【0047】
繰り返し計算の上限回数Tは任意の値に設定することが可能である。本実施形態ではTの値は1000であるとする。
【0048】
図6に戻り、嗜好モデル算出処理後の処理の説明を続ける。算出部12は、嗜好モデル算出処理で求めたユーザ嗜好モデルを嗜好情報記憶部13に出力する(ステップS122)。
【0049】
図9は、ユーザ嗜好モデルの一例を示す図である。繰り返し計算の上限回数T=1000であることから、1000の特徴語と特徴語嗜好スコアとを含むユーザ嗜好モデルが嗜好情報記憶部13に格納される。
【0050】
次に、算出部12は、ユーザ嗜好モデルにより未放送の放送番組の番組嗜好スコアを算出する(ステップS123)。数5は、未放送の放送番組jの番組嗜好スコアfsjの算出式の一例を表している。
【数5】
【0051】
ここでjは未放送の放送番組に固有のIDである。ftは嗜好モデルのt番目の特徴語嗜好スコアの値である。xtは嗜好モデルのt番目の特徴語である。ht(x)は特徴語xが放送番組jのメタデータに含まれている場合に1をとり、含まれていない場合に−1をとる関数である。数5では、特徴語嗜好スコアの高い特徴語が多く含まれる放送番組ほどの番組嗜好スコアの値は高くなる。
【0052】
次に、算出部12は、未放送の放送番組の番組嗜好スコアを嗜好情報記憶部13に出力する(ステップS124)。図3は、このようにして算出された未放送の番組X、Y、Zの番組嗜好スコアの例を示している。図3の例では、図2の未放送の番組X、番組Y、番組Zのうち、特徴語嗜好スコアの高い特徴語を含む番組Xと番組Yの番組嗜好スコアが高くなっている。
【0053】
図10は、ステップS105の表示制御処理の一例を示すフローチャートである。
【0054】
表示制御部19は、嗜好情報記憶部13に格納された嗜好情報を読み込む(ステップS191)。表示制御部19は、推薦状態記憶部20から推薦状態を読み込む(ステップS192)。表示制御部19は、ユーザが実際に視聴を行う表示部21に、読み込んだ推薦状態に応じた推薦画面を表示する(ステップS193)。
【0055】
図11は、推薦状態0の場合に表示制御部19が出力する推薦画面の一例を示す図である。表示制御部19は、推薦状態0のとき特徴語嗜好スコアの順にK個(Kは予め定められた1以上の整数)の特徴語を表示する。また、表示制御部19は、出演者やジャンルなどの特徴語属性ごとに特徴語を表示する。
【0056】
図12は、推薦状態1の場合に表示制御部19が出力する推薦画面の一例を示す図である。図12の例では、未視聴の番組嗜好スコアの順に番組が表示されている。表示制御部19が特徴語や番組名を画面上に表示することで、ユーザは入力可能な単語を知ることができ、ユーザが発話時に発話する単語を容易に決定することができる。
【0057】
図13は、ステップS102の辞書更新処理の一例を示すフローチャートである。
【0058】
更新部14は、推薦状態記憶部20から推薦状態を読み込む(ステップS141)。更新部14は、嗜好情報記憶部13に格納された嗜好情報を読み込む(ステップS142)。更新部14は、特徴語と番組名を音素列に変換し、推薦状態と嗜好情報とから、変換した各音素列の認識重みを計算する(ステップS143)。
【0059】
数6は、推薦状態0のときの認識重みを表している。数6は、特徴語xiに対しては認識重み0〜1の値をとり、番組名pjに対しては認識重み0.0の値をとる。fav(xi)は、特徴語xiの特徴語嗜好スコアを表す。max(fav(x))は、特徴語嗜好スコアの最大値を表す。
【数6】
【0060】
上述の図4は、推薦状態0の場合の認識辞書の例を表している。音素列では、特徴語である「福○雅治」および「サスペンス」、並びに、番組名である「番組A」および「番組B」が、それぞれ音素列「fukumarumasaharu」、「sasupeNsu」、「baNgumiee」および「baNgumibii」に変換されている。特徴語や番組名の文字列から音素列への変換は、形態素解析を用いることで容易に実現可能である。
【0061】
認識重みには数6により算出された認識重みの値が格納されている。音声認識では、認識重みが大きい単語ほど優先して認識される。本実施形態では、推薦状態0は画面上に特徴語が推薦されている状態である。このため、番組名の認識重みを0.0にすることで、特徴語を番組名と誤認識することを防ぐことが可能となる。
【0062】
数7は、推薦状態1のときの認識重みを表している。数7は、特徴語xiに対しては認識重み0.0の値をとり、番組名pjに対しては認識重み0〜1の値をとる。
【数7】
【0063】
図14は、推薦状態1の場合の認識辞書の一例を示す図である。本実施形態では、推薦状態1は画面上に番組名が推薦されている状態である。このため、特徴語の認識重みを0.0にすることで、番組名を特徴語と誤認識することを防ぐことが可能となる。
【0064】
図13に戻り、更新部14は、辞書記憶部15に認識重みを更新した認識辞書を出力する(ステップS144)。このように、更新部14は、ユーザの嗜好に合った特徴語や番組名に高い認識重みを与えることで、ユーザが発話すると予想される単語を高い精度で認識することを可能にする。
【0065】
図15は、ステップS103の音声認識処理の一例を示すフローチャートである。
【0066】
認識部16は、受信部17より音声信号を読み込む(ステップS161)。認識部16は、音声信号から音声認識に用いるための特徴量を抽出する(ステップS162)。一般的な特徴量抽出は公知の技術を用いて容易に実現することが可能である。例えば、一定間隔で区切ったフレームごとにMFCC(Mel−Frequency−Cepstrum−Coefficient)を算出することでスペクトル特徴量列を得ることができる。
【0067】
認識部16は、抽出した特徴量を音素列に変換する(ステップS163)。一般的な音素列への変換は公知技術で容易に実現することができる。例えば隠れマルコフモデルを用いた変換により、スペクトル特徴量列を音素列に変換することが可能である。
【0068】
認識部16は、音素列を単語に変換する(ステップS164)。音素列を単語に変換する際には、認識重みを反映する。ユーザは嗜好に合った単語を発する機会が多いと考えられる。このため、音素列を認識重みの高い単語に優先的に変換する。これにより、音素列変換で誤認識があった場合でも頑健に単語認識を行うことが可能になる。認識部16は、認識された単語を操作制御部18に出力する(ステップS165)。
【0069】
図16は、ステップS104のアクセス制御処理の一例を示すフローチャートである。
【0070】
操作制御部18は、認識部16から認識結果を読み込む(ステップS181)。操作制御部18は、推薦状態記憶部20から推薦状態を読み込む(ステップS182)。操作制御部18は、番組情報記憶部11に格納された放送番組情報を検索する(ステップS183)。推薦状態が0の場合、操作制御部18は、認識結果が放送番組の特徴語に含まれる番組を検索結果として表示制御部19に出力する。推薦状態が1の場合、操作制御部18は、認識結果が番組名と一致する番組の録画予約を行う。
【0071】
操作制御部18は、推薦状態を更新して推薦状態記憶部20に出力する(ステップS184)。推薦状態が0の場合、操作制御部18は、推薦状態を1に更新して推薦状態記憶部20に出力する。推薦状態が1の場合、操作制御部18は、推薦状態を0に更新して推薦状態記憶部20に出力する。
【0072】
上述の図11および図12を用いて本実施形態の効果の一例を示す。本実施形態によれば、音声認識装置1は適切なタイミングで図11のような音声認識可能なキーワードを提示することが可能である。ここで適切なタイミングとして、例えば番組終了直後のタイミングが考えられる。提示されたキーワードは認識重みにより重みづけされている。このため、ユーザが発声する確率の高いキーワードを高精度で認識することが可能になる。すなわち、リモコンやキーボードの煩雑な作業なしにキーワードを入力することが可能になる。以下では、ユーザはシステムに対して「サスペンス」と発声したこととする。
【0073】
音声認識装置1は、キーワードを認識すると推薦状態を更新し、検索結果を図12のように表示する。図12では特徴語に「サスペンス」を含む放送番組を含む番組が提示されている。このように、本実施形態の音声認識装置1によれば、ユーザの嗜好に合ったキーワードから所望のキーワードを選択させ、選択されたキーワードで放送番組を絞込んで、キーワードに該当する個々の放送番組を表示させることができる。
【0074】
「サスペンス」は一般的な語であるため、「サスペンス」を特徴語に含む未放送の番組は多数存在する場合が考えられる。放送番組の検索結果が多い場合には、画面表示が煩雑になるだけでなく、好みの番組を探すための画面のスクロール操作など新たな作業が必要となる可能性が考えられる。本実施形態では、ユーザの嗜好に合った番組Yが上位に表示され、嗜好に合っていない番組Zが下位に表示される。嗜好に合った番組が画面に簡潔に示されることで、ユーザは直感的に音声で番組の視聴や録画予約を行うことができ、好みの番組に対して簡単に意図した操作を行うことができる。
【0075】
音声認識装置1は、複数のユーザにより利用される場合がある。従って、上記処理をユーザごとに実行するように構成してもよい。この場合、例えば各記憶部(番組情報記憶部11、嗜好情報記憶部13、辞書記憶部15、推薦状態記憶部20)が、ユーザごとに各情報を記憶するように構成すればよい。
【0076】
ユーザの判定は、例えば、認識部16が音声に基づく話者判定機能を備えるように構成する。具体的には、認識部16が、例えば受信部17により受信された音声の基本周波数、スペクトル分布、フォルマント分布、または発話速度などの音響的な特徴量を分析する話者判定機能を備えるように構成すればよい。なお、話者判定機能はこれに限られるものではない。例えば、リモコン等の操作入力部(図示せず)により事前にユーザを特定する情報(ユーザID等)を入力させ、この情報により判定するように構成してもよい。
【0077】
以上説明したとおり、本実施形態によれば、ユーザは容易に好みの番組を視聴および録画予約することが可能になる。
【0078】
次に、本実施形態にかかる音声認識装置のハードウェア構成について図17を用いて説明する。図17は、本実施形態にかかる音声認識装置のハードウェア構成を示す説明図である。
【0079】
本実施形態にかかる音声認識装置は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0080】
本実施形態にかかる音声認識装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0081】
本実施形態にかかる音声認識装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0082】
さらに、本実施形態にかかる音声認識装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に記憶し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態にかかる音声認識装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0083】
本実施形態にかかる音声認識装置で実行されるプログラムは、コンピュータを上述した音声認識装置の各部(算出部、更新部、認識部、受信部、操作制御部、表示制御部)として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0084】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0085】
11 番組情報記憶部
12 算出部
13 嗜好情報記憶部
14 更新部
15 辞書記憶部
16 認識部
17 受信部
18 操作制御部
19 表示制御部
20 推薦状態記憶部
21 表示部
【特許請求の範囲】
【請求項1】
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出部と、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新部と、
音声を受信する受信部と、
前記認識辞書を用いて前記音声を認識する認識部と、
前記認識部による認識結果に基づいて、前記放送番組に対する操作を制御する操作制御部と、
を備えることを特徴とする音声認識装置。
【請求項2】
前記操作を指示する入力の候補を表す入力候補として、前記第1スコアが高い前記特徴語を優先して選択し、選択した前記入力候補を表示部に表示する表示制御部をさらに備えること、
を特徴とする請求項1に記載の音声認識装置。
【請求項3】
前記算出部は、さらに、前記放送番組に対する前記ユーザの嗜好の度合いを表すスコアであって、前記第1スコアが高い前記特徴語を含む前記放送番組ほど値が高い第2スコアを算出し、
前記表示制御部は、前記第1スコアに基づく選択が指定された場合に、前記第1スコアが高い前記特徴語を優先して選択し、前記第2スコアに基づく選択が指定された場合に、前記第2スコアが高い前記特徴語を優先して選択し、選択した前記入力候補を前記表示部に表示すること、
を特徴とする請求項2に記載の音声認識装置。
【請求項4】
前記算出部は、さらに、前記放送番組に対する前記ユーザの嗜好の度合いを表すスコアであって、前記第1スコアが高い前記特徴語を含む前記放送番組ほど値が高い第2スコアを算出し、
前記更新部は、さらに、前記放送番組を特定する特定情報を含む前記認識語の前記優先度を、前記第2スコアに応じて更新すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項5】
前記更新部は、前記第1スコアに基づく更新が指定された場合に、前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新し、前記第2スコアに基づく更新が指定された場合に、前記特定情報を含む前記認識語の前記優先度を、前記第2スコアに応じて更新すること、
を特徴とする請求項4に記載の音声認識装置。
【請求項6】
前記算出部は、前記ユーザが視聴した前記放送番組に含まれる前記特徴語ほど値が高い前記第1スコアを算出すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項7】
前記番組情報記憶部は、複数の前記ユーザごとに、前記メタデータと前記視聴状態とを対応づけて記憶し、
前記辞書記憶部は、複数の前記ユーザごとに前記認識辞書を記憶し、
前記算出部は、複数の前記ユーザごとに、前記メタデータと該ユーザの前記視聴状態とに基づいて、前記特徴語と前記第1スコアとを算出し、
前記認識部は、さらに、受信された前記音声に基づいて該音声を発声した前記ユーザを判定し、判定した前記ユーザの前記認識辞書を用いて前記音声を認識すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項8】
音声認識装置で実行される音声認識方法であって、
前記音声認識装置は、
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、を備え、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出ステップと、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新ステップと、
音声を受信する音声受信ステップと、
前記認識辞書を用いて前記音声を認識する音声認識ステップと、
前記音声認識ステップによる認識結果に基づいて、前記放送番組に対する操作を制御する操作制御ステップと、
を含むことを特徴とする音声認識方法。
【請求項9】
コンピュータを、
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出部と、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新部と、
音声を受信する受信部と、
前記認識辞書を用いて前記音声を認識する認識部と、
前記認識部による認識結果に基づいて、前記放送番組に対する操作を制御する操作制御部、
として機能させるためのプログラム。
【請求項1】
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出部と、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新部と、
音声を受信する受信部と、
前記認識辞書を用いて前記音声を認識する認識部と、
前記認識部による認識結果に基づいて、前記放送番組に対する操作を制御する操作制御部と、
を備えることを特徴とする音声認識装置。
【請求項2】
前記操作を指示する入力の候補を表す入力候補として、前記第1スコアが高い前記特徴語を優先して選択し、選択した前記入力候補を表示部に表示する表示制御部をさらに備えること、
を特徴とする請求項1に記載の音声認識装置。
【請求項3】
前記算出部は、さらに、前記放送番組に対する前記ユーザの嗜好の度合いを表すスコアであって、前記第1スコアが高い前記特徴語を含む前記放送番組ほど値が高い第2スコアを算出し、
前記表示制御部は、前記第1スコアに基づく選択が指定された場合に、前記第1スコアが高い前記特徴語を優先して選択し、前記第2スコアに基づく選択が指定された場合に、前記第2スコアが高い前記特徴語を優先して選択し、選択した前記入力候補を前記表示部に表示すること、
を特徴とする請求項2に記載の音声認識装置。
【請求項4】
前記算出部は、さらに、前記放送番組に対する前記ユーザの嗜好の度合いを表すスコアであって、前記第1スコアが高い前記特徴語を含む前記放送番組ほど値が高い第2スコアを算出し、
前記更新部は、さらに、前記放送番組を特定する特定情報を含む前記認識語の前記優先度を、前記第2スコアに応じて更新すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項5】
前記更新部は、前記第1スコアに基づく更新が指定された場合に、前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新し、前記第2スコアに基づく更新が指定された場合に、前記特定情報を含む前記認識語の前記優先度を、前記第2スコアに応じて更新すること、
を特徴とする請求項4に記載の音声認識装置。
【請求項6】
前記算出部は、前記ユーザが視聴した前記放送番組に含まれる前記特徴語ほど値が高い前記第1スコアを算出すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項7】
前記番組情報記憶部は、複数の前記ユーザごとに、前記メタデータと前記視聴状態とを対応づけて記憶し、
前記辞書記憶部は、複数の前記ユーザごとに前記認識辞書を記憶し、
前記算出部は、複数の前記ユーザごとに、前記メタデータと該ユーザの前記視聴状態とに基づいて、前記特徴語と前記第1スコアとを算出し、
前記認識部は、さらに、受信された前記音声に基づいて該音声を発声した前記ユーザを判定し、判定した前記ユーザの前記認識辞書を用いて前記音声を認識すること、
を特徴とする請求項1に記載の音声認識装置。
【請求項8】
音声認識装置で実行される音声認識方法であって、
前記音声認識装置は、
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、を備え、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出ステップと、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新ステップと、
音声を受信する音声受信ステップと、
前記認識辞書を用いて前記音声を認識する音声認識ステップと、
前記音声認識ステップによる認識結果に基づいて、前記放送番組に対する操作を制御する操作制御ステップと、
を含むことを特徴とする音声認識方法。
【請求項9】
コンピュータを、
放送番組のメタデータとユーザの視聴状態とを対応づけて記憶する番組情報記憶部と、
音声認識の対象となる認識語と、前記認識語の優先度とを含む認識辞書を記憶する辞書記憶部と、
前記メタデータと前記視聴状態とに基づいて、前記放送番組の特徴を表す特徴語と、前記特徴語に対する前記ユーザの嗜好の度合いを表す第1スコアと、を算出する算出部と、
前記特徴語を含む前記認識語の前記優先度を、前記第1スコアに応じて更新する更新部と、
音声を受信する受信部と、
前記認識辞書を用いて前記音声を認識する認識部と、
前記認識部による認識結果に基づいて、前記放送番組に対する操作を制御する操作制御部、
として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2013−68783(P2013−68783A)
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願番号】特願2011−207038(P2011−207038)
【出願日】平成23年9月22日(2011.9.22)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願日】平成23年9月22日(2011.9.22)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]