(57)【要約】【課題】類似度に関する評価精度を向上させること。【解決手段】情報処理装置１０１は、第１の形態素列と第２の形態素列とを受け付ける。情報処理装置１０１は、受け付けた第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定する。情報処理装置１０１は、特定した複数の形態素列に含まれる各形態素列と、受け付けた第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する。情報処理装置１０１は、特定した形態素が一致する出現位置の数に基づき、第１の形態素列及び第２の形態素列の類似度に関する評価を行う。【選択図】図１
2019219724.tif 000002
【特許請求の範囲】
【請求項１】
第１の形態素列と第２の形態素列とを受け付け、
受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定し、
特定した前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
処理をコンピュータに実行させることを特徴とする評価プログラム。
【請求項２】
前記複数の形態素列を特定する処理は、
前記第１の形態素列内の形態素の数と、前記第２の形態素列内の形態素の数とに基づいて、前記複数の形態素列を特定する、
ことを特徴とする請求項１に記載の評価プログラム。
【請求項３】
前記複数の形態素列を特定する処理は、
前記第１の形態素列と前記第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、前記複数の形態素列を特定する、
ことを特徴とする請求項１または２に記載の評価プログラム。
【請求項４】
前記複数の形態素列を特定する処理は、
前記第１の形態素列内の形態素の数と前記第２の形態素列内の形態素の数との差に基づいて、前記複数の形態素列を特定する、
ことを特徴とする請求項１〜３のいずれか一つに記載の評価プログラム。
【請求項５】
前記第２の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、前記第１の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の第２の数を特定する、処理を前記コンピュータに実行させ、
前記評価を行う処理は、
特定した前記数と前記第２の数とに基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする請求項１〜４のいずれか一つに記載の評価プログラム。
【請求項６】
前記第１の形態素列内の形態素の数と、前記第２の形態素列内の形態素の数とに基づいて、前記第１の形態素列及び前記第２の形態素列それぞれに含まれる形態素の数の多さに対するペナルティ値を設定し、
前記評価を行う処理は、
さらに、設定した前記ペナルティ値に基づいて、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする請求項１〜５のいずれか一つに記載の評価プログラム。
【請求項７】
前記評価を行う処理は、
特定した前記数と前記第２の数とのうち所定数よりも大きい数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする請求項５に記載の評価プログラム。
【請求項８】
前記評価の結果を出力する、
処理を前記コンピュータに実行させることを特徴とする請求項１〜７のいずれか一つに記載の評価プログラム。
【請求項９】
第１の形態素列と第２の形態素列とを受け付け、
受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定し、
特定した前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
処理をコンピュータが実行することを特徴とする評価方法。
【請求項１０】
第１の形態素列と第２の形態素列とを受け付ける受付部と、
前記受付部が受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定する第１の特定部と、
前記第１の特定部によって特定された前記複数の形態素列に含まれる各形態素列と、前記受付部が受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する第２の特定部と、
前記第２の特定部によって特定された前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う評価部と、
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価プログラム、評価方法および情報処理装置に関する。
【背景技術】
【０００２】
従来、文書同士の類似度を算出する手法として、例えば、ＴＦ（Ｔｅｒｍ  Ｆｒｅｑｕｅｎｃｙ）−ＩＤＦ（Ｉｎｖｅｒｓｅ  Ｄｏｃｕｍｅｎｔ  Ｆｒｅｑｕｅｎｃｙ）や編集距離（レーベンシュタイン距離）を用いたものがある。また、Ｎ−ｇｒａｍを用いたＢＬＥＵ（ＢｉＬｉｎｇｕａｌ  Ｅｖａｌｕａｔｉｏｎ  Ｕｎｄｅｒｓｔｕｄｙ）による類似度算出手法がある。
【０００３】
先行技術としては、あるダイジェストが他の文書に同一のダイジェストを持つ数、または、他の文書と一致しているダイジェストの割合が所定の値より多い場合に、引用によって構成された文書と判断するものがある。また、検索したい文字列と検索精度とを指定し、検索したい文字列との”似ている度合”が指定の検索精度以上である”似ている文字列”を含む文書および”似ている文字列”の文書内位置を特定する技術がある。また、第１文字列、第２文字列に対してそれぞれ単語分割を行って第１シーケンス、第２シーケンスを得て、第１文字列と第２文字列との間の編集距離、および、第１シーケンスから第２シーケンスに変換するために行う各操作の情報に基づいて、第１文字列と第２文字列との間の類似性を特定する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−０９０５２７号公報
【特許文献２】特開平０８−１４７３２０号公報
【特許文献３】特表２０１８−５０１５９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、文書同士の類似度を精度よく評価することが難しい。例えば、ＴＦ−ＩＤＦを用いた類似度算出手法では、文書における単語の語順を考慮することができず、類似度に関する評価精度が低下することがある。
【０００６】
一つの側面では、本発明は、類似度に関する評価精度を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
１つの実施態様では、第１の形態素列と第２の形態素列とを受け付け、受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、特定した前記複数の形態素列に含まれる各形態素列と、受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定し、特定した前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、評価プログラムが提供される。
【発明の効果】
【０００８】
本発明の一側面によれば、類似度に関する評価精度を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態にかかる評価方法の一実施例を示す説明図である。
【図２】図２は、情報処理装置１０１のハードウェア構成例を示すブロック図である。
【図３】図３は、情報処理装置１０１の機能的構成例を示すブロック図である。
【図４】図４は、一致数ｘｉの算出例を示す説明図である。
【図５】図５は、文書群Ｄ１〜Ｄｎの具体例を示す説明図（その１）である。
【図６】図６は、文書群Ｄ１〜Ｄｎの具体例を示す説明図（その２）である。
【図７】図７は、類似度テーブル７００の記憶内容の一例を示す説明図である。
【図８】図８は、情報処理装置１０１の評価処理手順の一例を示すフローチャートである。
【図９】図９は、一致度算出処理の具体的処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、本発明にかかる評価プログラム、評価方法および情報処理装置の実施の形態を詳細に説明する。
【００１１】
（実施の形態）
図１は、実施の形態にかかる評価方法の一実施例を示す説明図である。図１において、情報処理装置１０１は、第１の形態素列及び第２の形態素列の類似度に関する評価を行うコンピュータである。情報処理装置１０１は、例えば、サーバであってもよく、また、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）であってもよい。
【００１２】
形態素列は、一連の形態素である。形態素は、意味をもつ表現要素の最小単位である。第１の形態素列は、例えば、第１の文書を形態素解析することにより得られる。第２の形態素列は、例えば、第２の文書を形態素解析することにより得られる。文書は、１以上の文を含む。すなわち、第１の形態素列及び第２の形態素列の類似度は、第１の文書と第２の文書との類似度合いを示す。
【００１３】
ここで、コンピュータで機械的に類似する文書をまとめる際に、出現する単語は同じだが、語順が異なる違う意味の文書を類似していると判定してしまうことがある。例えば、ＴＦ−ＩＤＦを用いて文書をベクトル化して文書同士の類似度を算出する場合、単語の出現回数しかベクトルに反映されないため、語順を考慮することができず、類似度の評価精度が低下することがある。
【００１４】
また、Ｎ−ｇｒａｍを用いたＢＬＥＵによる類似度算出手法では、文書中に形容詞や副詞などの単語が挿入されると、文書同士を適切に比較することができず、類似度の評価精度が低下することがある。また、編集距離を用いた類似度算出手法では、語順を考慮することができるが、ＤＰマッチング（動的計画法）などで編集距離を求めることとなり、計算量が増大するという問題がある。
【００１５】
そこで、本実施の形態では、形態素列同士、すなわち、文書同士の類似度に関する評価を行うにあたり、計算量を抑えつつ、類似度に関する評価精度を向上させる評価方法について説明する。以下、情報処理装置１０１の処理例について説明する。
【００１６】
（１）情報処理装置１０１は、第１の形態素列と第２の形態素列とを受け付ける。ここで、第１の形態素列及び第２の形態素列は、比較対象となる形態素列であり、類似度に関する評価を行う２つの形態素列である。類似度は、第１の形態素列と第２の形態素列との類似度合いを示す指標値である。
【００１７】
図１の例では、第１の形態素列１１０と第２の形態素列１２０とを受け付けた場合を想定する。第１の形態素列１１０は、文書「パソコンが上手く起動しない」を形態素解析して得られる形態素１１１〜１１６を含む。第２の形態素列１２０は、文書「パソコンが起動しない」を形態素解析して得られる形態素１２１〜１２５を含む。
【００１８】
（２）情報処理装置１０１は、受け付けた第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定する。例えば、第１の形態素列１１０内の各形態素１１１〜１１６に振られた番号（０，１，２，３，４，５）は、第１の形態素列１１０内で各形態素１１１〜１１６が出現する出現位置を示す。すなわち、第１の形態素列１１０内でいずれかの形態素が出現する出現位置は、出現位置０〜５である。
【００１９】
図１の例では、第１の形態素列１１０内の出現位置０〜５のうち、出現位置０，１，２に着目するとする。この場合、情報処理装置１０１は、第１の形態素列１１０内の出現位置０，１，２にそれぞれ出現する形態素１１１，１１２，１１３を先頭とする形態素列１３０，１４０，１５０を特定する。
【００２０】
（３）情報処理装置１０１は、特定した複数の形態素列に含まれる各形態素列と、受け付けた第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する。ここで、形態素が一致するとは、形態素同士で文字または文字列が完全一致することである。
【００２１】
図１の例では、情報処理装置１０１は、形態素列１３０と第２の形態素列１２０とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する。また、情報処理装置１０１は、形態素列１４０と第２の形態素列１２０とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する。また、情報処理装置１０１は、形態素列１５０と第２の形態素列１２０とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する。
【００２２】
ここで、形態素列１３０と第２の形態素列１２０とを比較する場合を例に挙げると、情報処理装置１０１は、出現位置０について、形態素列１３０内の形態素１１１と、第２の形態素列１２０内の形態素１２１とを比較する。ここでは、形態素１１１と形態素１２１とが一致する。
【００２３】
また、情報処理装置１０１は、出現位置１について、形態素列１３０内の形態素１１２と、第２の形態素列１２０内の形態素１２２とを比較する。ここでは、形態素１１２と形態素１２２とが一致する。また、情報処理装置１０１は、出現位置２について、形態素列１３０内の形態素１１３と、第２の形態素列１２０内の形態素１２３とを比較する。ここでは、形態素１１３と形態素１２３とが一致しない。
【００２４】
また、情報処理装置１０１は、出現位置３について、形態素列１３０内の形態素１１４と、第２の形態素列１２０内の形態素１２４とを比較する。ここでは、形態素１１４と形態素１２４とが一致しない。また、情報処理装置１０１は、出現位置４について、形態素列１３０内の形態素１１５と、第２の形態素列１２０内の形態素１２５とを比較する。ここでは、形態素１１５と形態素１２５とが一致しない。
【００２５】
なお、第２の形態素列１２０には、形態素列１３０内の形態素１１６と出現位置が同じ形態素が存在しない。このため、情報処理装置１０１は、形態素列１３０内の出現位置５の形態素１１６についての比較は行わない。
【００２６】
この結果、情報処理装置１０１は、形態素列１３０と第２の形態素列１２０とで、形態素が一致する出現位置の数「２（出現位置０，１）」を特定する。同様に、情報処理装置１０１は、形態素列１４０と第２の形態素列１２０とで、形態素が一致する出現位置の数「３（出現位置２，３，４）」を特定する。また、情報処理装置１０１は、形態素列１５０と第２の形態素列１２０とで、形態素が一致する出現位置の数「０」を特定する。
【００２７】
（４）情報処理装置１０１は、特定した形態素が一致する出現位置の数に基づき、第１の形態素列及び第２の形態素列の類似度に関する評価を行う。ここで、第１の形態素列及び第２の形態素列の類似度に関する評価とは、第１の形態素列及び第２の形態素列の類似度を算出することであってもよく、また、算出した類似度そのものを評価することであってもよい。
【００２８】
具体的には、例えば、情報処理装置１０１は、各形態素列について特定した形態素が一致する出現位置の数を積算することにより、第１の形態素列及び第２の形態素列の類似度を算出することにしてもよい。そして、情報処理装置１０１は、算出した類似度が、予め決められた閾値以上であれば、第１の形態素列と第２の形態素列とが類似していると判定することにしてもよい。
【００２９】
図１の例では、情報処理装置１０１は、例えば、各形態素列１３０，１４０，１５０について特定した形態素が一致する出現位置の数（２，３，０）を積算することにより、第１の形態素列１１０及び第２の形態素列１２０の類似度「５」を算出する。そして、情報処理装置１０１は、算出した類似度「５」が閾値以上であれば、第１の形態素列１１０と第２の形態素列１２０とが類似していると判定する。
【００３０】
このように、情報処理装置１０１によれば、第１の形態素列において先頭となる形態素をずらしながら、第２の形態素列と出現位置ごとに比較して、第１の形態素列及び第２の形態素列の類似度に関する評価を行うことができる。これにより、文書の語順を考慮して、文書の類似度に関する評価精度を向上させることができる。
【００３１】
具体的には、文書の類似判定を行うにあたり、１単語ずつずらしながら、一方の文書の一部が他方の文書にあるかを判断することができ、語順（単語の出現位置）を考慮した文書の類似判定を行うことができる。このため、語順が異なる違う意味の文書を類似していると判定してしまうのを防ぐことができる。また、文書中に形容詞などの単語が挿入されていても、文書間で一致する部分を見つけ出すことが可能となる。
【００３２】
図１の例では、文書「パソコンが上手く起動しない」と文書「パソコンが起動しない」との類似度を、語順を考慮して判定することができる。この際、一方の文書「パソコンが上手く起動しない」に「上手く」という単語が挿入されていても、文書間で一致する部分を見つけ出して類似度を適切に評価することができる。
【００３３】
（情報処理装置１０１のハードウェア構成例）
図２は、情報処理装置１０１のハードウェア構成例を示すブロック図である。図２において、情報処理装置１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、メモリ２０２と、ディスクドライブ２０３と、ディスク２０４と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０５と、ディスプレイ２０６と、入力装置２０７と、を有する。また、各構成部はバス２００によってそれぞれ接続される。
【００３４】
ここで、ＣＰＵ２０１は、情報処理装置１０１の全体の制御を司る。ＣＰＵ２０１は、複数のコアを有していてもよい。メモリ２０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する記憶部である。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ２０１のワークエリアとして使用される。メモリ２０２に記憶されるプログラムは、ＣＰＵ２０１にロードされることで、コーディングされている処理をＣＰＵ２０１に実行させる。
【００３５】
ディスクドライブ２０３は、ＣＰＵ２０１の制御に従ってディスク２０４に対するデータのリード／ライトを制御する。ディスク２０４は、ディスクドライブ２０３の制御で書き込まれたデータを記憶する。ディスク２０４としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００３６】
Ｉ／Ｆ２０５は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して外部装置に接続される。そして、Ｉ／Ｆ２０５は、ネットワーク２１０と自装置内部とのインターフェースを司り、外部装置からのデータの入出力を制御する。ネットワーク２１０は、例えば、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などである。
【００３７】
ディスプレイ２０６は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ２０６としては、例えば、液晶ディスプレイや有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。
【００３８】
入力装置２０７は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置２０７は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
【００３９】
なお、情報処理装置１０１は、上述した構成部のうち、例えば、ディスクドライブ２０３、ディスク２０４、ディスプレイ２０６、入力装置２０７などを有さないことにしてもよい。また、情報処理装置１０１は、上述した構成部のほかに、例えば、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、スキャナ、プリンタなどを有することにしてもよい。
【００４０】
（情報処理装置１０１の機能的構成例）
図３は、情報処理装置１０１の機能的構成例を示すブロック図である。図３において、情報処理装置１０１は、受付部３０１と、第１の特定部３０２と、第２の特定部３０３と、評価部３０４と、出力部３０５と、を含む。受付部３０１〜出力部３０５は制御部となる機能であり、具体的には、例えば、図２に示したメモリ２０２、ディスク２０４などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、または、Ｉ／Ｆ２０５により、その機能を実現する。各機能部の処理結果は、例えば、メモリ２０２、ディスク２０４などの記憶装置に記憶される。
【００４１】
受付部３０１は、第１の形態素列と第２の形態素列とを受け付ける。具体的には、例えば、受付部３０１は、図２に示した入力装置２０７を用いたユーザの操作入力により、第１の形態素列と第２の形態素列とを受け付けることにしてもよい。また、受付部３０１は、他のコンピュータから、第１の形態素列と第２の形態素列とを受け付けることにしてもよい。
【００４２】
また、受付部３０１は、文書群Ｄ１〜Ｄｎ（ｎは、２以上の自然数）から比較対象となる文書Ｄｋ（ｋ＝１，２，…，ｎ），Ｄｌ（ｌ＝１，２，…，ｎ、ｌ≠ｋ）を選択することにより、選択した文書Ｄｋ，Ｄｌそれぞれの形態素列を、第１の形態素列および第２の形態素列として受け付けることにしてもよい。
【００４３】
ここで、文書群Ｄ１〜Ｄｎは、類似判定を行う文書Ｄを含む。文書群Ｄ１〜Ｄｎは、情報処理装置１０１に記憶されていてもよく、情報処理装置１０１がアクセス可能な他のコンピュータに記憶されていてもよい。また、文書群Ｄ１〜Ｄｎに含まれる各文書Ｄの形態素列は、情報処理装置１０１に記憶されていてもよく、情報処理装置１０１がアクセス可能な他のコンピュータに記憶されていてもよい。また、文書Ｄの形態素列は、情報処理装置１０１において文書Ｄを形態素解析することにより取得されることにしてもよい。
【００４４】
文書群Ｄ１〜Ｄｎのうちのどの文書Ｄの組み合わせを比較対象の文書Ｄｋ，Ｄｌとするかは、任意に指定可能である。例えば、入力装置２０７を用いたユーザの操作入力により、文書Ｄｋ，Ｄｌを指定してもよい。また、文書群Ｄ１〜Ｄｎに含まれる２つの文書Ｄの組み合わせの全てを、比較対象の文書Ｄｋ，Ｄｌとしてもよい。
【００４５】
第１の特定部３０２は、受け付けた第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列αを特定する。また、第１の特定部３０２は、受け付けた第２の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列βを特定する。
【００４６】
具体的には、例えば、第１の特定部３０２は、第１の形態素列に対して第２の形態素列をずらす範囲Ｒを決定する。ここで、ずらす範囲Ｒは、ずらす数ｉの範囲であり、形態素の数によって指定される。そして、第１の特定部３０２は、決定したずらす範囲Ｒ内において、第１の形態素列に対して第２の形態素列を形態素単位でずらすことにより、複数の形態素列α及び／又は複数の形態素列βを特定する。
【００４７】
例えば、ずらす数ｉが「ｉ＝１」の場合、第１の形態素列に対して第２の形態素列を右方向に形態素１つ分ずらすことを示す。また、ずらす数ｉが「ｉ＝−１」の場合、第１の形態素列に対して第２の形態素列を左方向に形態素１つ分ずらすことを示す。なお、形態素列α、βの特定例については、図４を用いて後述する。
【００４８】
ずらす範囲Ｒは、任意に設定可能である。例えば、第１の形態素列に対して第２の形態素列を右方向にずらす範囲Ｒとして、第１の形態素列の末尾の形態素と、第２の形態素列の先頭の形態素とを比較するまでの範囲を設定してもよい。また、第１の形態素列に対して第２の形態素列を左方向にずらす範囲Ｒとして、第１の形態素列の先頭の形態素と、第２の形態素列の末尾の形態素とを比較するまでの範囲を設定してもよい。
【００４９】
これにより、第１の形態素列と第２の形態素列との間で形態素を網羅的に比較可能な範囲を設定することができる。ただし、ずらす範囲Ｒが広くなるにつれて、計算量が増加する。このため、計算量を抑制すべく、ずらす範囲Ｒを制限することにしてもよい。なお、ずらす範囲Ｒの決定例については後述する。
【００５０】
第２の特定部３０３は、特定された複数の形態素列αに含まれる各形態素列αと、受け付けた第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数ｘを特定する。また、第２の特定部３０３は、特定された複数の形態素列βに含まれる各形態素列βと、第１の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の第２の数ｘ’を特定する。
【００５１】
具体的には、例えば、第２の特定部３０３は、文書群Ｄ１〜Ｄｎに対する単語の転置インデックスに基づいて、一致数ｘiを算出する。ここで、一致数ｘiは、ずらす数ｉのときに、第１の特定部３０２によって特定された数ｘまたは第２の数ｘ’を示す。
【００５２】
また、単語の転置インデックスとは、文書群Ｄ１〜Ｄｎに含まれる各単語（すなわち、各形態素）が、文書群Ｄ１〜Ｄｎのうちのいずれの文書Ｄのいずれの位置にあるかを特定する情報である。文書群Ｄ１〜Ｄｎに対する単語の転置インデックスは、情報処理装置１０１において作成してもよく、また、他のコンピュータから取得することにしてもよい。
【００５３】
ここでは、文書Ｄ＃の＄番目に位置する単語ｗの転置インデックスを（＃，＄）と表す。＃は、１〜ｎのいずれかの整数である。＄は、０以上のいずれかの整数である。例えば、単語ｗの転置インデックス（１，０）は、文書Ｄ１の０番目、すなわち、先頭に単語ｗが位置することを示す。
【００５４】
一例として、文書群Ｄ１〜Ｄｎを「文書群Ｄ１，Ｄ２」とする（ｎ＝２）。文書Ｄ１を「パソコンが起動しない」とする。文書Ｄ１の形態素列は、「パソコン／が／起動／し／ない」となる。「／」で区切られた形態素が単語に相当する。また、文書Ｄ２を「パソコンが上手く起動しない」とする。文書Ｄ２の形態素列は、「パソコン／が／上手く／起動／し／ない」となる。
【００５５】
この場合、文書群Ｄ１，Ｄ２に対する単語の転置インデックスは、例えば、以下のようになる。
【００５６】
ｗ0＝“パソコン”：｛（１，０），（２，０）｝
ｗ1＝“が”：｛（１，１），（２，１）｝
ｗ2＝“起動”：｛（１，２），（２，３）｝
ｗ3＝“し”：｛（１，３），（２，４）｝
ｗ4＝“ない”：｛（１，４），（２，５）｝
ｗ5＝“上手く”：｛（２，２）｝
【００５７】
より詳細に説明すると、例えば、第２の特定部３０３は、下記式（１）を用いて、文書群Ｄ１〜Ｄｎに対する単語の転置インデックスを参照して、一致数ｘiを算出する。ただし、比較対象の２つの文書を「文書Ｄｋ，Ｄｌ」とする。ｃｏｕｎｔ（ｉ，ｊ）は、単語ｗjの（ｋ，ａ）と（ｌ，ｂ−ｉ）の「ａ」と「ｂ−ｉ」とが、一致する場合に「１」となり、不一致の場合に「０」となる。
【００５８】
ｘi＝Σjｃｏｕｎｔ（ｉ，ｊ）      ・・・（１）
【００５９】
これにより、形態素列αと第２の形態素列とを比較した場合に形態素が一致する出現位置の数ｘと、形態素列βと第１の形態素列とを比較した場合に形態素が一致する出現位置の第２の数ｘ’とを特定することができる。また、単語の転置インデックスを利用することで、数ｘ、第２の数ｘ’の特定にかかる処理量を抑えることができる。なお、ずらす数ｉが「ｉ≧０」の場合の「一致数ｘi」が「数ｘ」に相当し、ずらす数ｉが「ｉ＜０」の場合の「一致数ｘi」が「第２の数ｘ’」に相当する。一致数ｘi（数ｘ、第２の数ｘ’）の算出例については、図４を用いて後述する。
【００６０】
評価部３０４は、特定された数ｘに基づき、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行う。また、評価部３０４は、特定された数ｘ及び第２の数ｘ’に基づき、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことにしてもよい。
【００６１】
具体的には、例えば、評価部３０４は、各形態素列αについて特定された数ｘと、各形態素列βについて特定された第２の数ｘ’とを積算することにより、第１の形態素列及び第２の形態素列の類似度Ｓを算出する。そして、評価部３０４は、算出した類似度Ｓが、閾値Ｓth以上であれば、第１の形態素列と第２の形態素列とが類似していると判定することにしてもよい。閾値Ｓthは、任意に設定可能である。
【００６２】
より詳細に説明すると、例えば、評価部３０４は、下記式（２）を用いて、第１の形態素列及び第２の形態素列の類似度Ｓを算出することにしてもよい。
【００６３】
Ｓ＝Σiｘi      ・・・（２）
【００６４】
これにより、各形態素列αについて特定された数ｘと各形態素列βについて特定された第２の数ｘ’とを積算した値が大きくなるほど類似度合いが高くなるように、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことができる。
【００６５】
また、評価部３０４は、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、ペナルティ値Ｐを設定することにしてもよい。ここで、ペナルティ値Ｐは、第１の形態素列及び第２の形態素列それぞれに含まれる形態素の数の多さに対するペナルティを示す。すなわち、第１の形態素列や第２の形態素列が長くなるほど、類似度Ｓが大きくなる傾向があるため、第１の形態素列や第２の形態素列の長さに対してペナルティを課して類似度Ｓの値を下げることで、類似度Ｓを適正な値に調整する。
【００６６】
具体的には、例えば、評価部３０４は、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との平均値の逆数を、ペナルティ値Ｐとして設定してもよい。また、評価部３０４は、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数とのうちの最大値（あるいは、最小値）の逆数を、ペナルティ値Ｐとして設定してもよい。また、評価部３０４は、各パラメータ（平均値、最大値、最小値）のべき乗やパラメータ同士の乗算値を、ペナルティ値Ｐとして設定してもよい。
【００６７】
この場合、評価部３０４は、さらに、設定したペナルティ値Ｐに基づいて、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことにしてもよい。具体的には、例えば、評価部３０４は、各形態素列αについて特定された数ｘと各形態素列βについて特定された第２の数ｘ’とを積算した値にペナルティ値Ｐを乗算することにより、第１の形態素列及び第２の形態素列の類似度Ｓを算出することにしてもよい。
【００６８】
より詳細に説明すると、例えば、評価部３０４は、下記式（３）を用いて、第１の形態素列及び第２の形態素列の類似度Ｓを算出することにしてもよい。
【００６９】
Ｓ＝Ｐ×Σiｘi      ・・・（３）
【００７０】
これにより、第１の形態素列及び第２の形態素列それぞれに含まれる形態素の数が多い、すなわち、比較対象となる文書Ｄｋ，Ｄｌが長い（単語数が多い）ほど、類似度Ｓが高くなるのを防ぐことができる。
【００７１】
また、評価部３０４は、特定された数ｘのうち所定数γよりも大きい数に基づき、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことにしてもよい。また、評価部３０４は、特定された数ｘと第２の数ｘ’とのうち所定数γよりも大きい数に基づき、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことにしてもよい。ここで、所定数γは、任意に設定可能であり、例えば、１〜３程度の値に設定される。
【００７２】
具体的には、例えば、評価部３０４は、各形態素列αについて特定された数ｘと、各形態素列βについて特定された第２の数ｘ’とのうち、所定数γよりも大きい数を積算することにより、第１の形態素列及び第２の形態素列の類似度Ｓを算出することにしてもよい。
【００７３】
より詳細に説明すると、例えば、評価部３０４は、下記式（４）を用いて、第１の形態素列及び第２の形態素列の類似度Ｓを算出することにしてもよい。ただし、ｆ（ｘi，ｉ）は、ずらす数ｉにおいて、一度に一致する形態素の数が多いほうが、少ないときよりも類似度合いが高くなるようにするための重み関数である。ｆ（ｘi，ｉ）は、例えば、下記式（５）によって表すことができる。
【００７４】
Ｓ＝Ｐ×Σiｆ（ｘi，ｉ）      ・・・（４）
【００７５】
ｆ（ｘi，ｉ）＝０  （ｘi≦γ）
ｆ（ｘi，ｉ）＝ｘi  （ｘi＞γ）      ・・・（５）
【００７６】
これにより、形態素列同士を比較したときに、一度に一致する形態素の数が多いほど類似度合いが高くなるように、第１の形態素列及び第２の形態素列の類似度Ｓを求めることができる。例えば、ずらす度に１形態素ずつ一致しているよりも、一度に１０個の形態素が一致しているほうが、類似度Ｓが高くなるように重み付けすることができる。
【００７７】
また、ｆ（ｘi，ｉ）は、例えば、下記式（６）によって表すことにしてもよい。
【００７８】
ｘip×｜ｉ｜-q  （ｐ＞１，ｑ＞０）      ・・・（６）
【００７９】
これにより、ずらす数ｉにおいて、一致数ｘiが大きいほど類似度合いが高くなるようにしつつ、ずらす数ｉが大きいほど類似度合いが低くなるように、第１の形態素列及び第２の形態素列の類似度Ｓを求めることができる。ただし、ｑは「ｑ＝０」としてもよい。すなわち、上記式（６）において、ずらす数ｉの大きさは考慮しないことにしてもよい。
【００８０】
また、ｆ（ｘi，ｉ）は、例えば、下記式（７）によって表すことにしてもよい。ただし、ｆ（０，ｉ）＝０とする。
【００８１】
ｅｘｐ（δｘi−ε｜ｉ｜）  （δ＞０，ε＞０）      ・・・（７）
【００８２】
これにより、ずらす数ｉにおいて、一致数ｘiが大きいほど類似度合いが高くなるようにしつつ、ずらす数ｉが大きいほど類似度合いが低くなるように、第１の形態素列及び第２の形態素列の類似度Ｓを求めることができる。
【００８３】
また、ｆ（ｘi，ｉ）は、例えば、上記式（５）〜（７）の組み合わせによって表すことにしてもよい。
【００８４】
出力部３０５は、評価部３０４による評価の結果を出力する。ここで、評価の結果は、例えば、第１の形態素列及び第２の形態素列の類似度Ｓであってもよい。また、評価の結果は、例えば、第１の形態素列と第２の形態素列とが類似しているか否かの類似判定の結果であってもよい。
【００８５】
評価の結果によれば、例えば、文書Ｄｋと文書Ｄｌとの類似度合いや、文書Ｄｋと文書Ｄｌとが類似しているか否かを判断することができる。出力部３０５の出力形式としては、例えば、メモリ２０２、ディスク２０４などの記憶装置への記憶、Ｉ／Ｆ２０５による他のコンピュータへの送信、ディスプレイ２０６への表示、不図示のプリンタへの印刷出力などがある。
【００８６】
（一致数ｘiの算出例）
つぎに、図４を用いて、一致数ｘiの算出例について説明する。ここでは、比較対象となる文書Ｄｋを「パソコンが上手く起動しない」とし、比較対象となる文書Ｄｌを「パソコンが起動しない」とする。また、ずらす範囲Ｒを「−２≦ｉ≦２」とする。
【００８７】
図４は、一致数ｘiの算出例を示す説明図である。図４において、形態素列４１０は、文書Ｄｋの形態素列であり、第１の形態素列に相当する。形態素列４２０は、文書Ｄｌの形態素列であり、第２の形態素列に相当する。
【００８８】
ここで、ずらす数ｉが「ｉ＝０」の場合、第１の形態素列内の形態素「パソコン」を先頭とする形態素列４１０が形態素列αとして特定される。この場合、第２の特定部３０３は、形態素列αとして特定された形態素列４１０と、第２の形態素列である形態素列４２０とを、出現位置ごとに比較して、一致数ｘ0を算出する。
【００８９】
具体的には、例えば、第２の特定部３０３は、上記式（１）を用いて、単語の転置インデックスを参照して、一致数ｘ0を算出する。例えば、単語ｗ0を「パソコン」とすると、転置インデックスは、｛（ｋ，０），（ｌ，０）｝となる。この場合、ｃｏｕｎｔ（０，０）は、単語ｗ0「パソコン」の転置インデックスから、（ｋ，０）と（ｌ，０−ｉ）の「０」と「０−ｉ」とが、「０」で一致するため、「１」となる。
【００９０】
ここでは、形態素列４１０と形態素列４２０とで、１，２番目の形態素が一致する。このため、一致数ｘ0は「ｘ0＝２」となる。
【００９１】
また、ずらす数ｉが「ｉ＝１」の場合、第１の形態素列内の形態素「が」を先頭とする形態素列４１１が形態素列αとして特定される。この場合、第２の特定部３０３は、形態素列αとして特定された形態素列４１１と、第２の形態素列である形態素列４２０とを、出現位置ごとに比較して、一致数ｘ1を算出する。
【００９２】
具体的には、例えば、第２の特定部３０３は、上記式（１）を用いて、単語の転置インデックスを参照して、一致数ｘ1を算出する。例えば、単語ｗ1を「が」とすると、転置インデックスは、｛（ｋ，１），（ｌ，１）｝となる。この場合、ｃｏｕｎｔ（１，１）は、単語ｗ1「が」の転置インデックスから、（ｋ，１）と（ｌ，１−ｉ）の「１」と「１−ｉ」とが、一致しないため、「０」となる。
【００９３】
ここでは、形態素列４１１と形態素列４２０とで、３，４，５番目の形態素が一致する。このため、一致数ｘ1は「ｘ1＝３」となる。
【００９４】
また、ずらす数ｉが「ｉ＝２」の場合、第１の形態素列内の形態素「上手く」を先頭とする形態素列４１２が形態素列αとして特定される。この場合、第２の特定部３０３は、形態素列αとして特定された形態素列４１２と、第２の形態素列である形態素列４２０とを、出現位置ごとに比較して、一致数ｘ2を算出する。
【００９５】
具体的には、例えば、第２の特定部３０３は、上記式（１）を用いて、単語の転置インデックスを参照して、一致数ｘ2を算出する。ここでは、形態素列４１２と形態素列４２０とで、形態素が一致する出現位置は存在しない。このため、一致数ｘ2は「ｘ2＝０」となる。一致数ｘ0，ｘ1，ｘ2は、上述した「形態素が一致する出現位置の数ｘ」に相当する。
【００９６】
また、ずらす数ｉが「ｉ＝−１」の場合、第２の形態素列内の形態素「が」を先頭とする形態素列４２１が形態素列βとして特定される。この場合、第２の特定部３０３は、形態素列βとして特定された形態素列４２１と、第１の形態素列である形態素列４１０とを、出現位置ごとに比較して、一致数ｘ-1を算出する。
【００９７】
具体的には、例えば、第２の特定部３０３は、上記式（１）を用いて、単語の転置インデックスを参照して、一致数ｘ-1を算出する。ここでは、形態素列４２１と形態素列４１０とで、形態素が一致する出現位置は存在しない。このため、一致数ｘ-1は「ｘ-1＝０」となる。
【００９８】
また、ずらす数ｉが「ｉ＝−２」の場合、第２の形態素列内の形態素「起動」を先頭とする形態素列４２２が形態素列βとして特定される。この場合、第２の特定部３０３は、形態素列βとして特定された形態素列４２２と、第１の形態素列である形態素列４１０とを、出現位置ごとに比較して、一致数ｘ-2を算出する。
【００９９】
具体的には、例えば、第２の特定部３０３は、上記式（１）を用いて、単語の転置インデックスを参照して、一致数ｘ-2を算出する。ここでは、形態素列４２２と形態素列４１０とで、形態素が一致する出現位置は存在しない。このため、一致数ｘ-2は「ｘ-2＝０」となる。一致数ｘ-1，ｘ-2は、上述した「形態素が一致する出現位置の第２の数ｘ’」に相当する。
【０１００】
なお、ずらす数ｉが「ｉ＝０」の場合に、形態素列αに代えて、第２の形態素列内の形態素「パソコン」を先頭とする形態素列４２０を形態素列βとして特定することにしてもよい。この場合、第２の特定部３０３は、形態素列βとして特定された形態素列４２０と、第１の形態素列である形態素列４１０とを、出現位置ごとに比較して、一致数ｘ0を算出する。
【０１０１】
ここで、上記式（２）を用いて類似度Ｓを算出する場合を例に挙げると、図４の例では、第１の形態素列（形態素列４１０）及び第２の形態素列（形態素列４２０）の類似度Ｓは、「Ｓ＝５」となる。
【０１０２】
また、重み関数ｆ（ｘi，ｉ）を用いて、ずらす数ｉにおける一致数ｘiに重み付けしてもよい。一例として、重み関数ｆ（ｘi，ｉ）を、上記式（６）及び（７）を組み合わせた「ｆ（ｘi，ｉ）＝ｘi1.1×ｅｘｐ（−０．１｜ｉ｜）」とする。ただし、パラメータｐを「ｐ＝１．１」とし、パラメータｑを「ｑ＝０」とし、パラメータδを「δ＝０」とし、パラメータεを「ε＝０．１」とする。
【０１０３】
この場合、上記式（４）から、類似度Ｓは「５．２（＝ｆ（２，０）＋ｆ（３，１））」となる。ただし、ペナルティ値Ｐを「Ｐ＝１」とする。なお、この類似度Ｓは、例えば、文書Ｄｌ同士の類似度を同じように算出した際の結果「５．９」に比べて低いものとなっており、妥当な値といえる。
【０１０４】
（ずらす範囲Ｒの決定例）
つぎに、第１の形態素列に対して第２の形態素列をずらす範囲Ｒの決定例について説明する。ここでは、ずらす範囲Ｒの決定例として、第１、第２、第３、第４及び第５の決定例について説明する。
【０１０５】
・第１の決定例
第１の特定部３０２は、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することにしてもよい。具体的には、例えば、第１の特定部３０２は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、ずらす範囲Ｒを決定することにしてもよい。
【０１０６】
すなわち、計算量を抑制すべく、ずらす範囲Ｒを制限する。より詳細に説明すると、例えば、第１の特定部３０２は、下記式（８）を用いて、ずらす範囲Ｒを決定する。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。Ｎは、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との平均値である。ｆｌｏｏｒ（）は、小数点以下を切り捨てる関数である。
【０１０７】
ｒ＝ｒ（Ｎ）＝ｆｌｏｏｒ（Ｎ／２）      ・・・（８）
【０１０８】
一例として、第１の形態素列内の形態素の数（すなわち、文書Ｄｋの単語数）を「５」とする。また、第２の形態素列内の形態素の数（すなわち、文書Ｄｌの単語数）を「６」とする。この場合、Ｎは「Ｎ＝５．５」となり、ｒは「ｒ＝ｆｌｏｏｒ（５／２）＝２」となる。このため、ずらす範囲Ｒは、「−２≦ｉ≦２」となる。
【０１０９】
これにより、第１の形態素列（文書Ｄｋ）に対して第２の形態素列（文書Ｄｌ）を、各文書Ｄｋ，Ｄｌの半分程度まで左右にずらして比較することが可能となり、計算量を抑えつつ、類似度Ｓの算出精度を確保することができる。
【０１１０】
・第２の決定例
第１の特定部３０２は、第１の形態素列と第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することにしてもよい。具体的には、例えば、第１の特定部３０２は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１の形態素列と第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、ずらす範囲Ｒを決定することにしてもよい。
【０１１１】
すなわち、計算量を抑制すべく、ずらす範囲Ｒを制限する。より詳細に説明すると、例えば、第１の特定部３０２は、下記式（９）または（１０）を用いて、ずらす範囲Ｒを決定する。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。Ｎは、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との平均値である。Ｎtは、第１の形態素列と第２の形態素列とで重複する形態素の数である。Ｎfは、第１の形態素列と第２の形態素列とで重複しない形態素の数である。
【０１１２】
ｒ＝ｒ（Ｎ，Ｎt，Ｎf）＝ｆｌｏｏｒ（Ｎ×Ｎf／Ｎt＋１）…（９）
【０１１３】
ｒ＝ｒ（Ｎ，Ｎt，Ｎf）＝ｆｌｏｏｒ（Ｎ×Ｎf／（Ｎt＋Ｎf）＋１）…（１０）
【０１１４】
一例として、文書Ｄｋを「パソコンが起動しない」とする。文書Ｄｋの形態素列は、「パソコン／が／起動／し／ない」となる。また、文書Ｄｌを「パソコンが上手く起動しない」とする。文書Ｄｌの形態素列は、「パソコン／が／上手く／起動／し／ない」となる。この場合、Ｎは「Ｎ＝５．５」となり、Ｎtは「Ｎt＝５」となり、Ｎfは「Ｎf＝１」となる。そして、上記式（９）を用いた場合、ｒは「ｒ＝２」となる。一方、上記式（１０）を用いた場合、ｒは「ｒ＝１」となる。ここで、ｒを「ｒ＝２」とすると、ずらす範囲Ｒは、「−２≦ｉ≦２」となる。
【０１１５】
これにより、第１の形態素列（文書Ｄｋ）と第２の形態素列（文書Ｄｌ）とで重複する形態素（単語）が多いほど、ずらす範囲Ｒを制限して計算量を抑えることができる。文書Ｄｋ，Ｄｌ間で重複する単語が多いほど、文書Ｄの類似判定が容易なため、ずらす範囲Ｒを広げる必要性は低く、ずらす範囲Ｒの制限による精度の低下の影響が少ないといえる。一方で、文書Ｄｋ，Ｄｌ間で重複する単語が少ないときは、ずらす範囲Ｒを広げることで、一見すると類似しているのかが分かり難いような文書Ｄの類似性を判定することが可能となる。
【０１１６】
・第３の決定例
第１の特定部３０２は、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との差に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することにしてもよい。具体的には、例えば、第１の特定部３０２は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との差に基づいて、ずらす範囲Ｒを決定することにしてもよい。
【０１１７】
すなわち、計算量を抑制すべく、ずらす範囲Ｒを制限する。より詳細に説明すると、例えば、第１の特定部３０２は、下記式（１１）または（１２）を用いて、ずらす範囲Ｒを決定する。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。Ｎは、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との平均値である。Ｎdは、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との差である。
【０１１８】
ｒ＝ｒ（Ｎd）＝Ｎd      ・・・（１１）
【０１１９】
ｒ＝ｒ（Ｎ，Ｎd）＝ｆｌｏｏｒ（Ｎ／２＋Ｎd）      ・・・（１２）
【０１２０】
一例として、第１の形態素列内の形態素の数（すなわち、文書Ｄｋの単語数）を「５」とする。また、第２の形態素列内の形態素の数（すなわち、文書Ｄｌの単語数）を「６」とする。この場合、Ｎdは「Ｎd＝１」となり、Ｎは「Ｎ＝５．５」となる。そして、上記式（１１）を用いた場合、ｒは「ｒ＝１」となる。一方、上記式（１２）を用いた場合、ｒは「ｒ＝３」となる。ここで、ｒを「ｒ＝１」とすると、ずらす範囲Ｒは、「−１≦ｉ≦１」となる。
【０１２１】
これにより、第１の形態素列（文書Ｄｋ）と第２の形態素列（文書Ｄｌ）とで形態素数（単語数）の差が少ないほど、ずらす範囲Ｒを制限して計算量を抑えることができる。一方、第１の形態素列（文書Ｄｋ）と第２の形態素列（文書Ｄｌ）とで形態素数（単語数）の差が多いときは、ずらす範囲Ｒを広げることで、短い文書Ｄを長い文書Ｄの各部分と比較可能にして、類似度Ｓの算出精度を確保することができる。
【０１２２】
・第４の決定例
第１の特定部３０２は、第１の形態素列と第２の形態素列とを含む形態素列群の各形態素列内の形態素の数のばらつきを表す値に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することにしてもよい。ここで、形態素列群の各形態素列は、例えば、文書群Ｄ１〜Ｄｎの各文書Ｄの形態素列である。
【０１２３】
また、各形態素列内の形態素の数のばらつきを表す値は、例えば、各形態素列内の形態素の数の標準偏差や分散である。具体的には、例えば、第１の特定部３０２は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、形態素列群の各形態素列内の形態素の数のばらつきを表す値に基づいて、ずらす範囲Ｒを決定することにしてもよい。
【０１２４】
すなわち、計算量を抑制すべく、ずらす範囲Ｒを制限する。より詳細に説明すると、例えば、第１の特定部３０２は、下記式（１３）を用いて、ずらす範囲Ｒを決定する。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。Ｎsは、第１の形態素列と第２の形態素列とを含む形態素列群の各形態素列内の形態素の数の標準偏差である。
【０１２５】
ｒ＝ｒ（Ｎs）＝２Ｎs      ・・・（１３）
【０１２６】
ここで、図５を用いて、第１の形態素列と第２の形態素列とを含む形態素列群の各形態素列内の形態素の数の標準偏差に基づく、ずらす範囲Ｒの決定例について説明する。
【０１２７】
図５は、文書群Ｄ１〜Ｄｎの具体例を示す説明図（その１）である。図５において、文書群Ｄ１〜Ｄｎの具体例として、文書Ｄ１〜Ｄ３が示されている。図５中、各文書Ｄ１〜Ｄ３は、形態素（単語）ごとに区切られている。
【０１２８】
ここで、文書Ｄ１の形態素列５１０内の形態素（単語）の数は、「５」である。文書Ｄ２の形態素列５２０内の形態素（単語）の数は、「６」である。文書Ｄ３の形態素列５３０内の形態素（単語）の数は、「１０」である。このため、各形態素列５１０，５２０，５３０内の形態素の数の平均値Ｎは「Ｎ＝７」であり、標準偏差Ｎsは「Ｎs＝２」となる。この場合、ｒは、上記式（１３）から「ｒ＝４」となる。このため、ずらす範囲Ｒは、「−４≦ｉ≦４」となる。
【０１２９】
これにより、文書群Ｄ１〜Ｄｎの各文書Ｄの単語数のばらつきが小さいほど、ずらす範囲Ｒを制限して計算量を抑えることができる。一方、文書群Ｄ１〜Ｄｎの各文書Ｄの単語数のばらつきが大きいときは、ずらす範囲Ｒを広げることで、文書Ｄ間の長さの差を考慮して文書Ｄ同士を適切に比較可能にし、類似度Ｓの算出精度を確保することができる。
【０１３０】
・第５の決定例
第１の特定部３０２は、第１の形態素列内の形態素の重要度合いを表す指標値と、第２の形態素列内の形態素の重要度合いを表す指標値とを取得することにしてもよい。そして、第１の特定部３０２は、取得した指標値に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することにしてもよい。
【０１３１】
形態素（単語）の重要度合いを表す指標値としては、例えば、ＴＦ値、ＩＤＦ値、ＴＦ−ＩＤＦ値などが挙げられる。ある形態素（対象単語）のＴＦ値は、例えば、下記式（１４）を用いて表すことができる。また、ＩＤＦ値は、例えば、下記式（１５）を用いて表すことができる。また、ＴＦ−ＩＤＦ値は、例えば、下記式（１６）を用いて表すことができる。
【０１３２】
ＴＦ値＝（文書Ｄにおける全ての単語の出現回数）／（文書Ｄにおける対象単語の出現回数）      ・・・（１４）
【０１３３】
ＩＤＦ値＝ｌｏｇ（全文書数／対象単語を含む文書数）      ・・・（１５）
【０１３４】
ＴＦ−ＩＤＦ値＝ＴＦ値×ＩＤＦ値      ・・・（１６）
【０１３５】
なお、各形態素（単語）の重要度合いを表す指標値は、情報処理装置１０１において算出されてもよく、また、他のコンピュータから取得されることにしてもよい。
【０１３６】
具体的には、例えば、第１の特定部３０２は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１及び第２の形態素列内の形態素の重要度合いを表す指標値に基づいて、ずらす範囲Ｒを決定することにしてもよい。すなわち、計算量を抑制すべく、ずらす範囲Ｒを制限する。
【０１３７】
より詳細に説明すると、例えば、第１の特定部３０２は、下記式（１７）を用いて、ずらす範囲Ｒを決定する。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。ＩＤ1は、文書Ｄｋ（第１の形態素列）のＴＦ−ＩＤＦ値が最大となる単語（形態素）の位置を示す。ＩＤ2は、文書Ｄｌ（第２の形態素列）のＴＦ−ＩＤＦ値が最大となる単語（形態素）の位置を示す。
【０１３８】
ｒ＝ｒ（ＩＤ1，ＩＤ2）＝｜ＩＤ1−ＩＤ2｜×２      ・・・（１７）
【０１３９】
ここで、図６を用いて、第１及び第２の形態素列内の各形態素（単語）のＴＦ−ＩＤＦ値に基づく、ずらす範囲Ｒの決定例について説明する。
【０１４０】
図６は、文書群Ｄ１〜Ｄｎの具体例を示す説明図（その２）である。図６において、文書群Ｄ１〜Ｄｎの具体例として、文書Ｄ１〜Ｄ５が示されている。図６中、各文書Ｄ１〜Ｄ５は、形態素（単語）ごとに区切られている。ここでは、比較対象となる文書Ｄｋを「文書Ｄ１（第１の形態素列）」とし、比較対象となる文書Ｄｌを「文書Ｄ２（第２の形態素列）」とする。形態素列６１０，６２０，６３０，６４０，６５０は、文書Ｄ１〜Ｄ５それぞれの形態素列である。
【０１４１】
ここで、文書Ｄ１において、文書Ｄ１〜Ｄ５をもとに算出されたＴＦ−ＩＤＦ値が最大の単語は、「パソコン」である。このため、文書Ｄ１のＴＦ−ＩＤＦ値が最大となる単語の位置ＩＤ1は、「ＩＤ1＝０」となる。文書Ｄ１において、単語「パソコン」の位置は、「０番目」である。また、文書Ｄ２において、文書Ｄ１〜Ｄ５をもとに算出されたＴＦ−ＩＤＦ値が最大の単語は、「パソコン」である。このため、文書Ｄ２のＴＦ−ＩＤＦ値が最大となる単語の位置ＩＤ2は、「ＩＤ2＝２」となる。この場合、ｒは、上記式（１７）から「ｒ＝４」となる。このため、ずらす範囲Ｒは、「−４≦ｉ≦４」となる。
【０１４２】
これにより、比較対象となる文書Ｄｋ，Ｄｋの中で重要な単語がどこに位置しているのかを特定し、重要な単語同士を比較するためにはどれだけずらせばよいのかを考慮して、ずらす範囲Ｒを決定することができる。このため、計算量を抑えつつ、類似度Ｓの算出精度を確保することができる。
【０１４３】
（情報処理装置１０１の評価処理手順）
つぎに、情報処理装置１０１の評価処理手順について説明する。ここでは、文書群Ｄ１〜Ｄｎのうち、ある文書Ｄｋと最も類似している文書Ｄｌを探す場合を例に挙げて説明する。文書Ｄｋの指定は、例えば、図２に示した入力装置２０７を用いたユーザの操作入力により行われる。
【０１４４】
まず、情報処理装置１０１が用いる類似度テーブル７００について説明する。類似度テーブル７００は、例えば、図２に示したメモリ２０２、ディスク２０４に記憶される。
【０１４５】
図７は、類似度テーブル７００の記憶内容の一例を示す説明図である。図７において、類似度テーブル７００は、第１文書、第２文書、一致度および類似度のフィールドを有し、各フィールドに情報を設定することで、類似度情報（例えば、類似度情報７００−１，７００−２）をレコードとして記憶する。
【０１４６】
ここで、第１文書は、比較対象となる一方の文書Ｄである。第２文書は、比較対象となる他方の文書Ｄである。一致度は、ずらす数ｉにおける一致度ｘiである。類似度は、第１文書と第２文書との類似度合いを示す。
【０１４７】
図８は、情報処理装置１０１の評価処理手順の一例を示すフローチャートである。図８のフローチャートにおいて、まず、情報処理装置１０１は、文書群Ｄ１〜Ｄｎに対する単語の転置インデックスを作成する（ステップＳ８０１）。そして、情報処理装置１０１は、文書群Ｄ１〜Ｄｎから、指定された文書Ｄｋを選択する（ステップＳ８０２）。これにより、情報処理装置１０１は、文書Ｄｋの形態素列を受け付ける。
【０１４８】
つぎに、情報処理装置１０１は、文書群Ｄ１〜Ｄｎから選択されていない未選択の文書Ｄｌを選択する（ステップＳ８０３）。これにより、情報処理装置１０１は、文書Ｄｌの形態素列を受け付ける。ただし、文書Ｄｌは、文書Ｄｋとは異なる文書Ｄである。
【０１４９】
そして、情報処理装置１０１は、文書Ｄｋの形態素列内の形態素の数と、文書Ｄｌの形態素列内の形態素の数とに基づいて、ペナルティ値Ｐを設定する（ステップＳ８０４）。つぎに、情報処理装置１０１は、文書Ｄｋの形態素列内の形態素の数と、文書Ｄｌの形態素列内の形態素の数とに基づいて、ずらす範囲Ｒを決定する（ステップＳ８０５）。ただし、ずらす範囲Ｒを「−ｒ≦ｉ≦ｒ」とする。
【０１５０】
つぎに、情報処理装置１０１は、一致度算出処理を実行する（ステップＳ８０６）。なお、一致度算出処理の具体的な処理手順については、図９を用いて後述する。また、一致度算出処理において算出された結果（一致度ｆ（ｘi，ｉ））は、図７に示した類似度テーブル７００に記憶される。図７の例では、文書Ｄｋとして「文書Ｄ１」が指定されている。
【０１５１】
そして、情報処理装置１０１は、類似度テーブル７００を参照して、文書Ｄｋと文書Ｄｌとの類似度Ｓを算出する（ステップＳ８０７）。算出された類似度Ｓは、類似度テーブル７００に記憶される。つぎに、情報処理装置１０１は、文書群Ｄ１〜Ｄｎから選択されていない未選択の文書Ｄｌがあるか否かを判断する（ステップＳ８０８）。
【０１５２】
ここで、未選択の文書Ｄｌがある場合（ステップＳ８０８：Ｙｅｓ）、情報処理装置１０１は、ステップＳ８０３に戻る。一方、未選択の文書Ｄｌがない場合（ステップＳ８０８：Ｎｏ）、情報処理装置１０１は、類似度テーブル７００を参照して、文書群Ｄ１〜Ｄｎのうち、文書Ｄｋとの類似度Ｓが最大の文書Ｄを示す情報を出力して（ステップＳ８０９）、本フローチャートによる一連の処理を終了する。
【０１５３】
これにより、文書群Ｄ１〜Ｄｎの中から、指定された文書Ｄｋと最も類似している文書Ｄｌを特定することができる。
【０１５４】
つぎに、図９を用いて、ステップＳ８０６の一致度算出処理の具体的な処理手順について説明する。
【０１５５】
図９は、一致度算出処理の具体的処理手順の一例を示すフローチャートである。図９のフローチャートにおいて、情報処理装置１０１は、ずらす数ｉを「ｉ＝−ｒ」とする（ステップＳ９０１）。そして、情報処理装置１０１は、ずらす数ｉが０以上であるか否かを判断する（ステップＳ９０２）。
【０１５６】
ここで、ずらす数ｉが０以上の場合（ステップＳ９０２：Ｙｅｓ）、情報処理装置１０１は、文書Ｄｋに対して文書Ｄｌを右にｉ形態素分ずらして（ステップＳ９０３）、ステップＳ９０５に移行する。これにより、上述した「形態素列α」が特定される。一方、ずらす数ｉが０未満の場合（ステップＳ９０２：Ｎｏ）、情報処理装置１０１は、文書Ｄｋに対して文書Ｄｌを左に｜ｉ｜形態素分ずらす（ステップＳ９０４）。これにより、上述した「形態素列β」が特定される。
【０１５７】
つぎに、情報処理装置１０１は、文書Ｄｋと、ずらした文書Ｄｌとを、出現位置ごとに比較して、作成した単語の転置インデックスに基づいて、一致数ｘiを算出する（ステップＳ９０５）。そして、情報処理装置１０１は、算出した一致数ｘiに基づいて、一致度ｆ（ｘi，ｉ）を算出する（ステップＳ９０６）。算出された一致度ｆ（ｘi，ｉ）は、類似度テーブル７００に記憶される。
【０１５８】
つぎに、情報処理装置１０１は、ずらす数ｉをインクリメントして（ステップＳ９０７）、ずらす数ｉがｒよりも大きくなったか否かを判断する（ステップＳ９０８）。ここで、ずらす数ｉがｒ以下の場合（ステップＳ９０８：Ｎｏ）、情報処理装置１０１は、ステップＳ９０２に戻る。
【０１５９】
一方、ずらす数ｉがｒよりも大きくなった場合（ステップＳ９０８：Ｙｅｓ）、情報処理装置１０１は、一致度算出処理を呼び出したステップに戻る。これにより、文書Ｄｋと、ずらした文書Ｄｌとで、一度に一致する形態素の数が多いほど類似度合いが高くなるように、一致数ｘiを重み付けした一致度ｆ（ｘi，ｉ）を求めることができる。
【０１６０】
なお、ここでは、ある文書Ｄｋと最も類似している文書Ｄｌを探す場合を例に挙げて説明したが、これに限らない。例えば、情報処理装置１０１は、文書群Ｄ１〜Ｄｎのうちの全文書Ｄ間の類似度Ｓを算出することにしてもよい。これにより、各文書Ｄ間の類似度Ｓをもとに、類似する文書同士をグループ化したりすることができる。
【０１６１】
以上説明したように、実施の形態にかかる情報処理装置１０１によれば、第１の形態素列と第２の形態素列とを受け付け、受け付けた第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列αを特定することができる。そして、情報処理装置１０１によれば、特定した複数の形態素列αに含まれる各形態素列αと、受け付けた第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数ｘを特定し、特定した数ｘに基づき、第１の形態素列及び第２の形態素列の類似度に関する評価を行うことができる。
【０１６２】
これにより、第１の形態素列において先頭となる形態素をずらしながら、第２の形態素列と出現位置ごとに比較して、第１の形態素列及び第２の形態素列の類似度合いを評価することができ、語順（単語の出現位置）を考慮した文書の類似判定を行うことができる。また、文書中に形容詞などの単語が挿入されていても、文書間で一致する部分を見つけ出すことができる。
【０１６３】
また、情報処理装置１０１によれば、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することができる。具体的には、例えば、情報処理装置１０１は、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、ずらす範囲Ｒを決定する。そして、情報処理装置１０１は、決定したずらす範囲Ｒ内において、第１の形態素列に対して第２の形態素列を形態素単位でずらすことにより、複数の形態素列α及び／又は複数の形態素列βを特定することができる。
【０１６４】
これにより、第１の形態素列（文書Ｄｋ）に対して第２の形態素列（文書Ｄｌ）を、各文書Ｄｋ，Ｄｌの半分程度まで左右にずらして比較することが可能となり、計算量を抑えつつ、類似度Ｓの算出精度を確保することができる。
【０１６５】
また、情報処理装置１０１によれば、第１の形態素列と第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することができる。具体的には、例えば、情報処理装置１０１は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１の形態素列と第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、ずらす範囲Ｒを決定することができる。
【０１６６】
これにより、第１の形態素列と第２の形態素列とで重複する形態素（単語）が多いほど、ずらす範囲Ｒを制限して計算量を抑えることができ、計算量を抑えつつ、類似度Ｓの算出精度を確保することができる。また、文書Ｄｋ，Ｄｌ間で重複する単語が少ないときは、ずらす範囲Ｒを広げることで、一見すると類似しているのかが分かり難いような文書Ｄの類似性を判定することが可能となる。
【０１６７】
また、情報処理装置１０１によれば、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との差に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することができる。具体的には、例えば、情報処理装置１０１は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１の形態素列内の形態素の数と第２の形態素列内の形態素の数との差に基づいて、ずらす範囲Ｒを決定することができる。
【０１６８】
これにより、第１の形態素列と第２の形態素列とで形態素数の差が少ないほど、ずらす範囲Ｒを制限して計算量を抑えることができる。一方、第１の形態素列と第２の形態素列とで形態素数の差が多いときは、ずらす範囲Ｒを広げることで、短い文書Ｄを長い文書Ｄの各部分と比較可能にして、類似度Ｓの算出精度を確保することができる。
【０１６９】
また、情報処理装置１０１によれば、第１の形態素列と第２の形態素列とを含む形態素列群の各形態素列内の形態素の数のばらつきを表す値に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することができる。具体的には、例えば、情報処理装置１０１は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、形態素列群（文書群Ｄ１〜Ｄｎ）の各形態素列内の形態素の数のばらつきを表す値（例えば、標準偏差）に基づいて、ずらす範囲Ｒを決定することができる。
【０１７０】
これにより、文書群Ｄ１〜Ｄｎの各文書Ｄの単語数のばらつきが小さいほど、ずらす範囲Ｒを制限して計算量を抑えることができる。一方、文書群Ｄ１〜Ｄｎの各文書Ｄの単語数のばらつきが大きいときは、ずらす範囲Ｒを広げることで、文書Ｄ間の長さの差を考慮して文書Ｄ同士を適切に比較可能にし、類似度Ｓの算出精度を確保することができる。
【０１７１】
また、情報処理装置１０１によれば、第１の形態素列内の形態素の重要度合いを表す指標値と、第２の形態素列内の形態素の重要度合いを表す指標値とを取得し、取得した指標値に基づいて、複数の形態素列α及び／又は複数の形態素列βを特定することができる。具体的には、例えば、情報処理装置１０１は、複数の形態素列α及び／又は複数の形態素列βを特定するにあたり、第１及び第２の形態素列内の形態素の重要度合いを表す指標値に基づいて、ずらす範囲Ｒを決定することができる。
【０１７２】
これにより、比較対象となる文書Ｄｋ，Ｄｋにおける重要な単語の位置を特定して、重要な単語同士を比較可能なずらす範囲Ｒを決定することができ、計算量を抑えつつ、類似度Ｓの算出精度を確保することができる。
【０１７３】
また、情報処理装置１０１によれば、第２の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列βを特定し、特定した複数の形態素列βに含まれる各形態素列βと、第１の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の第２の数ｘ’を特定することができる。そして、情報処理装置１０１によれば、特定した数ｘと第２の数ｘ’とに基づき、第１の形態素列及び第２の形態素列の類似度に関する評価を行うことができる。
【０１７４】
これにより、第２の形態素列において先頭となる形態素をずらしながら、第１の形態素列と出現位置ごとに比較して、第１の形態素列及び第２の形態素列の類似度合いを評価することができる。このため、第１の形態素列に対して第２の形態素列を左右両方向にずらして比較した結果を用いて類似度合いを評価することができ、類似度Ｓの算出精度を向上させることができる。
【０１７５】
また、情報処理装置１０１によれば、第１の形態素列内の形態素の数と、第２の形態素列内の形態素の数とに基づいて、ペナルティ値Ｐを設定することができる。そして、情報処理装置１０１によれば、さらに、設定したペナルティ値Ｐに基づいて、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことができる。
【０１７６】
これにより、第１の形態素列及び第２の形態素列それぞれに含まれる形態素の数が多い、すなわち、比較対象となる文書Ｄｋ，Ｄｌが長い（単語数が多い）ほど、類似度Ｓが高くなるのを防ぐことができる。
【０１７７】
また、情報処理装置１０１によれば、特定した数ｘと第２の数ｘ’とのうち所定数γよりも大きい数に基づき、第１の形態素列及び第２の形態素列の類似度Ｓに関する評価を行うことができる。これにより、形態素列同士を比較したときに、一度に一致する形態素の数が多いほど類似度合いが高くなるようにして、類似度Ｓの算出精度を向上させることができる。
【０１７８】
これらのことから、情報処理装置１０１によれば、計算量を抑えつつ、語順を考慮した文書の類似判定を行うことが可能となり、自然文同士の類似判定の精度を向上させ、ひいては、類似文書のグループ化精度の向上を図ることができる。また、類似文書を精度よくグループ化することで、例えば、ＦＡＱ（Ｆｒｅｑｕｅｎｔｌｙ  Ａｓｋｅｄ  Ｑｕｅｓｔｉｏｎ）としてまとめる質問を効率的に特定することができる。この際、一見すると類似していることが分かり難いような質問についても特定することが可能となる。
【０１７９】
なお、本実施の形態で説明した評価方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本評価プログラムは、ハードディスク、フレキシブルディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）−ＲＯＭ、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本評価プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１８０】
また、本実施の形態で説明した情報処理装置１０１は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣやＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。
【０１８１】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１８２】
（付記１）第１の形態素列と第２の形態素列とを受け付け、
受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定し、
特定した前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
処理をコンピュータに実行させることを特徴とする評価プログラム。
【０１８３】
（付記２）前記複数の形態素列を特定する処理は、
前記第１の形態素列内の形態素の数と、前記第２の形態素列内の形態素の数とに基づいて、前記複数の形態素列を特定する、
ことを特徴とする付記１に記載の評価プログラム。
【０１８４】
（付記３）前記複数の形態素列を特定する処理は、
前記第１の形態素列と前記第２の形態素列とで、重複する形態素の数及び重複しない形態素の数に基づいて、前記複数の形態素列を特定する、
ことを特徴とする付記１または２に記載の評価プログラム。
【０１８５】
（付記４）前記複数の形態素列を特定する処理は、
前記第１の形態素列内の形態素の数と前記第２の形態素列内の形態素の数との差に基づいて、前記複数の形態素列を特定する、
ことを特徴とする付記１〜３のいずれか一つに記載の評価プログラム。
【０１８６】
（付記５）前記複数の形態素列を特定する処理は、
前記第１の形態素列と前記第２の形態素列とを含む形態素列群の各形態素列内の形態素の数のばらつきを表す値に基づいて、前記複数の形態素列を特定する、
ことを特徴とする付記１〜４のいずれか一つに記載の評価プログラム。
【０１８７】
（付記６）前記第１の形態素列内の形態素の重要度合いを表す指標値と、前記第２の形態素列内の形態素の重要度合いを表す指標値とを取得する、処理を前記コンピュータに実行させ、
前記複数の形態素列を特定する処理は、
取得した前記指標値に基づいて、前記複数の形態素列を特定する、
ことを特徴とする付記１〜５のいずれか一つに記載の評価プログラム。
【０１８８】
（付記７）前記第２の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、前記第１の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の第２の数を特定する、処理を前記コンピュータに実行させ、
前記評価を行う処理は、
特定した前記数と前記第２の数とに基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする付記１〜６のいずれか一つに記載の評価プログラム。
【０１８９】
（付記８）前記第１の形態素列内の形態素の数と、前記第２の形態素列内の形態素の数とに基づいて、前記第１の形態素列及び前記第２の形態素列それぞれに含まれる形態素の数の多さに対するペナルティ値を設定し、
前記評価を行う処理は、
さらに、設定した前記ペナルティ値に基づいて、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする付記１〜７のいずれか一つに記載の評価プログラム。
【０１９０】
（付記９）前記評価を行う処理は、
特定した前記数と前記第２の数とのうち所定数よりも大きい数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
ことを特徴とする付記７に記載の評価プログラム。
【０１９１】
（付記１０）前記評価の結果を出力する、
処理を前記コンピュータに実行させることを特徴とする付記１〜９のいずれか一つに記載の評価プログラム。
【０１９２】
（付記１１）前記数を特定する処理は、
前記第１の形態素列と前記第２の形態素列とを含む形態素列群に含まれる各形態素が、前記形態素列群のいずれの形態素列のいずれの位置にあるかを特定する転置インデックスを参照して、前記数を特定する、ことを特徴とする付記１〜１０のいずれか一つに記載の評価プログラム。
【０１９３】
（付記１２）第１の形態素列と第２の形態素列とを受け付け、
受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定し、
特定した前記複数の形態素列に含まれる各形態素列と、受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定し、
特定した前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う、
処理をコンピュータが実行することを特徴とする評価方法。
【０１９４】
（付記１３）第１の形態素列と第２の形態素列とを受け付ける受付部と、
前記受付部が受け付けた前記第１の形態素列内で形態素が出現する出現位置のうち、複数の出現位置にそれぞれ出現する形態素を先頭とする複数の形態素列を特定する第１の特定部と、
前記第１の特定部によって特定された前記複数の形態素列に含まれる各形態素列と、前記受付部が受け付けた前記第２の形態素列とを、出現位置ごとに比較して、形態素が一致する出現位置の数を特定する第２の特定部と、
前記第２の特定部によって特定された前記数に基づき、前記第１の形態素列及び前記第２の形態素列の類似度に関する評価を行う評価部と、
を有することを特徴とする情報処理装置。
【符号の説明】
【０１９５】
１０１  情報処理装置
１１０  第１の形態素列
１１１，１１２，１１３，１１４，１１５，１１６，１２１，１２２，１２３，１２４，１２５  形態素
１２０  第２の形態素列
１３０，１４０，１５０，４１０，４１１，４１２，４２０，４２１，４２２，５１０，５２０，５３０，６１０，６２０，６３０，６４０，６５０  形態素列
２００  バス
２０１  ＣＰＵ
２０２  メモリ
２０３  ディスクドライブ
２０４  ディスク
２０５  Ｉ／Ｆ
２０６  ディスプレイ
２０７  入力装置
２１０  ネットワーク
３０１  受付部
３０２  第１の特定部
３０３  第２の特定部
３０４  評価部
３０５  出力部
７００  類似度テーブル
【図１】
2019219724.tif 000003
【図２】
2019219724.tif 000004
【図３】
2019219724.tif 000005
【図４】
2019219724.tif 000006
【図５】
2019219724.tif 000007
【図６】
2019219724.tif 000008
【図７】
2019219724.tif 000009
【図８】
2019219724.tif 000010
【図９】
2019219724.tif 000011