(57)【特許請求の範囲】
【請求項１】
Ｎ行（Ｎは２以上の整数）からなるテキスト中の全ての行について形態素解析を行うことで形態素に分割する形態素解析部と、
回帰モデルを用いて、N行全てについて、第ｎ行目（ｎ＝１，．．．，Ｎ−１）の行末の１以上の形態素と、第ｎ＋１行目の行頭の１以上の形態素とを用いて、第ｎ行目の行と第ｎ＋１行目の行とがつながる可能性を示すつながり度を計算するつながり度計算部と、
第ｎ＋１行目の行頭の１以上の形態素と、第ｎ行目の行と第ｎ＋１行目の行とのつながり度を用いて、形態素に分割された前記テキストのN行全ての行についてクラスタリングをするクラスタリング部と、
主要文に属する主要行であること、または非主要文に属する非主要行であること、のうち少なくとも一方を示す整形規則を前記クラスタリングの情報から生成する規則生成部と、を備えるテキスト整形規則獲得装置。
【請求項２】
請求項１記載のテキスト整形規則獲得装置であって、
前記つながり度計算部は、前記つながり度を離散的に出力することを特徴とするテキスト整形規則獲得装置。
【請求項３】
請求項１または２に記載のテキスト整形規則獲得装置であって、
前記規則生成部は、少なくとも１つのクラスタ中において、形態素が１つ以上共通している項を規則として整形規則を生成するものであることを特徴とするテキスト整形規則獲得装置。
【請求項４】
請求項１〜３の何れかに記載のテキスト整形規則獲得装置であって、
前記テキストから、予め定められた第１除去対象記号を除去する第１除去部を有し、
前記クラスタリング部は、前記第１除去対象記号を除去したテキストについて処理を行うことを特徴とするテキスト整形規則獲得装置。
【請求項５】
請求項１〜４の何れかに記載のテキスト整形規則獲得装置であって、
前記整形規則中の前記非主要行を示す規則の始めの１以上の形態素を第２除去対象記号として、当該第２除去対象記号を前記テキストから除去する第２除去部を有し、
前記クラスタリング部は、前記第２除去対象記号を除去したテキストについて処理を行うことを特徴とするテキスト整形規則獲得装置。
【請求項６】
請求項１〜５の何れかに記載のテキスト整形規則獲得装置であって、
前記生成された整形規則のうち、必要な規則のみを残すための選択情報が入力される入力部を備え、
前記規則生成部は、前記選択情報で示す必要な規則のみを残すことを特徴とするテキスト整形規則獲得装置。
【請求項７】
請求項１〜６の何れかに記載のテキスト整形規則獲得装置と、
入力されたテキストについて当該テキスト整形規則獲得装置により生成された整形規則を用いて、前記テキストから前記非主要行であることを判定する判定部と、を備える構造判定装置。
【請求項８】
請求項１〜６の何れかに記載されるテキスト整形規則獲得装置の各部としてコンピュータを機能させるためのプログラム。
【請求項９】
請求項７に記載される構造判定装置の各部としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、音声合成に使用される文の整形規則を獲得するテキスト整形規則獲得装置、その方法、そのプログラム、そして、獲得した整形規則を用いて文の構造を判定する構造判定装置、そのプログラムに関する。
【背景技術】
【０００２】
従来の音声合成（ＴＴＳ：Ｔｅｘｔ  ｔｏ  ｓｐｅｅｃｈ）のテキスト処理では、「平文」を入力対象としているものが多い。最近では、非特許文献１および、非特許文献２のように、ＷＥＢ上のブログページの読み上げも行われ始めたが、これは、ＷＥＢに埋め込まれているＨＴＭＬやＸＭＬのタグによって文書の外観を制御するので、タグの解析結果に従って、ＴＴＳが想定する平文相当の文を取得しやすい。また、独自の書式を持つ電子メールのメーラ・プログラムやその他の応用ツールからはそれらの応用プログラムでの情報格納構造に従うことにより合成対象の平文相当の文を取得できるため、同様に問題が少ない。
【０００３】
一方、電子メールからコピー・ペーストで取得されたテキストや、構造情報を持たない電子メールプログラムからダウンロードしたメールのテキストや、それらに添付される形態情報を持たないテキストでは、その外観は書き手が決めた任意の位置での改行や文字の位置によって決まっており、構造を示す体系立ったタグなど記号が付与されるわけではないので、音声合成の前に平文相当の文への整形が必要となる。
【０００４】
そこで、音声合成による読み上げにおいては、予め人手で用意された規則を用いた文の整形方式が提案されている。その規則生成の困難性を回避する目的で、電子メールなどの文書データから学習して得られた規則を用いて、入力文書の本文の通常行と引用行とを区別して音声合成用の文に整形する特許文献１のような方式が提案されている。
【非特許文献１】<http://tech.yahoo.com/blogs/hughes/8431;ylt=Agh6OsDQIU21I9Ld1UIErNEmLpA5 >の”Ｙａｈｏｏ  Ｔｅｃｈ”というＷＥＢサイトの記事（Ｆｒｉ  Ｊａｎ  １９，２００７  ５：２６ＡＭ  ＥＳＴ）  ”Ｆｒｏｍ  Ｂｌｏｇ  ｔｏ  Ｐｏｄｃａｓｔ  ｗｉｔｈ  Ｏｄｉｏｇｏ”
【非特許文献２】<http://www.odiogo.com/press.php>のＹａｈｏｏＴｅｃｈ’Ｔｅｃｈｉｅ  Ｄｉｖａ  （Ｊａｎｕａｒｙ１９，２００７）の”Ｆｒｏｍ  Ｂｌｏｇ  ｔｏ  Ｐｏｄｃａｓｔ  ｗｉｔｈ  Ｏｄｉｏｇｏ”
【特許文献１】特開平第１１−２７２５８０号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術において、通常行と引用行とを区別するためには、通常行と引用行とを区別するためのラベルを付した学習データを予め用意しておかなければならなかった。このラベルの付加は、人間が行う場合が多く、非常に煩雑であった。
【０００６】
本発明は、例えば、メール（テキスト）の引用部分ではない、メールの本文のような、ユーザが必要であると判断する主要文に属する行（以下、「主要行」という。）と当該主要文ではない、つまりユーザが必要でない非主要文に属する行（以下、「非主要行」という。）とを分けるための整形規則を獲得することを自動化するテキスト整形規則獲得装置、その方法、そのプログラム、そして生成された整形規則を用いる構造判定装置を提供する。
【課題を解決するための手段】
【０００７】
本発明のテキスト整形規則獲得装置は、Ｎ行（Ｎは２以上の整数）からなるテキスト中の全ての行について形態素解析を行うことで形態素に分割する形態素解析部と、回帰モデルを用いて、N行全てについて、第ｎ行目（ｎ＝１，．．．，Ｎ−１）の行末の１以上の形態素と、第ｎ＋１行目の行頭の１以上の形態素とを用いて、第ｎ行目の行と第ｎ＋１行目の行とがつながる可能性を示すつながり度を計算するつながり度計算部と、第ｎ＋１行目の行頭の１以上の形態素と、第ｎ行目の行と第ｎ＋１行目の行とのつながり度を用いて、形態素に分割された前記テキストのN行全ての行についてクラスタリングをするクラスタリング部と、主要文に属する主要行であること、または非主要文に属する非主要行であること、のうち少なくとも一方を示す整形規則を前記クラスタリングの情報から生成する規則生成部と、を備える。なお、主要文とは、例えば音声合成時に読みあげ対象となる文であり、非主要文とは、そのほかの文である。メールのような場合は、本文を主要文、引用文を非主要文と決めればよい。どのような文を主要文、非主要文とするかは、ユーザが適宜設計変更ですればよい。
【発明の効果】
【０００８】
上記の構成のように、行頭の１以上の形態素を用いて、形態素に分割されたテキスト全ての行について、クラスタリングを行うことにより、主要行を示す規則の候補となるクラスタと、非主要行を示す規則の候補となるクラスタとに分ける。そして、主要行であること、または非主要行であること、のうち少なくとも一方を示す整形規則をクラスタリングの情報から生成する。これにより、主要行（上記特許文献１の技術では通常行と言及）と非主要行（上記特許文献１の技術では引用行と言及）とに分けるために、人間がラベルを付した学習データを必要とすることなく、自動的に整形規則を獲得できる。
【発明を実施するための最良の形態】
【０００９】
以下に、発明を実施するための最良の形態を示す。なお、同じ機能を持つ構成部や同じ処理を行う過程には同じ番号を付し、重複説明を省略する。以下の説明では、「文」または「文章」とは１以上の「行」から構成されるものとする。
【実施例１】
【００１０】
図１に実施例１のテキスト整形規則獲得装置２００−１とこれに付随する記憶装置１００の機能構成例を示し、図２にテキスト整形規則獲得装置２００−１の主な処理を示す。また、図３に、整形規則獲得の対象となる入力されるテキストの例を示す。この例では、テキストの行数は１９行である。１〜７行目の行は、本文であるので、主要行である。「＞」が行頭に付されている９〜１２行目の行は、非主要行である引用行（引用文を構成する行）を示す。１５行〜１９行目の行も本文ではなく、非主要文である。「＞」が付されている行については、「＞」の後に半角スペースが用いられているとする。テキスト整形規則獲得装置２００−１は、連結作成部６と形態素解析部９とつながり度計算部１２とクラスタリング部１６と規則生成部１８とで構成される。また記憶装置１００は、テキスト格納部２とつながり度付き行格納部１４と規則格納部２０とで構成される。
【００１１】
図１記載のテキスト整形規則獲得装置２００−１は、図示しない範囲指定装置を有する。範囲指定装置は、計算機本体、文書を表示するディスプレイ、キーボード、マウスなどで構成される。これらを使って、規則獲得の対象となるテキストが入力されると、当該テキストを１行ずつテキスト格納部２に格納させる（ステップＳ２）。
【００１２】
そして、連結作成部６が、テキスト格納部２から１行目と２行目の行（ステップＳ４）、２行目と３行目の行，．．．，ｎ行目とｎ+１行目の行（ｎ＝１，．．．，Ｎ−１），．．．，Ｎ−１行目とＮ行目の行とを取り出す（ステップＳ６）。そして、連結作成部６は、ｎ行目とｎ+１行目の行とを連結して、連結位置を記憶する（ステップＳ８）。入力されたテキストが連結された例を図４に示す。行と行の間に「◆」を用い、空行は「（空行）」とし、ファイルの末尾は「（ファイル末）」とした。「◆」については、あくまで行と行とが連結されていることを示すためだけのものであり、以下の形態素解析部９の形態素解析処理、つながり度計算部１２のつながり度計算処理などにおいては記号としては考慮しないものである。
【００１３】
そして、形態素解析部９は、連結された行全てについて、形態素解析を行い、形態素に分割する（ステップＳ１０）。つながり度計算部１２は、回帰モデルを用いて、N行全てについて、第ｎ行目（ｎ＝１，．．．，Ｎ−１）の行末の１以上の形態素と、第ｎ＋１行目の行頭の１以上の形態素とを用いて、第ｎ行目の行と第ｎ＋１行目の行とがつながる可能性を示すつながり度を計算する（ステップＳ１２）。計算されたつながり度は、第ｎ＋１行目の行のつながり度として、第ｎ＋１行目の行に付与される。第ｎ行目の行と第ｎ＋１行目の行とが連結された状態で、形態素解析部９が形態素解析した結果、境界の「◆」の位置が何らかの単語の内部に来る場合には、つながり度計算部１２は、ｎ＋１行目の行に高いつながり度を付与する。
【００１４】
ここで、つながり度が低い行というのは、その行と前の行とのつながる可能性が低く、逆に、つながり度が高い行というのは、その行と前の行とのつながる可能性が高いということである。
【００１５】
また、回帰モデルとは、確率的言語モデル、回帰木、数量化II類、ニューラルネットワーク、条件付確率場モデルなどである。全てのモデルはｎ−１行目の行末の１つ以上の形態素とｎ行目の行頭の１つ以上の形態素との間のつながりの可能性を示すつながり度を計算するよう構成される。各モデルの学習には、例えば、新聞記事などの大量の文からなるデータベースを用いて学習する。
【００１６】
言語モデルでは、例えば、ｎ−１行目の行末の１つ以上の形態素とｎ行目の行頭の形態素と間に境界が来る条件付確率であるＰ（ｎ−１行目の行末の１つ以上の形態素、ｎ行目の行頭の１つ以上の形態素）を用いることが可能である。この値が大きいほど境界の存在する可能性が低く、すなわち、つながり度が高く、この値が小さいほど境界の存在する可能性が高く、すなわち、つながり度が低い。
【００１７】
回帰木、数量化II類、ニューラルネットワークでは、説明変数や入力に、ｎ行目の行末の形態素とｎ＋１行目の行頭の形態素とを設定し、非説明変数や出力につながり度を設定できる。条件付確率場モデルでは、例えば、素性としてｎ行目の行末の１つ以上の形態素、ｎ＋１行目の行頭の１つ以上の形態素を設定し、その素性の下で境界が来る確率として定義してつながり度の計算に利用する。ｎがＮ−１になるまで、つながり度の計算を行う（ステップＳ１４、ステップＳ１６）。このように、つながり度計算部１２は、電子メールといった処理対象の構造に限定されることなく大量に用意できる新聞などの言語データから学習した回帰モデルを用いて、つながり度を求めることができる。そして、つながり度計算部１２は、ｎ行目の行とｎ＋１行目の行とのつながり度をｎ＋１行目の行に付与する。付与された結果例を図５に示す。つながり度が付与された行を一旦、つながり度付き行格納部１４に格納させることが好ましい。そして、ここでは、後述するクラスタリング部でのクラスタリング処理のために、図５に示す結果をつながり度、行頭の第１〜４形態素を要素とする５元のベクトルとして表現し、当該ベクトルの例を図６に示す。ベクトルの要素数は任意でよい。また、このように、ベクトル表現しなくても良い。参照用に行の行番号を右端に記した。この番号は、図３の左端に示した行番号と同じである。
【００１８】
クラスタリング部１６は、第ｎ＋１行目（ｎ＝１、．．．、Ｎ−１）の行頭の１以上の形態素と、第ｎ行目と第ｎ＋１行目とのつながり度（つまり、ｎ＋１行目の行に付与されたつながり度）を用いて、形態素に分割されたテキストのＮ行全てについて、クラスタリングを行う。ここでは、図６に示すベクトルを用いて、クラスタリングを行う（ステップＳ１８）。図７にクラスタリング後の結果例を示す。以下の説明では、クラスタに属するベクトルを項という。例えば、クラスタ１の１番目の項は、（０、＞、半角スペース、田中、です）になる。図７の例では、クラスタ１には、つながり度が「０」であり、第１、第２形態素が特殊な記号（図７の例では「＞  半角スペース」）であるベクトルが属する。クラスタ２には、つながり度が「０」であり、第１形態素が特殊な記号でないベクトルが属する。クラスタ３には、つながり度が１００であるベクトルが属する。図７では、各クラスタは、つながり度が低い順かつ、共通性の高い形態素を有している順に列挙されている。図７の例のように、「＞」などの特殊記号を形態素に含むクラスタ１や、つながり度が０であるクラスタ２（クラスタリング前の行が非主要行であるクラスタ）は、後述する非主要行を示す規則の候補となり、つながり度が高いクラスタ３（クラスタリング前の行が主要行であるクラスタ）は主要行を示す規則の候補となる。また、１以上の形態素として特殊な記号を含む行の他の例として、本文中の表を構成している行や箇条書きされている行などがある。
【００１９】
また、つながり度計算部１２がつながり度を離散的に出力し、クラスタリング処理に当該離散的なつながり度を用いると、クラスタリング効率が更によくなる。例えば、つながり度計算部１２が、つながり度を０、１０、２０、・・・などのように出力すると、つながり度を用いたクラスタリング処理が更に円滑になる。
【００２０】
規則生成部１８は、主要文に属する主要行であること、または主要文に属さない非主要行であること、のうち少なくとも一方を示す整形規則をクラスタリングの情報から生成する。まず、整形規則について説明する。整形規則の例を図８に示す。ここで、整形規則とは規則が集合したものである。規則１は、クラスタ１から求められた（求め方は後述する）規則であり、規則２〜１２は、クラスタ２の全ての項であり、規則１３以降は、クラスタ３の全ての項である。そして、以下の実施例４で説明する構造判定装置は、この整形規則を用いて、入力された文を構成するそれぞれの行（テキスト）が主要行であるか、または、非主要行なのかを判定する。
【００２１】
そして、以下で説明する構造判定装置でこの整形規則が用いられる場合、当該構造判定装置が、つながり度が０である規則が規定する第１形態素〜第４形態素を有する行を非主要行と判定し、つながり度が１００である規則が規定する第１形態素〜第４形態素を有する行を主要行と判定する。以下では、非主要行と判定する規則を非主要行規則とし、主要行と判定する規則を主要行規則とする。例えば、規則１が規定する第１形態素が「＞」であり、第２形態素が「半角スペース」である行は非主要行と判定する規則であることを示している。この例では、つながり度が０または１００である場合を説明したが、それ以外のつながり度が用いられる場合もある。その場合は、予め閾値を決めておき、つながり度が当該閾値以上／より大きい規則を、主要行規則とし、つながり度が当該閾値以下／未満である規則を、非主要行規則とすればよい。
【００２２】
次に規則生成部１８による規則生成手法の詳細を図８を用いて説明する。クラスタリング結果（図７参照）を全て整形規則としても良い。しかし、それでは、整形規則が膨大な量になるため、効率的ではない。そこで、規則生成部１８が、形態素が１つ以上共通している項を選択すればよい。この選択処理は、図７のように、各クラスタをベクトル表現している場合には、各クラスタからセントロイドベクトルを求める処理ともいえる。このようにすることで、整形規則の量を少なくでき、汎用的な整形規則を得ることができる。
【００２３】
規則生成部１８による、形態素が１つ以上共通している項の選択処理について、説明する。例えば、クラスタ１に属する行番号９〜１２の項の中で、行番号１０の項（ベクトル）は、「＞、半角スペース、空白、空白」である。このベクトル中の「＞、半角スペース」が、行番号９、１１、１２の項の先頭の２つの形態素（０、＞）と共通している。従って、規則生成部１８は、行番号が９〜１２の項から、第１形態素が「＞」であり、第２形態素が「半角スペース」である規則１を得ることができる。図８の例では、規則１は（＞、半角スペース、＊、＊）と示しており、「＊」は何でも良いことを示す。
【００２４】
一方、クラスタ３に属する項のように、つながり度が高い項についての行は、その行とその前の行がつながる可能性が高いということであり、一般の文章の可能性が高い。従って、行頭の形態素（第１形態素）は様々であるので（図７の例では、「田中」「佐藤」など）、形態素が共通する項を抽出することは困難である。また、クラスタ２に属する項のように、つながり度が低い項であっても、行頭の形態素（第１形態素）は様々なので、形態素が共通する項を抽出することは困難である。従って、クラスタ２、３の各項をそのまま整形規則としてもよい。
【００２５】
ところが、規則２〜規則１２は、規則１と比較して汎用性がない規則であるといえる（つまり不必要な規則である）。何故なら、例えば規則２に示すように、第１形態素〜第４形態素が  佐藤さとこ（さとう  という行が、後述する構造判定装置に入力されることは極めて稀だからである。規則３〜１２についても同様である。
【００２６】
また、つながり度が１００である規則１３以降は、つながり度が高いから、非主要行を判定する規則を生成する場合は、不必要である。そこで、ユーザが不必要な規則２以降を排除することが好ましい（ステップＳ２０）。ユーザによる排除の方法は、提示部２２を設けて、提示部２２に生成された整形規則を提示して、ユーザが入力部２４から排除情報を入力すればよい。
【００２７】
また、提示部２２を設けず、規則生成部１８が、全ての形態素が異なる項を選択せずに、１つ以上の形態素が共通している項、もしくは、「＊」を含む項を自動的に抽出して規則としても良い。また、規則生成部１８が、頻繁に使用されることが予想される１以上の形態素（例えば、「＞」等の記号）を予め定めておき、その形態素を含む項を抽出して規則としてもよい。図８の例では、つながり度が含まれているが、必ずしも含む必要はない。
【００２８】
そして選択された整形規則は規則格納部２０に格納させる（ステップＳ２２）。
【００２９】
また、連結作成部６と形態素解析部９において、先に、形態素解析部９により全ての行について形態素解析を行い、形態素に分解された状態で、ｎ行目の行とｎ＋１行の行とを連結させてもよい。また、連結作成部６を設けず、ｎ行目の行とｎ＋１行目の行とを連結させずに、つながり度計算部１２が、第ｎ行目（ｎ＝１，．．．，Ｎ−１）の行末の１以上の形態素と、第ｎ＋１行目の行頭の１以上の形態素とを取り出して、第ｎ＋１行目の行のつながり度を求めても良い。
【００３０】
このように、ｎ＋１行目の行頭の形態素と、ｎ行目の行とｎ＋１行目の行とのつながり度を用いて規則を生成することで、つながり度が低い規則を、非主要行規則とすることが出来る。従って、従来のように、主要行、非主要行を分けるためにラベルを付する必要がなく、自動的に主要行、非主要行のうち少なくとも一方を示す規則を得ることができる。
【００３１】
また、上述のように、つながり度は、電子メールといった処理対象の構造に限定されることなく、大量に用意できる新聞の言語データから学習した回帰モデルを用いて求められる。そして、第ｎ＋１行目の行のつながり度と、第ｎ＋１行目の行頭の１以上の形態素とを用いて、整形規則の候補となるクラスタを得ることができる。従って、処理対象特有の、しかし、人間が見ても繰り返しなどがあり、明らかな構造も取りこぼすことなく整形規則を獲得できる。
また、記憶装置１００とテキスト整形規則獲得装置２００−１とは統合させてもよい。
【００３２】
［変形例１］
図９に変形例１のテキスト整形規則獲得装置２００−２の機能構成例を示し、図１０にテキスト整形規則獲得装置２００−２の主な処理の流れを示す。図１１に変形例１のテキスト整形規則獲得装置２００−２による整形規則獲得の対象となるテキストの例を示す。テキスト整形規則獲得装置２００−２は、つながり度計算部１２がない点でテキスト整形規則獲得装置２００−１と異なる。図１１に示すテキストは、１４行目〜１９行目がない点で、図３に示したテキストと異なる。例えば、図１１に示したテキストについてのクラスタリング部１６によるクラスタリング結果は図１２に示すようになる。この場合には、つながり度を用いなくても、例えば、テキスト中の各行において行頭の１以上の形態素が共通しているかを見て、共通している形態素があれば（この例では「＞」）、同位置に当該形態素を有する行を非主要行であることを示す規則の候補となるクラスタとすればよい。従って、例えば図１１に示したテキストについて規則を生成する場合は、つながり度計算部１２（図２記載のステップＳ１２）を設ける必要がなく、結果として、演算処理の削減を図ることができる。
【実施例２】
【００３３】
図１３に実施例２のテキスト整形規則獲得装置２００−３の機能構成例を示し、図１４にテキスト整形規則獲得装置２００−３の主な処理の流れを示す。テキスト整形規則獲得装置２００−３は第１除去部８、除去対象記号格納部１０がある点で、テキスト整形規則獲得装置２００−１とは異なる。例えば、入力されるテキスト中の全ての行の行頭に、空白スペースなどの記号がある場合がある。その場合、つながり度計算部１２のつながり度計算処理が正確に行われなくなる場合がある。このような状況を回避するために、予め定められた第１除去対象記号（例えば、空白スペース）を除去対象記号格納部１０に格納させておき、第１除去部８が、入力されたテキストの全ての行から当該第１除去対象記号を除去すればよい（ステップＳ２４）。このようにすることで例えば、全ての行に空白スペースがある場合には、空白スペースを第１除去対象記号として、除去することで、正確なつながり度を計算できる。
【実施例３】
【００３４】
図１５に実施例３のテキスト整形規則獲得装置２００−４の機能構成例を示し、図１６にテキスト整形規則獲得装置２００−４の主な処理の流れを示す。テキスト整形規則獲得装置２００−４は、第２除去部２６、除去対象記号格納部１０がある点でテキスト整形規則獲得装置２００−１（図１参照）と異なる。
【００３５】
第２除去部２６は、整形規則中の非主要行を示す規則の始めから１以上の形態素を第２除去対象記号として決定し（ステップＳ３０）、当該第２除去対象記号を前記テキストの全ての行から除去する（ステップＳ３２）。
【００３６】
例えば、図１７に示すテキストの１４行〜１５行のように、「＞」が２つ続けて用いられ、引用文が更に引用文として用いられる場合がある。図１７では、「＞」と「＞」の間には空白スペースなどは存在せず、連続しているとする。この場合、規則生成部１８は図１８に示すような規則を生成する。図１８に示す規則では、規則１、２ともに非主要行であることを示す。例えば、行頭の第１形態素である「＞」を第２除去対象記号とする。そして、入力されたテキストのうち、非主要行とみなされる行（図１７では９〜２１行目の行）が再度、テキスト格納部２に格納される。そして、当該格納された行から第２除去対象記号である「＞」を除去すると、図１９に示すようになる。図１９に示すように、９行〜１２行目の行頭の「＞」が除去され、１４行、１５行目の行頭の「＞」が１つになる。この図１９のテキストについて、再度、同様の処理を続けると、引用文の引用文についての構造（２回引用された構造）、つまり階層構造についての規則を獲得できる。なお、図１９記載のテキストから生成される規則は、図１８記載の規則１である。この規則１の第１〜第３形態素を第２〜第４形態素に繰り下げて配置させ、空いた第１形態素の位置に第２除去対象記号を加えることで規則２が生成される。
【００３７】
階層構造が何層にもなっているテキストから規則を生成する場合は、全ての階層構造について整形規則が終了した場合や、整形規則を生成する回数が、予め定めた回数を超えた場合等で処理を終了させれば良い（ステップＳ３４）。なお、１回目の整形規則生成後、テキスト格納部２に格納させるテキストは、上記説明では、非主要行と見なされる行のみであったが、入力されたテキスト全てについてテキスト格納部２に格納させても良い。
【実施例４】
【００３８】
前述の上記特許文献１では、予め学習に使われた文書での実際の構造判定対象と文書でのそれらの特徴とがミスマッチを起こす場合に、学習に基づく手法で得られた規則は一般的にはうまく機能しない。例えば、音声合成処理において、学習段階では「引用文（つまり、読み上げ対象でない文）を構成する行の行頭には、「＞」が付されている」として学習したが、引用文を構成する行ａの行頭に「：」などの（つまり、「＞」とは違う）記号が付されている場合は、その行ａを引用文を構成する行として判定しないという問題がある。このように、様々な文書を処理対象とする場合、学習データと処理対象との間でのミスマッチは常に問題となる。
【００３９】
そこで、この実施例４の構造判定装置のように、構造判定対象の文書についての規則を生成し、この生成された規則を用いて、文書の構造判定を行えば、構造判定対象の文書の非主要行（引用文を構成する行）の行頭にいかなる記号が用いられたとしても、柔軟に当該構造判定対象の文書の構造を判定できる。図２０に構造判定装置３００と音声合成装置４００との機能構成例を示す。構造判定装置３００は、上記実施例１〜３で説明したテキスト整形規則獲得装置２００−１〜２００−４のうち何れかと記憶装置１００を用いたものである。そして、構造判定装置３００が例えば音声合成装置４００と共に使用される場合、構造判定装置３００は、文書が読み上げ対象となる行（つまり主要行）であるのか、読み上げ対象とならない行（つまり非主要行）であるのかを判定する。構造判定装置３００は、テキスト整形規則獲得装置２００−１〜２００−４のうち何れか（以下、テキスト整形規則獲得装置２００と記す）と判定部３０２とで構成されている。
【００４０】
構造判定対象の文書Ａ（例えば、図３に示すテキスト）が構造判定装置３００に入力されると、テキスト整形規則獲得装置２００と判定部３０２に入力される。そして、テキスト整形規則獲得装置２００で、文書Ａについて整形規則Ｂ（図８に示す整形規則）が生成され、規則格納部２０に格納される。そして、判定部３０２は整形規則Ｂを用いて、文書Ａの各行が主要行であるか、非主要行であるかを判定して、例えば、行毎に、主要行もしくは非主要行を示すラベルを付加する。このようにして主要行、非主要行が区別された文書Ａ’は、音声合成装置４００中の構造情報付加部４０２に入力される。
【００４１】
構造情報付加部４０２では、判定部３０２の判定結果を受けて、文書Ａ’のうち、一続きと判定された行をつなぎ合わせることで、改行を取り去り文章としてまとめ上げる。そして、音声合成部４０４で、付加された構造情報を基に音声合成を行う。構造情報を付加した各行が文としてつながることで、音声合成においてイントネーションが自然になる。
【００４２】
また図８記載の整形規則には、つながり度が含まれているが、構造判定処理の際には、つながり度は用いない。
【００４３】
次に、構造判定装置３００と音声合成装置４００とを用いた場合の有利な効果を具体的に説明する。例えば、図２１に、構造判定対象の文書Ｃを示す。文書Ｃ（図２１参照）は、文書Ａ（図３参照）と比較して、９行目〜１２行目の行頭の記号「＞」が「田中：」になっている点で異なる。図３のように、引用を示す場合に、行頭に「＞」を付加する場合も多いが、メールを送ってきた人の名字と記号を用いて（図２１の例では、「田中：」である）、示すこともしばしばある。図２１では、「田中」と「：」と「次の形態素」との間に半角スペースなどはなく、お互いが連続しているものとする。上記特許文献１の技術では、例えば「＞」が行頭についている行が非主要行であるという学習データがある場合、本来は非主要行である９行目〜１２行目の行は、非主要行という判定をされない。つまり、上記特許文献１の技術では、「田中：」が行頭に付いた行が非主要行であることを示す学習データを用いなければ正しく判定される規則を獲得できず、９行目〜１２行目の行は非主要行であると判定できず、学習データと処理対象の文書との間でのミスマッチが生じている事になる。
【００４４】
しかし、この構造判定装置３００であれば、図２１に示す文書について、テキスト整形規則獲得装置２００が、図２２に示すような規則を生成するので、９行目〜１２行目の行を非主要行として判定できる。つまり、構造判定装置３００は、テキスト中の非主要行の行頭がどのような記号であっても、柔軟に非主要行か主要行かの判定できる。また、整形規則によって、各行が選別され、すなわち主要文（メールの場合は本文）か否かの構造情報が付与されることと等価であるので、付与された構造を利用することで、主要文以外の文の読み飛ばし等の制御も可能である。
【００４５】
テキスト整形規則獲得装置２００−１〜２００−４の各部の処理を図示しない制御部が制御しても良い。また、テキスト整形規則獲得装置２００−１〜２００−４、構造判定装置３００における処理機能をコンピュータによって実現する場合、これらの装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、これらの装置における処理機能がコンピュータ上で実現される。
【図面の簡単な説明】
【００４６】
【図１】実施例１のテキスト整形規則獲得装置の機能構成例を示す図。
【図２】実施例１のテキスト整形規則獲得装置の主な処理の流れを示す図。
【図３】実施例１のテキスト整形規則獲得装置に入力されるテキストの例を示した図。
【図４】テキストの前後の文をつなぎ合わせたことを示す図。
【図５】テキストの各文につながり度を付与した図。
【図６】図５に示したものを５元のベクトルとして示した図。
【図７】図６に示したベクトルをクラスタリングした結果を示した図。
【図８】実施例１のテキスト整形規則獲得装置により生成される整形規則を示した図。
【図９】変形例１のテキスト整形規則獲得装置の機能構成例を示す図。
【図１０】変形例１のテキスト整形規則獲得装置の主な処理の流れを示す図。
【図１１】変形例１のテキスト整形規則獲得装置に入力されるテキストの例を示し図。
【図１２】変形例１のテキスト整形規則獲得装置のクラスタリングの結果の例を示す図。
【図１３】実施例２のテキスト整形規則獲得装置の機能構成例を示す図。
【図１４】実施例２のテキスト整形規則獲得装置の主な処理の流れを示す図。
【図１５】実施例３のテキスト整形規則獲得装置の機能構成例を示す図。
【図１６】実施例３のテキスト整形規則獲得装置の主な処理の流れを示す図。
【図１７】実施例３のテキスト整形規則獲得装置に入力されるテキストの例を示す図。
【図１８】実施例３のテキスト整形規則獲得装置により生成される整形規則を示した図。
【図１９】図１８に示すテキストから第２除去対象記号「＞」を除去した結果を示した図。
【図２０】この発明の構造判定装置などの機能構成例を示した図。
【図２１】この発明の構造判定装置の効果を示すためのテキストの例を示す図。
【図２２】図２１に示したテキストから生成される整形規則を示す図。
【図１】
0005172308.tif 000002
【図２】
0005172308.tif 000003
【図３】
0005172308.tif 000004
【図４】
0005172308.tif 000005
【図５】
0005172308.tif 000006
【図６】
0005172308.tif 000007
【図７】
0005172308.tif 000008
【図８】
0005172308.tif 000009
【図９】
0005172308.tif 000010
【図１０】
0005172308.tif 000011
【図１１】
0005172308.tif 000012
【図１２】
0005172308.tif 000013
【図１３】
0005172308.tif 000014
【図１４】
0005172308.tif 000015
【図１５】
0005172308.tif 000016
【図１６】
0005172308.tif 000017
【図１７】
0005172308.tif 000018
【図１８】
0005172308.tif 000019
【図１９】
0005172308.tif 000020
【図２０】
0005172308.tif 000021
【図２１】
0005172308.tif 000022
【図２２】
0005172308.tif 000023