(57)【特許請求の範囲】
【請求項１】
原稿テキストに対応して、音声認識結果として入力される単語を順次受理しながら状態遷移していく有限状態トランスデューサーであって、前記音声認識結果に含まれる単語の誤りをも受理しながら状態遷移していく前記有限状態トランスデューサーの、状態に関する情報、および状態遷移に関して遷移元状態と遷移先状態と入力シンボルと出力シンボルと遷移重みとを含む情報、とを記憶する有限状態トランスデューサー情報記憶部と、
前記有限状態トランスデューサーにおける前記状態の尤度を表すスコアを記憶するノードデータ記憶部と、
前記原稿テキストに対応する音声の認識結果である認識単語の入力を外部から受け付けるとともに、受け付けた前記認識単語に応じて、前記有限状態トランスデューサーにおける前記状態ごとの当該時刻でのスコアを算出し、算出された前記スコアを用いて前記ノードデータ記憶部を更新するノードデータ更新部と、
処理開始を示す起動信号を外部から受け付けると、ノードデータ記憶部を参照することにより、その時点における最尤ノードを決定するとともに、前記有限状態トランスデューサー情報記憶部と前記ノードデータ記憶部とを参照して、前記最尤ノードまでの状態遷移を遡ることにより、状態遷移が確定済みの所定の時刻までのトレースバック処理を行い、当該トレースバック処理した状態遷移のパスを出力候補とするとともに、出力候補となった前記パスに関して、当該パスに前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを算出し、算出された前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に当該パスの出力候補を、確定出力とする原稿探索部と、
前記原稿探索部によって求められた前記確定出力を出力する出力部と、
を具備する音声認識誤り修正装置であって、
前記有限状態トランスデューサー情報記憶部は、出力シンボルが空でない状態遷移であるところの出力遷移を前記状態遷移の一部として含んで記憶しており、前記原稿テキストに含まれる文を複数のチャンクに分割し、前記チャンクに含まれる単語を入力シンボルとして受理する状態遷移のパスの後に前記出力遷移を設けた前記有限状態トランスデューサーの、前記状態に関する情報および前記状態遷移に関する情報を記憶する、
ことを特徴とする音声認識誤り修正装置。
【請求項２】
前記原稿探索部は、前記チャンクごとに前記誤りスコアを算出するとともに、前記チャンクごとの前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に、当該チャンクに対応する前記出力遷移の出力シンボルを、前記確定出力とするものであり、且つ、前記原稿探索部は、前記チャンクごとの前記誤りスコアを算出する際に、当該チャンクと当該チャンクの直前のチャンクの区間に関して前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを、当該チャンクの誤りスコアとして算出する、
ことを特徴とする請求項１に記載の音声認識誤り修正装置。
【請求項３】
原稿テキストに対応して、音声認識結果として入力される単語を順次受理しながら状態遷移していく有限状態トランスデューサーであって、前記音声認識結果に含まれる単語の誤りをも受理しながら状態遷移していく前記有限状態トランスデューサーの、状態に関する情報、および状態遷移に関して遷移元状態と遷移先状態と入力シンボルと出力シンボルと遷移重みとを含む情報、とを記憶する有限状態トランスデューサー情報記憶部と、
前記有限状態トランスデューサーにおける前記状態の尤度を表すスコアを記憶するノードデータ記憶部と、
前記原稿テキストに対応する音声の認識結果である認識単語の入力を外部から受け付けるとともに、受け付けた前記認識単語に応じて、前記有限状態トランスデューサーにおける前記状態ごとの当該時刻でのスコアを算出し、算出された前記スコアを用いて前記ノードデータ記憶部を更新するノードデータ更新部と、
処理開始を示す起動信号を外部から受け付けると、ノードデータ記憶部を参照することにより、その時点における最尤ノードを決定するとともに、前記有限状態トランスデューサー情報記憶部と前記ノードデータ記憶部とを参照して、前記最尤ノードまでの状態遷移を遡ることにより、状態遷移が確定済みの所定の時刻までのトレースバック処理を行い、当該トレースバック処理した状態遷移のパスを出力候補とするとともに、出力候補となった前記パスに関して、当該パスに前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを算出し、算出された前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に当該パスの出力候補を、確定出力とする原稿探索部と、
前記原稿探索部によって求められた前記確定出力を出力する出力部と、
を具備する音声認識誤り修正装置であって、
前記有限状態トランスデューサー情報記憶部は、出力シンボルが空でない状態遷移であるところの出力遷移を前記状態遷移の一部として含んで記憶しており、
前記原稿探索部は、前記出力遷移の遷移元状態に対応するノードの中で最尤であるノードをその時点における前記最尤ノードとして決定する、
ことを特徴とする音声認識誤り修正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識誤り修正装置に関する。
【背景技術】
【０００２】
近年、テレビ等の番組における字幕テキストの付与を自動的に行う技術について研究されている。
非特許文献１には、生放送のニュース番組への字幕付与を目的としたアプローチの一つに、スペインのＣＡＲＴＶの例が記載されている。非特許文献１に記載されたシステムは、ニュース項目とその順番、読み原稿が与えられていることを前提とし、読み原稿の単語を一列の音素列とし、入力音声で強制アライメントを施して原稿の読み上げ部分を特定している。強制アライメントとは発話内容の音素列が与えられたときに、各音素と発話音声区間の対応を得るアルゴリズムである。このシステムでは、原稿のどの部分を読んでいるのかを音素単位で特定できるため、早期に字幕文を確定して番組映像と整合性の高い字幕を出力することができる。
【０００３】
また、特許文献1には、単語単位で認識単語列と読み原稿を比較して音声認識誤りを修正する技術が開示されている。特許文献１に記載されたテキスト修正装置では、長さＮの単語連鎖ブロックで、音声認識結果の単語列と原稿内の単語列を比較することを特徴としている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１２８１８８号公報
【非特許文献】
【０００５】
【非特許文献１】J. E. Garcia, A. Ortega, E. Lleida, T. Lozano, E. Bernues, D. Sanchez, Aragon Inst. for Eng. Res.，Univ. of Zaragoza，Zaragoza，"Audio and text synchronization for TV news sub-titling based on Automatic Speech Recognition"，BMSB '09.，IEEE International Symposium on Broadband Multimedia Systems and Broadcasting，2009年
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１に記載されたシステムが採用するアルゴリズムでは、発話音声と音素列に不一致がある場合には著しく精度が低下するという問題がある。
【０００７】
一方、ニュース番組の多くは、ニュース項目とその順番を事前に特定することは難しい。番組の放送中にニュース項目の順序が変更されることも多い。非特許文献１に記載されたＣＡＲＴＶの例では、ニュース編集コンピューターシステム（ＮＲＣＳ）と連携した大規模なシステムを構築しているため、ニュース項目や項目順が更新される度にアライメントに用いるための音素列を更新する手法を取っている。
【０００８】
しかし、非特許文献１がそのような手法を取っていても、ＮＲＣＳでの管理に基づく音素列の更新が間に合わなかったり、原稿の読み飛ばしや言い換えがあったりした場合には、適切なアライメントができなくなる。そこで、アライメント位置を修正するために、番組進行の目安となるラップタイムや、インサート映像の再生タイミングを取得して利用しており、複雑で大規模なシステムを構築することが必要となっている。さらに、番組内には、インサート映像のインタビューなど、ＮＲＣＳでは発話内容を管理していない部分もある。したがって、そのような部分でアライメントが進行しないようにするため、上記のインサート映像を管理して、その再生情報をもとにアライメントヘの入力を停止するなどといった複雑な制御も必要となる。
【０００９】
例えば、自動字幕制作システムを必要とする地方放送局においては、このような複雑なシステムの構築と維持は困難であり、より簡易なシステムが求められる。
【００１０】
また、特許文献１の技術では、上記のような複雑なシステムの構成を必要とはしないものの、認識単語仮説列の文境界を推定していないため、不適切な原稿区間と音声認識結果の単語列とを照合してしまう結果、文境界やブロック境界に認識誤りがあったり、原稿の読み飛ばしや言い換えがあったり、原稿にない発話の追加があったりした場合、ブロック境界において、単語が欠落したり、同じ単語が２回出力されるなどの自動修正の誤りが生じる。このような自動修正誤りは、音声認識結果による単語仮説列の境界（文境界）が未知であるかぎり、音声認識結果と原稿との対応をとる区間の単位を文や他の単位としても同様に生じる。
【００１１】
本発明は、上記のような事情を考慮して為されたものであり、簡易なシステム構成でより精度の高い音声認識誤り修正装置を提供するものである。
また特に、本発明は、発話者が原稿を最後まで読み上げる前であっても、途中の適切な段階で出力文（修正後の文）を確定することをも可能にする音声認識誤り修正装置を提供するものである。
【課題を解決するための手段】
【００１２】
上記の課題を解決するため、本発明の一態様による音声認識誤り修正装置は、原稿テキストに対応して、音声認識結果として入力される単語を順次受理しながら状態遷移していく有限状態トランスデューサーであって、前記音声認識結果に含まれる単語の誤りをも受理しながら状態遷移していく前記有限状態トランスデューサーの、状態に関する情報、および状態遷移に関して遷移元状態と遷移先状態と入力シンボルと出力シンボルと遷移重み（遷移にかかるコスト）とを含む情報、とを記憶する有限状態トランスデューサー情報記憶部と、前記有限状態トランスデューサーにおける前記状態の尤度を表すスコアを記憶するノードデータ記憶部と、前記原稿テキストに対応する音声の認識結果である認識単語の入力を外部から受け付けるとともに、受け付けた前記認識単語に応じて、前記有限状態トランスデューサーにおける前記状態ごとの当該時刻でのスコアを算出し、算出された前記スコアを用いて前記ノードデータ記憶部を更新するノードデータ更新部と、処理開始を示す起動信号を外部から受け付けると、ノードデータ記憶部を参照することにより、その時点における最尤ノードを決定するとともに、前記有限状態トランスデューサー情報記憶部と前記ノードデータ記憶部とを参照して、前記最尤ノードまでの状態遷移を遡ることにより、状態遷移が確定済みの所定の時刻までのトレースバック処理を行い、当該トレースバック処理した状態遷移のパスを出力候補とするとともに、出力候補となった前記パスに関して、当該パスに前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを算出し、算出された前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に当該パスの出力候補を、確定出力とする原稿探索部と、前記原稿探索部によって求められた前記確定出力を出力する出力部と、を具備する音声認識誤り修正装置であって、前記有限状態トランスデューサー情報記憶部は、出力シンボルが空でない状態遷移であるところの出力遷移を前記状態遷移の一部として含んで記憶しており、前記原稿テキストに含まれる文を複数のチャンクに分割し、前記チャンクに含まれる単語を入力シンボルとして受理する状態遷移のパスの後に前記出力遷移を設けた前記有限状態トランスデューサーの、前記状態に関する情報および前記状態遷移に関する情報を記憶する、ことを特徴とする。
【００１３】
この特徴を有する音声認識誤り修正装置において、文は複数のチャンクに分割されている。またそのチャンクに含まれる単語を入力シンボルとして受理した後、出力遷移を実行し、出力シンボルを出力する。つまり、文の途中に出力遷移が存在する。したがって、この音声認識誤り修正装置は、文の途中においても確定した出力シンボルを出力し得る。
なお、上記の遷移重みは、状態遷移に関するコストを表す数値データである。一例として、遷移重みがゼロのときにコスト最小であり、負の遷移重みの値が小さくなるほど（つまり、その負値の絶対値が大きいほど）コストが大きくなるように、遷移重みを定義する。しかし、遷移重みについて、この定義の符号を逆転させたり、またその他の定義を用いたりしても良い。状態遷移ごとにその重みが設定されていることにより、この重みを用いて。最尤ノードを求める際のスコアを算出することができる。
【００１４】
また、本発明の一態様は、上記の音声認識誤り修正装置において、前記原稿探索部は、前記チャンクごとに前記誤りスコアを算出するとともに、前記チャンクごとの前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に、当該チャンクに対応する前記出力遷移の出力シンボルを、前記確定出力とするものであり、且つ、前記原稿探索部は、前記チャンクごとの前記誤りスコアを算出する際に、当該チャンクと当該チャンクの直前のチャンクの区間に関して前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを、当該チャンクの誤りスコアとして算出する、ことを特徴とする。
【００１５】
また、本発明の一態様による音声認識誤り修正装置は、原稿テキストに対応して、音声認識結果として入力される単語を順次受理しながら状態遷移していく有限状態トランスデューサーであって、前記音声認識結果に含まれる単語の誤りをも受理しながら状態遷移していく前記有限状態トランスデューサーの、状態に関する情報、および状態遷移に関して遷移元状態と遷移先状態と入力シンボルと出力シンボルと遷移重み（遷移にかかるコスト）とを含む情報、とを記憶する有限状態トランスデューサー情報記憶部と、前記有限状態トランスデューサーにおける前記状態の尤度を表すスコアを記憶するノードデータ記憶部と、前記原稿テキストに対応する音声の認識結果である認識単語の入力を外部から受け付けるとともに、受け付けた前記認識単語に応じて、前記有限状態トランスデューサーにおける前記状態ごとの当該時刻でのスコアを算出し、算出された前記スコアを用いて前記ノードデータ記憶部を更新するノードデータ更新部と、処理開始を示す起動信号を外部から受け付けると、ノードデータ記憶部を参照することにより、その時点における最尤ノードを決定するとともに、前記有限状態トランスデューサー情報記憶部とノードデータ記憶部とを参照して、前記最尤ノードまでの状態遷移を遡ることにより、状態遷移が確定済みの所定の時刻までのトレースバック処理を行い、当該トレースバック処理した状態遷移のパスを出力候補とするとともに、出力候補となった前記パスに関して、当該パスに前記誤りに関する状態遷移が含まれる割合に応じた誤りスコアを算出し、算出された前記誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に当該パスの出力候補を、確定出力とする原稿探索部と、前記原稿探索部によって求められた前記確定出力を出力する出力部と、を具備する音声認識誤り修正装置であって、前記有限状態トランスデューサー情報記憶部は、出力シンボルが空でない状態遷移であるところの出力遷移を前記状態遷移の一部として含んで記憶しており、前記原稿探索部は、前記出力遷移の遷移元状態に対応するノードの中で最尤であるノードをその時点における前記最尤ノードとして決定する、ことを特徴とする。
【００１６】
この特徴を有する音声認識誤り修正装置は、出力遷移の遷移元状態であるノードの中だけから最尤ノードを決定する。これにより、音声認識誤り修正装置は、より少ない計算量で処理を行うことができるとともに、対応する原稿の誤り度合いが既入力の認識結果だけで閾値を超える場合に早期に出力を確定できる。つまり、音声認識誤り修正装置は、迅速に、出力の決定に至る処理を行うことができる。
【発明の効果】
【００１７】
本発明によれば、複雑な構成のシステムを必要とせず、音声認識結果の誤りを修正することができる。
また、本発明によれば、従来技術を用いたときにブロック境界に起因して生じていた自動修正誤りの発生を低減することができる。
また、本発明によれば、修正後の認識結果を早く確定させて出力することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態による音声認識誤り修正装置を含むシステムの構成の概略を示すブロック図である。
【図２】ＷＦＳＴ（重み付き有限状態トランスデューサー）の例を示す状態遷移図である。
【図３】本実施形態において用いるための特徴を備えたＷＦＳＴの例を示す状態遷移図である。
【図４】同実施形態による音声認識誤り修正装置の概略機能構成を示す機能ブロック図である。
【図５】同実施形態による音声認識誤り修正装置による処理の手順を示すフローチャートである。
【図６】同実施形態による字幕文出力の確定方法の実例を示す概略図である。
【発明を実施するための形態】
【００１９】
次に、本発明の一実施形態について、図面を参照しながら説明する。本実施形態は、音声認識結果などの誤りの混入が不可避な単語列と、その単語列の情報源となった原稿などの対応を早期に確定する技術を用いる。これにより、音声認識結果に含まれる誤りを自動修正する。
【００２０】
［１．本実施形態を適用したシステムの構成］
図１は、本実施形態に係る音声認識誤り修正装置を含むシステムの構成の概略を示すブロック図である。図示するように、当該システムは、音声認識誤り修正装置１００と、原稿テキスト記憶装置２００と、音声認識装置２２０と、トランスデューサー構築装置２４０とを含んで構成される。
【００２１】
同図に示すシステムは、放送局におけるニュース番組に音声認識を用いて字幕を付与する場合に適用するための音声認識誤り修正装置１００を含む。このような番組における発話音声は、概ね事前に用意された原稿テキストに基づいているという特徴がある。ところで、大規模なキー放送局では、字幕を放送するために、音声認識結果に含まれる認識誤りを人手で修正するためのオペレーターを配置している場合がある。一方で、地方放送局では、様々な事情によりそのようなオペレーターを配置することが難しいことが多い。本実施形態によれば、そのような地方放送局においても、オペレーターを配置することなく、音声認識謝りの修正を行うことができるようになる。
【００２２】
音声認識誤り修正装置１００は、音声認識装置２２０が出力する認識結果の単語列（認識単語列）を入力として受け付け、予め記憶した対応原稿の単語列を推定することで、認識単語列に含まれる誤りを修正するものである。
ここで、音声認識誤り修正装置１００が推定処理のために予め記憶した情報は、原稿テキスト記憶装置２００に記憶されている原稿テキストを予め読み込んで構築された対応原稿の集合である。この対応原稿の集合は、状態を表すノードと、ノード間の状態遷移を表す枝（アーク）とをネットワーク（有向グラフ）として有する重み付き有限状態トランスデューサー（Weighted Finite State Transducer：以下、「ＷＦＳＴ」、または単に「有限状態トランスデューサー」という）で表される。
音声認識誤り修正装置１００は、ＷＦＳＴのネットワーク上で最良（最尤）仮説を逐次調べ、ＷＦＳＴ上の対応原稿の単語列と認識単語列との編集距離を基準に、全ての認識結果の単語列の入力を待たずに最終最良仮説を近似して部分的に修正結果を逐次確定する。
【００２３】
音声認識誤り修正装置１００は、音声認識装置２２０から認識結果の単語が入力されるのに対応して、ＷＦＳＴを用いて、入力単語を受理可能な遷移を求めてそのスコアを計算し、累積スコアに対する閾値を用いて枝刈りを行いながら、ビタビアルゴリズム（Viterbi Algorithm）による探索（ビタビ探索）を用いる。なお、ビタビアルゴリズムは、既存の技術であり、受信系列に対して送信符号に最も近い符号系列、即ち最大尤度の符号系列を推定する際に、トレリス線図を用いた探索を行う、効果的な方法である。
【００２４】
通常のビタビ探索では、全ての入力が観測されてから、最もスコアが良くなるパスをトレースバックして最良仮説を出力する。そのため、通常の探索方法では、全ての入力が観測され終わる前に、古い入力から順に逐次修正結果を出力するといったことはできない。例えば、テレビ放送番組の放送音声を認識した結果から字幕を制作してリアルタイムでテレビ画面の画像に重畳する場合を想定すると、通常のビタビ探索による最尤系列は番組の最後まで単語を入力しないと確定することができない。これでは番組が終了してしまうことになるので、このような運用に対して通常のビタビ探索は不適である。
【００２５】
一方、本実施形態による音声認識誤り修正装置１００は、ビタビ探索を用いつつも、適時に、最尤系列を逐次近似してトレースバックする。すなわち、予め定められた処理開始条件が満たされる度に、その時点で最もスコアが良くなるパスをトレースバックして、確定できる出力遷移を決定するので、修正結果を逐次出力することができる。ここでトレースバックされるパスは、最良仮説の近似であるが、各出力遷移に対応する入力単語列と、原稿の単語列との編集距離を信頼度の基準にして同パスを確定するか否かを決定して近似精度の向上をはかる。なお、その詳細については後で説明する。
【００２６】
原稿テキスト記憶装置２００は、原稿テキストのデータを記憶する。原稿テキストは、複数の記事を含む。各記事は、複数の文を含む。
原稿テキスト記憶装置２００は、人が話す予定の内容をテキストに書き起こしたものの全体を記憶する。原稿テキスト記憶装置２００は、例えば文、文章、段落といった単語列の区切りの単位や、そのテーマやトピック等の内容分類に応じて、多数の細分化された個別の内容を表すテキストを記憶する。このような個別の内容を、以下では単に原稿と呼ぶ。また、単語列の単位は一例として文である。
原稿テキスト記憶装置２００は、例えばハードディスク装置や半導体メモリ等の一般的な記憶手段を用いて構築されている。原稿テキスト記憶装置２００は、いわゆるクラウドサービスとして、通信ネットワーク等を通してアクセスされるものであっても良い。
【００２７】
音声認識装置２２０は、原稿テキスト記憶装置２００に含まれる原稿２０１を人（アナウンサー等）が読み上げた発話音声を認識し、認識結果の単語列を出力する。
音声認識装置２２０は、生の音声データが入力された場合に、隠れマルコフモデル（ＨＭＭ）による音響モデルと、言語モデルとを利用して、音声データを認識し、その認識した結果を認識単語列として生成するものである。本実施形態において、音声認識装置２２０は、特に限定されず、公知の技術を用いたものを採用することができる。
【００２８】
なお、後述するように、放送におけるニュース番組では、各ニュース項目に対して複数のバージョンの原稿が入稿されており、どのバージョンをどの順番で放送するのかは事前に確定できない。そのような状況で、音声認識装置２２０は、音声認識を行い、その発話音声に対して、そもそも、対応する原稿が存在するのか否かを即座に調べることが求められる。そのため、音声認識に用いる言語モデルは、高精度に音声認識結果と原稿との対応をとるために、原稿テキスト記憶装置２００に記憶されているテキストデータを用いて予め適応化しておき、原稿通りに読み上げた場合の認識精度が高くなるようにしておくことが好ましい。
【００２９】
トランスデューサー構築装置２４０は、音声認識誤り修正装置１００で利用する対応原稿の集合（対応原稿集合）としてＷＦＳＴを構築するものである。トランスデューサー構築装置２４０は、音声認識の対象となる読み上げ原稿、つまり、原稿テキスト記憶装置２００に含まれる原稿文から、音声認識誤り修正装置１００で利用するためのＷＦＳＴを事前に構築する。ＷＦＳＴは、入力シンボルと出力シンボル、遷移重みを有する有限状態機械であり、単語と文などの異なる粒度の入出力を効率よく扱うことができる。このＷＦＳＴの構築については後で説明する。
【００３０】
トランスデューサー構築装置２４０は、図示するように、単語ネットワーク登録部２４１と、編集ネットワーク登録部２４２とを含んで構成される。
【００３１】
単語ネットワーク登録部２４１は、原稿テキスト記憶装置２００に含まれる原稿テキストを読み出し、予め定められた所定単位（例えば文単位）ごとに、以下に述べる一連の処理を行う。即ち、単語ネットワーク登録部２４１は、ＷＦＳＴのネットワークの始点ノードから開始して、原稿テキスト記憶装置２００から原稿テキストに含まれる単語を読み込む度に、その単語を受理するための状態遷移（入力遷移）の枝と新たなノードとを作成する。単語ネットワーク登録部２４１は、原稿内の所定単位（例えば文単位）の最後に至るまで、順次、読み込んだ各単語について上記の枝とノードの作成を行う。
そして、ＷＦＳＴのネットワークにおいて、読み込んだ単語列の出力遷移の枝を追加して終点ノードに連結する。
【００３２】
編集ネットワーク登録部２４２は、単語ネットワーク登録部２４１で作成されたＷＦＳＴのネットワークのノード間に、単語の置換に対応して任意の単語を受理する状態遷移を表す枝と、単語の挿入に対応して任意の単語を受理する状態遷移を表す枝と、単語の削除に対応して入力が無くても出力側に遷移する状態遷移を表す枝とを追加するものである。
【００３３】
なお、本実施形態では、システムは、例えば下記の（Ａ１）〜（Ａ７）の条件下で動作する。
（Ａ１）原稿テキスト記憶装置２００に記憶されている原稿文のうちの複数の原稿文が音声認識対象として読みあげられる。
（Ａ２）１つのニュース項目に対するニュース原稿も、いくつかの更新された版（バージョン）が用意されていて、どのバージョンの原稿が何時のニュース番組で読まれるのかを事前に確定することはできない。
（Ａ３）複数の原稿文がどのような順番で読まれるのか事前には分かっていない。
（Ａ４）原稿テキスト記憶装置２００に含まれる原稿文の中には、読みあげられずにスキップされるものもある。
（Ａ５）読む人（アナウンサー、キャスター、記者等）によっては、元の原稿をそのまま忠実に読むのではなく、視聴者への伝わりやすさ等を考慮して敢えて言い回しを変えてしまう場合や、読み誤りが生じる場合などがある。
（Ａ６）音声認識装置２２０の認識誤りに起因する意昧不明な字幕を送出して視聴者に誤解を与えたり不快にさせたりすることを回避することを優先課題としたい。そのため、意味不明な認識結果の場合には送出せず、代わりに、事前に編集者により校正され内容が確認されている、発話内容に最も近いと自動推定された原稿（事前原稿）を字幕として送出する。
（Ａ７）インタビュー部分などであって認識結果に対応する原稿が元々存在しない場合、自動推定は不可能なので、元原稿が無いインタビュー部分などについては字幕を送出しない。
【００３４】
［２．一般的なＷＦＳＴの例］
図２は、一般的なＷＦＳＴの例を示す概略図である。ＷＦＳＴは、状態遷移の定義として表現される。状態遷移は、状態を表すノードと、状態遷移を表す枝と、を有する。なお、状態遷移のことを単に遷移という場合もある。図示するＷＦＳＴでは、入力シンボルを単語、出力シンボルを所定の単語列とする。また、この所定の単語列は、文である。同図において、ノードは楕円形で示している。また、枝は矢印付きの線で表している。つまり、枝は、方向を有している。
【００３５】
同図では、楕円形の各ノードに、ノードを識別するための３桁の数字を付している。始点ノードはノード００１であり、終点ノードはノード００８である。この例では、始点と終点との間には、ノード００２〜ノード００７が直線状に並べられている。また、始点と終点との間には、上記のノード００２〜ノード００７の系列とは並列に、ノード０１０〜ノード０１５が直線状に並べられている。さらに、始点と終点との間には、上記のノード００２〜ノード００７の系列およびノード０１０〜ノード０１５の系列とは並列に、ノード０１８〜ノード０２３が直線状に並べられている。また、状態遷移を表す枝は、単語または＜Ｓ＞、＜Ｉ＞、＜Ｄ＞、＜Ｅｍｉ１＞、＜Ｅｍｉ２＞、＜Ｅｍｉ３＞、＜ｅｐｓ＞といった記号が付されている。また、状態遷移を表す枝は、遷移元のノードから遷移先のノードに向かって伸びている。
【００３６】
図示する状態遷移について一般化して説明すると、このＷＦＳＴにおいては、各遷移に、（Ｓｉ／Ｓｏ：ω）のパラメーターが設定されている。ここで、Ｓｉは、その状態遷移が受理する単語入力を表す。また、Ｓｏは、その状態遷移が出力する単語列を表す。出力される単語列は、文または文の一部である。また、ωは状態遷移重みを表す。つまり、各遷移には、３つ組のパラメーターが設定されている。なお、図２では、便宜上、状態遷移が有するパラメーターのすべてを示しているわけではなく、各状態遷移に対応して、３つ組のパラメーターのうちのＳｉまたはＳｏのいずれかのみを示している。
【００３７】
ここで、同図上に記載された単語を一般化して単語ｓと表記する。なお、アルファベットの大文字と小文字とを区別している。同図において、単語ｓは、原稿の単語列が含んでいる単語である。ある状態遷移に単語ｓが付加されているとき、当該状態遷移はその単語ｓが入力されたときにのみ起こることを表している。つまり、ある状態において、その状態を遷移元とする状態遷移に単語ｓが付されているとき、認識単語列の中の単語として単語ｓが入力された場合にのみその状態遷移が起こる。つまり、単語ｓが記載された状態遷移は、音声認識された単語ｓを受理して進む遷移である。なお、状態遷移が起こるとその遷移先の状態が次の状態となる。
【００３８】
図示する状態遷移において、ノード００２〜ノード００７の系列は、「先月／の／関東甲信／地方／は／・・・」という単語列に対応する。但し、ここで、スラッシュ「／」は単語の区切りである。また、ノード０１０〜ノード０１５の系列は、「今週／も／まとまった／雨／は／・・・」という単語列に対応する。また、ノード０１８〜ノード０２３の系列は、「気象庁／に／より／ます／と／・・・」という単語列に対応する。このように、ここで構築するＷＦＳＴは、全ての原稿文を自由に接続できるネットワークである。
【００３９】
同図において、単語ｓが記載された遷移についてのパラメーターは、（ｓ／ε：０．０）で表される。つまり、この３つ組のパラメーターは、単語ｓを入力として受理し、出力がないことを表す。εは、単語がないことを表す記号である。つまり、出力他の語列が空である。また、３つ組のパラメーターは、遷移重みの値が０．０であることを表す。重みの値の設定方法はさまざまであるが、一例としては、ペナルティがない場合に遷移重みの値として０．０を用い、負の値の重みをペナルティとして用いることができる。状態遷移の定義に基づいて例えば現状態を推定する場合に、この遷移重みの値の所定の系列における総計をスコアとして用いることができる。一例として、同図において単語「先月」が付された状態遷移は、３つ組のパラメーターとしては、(先月／ε：０．０)で表される。
【００４０】
同図において、＜Ｓ＞が付された状態遷移は、置換単語を受理するための遷移である。つまり、原稿の単語列が含んでいるある単語ｓの位置に対応する認識単語列の位置に入力した単語が、原稿のある単語ｓとは異なる任意の単語に置換されていたときに、その置換単語を受理するための遷移である。以下、原稿の単語列が含んでいるある単語ｓの位置において、この単語ｓとは異なる任意の単語のことを、任意の単語＊と表記する。アスタリスクは、ワイルドカードを表す表記である。この置換には、例えば「再開」が同音異義語の「再会」に翻字されて認識された場合も含まれる。
【００４１】
同図において、＜Ｓ＞が付された状態遷移は、任意の単語＊を受理可能である。この＜Ｓ＞が記載された遷移についてのパラメーターは（＊／ε：ωs）で表される。この３つ組表現においては、＊は同遷移が受理できる任意の単語入力を表し、εはこの遷移で出力は無いことを意昧する。また、ωsは遷移重みの１つであって、この遷移に対して単語ｓとは異なる任意の単語＊が入力されたときに課すペナルティ（以下、置換ペナルティという）を意味する。この置換ペナルティωsは、ノードスコアを下げる数値で表され、例えば−１．０を用いる。例えば、＜Ｓ＞が付された状態遷移は、３つ組のパラメーターとしては、 (＊／ε：−１．０)と表すことができる。
【００４２】
同図において、＜I＞が付された状態遷移は、挿入単語を受理するための遷移である。つまり、発話者に起因するなどして、発話内容に情報の追加や言いよどみによる分節などの繰り返しがあった場合、原稿どおり又は置換されたと認識された単語列に続く位置に挿入された単語を受理するための遷移である。また、音声認識装置２２０に起因して、原稿通りならば１単語と認識すべきところを、複数単語として認識するような認識誤りで生じて、原稿通りの１単語に続く位置に挿入された単語を受理するためにも、＜I＞が付された状態遷移を用いることができる。
【００４３】
同図において、＜Ｉ＞が付された状態遷移は、任意の単語＊を受理可能である。この＜Ｉ＞が記載された遷移についてのパラメーターは、３つ組による表現で、（＊／ε：ωi）で表される。ここで、＊は任意の単語入力を表し、εは空の単語を表す。つまり、この状態遷移は、任意の単語を受理し、出力単語を持たない。また、ωiは遷移重みの１つであって、この遷移に対して任意の単語＊が入力されたときに課すペナルティ（以下、挿入ペナルティという）を意味する。この挿入ペナルティωiは、ノードスコアを下げる数値で表され、例えば−１．０を用いる。例えば、＜I＞が付された状態遷移は、３つ組のパラメーターで表すと、(＊／ε：−１．０)である。
なお、＜Ｉ＞が付された状態遷移における遷移先の状態は、同遷移における遷移元の状態と同じである。
【００４４】
同図において、＜Ｄ＞が付された状態遷移は、脱落単語を受理するための遷移である。つまり、発話者に起因するなどして、発話内容の一部に句などの脱落があった場合、認識単語列において原稿から脱落した単語の位置を特定するための遷移である。また、音声認識装置２２０に起因して、原稿通りならば複数単語と認識すべきところを、単語が削除されて１単語として認識するような認識誤りで生じて、認識単語列において原稿から脱落した単語の位置を特定するための遷移である。
【００４５】
同図において、＜Ｄ＞が付された状態遷移は、単語の入力が無くても起こり得る遷移である。この＜Ｄ＞が記載された遷移についての３つ組のパラメーターは、（ε／ε：ωd）で表される。ここで、スラッシュの前のεは、この遷移で受理する入力が無いことを表す。また、スラッシュの後のεは、この遷移で出力が無いことを意昧する。また、ωdは遷移重みの１つであって、この遷移で単語が脱落したときに課すペナルティ（以下、脱落ペナルティという）を意味する。この脱落ペナルティωdは、ノードスコアを下げる数値で表され、例えば−１．０を用いる。例えば、図２で＜Ｄ＞が記載された遷移は、３つ組のパラメーターで表すと、(ε／ε：−１．０)である。
なお、＜Ｄ＞が付された状態遷移における遷移元および遷移先の状態は、脱落する単語に関する状態遷移と同じである。例えば、ノード００２からノード００３への、＜Ｄ＞が付された状態遷移は、並列する単語「の」が脱落したときにもノード００２からノード００３へ遷移を可能とする（ただし、上記の脱落ペナルティを伴う）ものである。
【００４６】
同図において、＜Ｅｍｉ１＞や＜Ｅｍｉ２＞や＜Ｅｍｉ３＞が付された状態遷移は、所定の単語列として文を出力するための遷移である。ここで出力される文が、音声認識処理によって認識された単語列の修正結果である。これらの＜Ｅｍｉ１＞や＜Ｅｍｉ２＞や＜Ｅｍｉ３＞が付された遷移についてのパラメーターは（ε／Ｌ：０．０）で表される。ここで、εはこの遷移において単語の入力が無いことを表す。また、Ｌはこの遷移で出力される単語列（文）がＬであることを表す。
【００４７】
例えば、＜Ｅｍｉ１＞が付された状態遷移は、３つ組のパラメーターで表すと、(ε／先月の関東甲信地方は…：０．０)である。つまり、この場合、Ｌは、始点ノード００１からノード００２を経由してノード００７に至る各遷移に並べられた単語列「先月／の／関東甲信／地方／は／…」をすべて順番に（直列に）繋げた単語列である。なお、パラメーターにおける０．０は遷移重みの１つであって、この遷移に対して文を出力するときには、ペナルティが課されないことを意味する。なお、＜Ｅｍｉ２＞が付された状態遷移のパラメーターは、同様に、(ε／今週もまとまった雨は…：０．０)である。また、なお、＜Ｅｍｉ３＞が付された状態遷移のパラメーターは、同様に、(ε／気象庁によりますと…：０．０)である。
【００４８】
同図において、＜ｅｐｓ＞が記載された遷移は、終点ノードと始点ノードを連結する遷移であり、イプシロン遷移（ε遷移）と呼ばれている。＜ｅｐｓ＞が付された状態遷移は、原稿テキスト集合に含まれる所定の単語列（文）が、連続して発話されるという拘束を与える遷移である。＜ｅｐｓ＞が付された状態遷移についてのパラメーターは（ε／ε：ωu）で表される。ここで、スラッシュの前のεは、この遷移で単語の入力が無いことを表す。また、スラッシュの後のεは、この遷移で出力が無いことを表す。また、ωuは遷移重みの１つであって、適切な重み（数値）を与えることにより、ＷＦＳＴは、より長く一致する文のスコアを高くすることができるようになる。
【００４９】
［３．本実施形態におけるＷＦＳＴ］
図３は、本実施形態において用いるＷＦＳＴの例を示す概略図である。図２を用いて説明した一般的なＷＦＳＴと、本実施形態で用いるＷＦＳＴの違いを中心に、以下、説明する。
【００５０】
図３に示すＷＦＳＴもまた、ノード（状態）と枝（状態遷移）から成る状態遷移図で表される。同図では、ノードを黒丸または黒四角の記号で表し、枝を矢印付きの線で表す。各ノードには、ノードを識別するための３桁の整数を付している。同図に示す状態遷移図においても、始点のノード１０１と終点のノード１０８が存在する。そして、例示する状態遷移図においては、始点のノード１０１から終点のノード１０８へ、並列する２本の系列が存在する。その第１の系列は、始点のノード１０１から、ノード１０２〜ノード１０７を経て、終点のノード１０８に至る。また第２の系列は、始点のノード１０１から、ノード１１２〜ノード１１７を経て、終点のノード１０８に至る。これらの各系列が、原稿テキストにおける文に対応する。ここでは、簡単のために２文のみを示しているが、現実には文の数に制約はない。そして、終点ノード１０８から始点ノード１０１に戻るための枝（前述の、イプシロン遷移）が存在する。
【００５１】
各々の状態遷移は、遷移元の状態と、遷移先の状態と、入力記号（単語）と、出力記号（単語列）と、遷移重みの値で定義される。一例として、同図において、ノード１０２からノード１０３への状態遷移は、受理する入力単語がＷ２であり、出力する記号はε（つまり、出力単語はない）である。また別の例として、同図において、ノード１１４からノード１１５への状態遷移は、受理する記号がε（つまり受理する単語はない）であり、出力する記号はＣ３という単語列である。
【００５２】
なお、同図においては、状態遷移の重みの表示を省略している。また、同図においては、音声認識誤りを受理するための遷移を省略している。つまり、置換単語を受理するための状態遷移や、挿入単語を受理するための状態遷移や、脱落を許容するための状態遷移の表示を省略している。
【００５３】
同図に示すＷＦＳＴの特徴は、原稿文をチャンク（chunk，かたまり）に分割し、チャンクの切れ目における状態遷移として出力遷移を配置した構成としている点である。なお、出力遷移とは、出力シンボルが空ではない状態遷移である。つまり、文の最後だけではなく、文の途中における状態遷移でも単語列を出力する場合がある。同図における具体例としては、原稿文（Ｗ１，Ｗ２，Ｗ３，Ｗ４，Ｗ５）を、ｏ１とｏ２という複数のチャンクに分割している。チャンクｏ１は単語列（Ｗ１，Ｗ２，Ｗ３）であり、チャンクｏ２は単語列（Ｗ４，Ｗ５）である。そして、チャンクｏ１とｏ２との間に、入力記号がε（つまり、入力単語がない）であり出力記号がＣ１という出力遷移を設けている。なお、ノード１０７からノード１０８への状態遷移は、文末での出力遷移であり、その出力記号はＣ２である。同様に、原稿文（Ｗ６，Ｗ７，Ｗ８，Ｗ９，Ｗ１０）もまた、ｏ３（不図示）とｏ４（不図示）という複数のチャンクに分割している。チャンクｏ３は単語列（Ｗ６，Ｗ７，Ｗ８）であり、チャンクｏ４は単語列（Ｗ９，Ｗ１０）である。そして、チャンクｏ３の後には、単語列Ｃ３を出力する出力遷移が設けられている。また、チャンクｏ４の後には、単語列Ｃ４を出力する出力遷移が設けられている。
【００５４】
上記のように、本実施形態では、文をチャンクに分割し、チャンクの終端に出力遷移を設けている。なお、文のチャンクへの分割のしかたは任意である。文中の文法的にあるいは意味的に切れ易い箇所でチャンクへの分割を行っても良いし（例えば、構文上の句の単位できるなど）、所定の単語数で機械的に複数のチャンクへの分割を行っても良い。また、読みやすさのために記者またはアナウンサーが改行している箇所で分割しても良い。また、原稿中の文の重複度と必要とする認識誤りの訂正能力に応じて適切な長さのチャンクに分割しても良い。また、許容される字幕の表示遅れに応じて、適切な長さのチャンクに分割しても良い。長い単語列をチャンクとして設定すると、修正精度は高くなるが、送出する字幕単語列の確定が遅くなる。短い単語列をチャンクとして設定すると、送出する字幕単語列の確定は早く行うことができるようになるが、修正精度は低下する。また、期待される音声認識の認識精度と原稿と読み上げ音声の一致度合いに応じて適切な長さのチャンクへの分割を行うようにしても良い。
【００５５】
［４．ＷＦＳＴの構築方法］
次に、トランスデューサー構築装置２４０によるＷＦＳＴの構築方法について説明する。トランスデューサー構築装置２４０がＷＦＳＴを構築するに当たり、原稿テキスト記憶装置２００に含まれる原稿テキストは、予め文に分割しておく。なお、文の最後は句点によって区切られる場合には、句点を目印に分割することができる。また、原稿テキストの構文解析を行うことによって、構文ルールから文の切れ目を検出して文への分割を行うようにしても良い。また、人手によって目印がつけられた箇所で文への分割を行うようにしたりしても良い。
【００５６】
本実施形態では、原稿テキスト記憶装置２００に記憶されているテキストは、ニュース番組で取り上げられる可能性のある読み原稿である。ここで用意される原稿は、複数のニュース項目のための原稿を含む。また、各ニュース項目は、複数の文を含む。本実施形態では、ニュース項目が読まれる順番、あるいは文が読まれる順番を予め特定しておく必要がない。読まれる可能性のある原稿をすべて用意して、原稿テキスト記憶装置２００に記憶させておけばよい。また、それらの原稿のうち、結果的に読まれないニュース項目や読まれない文があっても良い。
【００５７】
なお、ＷＦＳＴの構築に先立って予め人手により原稿を整形しておくようにする。この整形により、必ず連続して読み上げられる単語列（文）を一つの文の単位としてまとめる。また、この整形により、原稿中において読み飛ばされる可能性のある部分を別の文として切り離しておく。
【００５８】
また、文は、予めチャンクに分割しておく。チャンク（即ち、出力遷移を行うまでの単語列の単位）を長く設定すると修正精度は高くなるが、出力する単語列の確定が遅くなる。逆に、チャンクを短く設定すると、送出する字幕単語列の確定は速くなるが修正精度が低下する。よって、どのような単位を利用するかについては、期待される音声認識の認識精度と、原稿と読み上げ音声の一致度合いと、に応じて適宜設計すればよい。いかなる方法で文のチャンクへの分割を行うにしても、チャンクは、文よりは短い単位である。
そして、トランスデューサー構築装置２４０は、チャンクを受理した直後に出力遷移を配置するように、ＷＦＳＴを構成する。
【００５９】
トランスデューサー構築装置２４０による具体的なＷＦＳＴ構築手順は、次の通りである。ＷＦＳＴの構築は、まず、ＷＦＳＴの始点から開始される。
トランスデューサー構築装置２４０は、原稿テキスト記憶装置２００からを一単語ずつ読み込む度に、同単語を受理する重み０の遷移と新たなノードとを順次作成していく。ここで、重み０の遷移とは３つ組のパラメーターで表すと、(ｓ／ε：０．０)のことである。なお、ｓは単語である。そして、チャンクを一単位として、そのチャンクの後に出力遷移を追加してから、次のチャンクに含まれる各単語について同様の処理を繰り返す。なお、チャンクの終端が文の終端である場合には、最後のチャンクに関する出力遷移をＷＦＳＴの終点ノードに連結する。即ち、最後のチャンクに関する出力遷移の遷移先状態を、その終点ノードとする。
まだ更なる文が残っていたら、再び始点から始めて、上記の処理を繰り返す。
以下、原稿テキスト記憶装置２００に含まれる全ての文についての処理を終えるまで、同様に繰り返す。
【００６０】
原稿テキスト記憶装置２００からすべての原稿テキストを読み込み終えた後、次に、トランスデューサー構築装置２４０は、終点ノードと始点ノードとをイプシロン遷移で連結する。既に述べたように、イプシロン遷移とは、３つ組のパラメーターで表すと（ε／ε：ωu）という状態遷移ことである。なお、トランスデューサー構築装置２４０は、このイプシロン遷移のための重みωuとして適切な値を与える。これにより、ＷＦＳＴは、より長く一致する文のスコアを高くすることができるようになる。またこれにより、ＷＦＳＴは、他の文の接頭辞と一致する文が原稿中に存在するような場合にも、適切に動作できるようになる。そして、最後に、トランスデューサー構築装置２４０は、各単語の遷移に、置換、脱落、挿入を受理する遷移を追加する。なお、図３では、置換、脱落、挿入のための状態遷移を省略している。
【００６１】
［５．音声認識の適応化］
原稿をもとに読み上げられる音声を音声認識装置２２０が実際に認識するにあたり、予め、この原稿に含まれる単語列をもとに音声認識の言語モデルを適応化しておくことが望ましい。これにより、原稿通りに読み上げられた場合の音声認識の精度を高くすることができる。
【００６２】
［６．出力遷移からのトレースバック］
本実施形態では、トレースバックを開始するノードを、出力遷移の直前のノードのみに限定する。つまり、図３に例示したＷＦＳＴの状態遷移図において、トレースバックの対象となるノードは黒四角の記号で示したノードのみである。そして、黒丸の記号で示しているノードをトレースバックの対象としない。つまり、トレースバックの対象となるノードは、各チャンクの終端に当たるノードのみである。
【００６３】
ＷＦＳＴのすべてのノードを対象としてその最尤ノード（時刻ｔにおいてすべてのノードの中で最もスコアの高いノード）からトレースバックを行うのと比べて、本実施形態の上記の方法では、出力の遅延を短縮することができる。つまり、本実施形態では、音声認識処理の結果に応じた修正後の字幕の表示の遅延を短縮することができる。
なお、既に述べたＷＦＳＴの構築方法においては、文を予めチャンクに分割しておき、各チャンクの終端に続いて出力遷移を設けた。しかしながら、文をチャンクに分割しないようにして（言い換えれば、１文を１チャンクとして）、トレースバックを開始するノードを出力遷移の直前のノードのみに限定することも可能である。そしてこのような場合にも、すべてのノードを対象としてその最尤ノードからトレースバックを行うのと比べて、出力の遅延を短縮することができる。
【００６４】
［７．字幕文出力の確定方法］
音声認識誤り修正装置１００が、出力する単語列を確定するための方法について説明する。
時刻ｔにおける出力遷移の直前の最尤ノード（言い換えれば、チャンクの終端に当たるノードの中の最尤ノード）であるｎ（チルダ）（ｔ）は、下の式（１）で表される。
【００６５】
【数１】
0006358744.tif 000002
【００６６】
式（１）において、Ｑは、トレースバックの対象となるノードの集合である。つまり、Ｑは、出力遷移の直前のノードの集合である。ｎは、集合Ｑに属するノードである。そして、Ｌｎ（ｔ）は、時刻ｔにおけるノードｎのスコアである。なお、このスコアＬｎ（ｔ）は、下の式（２）で表される。
【００６７】
【数２】
0006358744.tif 000003
【００６８】
式（２）において、ｅは状態遷移であり、ｅｆおよびｅｔは、それぞれ、状態遷移ｅの遷移元および遷移先のノードである。またｅｗは、状態遷移ｅの状態遷移重みの値である。また、ｅｉは、状態遷移ｅの入力記号である。そして、ｅｉは、単語Ｗ、ε（空入力）、＊（いずれの入力にもマッチするワイルドカード）のいずれかである。つまり、式（２）に示すとおり、時刻ｔにおけるノードｎのスコア（尤度）は、ノードｎを遷移先ノードとするすべての状態遷移の中で、時刻ｔ−１におけるその状態遷移ｅの遷移元ノードｅｆのスコアに、その状態遷移ｅの重み値ｅｗを加算したものである。
【００６９】
上記の式（１）による最尤ノードを求めるために、音声認識誤り修正装置１００は、スコアＬｎ（ｔ）に関して、閾値による枝刈りを行いながら、効率的なビタビ探索を行う。
【００７０】
そして、音声認識誤り修正装置１００は、式（１）により求められた最尤ノードにたどり着くまでに通過した状態遷移ｅを、順次トレースバックして、状態遷移の系列を得る。既に出力済みの単語の時刻ｔ−ｔ´までトレースバックした結果はｈｔ−ｔ´は、下の式（３）で表される。
【００７１】
【数３】
0006358744.tif 000004
【００７２】
式（３）において、｛ｅｔ−ｔ´，・・・｝は、ＷＦＳＴの始端を含まない状態遷移の集合である。また、｛・・・，ｅｔ｝は、ＷＦＳＴの終端を含まない状態遷移の集合である。そして、Ｏ（チルダ）ｔは、下の式（４）で表されるように、始端と終端とに挟まれた区間ｌｔｋ（つまり、ｌｔｋは文）の列である（ｋ＝１，２，・・・）。
【００７３】
【数４】
0006358744.tif 000005
【００７４】
式（４）において、ｒｔは、Ｏ（チルダ）ｔに含まれる区間ｌｔｋ（文）の数である。さらに、このｌｔｋは、下の式（５）に示すように、チャンクの列である。
【００７５】
【数５】
0006358744.tif 000006
【００７６】
式（５）において、ｍｔ，ｋは、区間ｌｔｋに含まれるチャンクの数である。
音声認識誤り修正装置１００は、この区間ｌｔｋごとに下の式（６）で表されるチャンクの列を出力する。つまり、下の式（６）で表されるものが、音声認識誤り修正装置１００によって出力される字幕文である。
【００７７】
【数６】
0006358744.tif 000007
【００７８】
式（６）において、Ｅ（チルダ）（ｏｔ，ｋｕ）は、誤り率に基づく誤りスコアである。また、Ｔは、誤りスコアに関する閾値であり、０＜Ｔ＜１である。誤りスコアＥ（チルダ）（ｏｔ，ｋｕ）は、下の式（７）によって求められる。
【００７９】
【数７】
0006358744.tif 000008
【００８０】
式（７）において、２入力の関数Ｅ（チルダ）（ｏ１，ｏ２）は、下の式（８）に示すように、Ｅ（チルダ）（ｏ１）とＥ（チルダ）（ｏ２）の、単語数の重みを付けた平均である。
【００８１】
【数８】
0006358744.tif 000009
【００８２】
式（８）において、Ｎ１とＮ２は、それぞれ、チャンクｏ１とｏ２に含まれる単語の数である。また、Ｅ（チルダ）（ｏ）は、チャンクｏにおける受理単語数Ｎｒと、誤りを受理したことによる遷移の通過数Ｎｅとから求めた誤り率（編集距離）であり、下の式（９）で表される。
【００８３】
【数９】
0006358744.tif 000010
【００８４】
つまり、式（７）に示した通り、区間ｌｔｋに含まれるチャンクｏｔ，ｋｕの誤りスコアであるＥ（チルダ）（ｏｔ，ｋｕ）は、次に述べるように定義される。即ち、Ｅ（チルダ）（ｏｔ，ｋｕ）は、チャンクｏｔ，ｋｕにおいて式（９）で計算される誤り率と、ひとつ前のチャンクｏｔ，ｋｕ−１で計算される誤りスコアとの単語数による重み付き平均の値に基づく。ただし、その単語数による重み付き平均の値が所定の閾値Ｔよりも小さい場合には、Ｅ（チルダ）（ｏｔ，ｋｕ）の値はゼロである（式（７）の右辺上段のケース）。一方、その単語数による重み付き平均の値が閾値Ｔ以上の場合にはその重み付き平均の値をそのままＥ（チルダ）（ｏｔ，ｋｕ）の値とする（式（７）の右辺下段のケース）。このように、Ｅ（チルダ）（ｏｔ，ｋｕ）の値は、ひとつ前のチャンクｏｔ，ｋｕ−１についてのＥ（チルダ）（ｏｔ，ｋｕ−１）の値に依存して定義されており、式（７）で再帰的に計算することにより出力を確定できる。
【００８５】
なお、式（７）において場合分けして、閾値Ｔよりも低い場合の誤りスコアをカットオフして０にしていることにより、前のチャンクにおける誤りの程度が小さい場合には、後ろの方のチャンクまでその誤りスコアを波及させないようにしている。
なお、式（６）や式（７）に示した閾値Ｔの具体的な値は適宜定めればよいが、例えばＴ＝０．５とする、あるいは０．４≦Ｔ≦０．６の範囲内の値とすることが好適である。Ｔの値が大きすぎると（１に近づくと）高い誤り率を許容してしまうという不都合がある。他方で、Ｔの値が小さすぎると誤りに対して厳格になりすぎて、本来読み上げられている原稿に対して出力できる字幕の密度が低くなり過ぎるという不都合がある。したがって、前記の０．４≦Ｔ≦０．６の範囲が好適であり、特にＴ＝０．５とすることが好適である。
【００８６】
［８．音声認識誤り修正装置の構成］
次に、音声認識誤り修正装置の構成について説明する。
図４は、音声認識誤り修正装置１００の概略機能構成を示す機能ブロック図である。図示するように、音声認識誤り修正装置１００は、ＷＦＳＴ記憶部１１０と、ノードデータ更新部１２０と、ノードデータ記憶部１３０と、原稿探索部１４０と、出力部１５０とを含んで構成される。
【００８７】
ＷＦＳＴ記憶部１１０（有限状態トランスデューサー情報記憶部）は、原稿テキストに対応して、音声認識結果として入力される単語を順次受理しながら状態遷移していく有限状態トランスデューサーであって、音声認識結果に含まれる単語の誤りをも受理しながら状態遷移していく有限状態トランスデューサーの、状態に関する情報、および状態遷移に関して遷移元状態と遷移先状態と入力シンボルと出力シンボルと遷移重みとを含む情報、とを記憶する。そして、ＷＦＳＴ記憶部１１０は、出力シンボルが空でない状態遷移であるところの出力遷移を状態遷移の一部として含んで記憶している。また、原稿テキストに含まれる文を複数のチャンクに分割し、チャンクに含まれる単語を入力シンボルとして受理する状態遷移のパスの後に出力遷移を設けたＷＦＳＴの、状態に関する情報および状態遷移に関する情報を記憶する。
【００８８】
具体的には、ＷＦＳＴ記憶部１１０は、原稿テキスト記憶装置２００（図１）に基づいて予めトランスデューサー構築装置２４０が構築したＷＦＳＴを記憶している。具体的には、ＷＦＳＴ記憶部１１０は、状態遷移図（ネットワーク）と等価な情報を記憶する。その情報とは、状態（ノード）の識別情報およびその状態の属性情報と、状態遷移（枝）の識別情報およびその状態遷移の属性情報である。状態遷移の属性情報は、遷移元状態の識別情報と、遷移先状態の識別情報と、遷移に関する重みの値とを少なくとも含む。
【００８９】
ノードデータ更新部１２０は、原稿テキストに対応する音声の認識結果である認識単語の入力を外部から受け付けるとともに、受け付けた認識単語に応じて、ＷＦＳＴにおける状態ごとの当該時刻（その時刻）でのスコアを算出し、算出された前記スコアを用いてノードデータ記憶部１３０を更新する。
具体的には、ノードデータ更新部１２０は、音声認識装置２２０が出力する認識単語列に含まれる単語の入力を受け付ける時刻毎に、ＷＦＳＴのネットワーク上を遷移可能な状態のスコアをノードデータとして計算および更新するものである。ノードデータ更新部１２０は、例えば、音声認識装置２２０から認識単語を１単語受け付ける都度、ＷＦＳＴ記憶部１１０に記憶されたＷＦＳＴを参照して逐次的にビタビ探索を行い、ノードデータ記憶部１３０に記憶されているノードデータを更新する。
【００９０】
ノードデータ更新部１２０は、認識単語列の一部として入力される単語に応じて、状態遷移した場合のスコアを計算する。ノードデータ更新部１２０は、状態遷移の重みの値に基づいて、スコアを計算する。ＷＦＳＴの例として述べたように、対応原稿と一致する単語が原稿通りの順で入力された場合には、重みの値として「０」をスコアに加算する。対応原稿と異なる単語が入力された場合、重みの値として「−１］をスコアに加算する。この「−１」はペナルティの意味を有する。
【００９１】
例えば、図２に示した例において、認識単語列として入力する単語列が、対応原稿と全く同じ単語列である場合、始点ノード００１から、単語「先月」を受理して対応原稿の単語に対応する遷移を通ってノード００２に進む。そして、この状態遷移に対応して、ノードデータ更新部１２０は、スコアに「０」を加算する。次に、ノード００２から、例えば単語「の」を受理してノード００３に進む。そして、この状態遷移に対応して、ノードデータ更新部１２０は、スコアに「０」を加算する。同様に、「関東甲信」、…を順次受理していくと、スコアには、各単語に対応する状態遷移の重みの値である「０」ずつ足していくことになる。
【００９２】
しかし他方で、例えば図２に示した例において、認識単語列として入力する単語列が、対応原稿と異なる単語列である場合、異なる状態遷移をする。つまり、始点ノード００１から、例えば単語「先週」を受理すると、対応原稿の単語「先月」が置換されているので、置換に対応する遷移を通ってノード００２に進む。この場合、ノードデータ更新部１２０は、スコアにその状態遷移の重みの値である「−１」（ペナルティ）を加算する。また、挿入誤りや脱落誤りに対応する遷移を通った場合にも、同様にノードデータ更新部１２０は、スコアにペナルティの「−１」を加算する。
【００９３】
このように、入力される認識単語がＷＦＳＴにおける状態遷移で受理する単語ｓと同じであった場合に、その遷移におけるスコアが最良となる。一方、置換、挿入、削除の編集に相当する状態遷移は、スコアが悪化する要因となる。ここで「編集」とは、本来あるべき単語を置換したり、削除したり、本来あるべき単語ではないものを挿入したりすることによって得られる結果を言う。例えば＜Ｄ＞が記載された状態遷移は、マッチする入力単語が無くても遷移できるが、＜Ｄ＞が記載された遷移だけを通るパスの場合、その遷移の数が多いほど、ペナルティが加算され、スコアが低くなる。ＷＦＳＴは、認識単語列に、誤りや言い変えが含まれると、その分だけスコアが悪くなるという結果を生む。
【００９４】
ノードデータ記憶部１３０は、ＷＦＳＴにおける状態の尤度を表すスコアを記憶する。つまり、ノードデータ記憶部１３０は、ノードデータ更新部１２０によって計算されるノードデータを記憶するものである。ノードデータ更新部１２０は、上述した計算結果に基づき、ノードデータ記憶部１３０をタイムリーに更新する。ノードデータ記憶部１３０は、例えば、半導体メモリやハードディスク装置等の一般的な記憶手段を用いて構成される。
【００９５】
原稿探索部１４０は、処理開始を示す起動信号を外部から受け付けると、ノードデータ記憶部１３０を参照することにより、その時点における最尤ノードを決定するとともに、ＷＦＳＴ記憶部１１０とノードデータ記憶部１３０とを参照して、最尤ノードから状態遷移を遡ることにより、状態遷移が確定済みの所定の時刻までのトレースバック処理を行い、当該トレースバック処理した状態遷移のパスを出力候補とするとともに、出力候補となったパスに関して、当該パスに誤りに関する状態遷移が含まれる割合に応じた誤りスコアを算出し、算出された誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に当該パスの出力候補を、確定出力とする。また、原稿探索部１４０は、チャンクごとに誤りスコアを算出するとともに、チャンクごとの誤りスコアに基づいて誤りの度合いが所定の閾値より小さい場合に、当該チャンクに対応する出力遷移の出力シンボルを、確定出力とするものであり、且つ、原稿探索部１４０は、チャンクごとの誤りスコアを算出する際に、当該チャンクと当該チャンクの直前のチャンクの区間に関して誤りに関する状態遷移が含まれる割合に応じた誤りスコアを、当該チャンクの誤りスコアとして算出する。
【００９６】
また、原稿探索部１４０は、出力遷移の遷移元状態に対応するノードの中で最尤であるノードをその時点における最尤ノードとして決定する。言い換えれば、原稿探索部１４０は、出力遷移の遷移元状態ではない状態に関しては、最尤ノードであるか否かを考慮しない。
【００９７】
具体的には、  原稿探索部１４０は、最終最良仮説を確定するための全原稿についての全認識単語列の認識結果の入力を待たず、予め定められた処理開始条件が満たされる都度、最尤の修正結果を求めるものである。原稿探索部１４０は、処理開始条件が満たされると、その時点でノードデータ記憶部１３０に記憶されているノードデータに基づいて、ＷＦＳＴのネットワーク上をトレースバックしながら、最終最良仮説を部分的に近似した仮説を誤り修正結果として逐次確定する。
【００９８】
原稿探索部１４０は、ＷＦＳＴに含まれる対応原稿の単語列と、入力された認識単語列との編集距離に基づいて最終最良仮説を近似する。原稿探索部１４０は、ＷＦＳＴのネットワーク上で予め定められた範囲毎に区切ったパス間において、その先頭から末尾までのパス区間での編集距離がある程度小さければ、そのパス区間が信頼できるものとして確定して出力する。ここで、編集距離が短いということは、認識単語列と原稿の単語列とがほとんどマッチしているパスを通ってきたことを意味する。逆に、編集距離が長いパス区間は信頼度が低いので、その時点では確定せずに、次回のトレースバックのときにも利用する。いつまでも信頼度が低いパス区間は、原稿には元々記載されていない違うことを話した区間である、と推定される。よって、信頼度が低いパス区間を出力しない。
【００９９】
原稿探索部１４０における処理開始条件とは、例えば、発話音声がない無音期間が所定の期間に達した場合、または、音声認識装置２２０が出力する認識単語列としての単語の入力数が所定の単語数に達した場合等である。上記の所定の期間は、特に限定されないが一例として３秒間とする。また、上記の所定の単語数は、特に限定されないが一例として２０単語とする。原稿探索部１４０に入力される起動信号は、上記の処理開始条件が成立したことを示す信号である。このときの起動信号は、例えば音声認識装置２２０が自動的にｏｎするようにしてもよいし、操作者による手動の操作によってｏｎするようにしても良い。この操作者は、ポーズ（所定の長さの無音）を認識したときや、所定の単語数を音声認識装置２２０が出力した認識したときに、起動信号をｏｎする操作を行う。音声認識装置２２０が自動的に起動信号をｏｎする場合には、音声認識の結果を利用してポーズを検出したり、音声認識結果として出力する単語の数をカウントしたりすることにより、起動信号を切り替えるきっかけとする。この構成により、認識単語が一単語入力される度に探索処理を開始する場合に比べて、処理負荷を低減できる。また、無音期間が所定の期間だけ継続していれば、その間、認識結果の単語が音声認識装置２２０側から渡されてこないので、装置の処理の負荷がその時点に集中することなく、ノードスコアを容易に比較することができる。
【０１００】
上記の機能を実現するために、原稿探索部１４０は、さらに次の構成を有する。即ち、原稿探索部１４０は、最尤ノード検出部１４１と、トレースバック部１４２と、原稿分割部１４３と、出力候補記憶部１４４と、誤りスコア算出部１４５と、誤りスコア判別部１４６と、確定出力記憶部１４７と、確定時刻記憶部１４８とを含んで構成される。
【０１０１】
最尤ノード検出部１４１は、外部から受信する起動信号をトリガーとして動作し、その時点で記憶されているノードデータにおいてスコアが最大のノードを検出するものである。この起動信号は、上で述べたとおり、予め定められた処理開始条件が満たされたときに外部から供給されるものである。
【０１０２】
トレースバック部１４２は、最尤ノード検出部１４１で特定されたノードから、当該ノードに到達するまでのパスについて、ＷＦＳＴのネットワークを下流から上流に向かってたどる。このとき、トレースバック部１４２は、前回のトレースバックで確定した箇所まで、ネットワークを遡る。つまり、トレースバック部１４２は、前回確定して出力された単語系列の最後の入力単語に対応した時刻までトレースバックする。
【０１０３】
原稿分割部１４３は、トレースバックするパスの中で、出力遷移に対応する区間ごとに単語列を切り出す。ここで、出力遷移とは、既に説明したように記号の出力を伴う状態遷移である。トランスデューサー構築装置２４０がＷＦＳＴを構築するときに、チャンクの終端の直後に、出力遷移が設けられている。つまり、原稿分割部１４３によって分割された結果の区間は、前述のチャンクの単位である。原稿分割部１４３は、トレースバックされた結果得られるパス全体を分割し、分割した結果得られる各々の単語列を出力する。
【０１０４】
出力候補記憶部１４４は、原稿分割部１４３が分割した結果得られたパス区間に対応した出力遷移の出力シンボル（切り出された原稿）を、出力候補として記憶する。出力候補記憶部１４４は、例えば、半導体メモリやハードディスク装置等の一般的な記憶手段を用いて構成される。
【０１０５】
誤りスコア算出部１４５は、原稿分割部１４３によって分割して切り出された区間（チャンク）毎に、誤りスコアを算出する。誤りスコア算出部１４５は、既に説明した式（７）を用いて誤りスコアを算出する。
【０１０６】
誤りスコア判別部１４６は、誤りスコア算出部１４５によって算出された誤りスコアが所定の閾値Ｔより小さいか否かを判定する。つまり、誤りスコア判別部１４６は、既に説明した式（６）に含まれる条件に基づいて判別する。
【０１０７】
確定出力記憶部１４７は、誤りスコア判別部１４６による判定結果に基づいて確定された出力（確定出力と呼ぶ）を記憶する。具体的には、誤りスコア判別部１４６によって誤りスコアが閾値Ｔより小さいと判定された場合、確定出力記憶部１４７は、当該所定パス区間における出力遷移の出力シンボルを誤り修正結果として記憶する。その他の場合、確定出力記憶部１４７は、当該所定パス区間における出力遷移の出力シンボルを誤り修正結果として記憶しない。なお、確定出力記憶部１４７は、例えば半導体メモリやハードディスク装置等の一般的な記憶手段を用いて構成される。また、確定出力記憶部１４７の記憶構造はスタックであり、確定出力記憶部１４７は後入れ先出し（ＬＩＦＯ）の構造でデータを保持する。
【０１０８】
確定時刻記憶部１４８は、最新のトレースバック処理で確定した確定時刻を記憶する。確定時刻記憶部１４８は、例えば半導体メモリやハードディスク装置等の一般的な記憶手段である。確定時刻記憶部１４８は、今回トレースバックする全パス区間（切り出された全ての原稿）について、誤りスコア判別部１４６による判別処理が終了した時点で、スタックに積まれた出力シンボルに対応する最新の確定単語の時刻を確定時刻として記憶する。
【０１０９】
出力部１５０は、原稿探索部１４０によって誤り修正結果として確定された対応原稿（つまり、確定出力）を逐次出力するものである。出力部１５０は、ＷＦＳＴのネットワークを今回トレースバックするパスの中で、切り出されたすべての対応原稿の各パス区間に対して算出された誤りスコアについての判定処理が全て終了するまでに確定された出力シンボルのデータを出力する。具体的には、出力部は、確定出力記憶部１４７のスタックに積まれている出力シンボルのデータを、そのスタックが空になるまで出力する。
【０１１０】
この音声認識誤り修正装置１００は、間違って音声認識された単語を修正して出力するとともに、大幅に間違った認識結果を出力しない、という動作を行う。つまり、音声認識誤り修正装置１００による修正結果を、仮に事前に人が見ることができたとしたときに、「これでは文章として成立していない」、「意味が異なっている」と感じるほどの間違い部分を、音声認識誤り修正装置１００がその処理の中で検出し、その検出部分を出力しないという動作も、広義の誤り修正として含んでいる。これは、誤りスコアを算出し、その誤りスコアに基づく判別を行っていることによるものである。
【０１１１】
［９．音声認識誤り修正装置の動作手順］
図５は、音声認識誤り修正装置１００による処理の手順を示すフローチャートである。なお、このフローチャートの処理の前提は、次の4点である。
（前提１）認識結果の単語入力を｛ω０，ω１，…，ωｋ，…，ωｊ，…｝とする。
（前提２）前回のトレースバックにより確定した部分の最後の入力単語をωｋとし、そのときの出力遷移をａＰ（時間軸に沿ったＰ番目の出力遷移）とする。
（前提３）認識結果の単語ωｊが入力された後、所定の無音が続いたことをトリガーに、逐次確定を行う場合を考える。
（前提４）ノードデータ更新部１２０は、無音になる前に最後に入力した単語ωｊを受理して遷移できるノードを全て計算する。
【０１１２】
以下では、このフローチャートを参照しながら、音声認識誤り修正装置１００による処理の流れについて説明する。
【０１１３】
まずステップＳ１において、外部からの起動信号の入力をトリガーとして、最尤ノード検出部１４１は、その時点で記憶されているノードデータにおいて最もスコアの高いノードを、最尤ノードとして検出する。この検出ノードで表される状態は、トレースバック開始時点の最尤状態である。
【０１１４】
次にステップＳ２において、トレースバック部１４２は、ステップＳ１において検出された最尤ノードから、前回のトレースバック処理で確定された時刻まで、トレースバックする。具体的には、トレースバック部１４２は、検出された最尤ノードに到達したパスについてＷＦＳＴ上の単語履歴を逆向きに（時間をさかのぼる方向に）たどり、前回のトレースバックで確定し、出力された単語系列の最後の入力単語ωkを求める。また、トレースバック部１４２は、対応する状態遷移（受理する単語がωkである状態遷移）を求める。そして、それらの単語および状態遷移に対応する確定時刻までトレースバックする。なお、トレースバック部１４２は、確定時刻記憶部１４８を参照し、その確定時刻記憶部１４８に格納されている確定時刻を、上記の最後の入力単語ωkに対応した確定時刻とする。
なお、受理単語がωｋである状態遷移の代わりに、出力遷移ａＰにたどり着くまでトレースバックするようにしてもよい。
【０１１５】
次にステップＳ３において、原稿分割部１４３は、原稿を分割し、分割結果として得られた単語列をそれぞれ出力候補とする。具体的には、原稿分割部１４３は、今回トレースバックするパスの中で、２つの出力遷移間に挟まれたパス区間毎に原稿を分割する。そして、原稿分割部１４３は、得られたそれぞれの出力候補を、出力候補記憶部１４４に格納する。
なお、ここでの処理の方法として、出力遷移ａＰにたどり着くまで逆向きに（つまり、時間を遡る方向に）進みながら、出力可能な出力遷移ａＬ（時間軸に沿ったＬ番目（ただしＬ＞Ｐ）の出力遷移）を通過する度に原稿を分割してもよい。また、出力遷移ａＰの側から出力可能な出力遷移ａＬを通過する度に原稿を分割してもよい。
なお、出力可能な出力遷移ａＬとは、出力遷移のシンボルが出力候補になるものであるが、後に、誤りスコア判別部１４６によって棄却される出力遷移（つまり、出力部１５０からは結局出力されない出力遷移）をも含んでいる。
【０１１６】
次にステップＳ４において、誤りスコア算出部１４５は、出力候補の誤りスコアを算出する（ステップＳ４）。具体的には、誤りスコア算出部１４５は、式（７）によってチャンクｏｔ，ｋｕの誤りスコアＥ（チルダ）（ｏｔ，ｋｕ）を算出する。
【０１１７】
次にステップＳ５において、誤りスコア判別部１４６は、出力候補のうちの一つを選択し、その出力候補に関して算出された誤りスコアが閾値Ｔ未満であるか否かを判別する。誤りスコアが閾値Ｔ未満である場合（ステップＳ５：ＹＥＳ）には、次のステップＳ６に進む。誤りスコアが閾値Ｔ以上である場合（ステップＳ５：ＮＯ）には、ステップＳ８に飛ぶ。
【０１１８】
次にステップＳ６に進んだ場合、誤りスコア判別部１４６は、ＷＦＳＴのネットワーク上の当該パス区間（チャンク）の出力遷移を確定し、その出力シンボルを誤り修正結果として確定する。
次にステップＳ７において、誤りスコア判別部１４６は、今回確定した出力シンボルのデータを、確定出力記憶部１４７に書き込む。前述のとおり、確定出力記憶部１４７は後入れ先出しの構造を有するスタックである。
これらのステップＳ６およびＳ７の処理は、ステップＳ５における分岐制御により、現在のチャンクの誤りスコアが閾値Ｔ未満である場合のみに実行される。
【０１１９】
次にステップＳ８に進むと、誤りスコア判別部１４６は、すべての出力候補を判別し終えたか否かを判断する。すべての出力候補の判別が終了している場合（ステップＳ８：ＹＥＳ）、次のステップＳ９に進む。すべての出力候補の判別が終了していない場合、すなわち依然として選択すべき出力候補がある場合（ステップＳ８：ＮＯ）、ステップＳ５に戻って次の出力候補を選択する。
【０１２０】
つまり、切り出されたすべての原稿に対応した各パス区間に対して算出された誤りスコアについての判定処理が終了した場合に、次のステップＳ９に進む。
ステップＳ９において、誤りスコア判別部１４６は、確定時刻記憶部１４８を更新する。つまり、誤りスコア判別部１４６は、スタックに積まれた出力シンボルに対応する確定単語の時刻が最も新しいものを今回のトレースバック処理で確定した確定時刻として確定時刻記憶部１４８に格納する。
【０１２１】
次にステップＳ１０において、出力部１５０は、その時点で確定出力記憶部１４７に書き込まれている出力シンボルのデータを、確定出力記憶部１４７が空になるまで順次読み出し、出力する。これにより、スタックに積まれていたすべての出力データは、出力される。なお、出力部１５０は、ＷＦＳＴのネットワークの前方側に配置された原稿から順に（つまり、時刻の早い側から順に）出力する。
【０１２２】
つまり、出力部１５０は、毎回のトレースバック処理でスタックに積んだデータを、確定された原稿として逐次出力する。このとき、音声認識結果のうち、所定のパス区間の誤りスコアが閾値Ｔ以上である場合、信頼度が低いパスなので、当該パス区間の出力遷移の出力シンボルは、誤り修正結果としては採用されない。したがって、出力部１５０は、そのような信頼度の低いパス区間の出力シンボルを、出力しない。
【０１２３】
ステップＳ１０の処理が終了すると、音声認識誤り修正装置１００は、このフローチャート全体の処理を終了する。
【０１２４】
［１０．字幕文出力の具体例と評価］
以上、説明したように、本実施形態による音声認識誤り修正装置１００の処理の特徴は、（１）文をチャンクに分割すること、（２）チャンクの終端に出力遷移を設けること、（３）出力遷移の箇所からトレースバックすること、である。このような特徴的な処理をすることによる作用を、具体的な処理例とともに、次に説明する。
【０１２５】
図６は、本実施形態による字幕文出力の確定方法の実例を示す概略図である。同図の（Ａ）および（Ｂ）は、それぞれ、入力される認識結果の単語列と、それらの単語に対応するＷＦＳＴの状態遷移と、その結果としての出力シンボルとの関係を示し、また算出される誤りスコアを付記している。
【０１２６】
まず、同図（Ａ）の例において、入力される単語列は「今日／の／関東／地域／は」である。これらの単語を受け付けると、ＷＦＳＴは、次のように遷移する。即ち、始端からスタートして、入力単語「今日」は、対応する原稿内の「今日」にマッチして、ペナルティの無い状態遷移が起こる。次の単語「の」は、対応する原稿内の「の」にマッチして、ペナルティの無い状態遷移が起こる。次の単語「関東」は、対応する原稿内の「関東」にマッチして、ペナルティの無い状態遷移が起こる。次の単語「地域」は、発話者による読み替えまたは音声認識装置２２０による認識誤りにより入力された単語である。したがって、対応する原稿内の「地方」にはマッチせず、置換の状態遷移が起こる。次の単語「は」は、対応する原稿内の「は」にマッチして、ペナルティの無い状態遷移が起こる。そして、「晴れ」と「です」は入力されていないが、脱落の状態遷移が起こると、黒四角で示すチャンクの終端の状態にたどり着く。そして、出力遷移における出力シンボルである「今日の関東地方は晴れです。」が、出力候補となる。ここで、このチャンクに関する誤り率は３／７である。即ち、誤りスコアは、３／７である。閾値Ｔを０．５とする場合、この誤りスコアは閾値Ｔよりも小さい。そして、音声認識誤り修正装置１００は、出力候補である「今日の関東地方は晴れです。」の出力を確定することができる。
【０１２７】
次に、同図（Ｂ）の例で示すＷＦＳＴのネットワークにおいては、一連の区間が、ａｂｃｄｅｆのチャンクと、ｇｈｉｊｋのチャンクとに分割されている。そして、各チャンクの終端に、出力遷移が設けられている。そして、入力される単語列はａｂｃｘｅｙｇｈである。これらの単語を受け付けると、ＷＦＳＴは、次のように遷移する。即ち、始端からスタートして、入力単語ａ，ｂ，ｃのそれぞれは、対応する原稿内のａ，ｂ，ｃにマッチして、これらの単語の各々に関するペナルティの無い状態遷移が起こる。次の入力単語ｘについては、原稿内の単語ｄの置換の状態遷移が起こる。次の入力単語ｅは、原稿内のｅにマッチして、ペナルティの無い状態遷移が起こる。そして、次の入力単語ｙについては、原稿内の単語ｆの置換の状態遷移が起こる。その遷移先がチャンクの終端の状態であり、その次の出力遷移における出力シンボルがａｂｃｄｅｆである。ここまでのチャンクの誤りスコアは、２／６である（正常な状態遷移が４つで、置換の状態遷移が２つなので、２／（４＋２））。
【０１２８】
続いて同図（Ｂ）内で、入力単語ｇ，ｈのそれぞれは、対応する原稿内のｇ，ｈにマッチして、これらの単語の各々に関するペナルティの無い状態遷移が起こる。ここで入力単語列は終わるが、対応する原稿内のｉ，ｊ，ｋについては脱落の状態遷移が起こり得る。ここで、原稿内のｇｈｉｊｋの列の区間だけについて謝り率は３／５であり、閾値Ｔ（＝０．５）を超えている。何故なら、ｇ，ｈが入力にマッチして、ｉ，ｊ，ｋが脱落しているからである。しかしながら、式（９）によって計算される誤りスコアは、前のチャンクにおける誤りスコアとの加重平均（チャンク内の単語数による加重平均）をとって、５／１１である。この誤りスコア５／１１は閾値Ｔより小さい。したがって、音声認識誤り修正装置１００は、出力候補ａｂｃｄｅｆを出力するとともに、次のチャンクに対応する出力候補ｇｈｉｊｋをも出力する。
【０１２９】
同図（Ａ）の例によって示した通り、音声認識誤り修正装置１００は、単語「は」より後の入力単語が仮にすべて誤っていた（音声認識装置２２０による認識誤りなど）としても、早期に対応する字幕文を出力することができる。これは、単語「は」より後の入力単語がすべて誤っていたとしても誤りスコアが閾値Ｔより小さいためである。
また、同図（Ｂ）の例によって示した通り、予めチャンクを分割しておいた場合には、式（９）の作用で、現在着目するチャンクの、前方の確定済のチャンクの誤りスコアを利用することによって、さらに早期に、現在着目するチャンクの出力を確定できる。
【０１３０】
［１１．誤りスコアに関する閾値Ｔの決め方］
もし音声認識装置の認識精度が９０％くらいであれば、誤りスコアの基礎となる単語の誤り率は１０％程度になる可能性がある。本実施形態で誤りスコア判別部１４６による判別に用いるための閾値Ｔとしては、音声認識の認識精度に応じて、単語一致率の信頼度分だけマージンを取って設定することが好ましい。ここで、単語一致率の信頼度は、ＷＦＳＴのネットワークの２つの出力遷移間の単語数に依存する。
【０１３１】
閾値Ｔを設定するためのその他の要因としては、原稿テキスト記憶装置２００に記憶される原稿の候補の文章としての重なりがどのくらいの割合であるのかという点がある。例えば、下記（Ｅ１）〜（Ｅ３）に示す文の場合、文章としての重なりが８０％くらいの割合で含まれている。
（Ｅ１）  今日  の  天気  は  晴れ  です
（Ｅ２）  今日  の  天気  は    雨  です
（Ｅ３）  今日  の  天気  は  曇り  です
このような場合、閾値Ｔも８０％くらいに設定してしまうと、所望の動きが実現できない。
【０１３２】
なお、ニュース原稿の文を適切にチャンクに分割して出力遷移を配置し、閾値Ｔを５０％とした条件で実験した場合、良好に動作することが確認できた。
【０１３３】
以上説明したように、本実施形態に係る音声認識誤り修正装置１００は、文の順序は変わり得るとは言え、原則として、原稿テキストに含まれる文が連続して発声されるという拘束を利用して、認識結果と原稿テキストとを対応付けることで、認識誤りを修正することができる。つまり、従来技術によるブロック照合方式の自動修正誤りを解消する。
【０１３４】
また、本実施形態による音声認識誤り修正装置１００は、認識単語の単語列が原稿テキスト内に含まれる単語列のどこと一番マッチしているのかを、従来技術による方式より長い範囲で照合している。つまり、従来のブロック照合方式が単語連鎖ブロックに相当する区間だけを照合するのに対して、音声認識誤り修正装置１００は、原稿の文章を遡りながらもっと長い文章全体で照合する。そのため、どこでマッチさせるのがよいのかが従来よりも明白に分かり、自動修正誤りを従来よりも低減できる。
【０１３５】
本実施形態による音声認識誤り修正装置１００は、文を複数のチャンクに分割し、チャンクの終端に出力遷移を設けている。これにより、文の途中であっても、確定させた単語列を出力することができる。
【０１３６】
また、本実施形態による音声認識誤り修正装置１００は、出力遷移が存在する箇所のみからトレースバックするように限定した。これにより、計算量を抑制することができる。
【０１３７】
なお、上述した実施形態における音声認識誤り修正装置、原稿テキスト記憶装置、音声認識装置、トランスデューサー構築装置の機能をコンピューターで実現するようにしても良い。その場合、これらの機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１３８】
以上、実施形態を説明したが、本発明はさらに次のような変形例でも実施することが可能である。また、複数の変形例を組み合わせて実施しても良い。
【０１３９】
［変形例１］音声認識誤り修正装置の構成
音声認識誤り修正装置１００が、内部にトランスデューサー構築装置２４０を備えるようにしてもよい。
【０１４０】
［変形例２］言い換えを受理するＷＦＳＴの構築
ＷＦＳＴの情報源となるアナウンス用原稿には、それが読まれるときに、読み飛ばされる句や、言い換えられる句、補足される句が含まれている場合がある。これらの一部には、定型で高い頻度で省略／言い換え／補足が行われる。例えば、ニュース番組の原稿では、取材元を表す「警視庁によりますと」などといった句は、読み飛ばされやすいことの多い句である。このような句が読み飛ばされたとしても、ニュース主文の文意に変わりはなく、言い換えればいわゆる５Ｗ１Ｈに関する変化はなく、ニュース番組としての実用上の問題はない。
【０１４１】
本変形例では、このような定型的な言い回しのバリエーションをＷＦＳＴに追加しておくことで、精度よく修正結果を出力できるようにする。上記の言い回しのバリエーションの追加は、原稿から構築したＷＦＳＴとは別に、言い回しのバリエーションを追加するための別のＷＦＳＴを構築しておき、原稿から構築したＷＦＳＴと合成することにより、効率よく行うことができる。なお、ＷＦＳＴの合成や、最小化や、決定化などを行うための公知のアルゴリズムを適用することができる。
【０１４２】
上記のような言い換え例を含んだＷＦＳＴを構築するためには、過去の同種の番組の原稿テキストと、実際に読み上げられた単語列との差分を分析し、頻度が高く、且つ言い換えによって文意に変更がないものを予め選別して収集しておく。そして、この選別された言い換え例ごとに、言い換えを合成するためのＷＦＳＴを構築しておき、原稿から構築したＷＦＳＴと、言い換え例のＷＦＳＴとを合成する演算（既存技術による演算）を施すことにより、言い換えに対応可能なＷＦＳＴを構築することができる。
【０１４３】
［変形例３］認識結果への付加
音声認識の結果では得られない記号等（句点や、読点や、その他の記号等）を、出力状態遷移における出力シンボル内に含めるようにしても良い。例えば、ニュース原稿に予めそれらの記号等を含めておき、そのニュース原稿に基づいてＷＦＳＴを構築するときに、出力シンボル内にそれらの記号等が残るようにする。そのようなＷＦＳＴを用いて音声認識誤り修正装置１００を稼働させることにより、それらの記号等を含んだ読みやすい字幕を出力することができる。
【０１４４】
［変形例４］認識結果に対応するその他の出力（多言語字幕）
上記の変形例３に加え、出力遷移における出力シンボルとして、原稿のテキストを他国語等に翻訳した結果の単語列を用いても良い。これにより、読み上げられた元の原稿とは異なる言語での字幕を出力することができる。また、複数のＷＦＳＴを同時に並行して稼働させることにより、複数ヶ国語の字幕を出力することもできる。また、出力遷移における出力シンボルとして、番組の進行をコントロールするためのキューに相当する記号を含めるようにしても良い。このキューが出力されることをトリガーとして、ハイブリッドキャストなどの番組連動サービスに対して、起動や場面転換等の指示情報を与えることもできる。これにより、より多彩な放送サービスを実現することができる。
【０１４５】
［変形例５］ＷＦＳＴの最小化
本変形例では、ＷＦＳＴを作成する際に、可能であればＷＦＳＴの最小化を行う。ＷＦＳＴの最小化とは、与えられた状態遷移図において、集約可能な複数の状態（ノード）を集約したり、集約可能な複数の状態遷移（枝）を集約したりすることである。ＷＦＳＴを集約すること自体は、既存技術によって行うことができる。ＷＦＳＴの最小化の一例は次の通りである。即ち、ＷＦＳＴのネットワークにおいて、共通する複数の部分ネットワークを同一の状態遷移の列として構成し直す。このようなＷＦＳＴの最小化を用いることにより、共通する単語列についての状態遷移を削減することができる。例えば、同じ接頭辞を有する単語列（文）を同一の遷移で共有できる。これにより、演算量を削減することができる。
【０１４６】
［変形例６］ＷＦＳＴの決定化
ＷＦＳＴを作成する際に、必要があればＷＦＳＴの決定化を行う。具体的には、ＷＦＳＴのネットワークにおいて、状態遷移の途中で、出力シンボルが決定する場合には、少しでも早く推定結果を出力するために、出力文の位置を前のほうに変更する。ＷＦＳＴの決定化を行うことにより、例えば、接頭辞がユニークとなる遷移に出力文を移動する。これにより、出力文を旱期に確定できるようになるなどの利点がある。ただし、ＷＦＳＴを作成する際にＷＦＳＴの決定化を行った場合、原稿探索部１４０による最尤仮説の探索処理でも対応できるように設定変更が必要である。つまり、ＷＦＳＴの決定化を行わない場合に比べて、誤りスコアを計算するためのパス区間を出力遷移の前後にシフトさせる必要がある。加えて、前後のパス区間の伸縮分を吸収できるように、閾値Ｔをより厳しい値（誤り率がより小さい値）に設定する必要がある。
【０１４７】
［変形例７］誤りスコアの求め方
本実施形態では、式（９）に示した誤り率（編集距離）に基づいて誤りスコアを計算した。これに限らず、原稿と認識結果の一致率、一致精度、脱落率、挿入率を利用したり、それらを併用したりすることによって、誤りスコアを算出するようにしても良い。
【０１４８】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【０１４９】
本発明は、音声認識結果を利用した字幕等のコンテンツの作成に利用することができる。本発明は、例えば、放送事業や、その他のコンテンツ提供事業において、利用することが可能である。
【符号の説明】
【０１５０】
１００  音声認識誤り修正装置
１１０  ＷＦＳＴ記憶部（有限状態トランスデューサー情報記憶部）
１２０  ノードデータ更新部
１３０  ノードデータ記憶部
１４０  原稿探索部
１４１  最尤ノード検出部
１４２  トレースバック部
１４３  原稿分割部
１４４  出力候補記憶部
１４５  誤りスコア算出部
１４６  誤りスコア判別部
１４７  確定出力記憶部
１４８  確定時刻記憶部
１５０  出力部
２００  原稿テキスト記憶装置
２２０  音声認識装置
２４０  トランスデューサー構築装置
２４１  単語ネットワーク登録部
２４２  編集ネットワーク登録部
【図１】
0006358744.tif 000011
【図２】
0006358744.tif 000012
【図３】
0006358744.tif 000013
【図４】
0006358744.tif 000014
【図５】
0006358744.tif 000015
【図６】
0006358744.tif 000016