(57)【要約】【課題】意味構造検索において、検索対象文書から欠落している形態素の情報を補完する処理の処理量を削減する。【解決手段】コンピュータは、文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成する（ステップ５０１）。次に、コンピュータは、複数の文それぞれについて、複数の形態素それぞれを符号化した複数の符号を生成する（ステップ５０２）。そして、コンピュータは、複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、特定された符号それぞれに対し、欠落情報をそれぞれ付加する（ステップ５０３）。【選択図】図５
2018013863.tif 000002
【特許請求の範囲】
【請求項１】
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
処理をコンピュータに実行させる符号化プログラム。
【請求項２】
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする請求項１記載の符号化プログラム。
【請求項３】
前記コンピュータは、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする請求項２記載の符号化プログラム。
【請求項４】
前記意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含むことを特徴とする請求項２又は３記載の符号化プログラム。
【請求項５】
検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し、
検索対象文書に含まれる複数の文それぞれについて文に含まれる複数の形態素が属する意味構造を表す検索対象意味構造情報と、前記複数の文それぞれについて前記複数の形態素それぞれを符号化することで生成された複数の符号と、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加された欠落情報とを含む、符号化文書から、前記検索要求意味構造情報に基づいて前記検索要求に対応する文を検索し、
検索結果を出力する、
処理をコンピュータに実行させる検索プログラム。
【請求項６】
前記検索要求に含まれる前記複数の形態素が属する前記意味構造は、前記検索要求に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記検索要求に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記文に含まれる前記複数の形態素が属する前記意味構造は、前記文に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記文に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記欠落情報は、前記検索対象文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含み、
前記コンピュータは、前記符号化文書から、前記検索要求に含まれる前記複数の形態素のうち１つの形態素を検索し、検索した形態素が、前記欠落情報が付加された前記符号に対応する場合、前記欠落情報を参照して、前記同じ意味記号に対応する形態素が出現する前記文を特定し、前記検索対象意味構造情報において、特定した前記文に出現する前記同じ意味記号に対応する形態素が属する第１意味構造と、前記検索対象意味構造情報において、前記欠落情報が付加された前記符号に対応する形態素が属する第２意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする請求項５記載の検索プログラム。
【請求項７】
前記複数の符号各々に対して、前記欠落情報、又は前記検索対象文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報が付加されており、
前記コンピュータは、前記検索した形態素が、前記非出現情報が付加された符号に対応する場合、前記検索対象意味構造情報において、前記非出現情報が付加された前記符号に対応する形態素が属する第３意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする請求項６記載の検索プログラム。
【請求項８】
前記検索要求意味構造情報及び前記検索対象意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含み、
前記コンピュータは、前記検索要求意味構造情報に含まれる接続距離情報及び接続関係情報と、前記検索対象意味構造情報に含まれる接続距離情報及び接続関係情報とを比較することで、前記検索要求に対応する前記文を検索することを特徴とする請求項６又は７記載の検索プログラム。
【請求項９】
文書を記憶する記憶部と、
前記文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
符号化部と、
を備えることを特徴とする符号化装置。
【請求項１０】
検索対象文書に含まれる複数の文それぞれについて文に含まれる複数の形態素が属する意味構造を表す検索対象意味構造情報と、前記複数の文それぞれについて前記複数の形態素それぞれを符号化することで生成された複数の符号と、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加された欠落情報とを含む、符号化文書を記憶する記憶部と、
検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し、前記符号化文書から、前記検索要求意味構造情報に基づいて前記検索要求に対応する文を検索する検索部と、
検索結果を出力する出力部と、
を備えることを特徴とする検索装置。
【請求項１１】
コンピュータが、
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
ことを特徴とする符号化方法。
【請求項１２】
コンピュータが、
検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し、
検索対象文書に含まれる複数の文それぞれについて文に含まれる複数の形態素が属する意味構造を表す検索対象意味構造情報と、前記複数の文それぞれについて前記複数の形態素それぞれを符号化することで生成された複数の符号と、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加された欠落情報とを含む、符号化文書から、前記検索要求意味構造情報に基づいて前記検索要求に対応する文を検索し、
検索結果を出力する、
ことを特徴とする検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化プログラム、検索プログラム、符号化装置、検索装置、符号化方法、及び検索方法に関する。
【背景技術】
【０００２】
近年、テキストデータの量が爆発的に増大しており、テキスト検索の重要性が増している。特に、秘書機能アプリケーションソフトウェア等のための意味処理の研究が盛んになってきており、自然文の意味構造の検索がますます重要になってきている。
【０００３】
テキスト検索で用いられる自然文の解析には、字句解析、形態素解析、意味解析等が利用されている。字句解析は、文字列を単語に分割する処理であり、形態素解析は、文字列を形態素に分割し、各形態素に対して品詞、属性等の情報を付与する処理である。形態素解析により得られる形態素は、単語として扱われることもある。
【０００４】
意味解析は、自然文の形態素解析結果を用いて、その自然文の意味構造を求める処理である。意味解析結果である意味構造を用いることで、自然文が何を意味するかを、コンピュータが扱うデータとして表現することができる。
【０００５】
意味構造は、形態素解析結果に含まれる複数の単語の意味をそれぞれ表す複数の意味記号と、２つの意味記号の間の接続関係を表す情報とを含む。１つの意味記号が複数の単語に対応する場合もある。意味構造は、例えば、複数の意味記号を表す複数のノードと、２つのノード間の接続関係を表すアークとからなる有向グラフにより表すことができる。意味構造の最小の部分構造は、意味最小単位と呼ばれ、２つのノードとそれらのノードの間のアークとからなる。
【０００６】
複数の文書に含まれるテキストデータに対して形態素解析及び意味解析を行うことで、自然文の検索要求の意味構造を用いて複数の文書を検索する意味構造検索を実現することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−１８６７６６号公報
【特許文献２】特開２０１０−９３４１４号公報
【特許文献３】国際公開第２０１２／１１１０７８号パンフレット
【特許文献４】国際公開第２０１１／１４８５１１号パンフレット
【特許文献５】特開２０１２−２２５９９号公報
【特許文献６】特開２０１２−１５０５８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
主語、目的語等が省略されている等の、意味構造上で欠落のある不完全な文を対象として意味構造検索を行う場合、省略された語、すなわち、意味構造上欠落のある形態素を補完する処理が必要となるため、補完処理の分の計算量が増加する。
【０００９】
１つの側面において、本発明は、意味構造検索において、検索対象文書から欠落している形態素の情報を補完する処理の処理量を削減することを目的とする。
【課題を解決するための手段】
【００１０】
１つの案では、符号化プログラムは、以下の処理をコンピュータに実行させる。
（１）コンピュータは、文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成する。
（２）コンピュータは、複数の文それぞれについて、複数の形態素それぞれを符号化した複数の符号を生成する。
（３）コンピュータは、複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、特定された符号それぞれに対し、欠落情報をそれぞれ付加する。
【発明の効果】
【００１１】
１つの実施形態によれば、意味構造検索において、検索対象文書から欠落している形態素の情報を補完する処理の処理量を削減することができる。
【図面の簡単な説明】
【００１２】
【図１】文書に含まれる第１文の意味構造を示す図である。
【図２】文書に含まれる第２文の意味構造を示す図である。
【図３】照応解析を用いた意味構造検索処理のフローチャートである。
【図４】符号化装置の機能的構成図である。
【図５】符号化処理のフローチャートである。
【図６】検索装置の機能的構成図である。
【図７】検索処理のフローチャートである。
【図８】符号化装置の具体例を示す機能的構成図である。
【図９】符号化文書を示す図である。
【図１０】符号化処理の具体例を示すフローチャートである。
【図１１】文書の解析結果を示す図である。
【図１２】第１文の意味構造に対応する接続表を示す図である。
【図１３】第２文の意味構造に対応する接続表を示す図である。
【図１４】アークの符号を示す図である。
【図１５】第１文の意味構造情報を示す図である。
【図１６】第２文の意味構造情報を示す図である。
【図１７】符号化文書の具体例を示す図である。
【図１８】検索装置の具体例を示す機能的構成図である。
【図１９】検索処理を示す図である。
【図２０】検索処理の具体例を示すフローチャートである。
【図２１】検索要求の意味構造を示す図である。
【図２２】検索要求の意味構造に対応する接続表を示す図である。
【図２３】検索要求意味構造情報を示す図である。
【図２４】意味構造情報マッチング処理のフローチャートである。
【図２５】第１文の「サーバー」に対する意味構造情報マッチング処理を示す図である。
【図２６】第１文の「起動し」に対する意味構造情報マッチング処理を示す図である。
【図２７】第２文の「起動し」に対する意味構造情報マッチング処理を示す図である。
【図２８】否定フラグを含む付加情報を示す図である。
【図２９】文の末尾から順に符号を並べた符号化文書を示す図である。
【図３０】一連の符号の後に付加情報を並べた符号化文書を示す図である。
【図３１】情報処理装置の構成図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、実施形態を詳細に説明する。
先願である特願２０１５−８９３６号に記載された技術（以下では、先願技術と記載する）では、文書に対する形態素解析により得られた形態素と、意味解析により得られた意味記号とを併せた一連の符号を用いて、文書が符号化される。これにより、形態素解析結果と意味解析結果との対応関係を符号化文書に効果的に埋め込むことができ、意味記号を用いて直接符号化文書を検索することが可能になる。
【００１４】
しかしながら、先願技術では、検索対象文書に含まれる文及び検索要求に含まれる文が、主語、目的語等が省略されていない完全な文であることを前提としている。このため、主語、目的語等が省略されている不完全な文を対象として意味構造検索を行う場合、何らかの問題が生じる。
【００１５】
例えば、「パッチはサーバーに当てて再起動した。すると、起動しなかった。」という文書が検索対象である場合、この文書は以下の２文を含んでいる。
第１文：「パッチはサーバーに当てて再起動した。」
第２文：「すると、起動しなかった。」
【００１６】
図１は、第１文の意味構造の例を示している。第１文は、「パッチ」、「は」、「サーバー」、「に」、「当て」、「て」、「再」、「起動し」、「た」、及び「。」の１０個の形態素を含む。このうち、「パッチ」、「サーバー」、「当て」、「再」、及び「起動し」に対応する意味記号は、それぞれ、ＰＡ００１、ＳＥ００１、ＡＰ００１、ＡＧ００１、及びＢＯ００１である。
【００１７】
ＢＯ００１とＡＧ００１の間の接続関係は＜修飾＞であり、ＢＯ００１とＡＰ００１の間の接続関係は＜順接＞である。ＡＰ００１とＳＥ００１の間の接続関係は＜目標＞であり、ＡＰ００１とＰＡ００１の間の接続関係は＜対象＞である。さらに、ＢＯ００１は、＜中心＞を表すアークを有する。
【００１８】
図１の意味構造においては、「サーバー」は「起動し」の直接の目的語ではない。このため、例えば、「サーバーを再起動する」という自然文の検索要求に対して単純にマッチしない。
【００１９】
図２は、第２文の意味構造の例を示している。第２文は、「すると」、「起動し」、「なかっ」、「た」、及び「。」の５個の形態素を含む。このうち、「すると」及び「起動し」に対応する意味記号は、それぞれ、ＴＨ００１及びＢＯ００１である。ＢＯ００１とＴＨ００１の間の接続関係は＜順接＞である。さらに、ＢＯ００１は、＜中心＞、＜過去＞、及び＜否定＞を表すアークを有する。
【００２０】
第２文の「起動し」の主語は、第１文の「サーバー」であるが、第２文では省略されている。しかし、先願技術における意味構造検索の単位は文であるため、第２文内では主語が見つからない。
【００２１】
そこで、意味構造検索で検索要求として与えられる自然文を想定して、事前にその自然文に含まれる主語、目的語等を意味構造に展開しておく方法が考えられる。しかし、すべての検索要求のバリエーションを事前に推定することは極めて困難であり、仮にバリエーションが推定できたとしても、展開された意味構造の情報量が膨大になるため、この方法は現実的とは言えない。
【００２２】
一方、検索要求に応じて検索対象となる意味構造を柔軟にマッチングできるようにする方法も考えられる。この場合、省略された主語、目的語等は、照応解析によって補完される。
【００２３】
照応解析は、文に含まれる代名詞の指す語句、文中で省略されている省略語等を同定する処理である。例えば、動詞に対する主語が省略されている場合、その文よりも前の文に出現する単語の中から、主語になり得る単語が検索される。そして、検索した単語と動詞の解析結果を再度検証して、その単語が動詞の主語であるか否かを判定することで、省略された主語を同定することができる。
【００２４】
しかし、照応解析は難しい処理であり、正しい解析結果が得られる確率は約６０〜７０％にとどまり、計算量も膨大になる。このため、意味構造検索と照応解析とを並行して行うと、処理に用いるリソースが膨大になる。
【００２５】
図３は、照応解析を用いた意味構造検索処理の例を示すフローチャートである。まず、検索装置は、検索要求に含まれる意味最小単位が検索対象文書の意味構造にマッチするか否かをチェックする（ステップ３０１）。意味最小単位が検索対象文書の意味構造にマッチした場合（ステップ３０１，ＹＥＳ）、検索装置は、意味最小単位のスコアを所定値に設定し（ステップ３０２）、その意味最小単位のスコアを検索対象文書のスコアに加算する（ステップ３０３）。
【００２６】
一方、意味最小単位が検索対象文書の意味構造にマッチしない場合（ステップ３０１，ＮＯ）、検索装置は、照応解析を行って（ステップ３０４）、単語が省略されている否かをチェックする（ステップ３０５）。単語が省略されている場合（ステップ３０５，ＹＥＳ）、検索装置は、意味最小単位のスコアを所定値×０．５に設定して（ステップ３０６）、ステップ３０３の処理を行う。単語が省略されていない場合（ステップ３０５，ＮＯ）、検索装置は、意味最小単位のスコアを加算せずに、処理を終了する。
【００２７】
このように、主語の省略等の現象に対応するためには、検索要求に対するマッチングとは別に照応解析が行われ、マッチングと照応解析の処理が分離される。検索対象文書にＮ個の意味記号が含まれている場合、１回の照応解析の計算量はＮ×Ｎのオーダーになる。図３は、検索キーとなる意味最小単位が１個の場合の意味構造検索を示しているが、実際の意味構造検索では数十個の検索キーが用いられることもある。その場合、ステップ３０１〜ステップ３０６の処理が検索キーの個数と同じ回数だけ繰り返され、計算量がさらに増加する。
【００２８】
図４は、実施形態の符号化装置の機能的構成例を示している。符号化装置４０１は、記憶部４１１及び符号化部４１２を含む。記憶部４１１は、文書４２１を記憶する。符号化部４１２は、記憶部４１１が記憶する文書４２１を符号化する。
【００２９】
図５は、図４の符号化装置４０１が行う符号化処理の例を示すフローチャートである。まず、符号化部４１２は、文書４２１に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成する（ステップ５０１）。次に、符号化部４１２は、複数の文それぞれについて、複数の形態素それぞれを符号化した複数の符号を生成する（ステップ５０２）。そして、符号化部４１２は、複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、特定された符号それぞれに対し、欠落情報をそれぞれ付加する（ステップ５０３）。
【００３０】
図４の符号化装置４０１によれば、意味構造検索において、検索対象文書から欠落している形態素の情報を補完する処理の処理量を削減することができる。
【００３１】
図６は、実施形態の検索装置の機能的構成例を示している。検索装置６０１は、記憶部６１１、検索部６１２、及び出力部６１３を含む。記憶部６１１は、検索対象意味構造情報、複数の符号、及び欠落情報を含む符号化文書６２１を記憶する。
【００３２】
検索対象意味構造情報は、検索対象文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す。複数の符号は、複数の文それぞれについて、複数の形態素それぞれを符号化することで生成される。欠落情報は、複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加される。
【００３３】
例えば、図４の文書４２１が検索対象文書である場合、符号化装置４０１によって文書４２１を符号化することで、符号化文書６２１が生成される。検索部６１２は、検索要求に基づいて、記憶部４１１が記憶する符号化文書６２１を検索し、出力部６１３は、検索結果を出力する。
【００３４】
図７は、図６の検索装置６０１が行う検索処理の例を示すフローチャートである。まず、検索部６１２は、検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し（ステップ７０１）、符号化文書６２１から、検索要求意味構造情報に基づいて検索要求に対応する文を検索する（ステップ７０２）。そして、出力部６１３は、検索結果を出力する（ステップ７０３）。
【００３５】
図６の検索装置６０１によれば、意味構造検索において、検索対象文書から欠落している形態素の情報を補完する処理の処理量を削減することができる。
【００３６】
図８は、図４の符号化装置４０１の具体例を示している。図８の符号化装置４０１は、記憶部４１１、符号化部４１２、解析部８０１、及び出力部８０２を含む。記憶部４１１は、文書４２１及び符号化情報８１１を記憶する。符号化情報８１１は、形態素と符号との対応関係を表し、符号化辞書と呼ばれることもある。
【００３７】
解析部８０１は、記憶部４１１が記憶する文書４２１に対して、形態素解析及び意味解析を行い、形態素解析結果及び意味解析結果を含む解析結果８１２を生成して、記憶部４１１に格納する。符号化部４１２は、符号化情報８１１及び解析結果８１２を用いて文書４２１を符号化することで、符号化文書６２１を生成し、記憶部４１１に格納する。出力部８０２は、符号化文書６２１を図６の検索装置６０１へ出力する。
【００３８】
図９は、符号化文書６２１の例を示している。図９の符号化文書６２１は、符号９０１−１〜符号９０１−Ｎ、付加情報９０２−１〜付加情報９０２−Ｎ、及び意味構造情報９０３−１〜意味構造情報９０３−Ｍを含む。Ｎは、文書４２１に含まれる形態素の個数を表し、Ｍは、意味構造におけるノードに対応する形態素の個数を表す。したがって、Ｍ≦Ｎである。
【００３９】
符号９０１−ｉ（ｉ＝１〜Ｎ）は、符号化情報８１１によって各形態素に対応付けられた符号であり、付加情報９０２−ｉは、各符号に対して付加された情報である。意味構造情報９０３−ｊ（ｊ＝１〜Ｍ）は、各形態素が属する意味構造を表す情報である。
【００４０】
符号９０１−ｉは、文書４２１内の先頭の文から末尾の文へ向かって、文毎にまとめて配置され、各文に対応する複数の符号９０１−ｉは、その文の先頭の符号９０１−ｉから順に並べられている。そして、符号９０１−１〜符号９０１−Ｎに続いて、意味構造情報９０３−ｊが符号９０１−ｉと同じ順序で配置される。
【００４１】
図１０は、図８の符号化装置４０１が行う符号化処理の具体例を示すフローチャートである。まず、解析部８０１は、文書４２１に対して形態素解析を行って形態素解析結果を生成し（ステップ１００１）、文書４２１に対して意味解析を行って意味解析結果を生成する（ステップ１００２）。そして、解析部８０１は、形態素解析結果及び意味解析結果を含む解析結果８１２を記憶部４１１に格納する。
【００４２】
次に、符号化部４１２は、文書４２１内の各文に含まれる各形態素の意味構造情報を生成し（ステップ１００３）、符号化情報８１１を用いて、各形態素を対応する符号に置き換えることで、各形態素を符号化する（ステップ１００４）。そして、符号化部４１２は、各形態素の付加情報を生成し、対応する符号に対して付加する（ステップ１００５）。これにより、符号、付加情報、及び意味構造情報を含む符号化文書６２１が生成される。
【００４３】
図１１は、解析結果８１２の例を示している。図１１の解析結果８１２は、上述した「パッチはサーバーに当てて再起動した。すると、起動しなかった。」という文書４２１の解析結果を表している。文番号は、文書４２１に含まれる文の識別情報であり、文番号“１”及び文番号“２”は、それぞれ、第１文及び第２文に対応する。以下では、第１文及び第２文を、それぞれ、文１及び文２と記載することがある。
【００４４】
文頭からの位置は、各文に含まれる形態素の識別情報であり、文頭から何番目の形態素であるかを表す。例えば、文１の「パッチ」は、１番目の形態素であり、「サーバー」は、３番目の形態素であり、文２の「起動し」は、２番目の形態素である。
【００４５】
以下では、文番号ｐの文の文頭からｑ番目の位置に存在する形態素を、［ｐ，ｑ］「形態素」と表記することがある。例えば、文１の「パッチ」は、［１，１］「パッチ」と表記され、「サーバー」は、［１，３］「サーバー」と表記され、文２の「起動し」は、［２，２］「起動し」と表記される。
【００４６】
付加情報は、図１０のステップ１００５において生成される付加情報であり、参照フラグ及び照応情報を含む。参照フラグは、論理“１”のとき、符号化文書６２１内において、各形態素に対応する意味構造情報が存在することを示し、論理“０”のとき、その意味構造情報が存在しないことを示す。
【００４７】
例えば、［１，１］「パッチ」の参照フラグ“１”は、対応する意味構造情報が存在することを示し、［１，２］「は」の参照フラグ“０”は、対応する意味構造情報が存在しないことを示す。
【００４８】
照応情報は、照応フラグｆ及び位置情報Ｘを用いて、“ｆ”又は“ｆ：Ｘ”の形式で記述される。照応フラグｆは、論理“１”のとき、文書４２１内において、符号に対応する形態素と同じ意味記号に対応する形態素が、その符号に対応する形態素よりも前に出現することを示す。この場合、照応情報は“ｆ：Ｘ”の形式で記述され、位置情報Ｘを含む。
【００４９】
位置情報Ｘは、文書４２１内において、同じ意味記号に対応する形態素が出現する文を特定する情報であり、Ｘ文前の文に同じ意味記号に対応する形態素が出現することを表す。照応情報“１：Ｘ”は、欠落情報として符号に付加される。
【００５０】
また、照応フラグｆは、論理“０”のとき、同じ意味記号に対応する形態素が前に出現しないことを示す。この場合、照応情報は“ｆ”の形式で記述され、照応情報“０”は、非出現情報として符号に付加される。
【００５１】
例えば、［１，１］「パッチ」の照応情報“０”は、「パッチ」と同じ意味記号に対応する形態素が前に出現しないことを示す。また、［２，２］「起動し」の照応情報“１：１”は、「起動し」と同じ意味記号に対応する形態素が１文前に出現することを示す。
【００５２】
図１０のステップ１００３において、符号化部４１２は、各文の意味構造に対応する接続表を生成し、その接続表に基づいて各形態素の意味構造情報を生成する。
【００５３】
図１２は、図１に示した第１文の意味構造に対応する接続表の例を示している。図１２の接続表の各行及び各列の意味記号は、意味構造に含まれるノードを表す。各セル内の“：”の左側の数字ｄは、セルに対応する行が表すノードと列が表すノードとの間の接続距離を表す接続距離情報である。ｄ＝２は、２つのノードが直接接続していることを示し、ｄ≧３は、２つのノードが（ｄ−２）個のノードを介して間接的に接続していることを示す。
【００５４】
また、各セル内の“：”の右側の文字列は、２つのノードの間のアークに対応する接続関係を表す接続関係情報である。文字列の先頭の“＋”は、行が表すノードから列が表すノードへアークが向かうことを示し、“−”は、列が表すノードから行が表すノードへアークが向かうことを示す。接続関係情報は、ｄ＝２のセルのみに対して付加される。
【００５５】
以下では、接続表内におけるセルの位置を、（行が表すノードの意味記号，列が表すノードの意味記号）を用いて表記する。例えば、（ＳＥ００１，ＰＡ００１）のセルの“３：”は、ＳＥ００１（サーバー）とＰＡ００１（パッチ）とが１個のノードを介して間接的に接続されていることを表す。
【００５６】
（ＳＥ００１，ＡＰ００１）のセルの“２：−目標”は、ＳＥ００１とＡＰ００１（当て）とが＜目標＞を表すアークによって直接接続されており、アークがＡＰ００１からＳＥ００１へ向かうことを表す。（ＳＥ００１，ＡＧ００１）のセルの“４：”は、ＳＥ００１とＡＧ００１（再）とが２個のノードを介して間接的に接続されていることを表す。（ＳＥ００１，ＢＯ００１）のセルの“３：”は、ＳＥ００１とＢＯ００１（起動し）とが１個のノードを介して間接的に接続されていることを表す。
【００５７】
（ＡＰ００１，ＰＡ００１）のセルの“２：＋対象”は、ＡＰ００１（当て）とＰＡ００１（パッチ）とが＜対象＞を表すアークによって直接接続されており、アークがＡＰ００１からＰＡ００１へ向かうことを表す。（ＡＰ００１，ＳＥ００１）のセルの“２：＋目標”は、ＡＰ００１とＳＥ００１（サーバー）とが＜目標＞を表すアークによって直接接続されており、アークがＡＰ００１からＳＥ００１へ向かうことを表す。
【００５８】
（ＡＰ００１，ＡＧ００１）のセルの“３：”は、ＡＰ００１とＡＧ００１（再）とが１個のノードを介して間接的に接続されていることを表す。（ＡＰ００１，ＢＯ００１）のセルの“２：−順接”は、ＡＰ００１とＢＯ００１（起動し）とが＜順接＞を表すアークによって直接接続されており、アークがＢＯ００１からＡＰ００１へ向かうことを表す。
【００５９】
（ＢＯ００１，ＰＡ００１）のセルの“３：”は、ＢＯ００１（起動し）とＰＡ００１（パッチ）とが１個のノードを介して間接的に接続されていることを表す。（ＢＯ００１，ＳＥ００１）のセルの“３：”は、ＢＯ００１とＳＥ００１（サーバー）とが１個のノードを介して間接的に接続されていることを表す。
【００６０】
（ＢＯ００１，ＡＰ００１）のセルの“２：＋順接”は、ＢＯ００１とＡＰ００１（当て）とが＜順接＞を表すアークによって直接接続されており、アークがＢＯ００１からＡＰ００１へ向かうことを表す。（ＢＯ００１，ＡＧ００１）のセルの“２：＋修飾”は、ＢＯ００１とＡＧ００１（再）とが＜修飾＞を表すアークによって直接接続されており、アークがＢＯ００１からＡＧ００１へ向かうことを表す。
【００６１】
図１３は、図２に示した第２文の意味構造に対応する接続表の例を示している。例えば、（ＴＨ００１，ＢＯ００１）のセルの“２：−順接”は、ＴＨ００１（すると）とＢＯ００１（起動し）とが＜順接＞を表すアークによって直接接続されており、アークがＢＯ００１からＴＨ００１へ向かうことを表す。（ＢＯ００１，ＴＨ００１）のセルの“２：＋順接”も、（ＴＨ００１，ＢＯ００１）のセルと同じ情報を表す。
【００６２】
一方、（ＢＯ００１，ＢＯ００１）のセルの“否定”は、ＢＯ００１（起動し）が＜否定＞を表すアークを有することを表す。このように、＜否定＞を表す接続関係情報は、接続表内において、行と列が同じ意味記号に対応する対角セルに格納される。
【００６３】
図１４は、アークの接続関係に対応する符号の例を示している。図１４の例では、＜動作主＞、＜条件＞、＜対象＞、＜逆接＞、＜順接＞、＜目標＞、及び＜修飾＞に対して、符号“１”〜符号“７”がそれぞれ割り当てられており、＜否定＞に対して符号“−１”が割り当てられている。
【００６４】
図１５は、図１２の接続表から生成される第１文の意味構造情報の例を示している。図１５の意味構造情報は、図１２の接続表における各行の情報を表すビット列を含む。各行のビット列は、接続距離を表す３ビットの情報を列の個数だけ含み、接続距離が２である列に対して、接続関係を表す８ビットの情報を列の個数だけ含む。空白セルの接続距離は０に設定される。
【００６５】
例えば、ＳＥ００１（サーバー）のビット列は、５個の接続距離を表す１５ビットのビット列“０００  ０１１  ０１０  １００  ０１１”と、１個の接続関係を表す８ビットのビット列“１１１１１１０１”とを含む。
【００６６】
ＡＰ００１（当て）のビット列は、５個の接続距離を表す１５ビットのビット列“０１０  ０１０  ０００  ０１１  ０１０”と、３個の接続関係を表す２４ビットのビット列“００００００１１  ０００００１１０  １１１１１０１１”とを含む。
【００６７】
ＢＯ００１（起動し）のビット列は、５個の接続距離を表す１５ビットのビット列“０１１  ０１１  ０１０  ００１  ０００”と、２個の接続関係を表す１６ビットのビット列“０００００１０１  ０００００１１１”とを含む。
【００６８】
図１５の意味構造情報では、図１２の接続表の各セルの接続距離情報が３ビットで表されるため、５×５の接続表全体の接続距離情報を格納するための記憶容量は、３ビット×５×５＝７５ビット＝約９バイトである。また、各セルの接続関係情報は８ビットで表されるため、接続表の接続関係情報を格納するための記憶容量は、１バイト×アークの個数×２＝１×４×２＝８バイトである。したがって、意味構造情報を格納するための記憶容量は、９＋８＝１７バイトである。
【００６９】
これに対して、上述した先願技術の符号化文書では、１個の意味最小単位に対して６バイトの符号が割り当てられ、意味最小単位の個数に比例して符号量が増加する。したがって、図１２の接続表に対応する５個の意味最小単位を格納するための記憶容量は、６バイト×５＝３０バイトである。
【００７０】
このように、図１５の意味構造情報を用いれば、先願技術の約５６．７％の記憶容量で、同じ意味構造を格納することができる。
【００７１】
図１６は、図１３の接続表から生成される第２文の意味構造情報の例を示している。＜否定＞を表すセルの接続距離は−１に設定される。
【００７２】
例えば、ＴＨ００１（すると）のビット列は、２個の接続距離を表す６ビットのビット列“０００  ０１０”と、１個の接続関係を表す８ビットのビット列“１１１１１０１１”とを含む。ＢＯ００１（起動し）のビット列は、２個の接続距離を表す６ビットのビット列“０１０  １１１”と、２個の接続関係を表す１６ビットのビット列“０００００１０１  １１１１１１１１”とを含む。
【００７３】
図１７は、「パッチはサーバーに当てて再起動した。すると、起動しなかった。」という文書４２１から生成される符号化文書６２１の具体例を示している。この具体例では、第１文の「サーバーに当てて再起動し」に対応する符号、付加情報、及び意味構造情報が示されており、その前後の文字列及び第２文に対応する情報は省略されている。
【００７４】
符号１７０１−１〜符号１７０１−６は、それぞれ、「サーバー」、「に」、「当て」、「て」、「再」、及び「起動し」に対応する符号である。付加情報１７０２−１〜付加情報１７０２−６は、それぞれ、符号１７０１−１〜符号１７０１−６に対して付加された付加情報であり、図１１に示した付加情報に対応している。
【００７５】
意味構造情報１７０３−１〜意味構造情報１７０３−４は、それぞれ、「サーバー」、「当て」、「再」、及び「起動し」の意味構造情報であり、図１５に示した意味構造情報に対応している。付加情報１７０２−ｉ（ｉ＝１〜６）の参照フラグが論理“１”である４個の符号（ｉ＝１，３，５，６）に対して、それらの符号と同じ順序で、意味構造情報１７０３−ｊ（ｊ＝１〜４）が格納されている。
【００７６】
このように、各形態素の符号の直後に付加情報を格納することで、検索処理を行う際に、意味構造情報を参照するか否かを効率的に判定することができるとともに、照応情報を直ちに参照することができる。また、複数の形態素の符号と、それらの形態素の意味構造情報とを、同じ順序で並べて格納することで、符号から対応する意味構造情報へ高速にアクセスすることが可能になる。
【００７７】
各形態素に対応する意味構造情報は、その形態素と他の形態素との接続距離及び接続関係を表す最小限の情報にあらかじめ絞り込むことができ、意味構造に属するどの形態素からでも意味構造情報へアクセスすることができる。
【００７８】
図１８は、図６の検索装置６０１の具体例を示している。図１８の検索装置６０１は、記憶部６１１、検索部６１２、出力部６１３、及び解析部１８０１を含む。記憶部６１１は、図８の符号化装置４０１から出力される符号化文書６２１を記憶する。
【００７９】
検索部６１２は、ユーザによって自然文の検索要求１８１１が入力されると、入力された検索要求１８１１を受け付けて、記憶部６１１に格納する。解析部１８０１は、検索要求１８１１に対して形態素解析及び意味解析を行い、形態素解析結果及び意味解析結果を含む解析結果１８１２を生成して、記憶部６１１に格納する。
【００８０】
検索部６１２は、解析結果１８１２を用いて、検索要求１８１１の意味構造を表す検索要求意味構造情報１８１３を生成し、記憶部６１１に格納する。また、検索部６１２は、解析結果１８１２を用いて、検索要求１８１１に含まれる２つの形態素の組み合わせのスコアを表すスコア情報１８１４を生成し、記憶部６１１に格納する。そして、検索部６１２は、解析結果１８１２及び検索要求意味構造情報１８１３を用いて、符号化文書６２１を検索し、検索結果１８１５を生成して、記憶部６１１に格納する。出力部６１３は、検索結果１８１５を出力する。
【００８１】
図１９は、図９の符号化文書６２１に対する検索処理の例を示している。この場合、意味構造情報９０３−１〜意味構造情報９０３−Ｍは、検索対象意味構造情報に対応する。
【００８２】
まず、検索部６１２は、検索要求１８１１に含まれる形態素の符号を符号化文書６２１の先頭から順に検索し、符号９０１−２及び符号９０１−３が検索要求１８１１の符号とマッチする。そこで、検索部６１２は、符号９０１−２及び符号９０１−３に付加されている付加情報９０２−２及び付加情報９０２−３を参照する。
【００８３】
付加情報９０２−２の参照フラグが論理“１”であり、付加情報９０２−３の参照フラグが論理“０”である場合、検索部６１２は、符号９０１−２に対応する意味構造情報９０３−２を参照する。そして、検索部６１２は、検索要求意味構造情報１８１３と意味構造情報９０３−２とを比較することで、検索要求１８１１の意味構造が、符号９０１−２に対応する形態素が属する意味構造にマッチするか否かをチェックする。
【００８４】
そして、検索部６１２は、スコア情報１８１４を用いて、符号９０１−２に対応する形態素が属する意味構造に対する検索要求１８１１のスコアを計算し、計算したスコアを用いて検索結果１８１５を生成する。
【００８５】
この場合、符号９０１−２に対応する形態素が属する意味構造に、符号９０１−１に対応する形態素の意味記号が含まれていたとしても、検索部６１２は、符号９０１−１に対応する意味構造情報９０３−１を参照する必要はない。
【００８６】
このような検索処理によれば、意味構造のみに基づいて検索を行うのではなく、まず、高速な形態素マッチングが行われ、マッチした形態素に対してのみ、計算量の多い意味構造情報マッチングが行われる。これにより、検索処理の負荷が削減される。
【００８７】
図２０は、図１８の検索装置６０１が行う検索処理の具体例を示すフローチャートである。まず、検索部６１２は、符号化文書６２１のスコアＳＣ１を０に設定する（ステップ２００１）。次に、検索部６１２は、解析結果１８１２を用いて、検索要求１８１１の意味構造に対応する接続表を生成し、その接続表に基づいて検索要求意味構造情報１８１３を生成する（ステップ２００２）。
【００８８】
図２１は、検索要求１８１１の意味構造の例を示している。図２１の意味構造は、「サーバーが起動しない。」という検索要求１８１１に対応する。この検索要求１８１１は、「サーバー」、「が」、「起動し」、「ない」、及び「。」の５個の形態素を含む。このうち、「サーバー」及び「起動し」に対応する意味記号は、それぞれ、“ＳＥ００１”及び“ＢＯ００１”である。“ＢＯ００１”と“ＳＥ００１”の間の接続関係は＜動作主＞である。さらに、“ＢＯ００１”は、＜中心＞及び＜否定＞を表すアークを有する。
【００８９】
図２２は、図２１の意味構造に対応する接続表の例を示している。図２２の接続表は、図１２及び図１３に示した文書４２１の接続表と同様に、接続距離情報及び接続関係情報を含む。ただし、検索要求１８１１の接続距離の定義は、文書４２１の接続距離とは異なっている。検索要求１８１１の接続表では、２つのノードが直接接続していることを示す接続距離ｄが用いられ、ｄ＝１に設定される。
【００９０】
意味構造情報マッチングでは、文書４２１の接続距離から、同じ２つのノードの間における検索要求１８１１の接続距離を減算することで、２つの接続距離が比較される。このとき、検索要求１８１１の接続距離として、直接接続を示す“１”を用いることで、文書４２１の接続距離ｄが直接接続を示す“２”である場合、ｄから“１”を減算することにより、直接接続を示す差分“１”を得ることができる。
【００９１】
また、文書４２１の接続距離ｄが間接接続を示す“３”以上の値である場合、ｄから“１”を減算することにより、間接接続を示す“２”以上の差分を得ることができる。得られた差分から、文書４２１の意味構造において、２つのノードがどのくらい離れているかを計算することも可能である。
【００９２】
例えば、（ＳＥ００１，ＢＯ００１）のセルの“１：−動作主”は、ＳＥ００１（サーバー）とＢＯ００１（起動し）とが＜動作主＞を表すアークによって直接接続されており、アークがＢＯ００１からＳＥ００１へ向かうことを表す。（ＢＯ００１，ＳＥ００１）のセルの“１：＋動作主”も、（ＳＥ００１，ＢＯ００１）のセルと同じ情報を表す。
【００９３】
また、（ＢＯ００１，ＢＯ００１）のセルの“否定”は、ＢＯ００１（起動し）が＜否定＞を表すアークを有することを表す。＜否定＞を表すセルの接続距離は−１に設定される。
【００９４】
図２３は、図２２の接続表から生成される検索要求意味構造情報１８１３の例を示している。例えば、ＳＥ００１（サーバー）のビット列は、２個の接続距離を表す６ビットのビット列“０００  ００１”と、１個の接続関係を表す８ビットのビット列“１１１１１１１１”とを含む。ＢＯ００１（起動し）のビット列は、２個の接続距離を表す６ビットのビット列“００１  １１１”と、２個の接続関係を表す１６ビットのビット列“０００００００１  １１１１１１１１”とを含む。
【００９５】
検索要求意味構造情報１８１３を生成した後、検索部６１２は、検索要求１８１１の接続表に含まれる複数の意味記号を表す、検索要求１８１１の意味記号リストを生成する（ステップ２００３）。検索要求１８１１の意味記号リストに含まれる各意味記号は、検索要求意味構造情報１８１３が表す接続表の各列に対応している。
【００９６】
次に、検索部６１２は、図８の符号化情報８１１と同様の情報を用いて、検索要求１８１１に含まれる各形態素を対応する符号に置き換え、符号を用いて形態素マッチングを行う（ステップ２００４）。形態素マッチングにおいて、検索部６１２は、検索要求１８１１に含まれる各形態素の符号を、符号化文書６２１から検索する。
【００９７】
図１１に示した文書４２１の符号化文書６２１に対して、「サーバーが起動しない。」という検索要求１８１１を用いて形態素マッチングを行う場合を想定する。この場合、［１，３］「サーバー」が検索要求１８１１の「サーバー」にマッチし、［１，８］「起動し」及び［２，２］「起動し」が検索要求１８１１の「起動し」にマッチする。また、［２，３］「なかっ」が検索要求１８１１の「ない」にマッチする。
【００９８】
形態素マッチングを行った後、検索部６１２は、マッチした符号に対応する形態素毎に、ステップ２００５〜ステップ２０１５の処理を繰り返す。まず、検索部６１２は、マッチした符号に付加されている付加情報を参照して（ステップ２００５）、その参照フラグをチェックする（ステップ２００６）。
【００９９】
参照フラグが論理“１”である場合（ステップ２００６，ＹＥＳ）、検索部６１２は、その符号に対応する意味構造情報を参照して、意味構造情報マッチングを行う（ステップ２００７）。意味構造情報マッチングにおいて、検索部６１２は、参照した意味構造情報が表す接続表と検索要求意味構造情報１８１３が表す接続表に共通する列について、２つの意味構造情報間における接続距離の差分を計算する。
【０１００】
一方、参照フラグが論理“０”である場合（ステップ２００６，ＮＯ）、検索部６１２は、次の形態素についてステップ２００５以降の処理を繰り返す。
【０１０１】
図１１に示した文書４２１では、［１，３］「サーバー」、［１，８］「起動し」、及び［２，２］「起動し」の参照フラグが論理“１”であるため、これらの形態素について意味構造情報マッチングが行われる。一方、［２，３］「なかっ」の参照フラグは論理“０”であるため、この形態素については意味構造情報マッチングが行われない。
【０１０２】
図２４は、図２０のステップ２００７における意味構造情報マッチング処理の例を示すフローチャートである。まず、検索部６１２は、符号化文書６２１から、マッチした符号に対応する意味構造情報を取得して、意味構造情報Ａに設定する（ステップ２４０１）。
【０１０３】
また、検索部６１２は、符号化文書６２１において、マッチした符号に対応する形態素を含む文から、論理“１”の参照フラグが付加された複数の符号を抽出する。そして、検索部６１２は、それらの符号に対応する複数の形態素それぞれを意味記号に置き換えることで、検索対象の意味記号リストを生成する。検索対象の意味記号リストに含まれる各意味記号は、意味構造情報Ａが表す接続表の各列に対応している。
【０１０４】
次に、検索部６１２は、マッチした符号に付加されている付加情報を参照して、その照応情報をチェックする（ステップ２４０２）。照応情報に含まれる照応フラグｆが論理“０”である場合（ステップ２４０２，ＮＯ）、検索部６１２は、検索要求意味構造情報１８１３から、マッチした符号に対応する意味構造情報を抽出して、意味構造情報Ｂに設定する（ステップ２４０６）。
【０１０５】
次に、検索部６１２は、検索要求１８１１の意味記号リストと、検索対象の意味記号リストとに共通する意味記号を特定し、意味構造情報Ａ及び意味構造情報Ｂから、特定した意味記号に対応する列の接続距離を抽出する（ステップ２４０７）。そして、検索部６１２は、抽出した接続距離を用いて、共通する意味記号に対応する列のみを含む意味構造情報Ａ’及び意味構造情報Ｂ’を生成する（ステップ２４０８）。
【０１０６】
次に、検索部６１２は、意味構造情報Ａ’及び意味構造情報Ｂ’の各列について、意味構造情報Ａ’の接続距離から意味構造情報Ｂ’の接続距離を減算し、接続距離の差分を生成する（ステップ２４０９）。
【０１０７】
一方、照応情報に含まれる照応フラグｆが論理“１”である場合（ステップ２４０２，ＹＥＳ）、検索部６１２は、照応情報から位置情報Ｘを取得する（ステップ２４０３）。次に、検索部６１２は、符号化文書６２１において、マッチした符号に対応する文よりもＸ文前の文に含まれる符号のうち、マッチした符号に対応する形態素と同じ意味記号に対応する形態素の符号を特定する（ステップ２４０４）。そして、検索部６１２は、符号化文書６２１から、特定した符号に対応する意味構造情報を取得して、意味構造情報Ｚに設定する。
【０１０８】
また、検索部６１２は、Ｘ文前の文から、論理“１”の参照フラグが付加された複数の符号を抽出し、それらの符号に対応する複数の形態素それぞれを意味記号に置き換えることで、Ｘ文前の文の意味記号リストを生成する。
【０１０９】
次に、検索部６１２は、意味構造情報Ｚと意味構造情報Ａとをマージすることで、意味構造情報Ａを更新し、Ｘ文前の文の意味記号リストと検索対象の意味記号リストとをマージすることで、検索対象の意味記号リストを更新する（ステップ２４０５）。そして、検索部６１２は、ステップ２４０６以降の処理を行う。
【０１１０】
図２５は、第１文の［１，３］「サーバー」に対する意味構造情報マッチング処理の例を示している。まず、図１５に示した第１文の意味構造情報のうち、［１，３］「サーバー」に対応するＳＥ００１のビット列が意味構造情報Ａに設定される。そして、第１文の意味構造情報に含まれる５個の意味記号が、検索対象の意味記号リスト（Ａの意味記号リスト）に設定される。この場合、［１，３］「サーバー」の照応フラグｆは論理“０”であるため、意味構造情報Ａ及びＡの意味記号リストは更新されない。
【０１１１】
また、図２３に示した検索要求意味構造情報１８１３のうち、「サーバー」に対応するＳＥ００１のビット列が意味構造情報Ｂに設定される。そして、検索要求意味構造情報１８１３に含まれる２個の意味記号が、検索要求１８１１の意味記号リスト（Ｂの意味記号リスト）に設定される。
【０１１２】
この場合、Ａの意味記号リストの２列目のＳＥ００１がＢの意味記号リストの１列目のＳＥ００１と一致しており、Ａの意味記号リストの５列目のＢＯ００１がＢの意味記号リストの２列目のＢＯ００１と一致している。
【０１１３】
そこで、意味構造情報Ａから２列目及び５列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ａ’を表すビット列“０００  ０１１”が生成される。また、意味構造情報Ｂから１列目及び２列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ｂ’を表すビット列“０００  ００１”が生成される。
【０１１４】
そして、意味構造情報Ａ’の各列の接続距離から意味構造情報Ｂ’の各列の接続距離を減算することで、接続距離の差分を表すビット列“０００  ０１０”が生成される。このビット列の２列目の“０１０”は、接続距離“２”を表す。したがって、検索要求１８１１に含まれるＳＥ００１及びＢＯ００１が間接的に接続された意味構造が、第１文に存在することが分かる。
【０１１５】
図２６は、第１文の［１，８］「起動し」に対する意味構造情報マッチング処理の例を示している。まず、図１５に示した第１文の意味構造情報のうち、［１，８］「起動し」に対応するＢＯ００１のビット列が意味構造情報Ａに設定される。そして、第１文の意味構造情報に含まれる５個の意味記号が、Ａの意味記号リストに設定される。この場合、［１，８］「起動し」の照応フラグｆは論理“０”であるため、意味構造情報Ａ及びＡの意味記号リストは更新されない。
【０１１６】
また、図２３に示した検索要求意味構造情報１８１３のうち、「起動し」に対応するＢＯ００１のビット列が意味構造情報Ｂに設定される。そして、検索要求意味構造情報１８１３に含まれる２個の意味記号が、Ｂの意味記号リストに設定される。
【０１１７】
この場合、Ａの意味記号リストの２列目のＳＥ００１がＢの意味記号リストの１列目のＳＥ００１と一致しており、Ａの意味記号リストの５列目のＢＯ００１がＢの意味記号リストの２列目のＢＯ００１と一致している。
【０１１８】
そこで、意味構造情報Ａから２列目及び５列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ａ’を表すビット列“０１１  ０００”が生成される。また、意味構造情報Ｂから１列目及び２列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ｂ’を表すビット列“００１  １１１”が生成される。このビット列の２列目の“１１１”は、＜否定＞の接続距離である−１を表している。
【０１１９】
そして、意味構造情報Ａ’の各列の接続距離から意味構造情報Ｂ’の各列の接続距離を減算することで、接続距離の差分を表すビット列“０１０  ００１”が生成される。このビット列の１列目の“０１０”は、接続距離“２”を表し、２列目の“００１”は、意味構造情報Ａ’の２列目の接続距離が−１ではなく、＜否定＞に対応していないことを表す。したがって、検索要求１８１１に含まれるＳＥ００１及びＢＯ００１が間接的に接続された意味構造が、第１文に存在するが、＜否定＞が一致しないことが分かる。
【０１２０】
図２７は、第２文（文２）の［２，２］「起動し」に対する意味構造情報マッチング処理の例を示している。まず、図１６に示した文２の意味構造情報のうち、［２，２］「起動し」に対応するＢＯ００１のビット列２７０１が意味構造情報Ａに設定される。そして、文２の意味構造情報に含まれる２個の意味記号が、Ａの意味記号リストに設定される。
【０１２１】
この場合、［２，２］「起動し」の照応フラグｆは論理“１”であり、位置情報Ｘは１であるため、文２よりも１文前の文１に含まれる形態素のうち、ＢＯ００１に対応する［１，８］「起動し」が特定される。そして、図１５に示した文１の意味構造情報のうち、［１，８］「起動し」に対応するＢＯ００１のビット列２７０２が意味構造情報Ｚに設定され、文１の意味構造情報に含まれる５個の意味記号が、文１の意味記号リストに設定される。
【０１２２】
次に、意味構造情報Ｚと意味構造情報Ａとをマージすることで、意味構造情報Ａが更新される。このとき、ビット列２７０２の５列目の斜体で示される“０００”に対応する意味記号はＢＯ００１であり、ビット列２７０１の２列目の“０１０”に対応する意味記号と重複している。そこで、ビット列２７０２の５列目の“０００”が削除されて、ビット列２７０３が生成され、ビット列２７０３とビット列２７０１とをマージすることで、ビット列２７０４が生成される。これにより、意味構造情報Ａがビット列２７０４に更新される。
【０１２３】
また、文１の意味記号リストとＡの意味記号リストとをマージすることで、Ａの意味記号リストが更新される。このとき、２つの意味記号リストに重複して含まれるＢＯ００１が文１の意味記号リストから削除され、ＢＯ００１を除く文１の意味記号がＡの意味記号リストにマージされる。したがって、更新後のＡの意味記号リストは、“ＰＡ００１，ＳＥ００１，ＡＰ００１，ＡＧ００１，ＴＨ００１，ＢＯ００１”となる。
【０１２４】
また、図２３に示した検索要求意味構造情報１８１３のうち、「起動し」に対応するＢＯ００１のビット列が意味構造情報Ｂに設定される。そして、検索要求意味構造情報１８１３に含まれる２個の意味記号が、Ｂの意味記号リストに設定される。
【０１２５】
この場合、Ａの意味記号リストの２列目のＳＥ００１がＢの意味記号リストの１列目のＳＥ００１と一致しており、Ａの意味記号リストの６列目のＢＯ００１がＢの意味記号リストの２列目のＢＯ００１と一致している。
【０１２６】
そこで、意味構造情報Ａから２列目及び６列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ａ’を表すビット列“０１１  １１１”が生成される。このビット列の２列目の“１１１”は、＜否定＞の接続距離である−１を表している。また、意味構造情報Ｂから１列目及び２列目の接続距離が抽出され、それらの接続距離を用いて意味構造情報Ｂ’を表すビット列“００１  １１１”が生成される。このビット列の２列目の“１１１”も、＜否定＞の接続距離である−１を表している。
【０１２７】
そして、意味構造情報Ａ’の各列の接続距離から意味構造情報Ｂ’の各列の接続距離を減算することで、接続距離の差分を表すビット列“０１０  ０００”が生成される。このビット列の１列目の“０１０”は、接続距離“２”を表し、２列目の“０００”は、意味構造情報Ａ’及び意味構造情報Ｂ’の２列目がともに＜否定＞に対応していることを表す。したがって、検索要求１８１１に含まれるＳＥ００１及びＢＯ００１が間接的に接続された意味構造が、文２に存在し、＜否定＞が一致することが分かる。
【０１２８】
意味構造情報マッチングを行った後、検索部６１２は、形態素マッチングでマッチした符号のスコアＳＣ２を０に設定し、そのスコアＳＣ２の係数Ｖを１に設定する（ステップ２００８）。そして、検索部６１２は、接続距離の差分を計算した列毎に、ステップ２００９〜ステップ２０１４の処理を繰り返す。
【０１２９】
まず、検索部６１２は、処理対象の列が＜否定＞の接続距離を用いた減算の結果を表す列（＜否定＞の列）であるか否かをチェックする（ステップ２００９）。処理対象の列が＜否定＞の列である場合（ステップ２００９，ＹＥＳ）、検索部６１２は、その列の減算の結果から、＜否定＞が一致するか否かをチェックする（ステップ２０１０）。＜否定＞が一致する場合（ステップ２０１０，ＹＥＳ）、検索部６１２は、係数Ｖを変更せず、＜否定＞が一致しない場合（ステップ２０１０，ＮＯ）、検索部６１２は、係数Ｖを−１に変更する（ステップ２０１１）。
【０１３０】
次に、検索部６１２は、処理対象の列の差分を１と比較する（ステップ２０１２）。差分が１以上である場合（ステップ２０１２，ＹＥＳ）、検索部６１２は、形態素マッチングでマッチした符号に対応する形態素と、処理対象の列に対応する形態素との組み合わせのスコアを、スコア情報１８１４から取得する（ステップ２０１３）。そして、検索部６１２は、取得したスコアをＳＣ３に設定する。
【０１３１】
次に、検索部６１２は、ＳＣ２にＳＣ３を加算し、加算結果をＳＣ２に設定して（ステップ２０１４）、次の列を処理対象として、ステップ２００９以降の処理を繰り返す。処理対象の列が＜否定＞の列ではない場合（ステップ２００９，ＮＯ）、検索部６１２は、ステップ２０１２以降の処理を行う。差分が０以下である場合（ステップ２０１２，ＮＯ）、検索部６１２は、次の列を処理対象として、ステップ２００９以降の処理を繰り返す。
【０１３２】
すべての列についてステップ２００９〜ステップ２０１４の処理を行った後、検索部６１２は、ＳＣ２と係数Ｖの積をＳＣ１に加算し、加算結果をＳＣ１に設定する（ステップ２０１５）。そして、検索部６１２は、次の形態素についてステップ２００５以降の処理を繰り返す。すべての形態素についてステップ２００５〜ステップ２０１５の処理を行った後、検索部６１２は、スコアＳＣ１を検索結果１８１５として記憶部６１１に格納し、処理を終了する。
【０１３３】
列毎にステップ２００９〜ステップ２０１４の処理を繰り返すことで、検索要求１８１１において、マッチした符号に対応する形態素と接続された複数の形態素について、組み合わせのスコアＳＣ３がマッチした符号のスコアＳＣ２に加算される。また、形態素毎にステップ２００５〜ステップ２０１５の処理を繰り返すことで、マッチした複数の符号について、スコアＳＣ２が符号化文書６２１のスコアＳＣ１に加算される。このとき、＜否定＞が一致しない意味構造については、スコアＳＣ１からスコアＳＣ２が減算される。
【０１３４】
こうして計算されたスコアＳＣ１は、検索要求１８１１の意味構造と符号化文書６２１の意味構造との間の類似度を表す。したがって、スコアＳＣ１が大きいほど、符号化文書６２１に含まれる意味構造は検索要求１８１１の意味構造と類似している。
【０１３５】
スコア情報１８１４に含まれる、２つの形態素の組み合わせのスコアＳは、例えば、次式により計算することができる。
Ｓ＝ｉｄｆ１＊Ｎ１＋ｉｄｆ２＊Ｎ２      （１）
【０１３６】
ｉｄｆ１は、組み合わせに含まれる１番目の形態素の逆文書頻度（inverse document frequency）を表し、ｉｄｆ２は、２番目の形態素の逆文書頻度を表す。Ｎ１は、１番目の形態素の検索要求１８１１内における出現回数を表し、Ｎ２は、２番目の形態素の検索要求１８１１内における出現回数を表す。
【０１３７】
２つの形態素の組み合わせのスコアＳは、式（１）の代わりに、次式により計算することもできる。
Ｓ＝ｉｄｆ１１＊Ｎ１１＋ｉｄｆ１２＊Ｎ１２      （２）
【０１３８】
ｉｄｆ１１は、組み合わせに含まれる１番目の形態素に対応する意味記号の逆文書頻度を表し、ｉｄｆ１２は、２番目の形態素に対応する意味記号の逆文書頻度を表す。Ｎ１１は、１番目の形態素に対応する意味記号の検索要求１８１１内における出現回数を表し、Ｎ１２は、２番目の形態素に対応する意味記号の検索要求１８１１内における出現回数を表す。
【０１３９】
例えば、図２５の接続距離の差分を表すビット列“０００  ０１０”の場合、２列目の“０１０”が接続距離“２”を表すため、ＳＥ００１とＢＯ００１の組み合わせのスコアＳ（ＳＥ００１，ＢＯ００１）がＳＣ２に設定される。そして、Ｓ（ＳＥ００１，ＢＯ００１）がＳＣ１に加算される。
【０１４０】
一方、図２６の接続距離の差分を表すビット列“０１０  ００１”の場合、１列目の“０１０”が接続距離“２”を表すため、スコアＳ（ＳＥ００１，ＢＯ００１）がＳＣ２に設定される。しかし、２列目の＜否定＞が一致しないため、Ｓ（ＳＥ００１，ＢＯ００１）に−１が乗算されて、ＳＣ１に加算される。
【０１４１】
また、図２７の接続距離の差分を表すビット列“０１０  ０００”の場合、１列目の“０１０”が接続距離“２”を表すため、スコアＳ（ＳＥ００１，ＢＯ００１）がＳＣ２に設定される。そして、２列目の＜否定＞が一致するため、Ｓ（ＳＥ００１，ＢＯ００１）がそのままＳＣ１に加算される。
【０１４２】
なお、図２０のステップ２０１４において、検索部６１２は、接続距離の差分Ｄを用いて、次式によりＳＣ２を更新してもよい。
ＳＣ２＝ＳＣ２＋ＳＣ３×（１／Ｄ）      （３）
【０１４３】
これにより、直接接続を示すＤ＝１の場合、ＳＣ３がそのままＳＣ２に加算され、間接接続を示すＤ＞１の場合、ＳＣ３と１／Ｄの積がＳＣ２に加算される。したがって、接続距離が短いほどＳＣ２が大きくなり、符号化文書６２１のスコアＳＣ１も大きくなる。
【０１４４】
複数の文書４２１に対応する複数の符号化文書６２１が検索対象として与えられた場合、検索部６１２は、それぞれの符号化文書６２１に対して、図２０の検索処理を行う。これにより、それぞれの符号化文書６２１に対するスコアＳＣ１が計算される。
【０１４５】
図２０の検索処理によれば、検索対象の文書４２１に含まれる文が不完全であっても、検索要求１８１１と類似する文を検索することが可能になる。このとき、符号化文書６２１に付加情報と意味構造情報とを含めることで、形態素マッチングと意味構造情報マッチングとが統合される。このため、すべての検索要求１８１１のバリエーションを事前に想定して意味構造に展開しておかなくても、照応解析の負荷を大幅に削減して、スコア演算を高速化することができる。
【０１４６】
文書４２１にＮ個の形態素が含まれている場合、図１０の符号化処理及び図２０の検索処理において、欠落している形態素の情報を補完する処理の計算量は、いずれもＮのオーダーで済む。符号化処理では、形態素を用いて照応解析が行われるので、計算量はＮに比例する。また、検索処理では、マッチした符号に付加された照応情報が位置情報Ｘを含む場合に限って、意味構造情報が参照されるので、計算量はＮに比例する。したがって、Ｎ×Ｎのオーダーの計算量を有する図３の意味構造検索処理と比較して、より高速な意味構造検索が実現される。
【０１４７】
ところで、符号化文書６２１において、＜否定＞を表すアークの情報を意味構造情報に含める代わりに、否定フラグとして付加情報に含めることも可能である。
【０１４８】
図２８は、否定フラグを含む付加情報の例を示している。図２８の否定フラグは、図１１に示した文書４２１の符号化文書６２１において、各符号に対応する形態素の意味構造が＜否定＞を表すアークを有するか否かを示す。この例では、図２に示したように、［２，２］「起動し」の意味記号であるＢＯ００１が＜否定＞を表すアークを有するため、［２，２］「起動し」の否定フラグに論理“１”が設定されている。
【０１４９】
この場合、図１６に示した第２文の意味構造情報において、＜否定＞を表す接続距離は設定されない。したがって、ＢＯ００１（起動し）のビット列の２列目の“１１１”は、“０００”に変更される。そして、図２０の検索処理において、検索部６１２は、ステップ２００９〜ステップ２０１１の処理を行う代わりに、否定フラグを参照して係数Ｖの値を決定する。
【０１５０】
図２９は、文の末尾から順に符号を並べた符号化文書６２１の例を示している。図２９の符号化文書６２１では、文書４２１内のＰ個の文について、先頭の文２９０１−１から末尾の文２９０１−Ｐへ向かって、符号が文毎にまとめて配置される。そして、各文に含まれるＱ個の形態素について、文の末尾の形態素２９０２−１から文の先頭の形態素２９０２−Ｑへ向かって、符号２９０３及び付加情報２９０４が順に並べられている。この場合、それぞれの符号２９０３に対応する意味構造情報も、符号２９０３と同じ順序で配置される。
【０１５１】
図２９の符号の配置は、多数の形態素と接続される形態素が文の末尾近くに出現する言語に対して特に有効である。例えば、日本語、韓国語等の場合、複数の名詞等と接続される動詞が文の末尾近くに出現することが多い。図１１に示した文書４２１では、［１，８］「起動し」がこのような動詞に該当する。
【０１５２】
この場合、文の末尾から順に符号を並べることで、検索処理の早い段階で、多数の形態素と接続される形態素の意味構造情報を参照して、意味構造検索を実施することが可能になる。これにより、早い段階で、最終的なスコアに近い符号化文書６２１のスコアＳＣ１を求めることができる。
【０１５３】
図３０は、一連の符号の後に付加情報を並べた符号化文書６２１の例を示している。図３０（ａ）の符号化文書６２１では、図９の符号９０１−１〜符号９０１−Ｎに続いて、付加情報９０２−１〜付加情報９０２−Ｎが符号９０１−ｉと同じ順序で配置される。そして、付加情報９０２−１〜付加情報９０２−Ｎに続いて、意味構造情報９０３−１〜意味構造情報９０３−Ｍが符号９０１−ｉと同じ順序で配置される。
【０１５４】
一方、図３０（ｂ）の符号化文書６２１では、図９の符号９０１−１〜符号９０１−Ｎに続いて、付加情報９０２−Ｎ〜付加情報９０２−１が符号９０１−ｉとは逆の順序で配置される。そして、付加情報９０２−Ｎ〜付加情報９０２−１に続いて、意味構造情報９０３−Ｍ〜意味構造情報９０３−１が符号９０１−ｉとは逆の順序で配置される。
【０１５５】
図２９又は図３０の符号化文書６２１を用いた場合も、付加情報及び意味構造情報を参照しながら、意味構造検索を高速に行うことができる。
【０１５６】
図４及び図８の符号化装置４０１の構成は一例に過ぎず、符号化装置４０１の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、解析結果８１２が外部の装置で生成される場合は、図８の解析部８０１を省略することができる。
【０１５７】
図６及び図１８の検索装置６０１の構成は一例に過ぎず、検索装置６０１の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、解析結果１８１２が外部の装置で生成される場合は、図１８の解析部１８０１を省略することができる。検索装置６０１に、図８の符号化部４１２及び解析部８０１を追加して、検索装置６０１内で符号化処理を行ってもよい。
【０１５８】
図３、図５、図７、図１０、図２０、及び図２４のフローチャートは一例に過ぎず、符号化装置４０１又は検索装置６０１の構成又は条件に応じて一部の処理を省略又は変更してもよい。例えば、図１０の符号化処理において、解析結果８１２が外部の装置で生成される場合は、ステップ１００１及びステップ１００２の処理を省略することができる。
【０１５９】
図２０の検索処理において、符号化文書６２１のスコアを計算しない場合は、ステップ２００８〜ステップ２０１５の処理を省略することができる。この場合、ステップ２００７の意味構造情報マッチング処理の結果が、検索結果１８１５として記憶部６１１に格納される。
【０１６０】
図１、図２、図２１の意味構造、図９、図１７、図２９、及び図３０の符号化文書、図１１及び図２８の解析結果及び付加情報、図１２、図１３、及び図２２の接続表、図１４のアーク及び符号、図１５、図１６、及び図２３の意味構造情報は一例に過ぎない。符号化装置４０１又は検索装置６０１の構成又は条件に応じて、別のデータ構造の情報を用いてもよい。また、各情報の内容は、文書４２１及び検索要求１８１１の内容に応じて変化する。文書４２１及び検索要求１８１１の言語は、英語、中国語、韓国語等のように、日本語以外の言語であってもよい。
【０１６１】
図１９の検索処理及び図２５〜図２７の意味構造情報マッチング処理は一例に過ぎず、各処理の内容は、文書４２１及び検索要求１８１１の内容に応じて変化する。式（１）〜式（３）は一例に過ぎず、別の計算式によりスコアＳ又はスコアＳＣ２を計算してもよい。
【０１６２】
図３１は、図４及び図８の符号化装置４０１、又は図６及び図１８の検索装置６０１として用いられる情報処理装置（コンピュータ）の構成例を示している。図３１の情報処理装置は、ＣＰＵ３１０１、メモリ３１０２、入力装置３１０３、出力装置３１０４、補助記憶装置３１０５、媒体駆動装置３１０６、及びネットワーク接続装置３１０７を備える。これらの構成要素はバス３１０８により互いに接続されている。
【０１６３】
メモリ３１０２は、例えば、Read Only Memory（ＲＯＭ）、Random Access Memory（ＲＡＭ）、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。メモリ３１０２は、図４及び図８の記憶部４１１、又は図６及び図１８の記憶部６１１として用いることができる。
【０１６４】
ＣＰＵ３１０１（プロセッサ）は、例えば、メモリ３１０２を利用してプログラムを実行することにより、図４及び図８の符号化部４１２及び解析部８０１として動作する。ＣＰＵ３１０１は、メモリ３１０２を利用してプログラムを実行することにより、図６及び図１８の検索部６１２及び解析部１８０１としても動作する。
【０１６５】
入力装置３１０３は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示及び情報の入力に用いられる。入力される情報は、検索要求１８１１であってもよい。
【０１６６】
出力装置３１０４は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。出力装置３１０４は、図６及び図１８の出力部６１３として用いることができる。処理結果は、検索結果１８１５であってもよい。
【０１６７】
補助記憶装置３１０５は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置３１０５は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置３１０５にプログラム及びデータを格納しておき、それらをメモリ３１０２にロードして使用することができる。補助記憶装置３１０５は、図４及び図８の記憶部４１１、又は図６及び図１８の記憶部６１１として用いることができる。
【０１６８】
媒体駆動装置３１０６は、可搬型記録媒体３１０９を駆動し、その記録内容にアクセスする。可搬型記録媒体３１０９は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体３１０９は、Compact Disk Read Only Memory（ＣＤ−ＲＯＭ）、Digital Versatile Disk（ＤＶＤ）、Universal Serial Bus（ＵＳＢ）メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体３１０９にプログラム及びデータを格納しておき、それらをメモリ３１０２にロードして使用することができる。
【０１６９】
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ３１０２、補助記憶装置３１０５、又は可搬型記録媒体３１０９のような、物理的な（非一時的な）記録媒体である。
【０１７０】
ネットワーク接続装置３１０７は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置３１０７を介して受け取り、それらをメモリ３１０２にロードして使用することができる。
【０１７１】
情報処理装置が図８の符号化装置４０１である場合、ネットワーク接続装置３１０７は、符号化文書６２１を検索装置６０１へ送信することができる。この場合、ネットワーク接続装置３１０７は、出力部８０２として用いられる。
【０１７２】
情報処理装置が図６及び図１８の検索装置６０１である場合、ネットワーク接続装置３１０７は、ユーザ端末から検索要求１８１１を受信し、検索結果１８１５をユーザ端末へ送信することができる。この場合、ネットワーク接続装置３１０７は、出力部６１３として用いられる。
【０１７３】
なお、情報処理装置が図３１のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がユーザ端末から通信ネットワーク経由で検索要求１８１１を受信する場合は、入力装置３１０３及び出力装置３１０４を省略してもよい。また、可搬型記録媒体３１０９又は通信ネットワークを利用しない場合は、媒体駆動装置３１０６又はネットワーク接続装置３１０７を省略してもよい。
【０１７４】
情報処理装置がスマートフォンのような通話機能を有する携帯端末である場合、マイク及びスピーカのような通話用の装置を含んでいてもよく、カメラのような撮像装置を含んでいてもよい。
【０１７５】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【０１７６】
図１乃至図３１を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
（付記１）
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
処理をコンピュータに実行させる符号化プログラム。
（付記２）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記１記載の符号化プログラム。
（付記３）
前記コンピュータは、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記２記載の符号化プログラム。
（付記４）
前記意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含むことを特徴とする付記２又は３記載の符号化プログラム。
（付記５）
検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し、
検索対象文書に含まれる複数の文それぞれについて文に含まれる複数の形態素が属する意味構造を表す検索対象意味構造情報と、前記複数の文それぞれについて前記複数の形態素それぞれを符号化することで生成された複数の符号と、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加された欠落情報とを含む、符号化文書から、前記検索要求意味構造情報に基づいて前記検索要求に対応する文を検索し、
検索結果を出力する、
処理をコンピュータに実行させる検索プログラム。
（付記６）
前記検索要求に含まれる前記複数の形態素が属する前記意味構造は、前記検索要求に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記検索要求に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記文に含まれる前記複数の形態素が属する前記意味構造は、前記文に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記文に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記欠落情報は、前記検索対象文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含み、
前記コンピュータは、前記符号化文書から、前記検索要求に含まれる前記複数の形態素のうち１つの形態素を検索し、検索した形態素が、前記欠落情報が付加された前記符号に対応する場合、前記欠落情報を参照して、前記同じ意味記号に対応する形態素が出現する前記文を特定し、前記検索対象意味構造情報において、特定した前記文に出現する前記同じ意味記号に対応する形態素が属する第１意味構造と、前記検索対象意味構造情報において、前記欠落情報が付加された前記符号に対応する形態素が属する第２意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする付記５記載の検索プログラム。
（付記７）
前記複数の符号各々に対して、前記欠落情報、又は前記検索対象文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報が付加されており、
前記コンピュータは、前記検索した形態素が、前記非出現情報が付加された符号に対応する場合、前記検索対象意味構造情報において、前記非出現情報が付加された前記符号に対応する形態素が属する第３意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする付記６記載の検索プログラム。
（付記８）
前記検索要求意味構造情報及び前記検索対象意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含み、
前記コンピュータは、前記検索要求意味構造情報に含まれる接続距離情報及び接続関係情報と、前記検索対象意味構造情報に含まれる接続距離情報及び接続関係情報とを比較することで、前記検索要求に対応する前記文を検索することを特徴とする付記６又は７記載の検索プログラム。
（付記９）
文書を記憶する記憶部と、
前記文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する符号化部と、
備えることを特徴とする符号化装置。
（付記１０）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記９記載の符号化装置。
（付記１１）
前記符号化部は、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記１０記載の符号化装置。
（付記１２）
コンピュータが、
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
ことを特徴とする符号化方法。
（付記１３）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記１２記載の符号化方法。
（付記１４）
前記コンピュータは、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記１３記載の符号化方法。
【符号の説明】
【０１７７】
４０１  符号化装置
４１１、６１１  記憶部
４１２  符号化部
４２１  文書
６０１  検索装置
６１２  検索部
６１３、８０２  出力部
６２１  符号化文書
８０１、１８０１  解析部
８０２  出力部
８１１  符号化情報
８１２、１８１２  解析結果
９０１−１〜９０１−３、１７０１−１〜１７０１−６、２９０３  符号
９０２−１〜９０２−３、１７０２−１〜１７０２−６、２９０４  付加情報
９０３−１〜９０３−３、１７０３−１〜１７０３−４  意味構造情報
１８１１  検索要求
１８１３  検索要求意味構造情報
１８１４  スコア情報
１８１５  検索結果
２７０１〜２７０４  ビット列
２７０２  ビット列
２７０３  ビット列
２７０４  ビット列
２９０１−１〜２９０１−Ｐ  文
２９０２−１〜２９０２−Ｑ  形態素
３１０１  ＣＰＵ
３１０２  メモリ
３１０３  入力装置
３１０４  出力装置
３１０５  補助記憶装置
３１０６  媒体駆動装置
３１０７  ネットワーク接続装置
３１０８  バス
３１０９  可搬型記録媒体
【図１】
2018013863.tif 000003
【図２】
2018013863.tif 000004
【図３】
2018013863.tif 000005
【図４】
2018013863.tif 000006
【図５】
2018013863.tif 000007
【図６】
2018013863.tif 000008
【図７】
2018013863.tif 000009
【図８】
2018013863.tif 000010
【図９】
2018013863.tif 000011
【図１０】
2018013863.tif 000012
【図１１】
2018013863.tif 000013
【図１２】
2018013863.tif 000014
【図１３】
2018013863.tif 000015
【図１４】
2018013863.tif 000016
【図１５】
2018013863.tif 000017
【図１６】
2018013863.tif 000018
【図１７】
2018013863.tif 000019
【図１８】
2018013863.tif 000020
【図１９】
2018013863.tif 000021
【図２０】
2018013863.tif 000022
【図２１】
2018013863.tif 000023
【図２２】
2018013863.tif 000024
【図２３】
2018013863.tif 000025
【図２４】
2018013863.tif 000026
【図２５】
2018013863.tif 000027
【図２６】
2018013863.tif 000028
【図２７】
2018013863.tif 000029
【図２８】
2018013863.tif 000030
【図２９】
2018013863.tif 000031
【図３０】
2018013863.tif 000032
【図３１】
2018013863.tif 000033
【手続補正書】
【提出日】平成29年8月30日(2017.8.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
例えば、図４の文書４２１が検索対象文書である場合、符号化装置４０１によって文書４２１を符号化することで、符号化文書６２１が生成される。検索部６１２は、検索要求に基づいて、記憶部６１１が記憶する符号化文書６２１を検索し、出力部６１３は、検索結果を出力する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１７２
【補正方法】変更
【補正の内容】
【０１７２】
情報処理装置が図１８の検索装置６０１である場合、ネットワーク接続装置３１０７は、ユーザ端末から検索要求１８１１を受信し、検索結果１８１５をユーザ端末へ送信することができる。この場合、ネットワーク接続装置３１０７は、出力部６１３として用いられる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１７６
【補正方法】変更
【補正の内容】
【０１７６】
図１乃至図３１を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
（付記１）
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
処理をコンピュータに実行させる符号化プログラム。
（付記２）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記１記載の符号化プログラム。
（付記３）
前記コンピュータは、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記２記載の符号化プログラム。
（付記４）
前記意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含むことを特徴とする付記２又は３記載の符号化プログラム。
（付記５）
検索要求に含まれる複数の形態素が属する意味構造を表す検索要求意味構造情報を生成し、
検索対象文書に含まれる複数の文それぞれについて文に含まれる複数の形態素が属する意味構造を表す検索対象意味構造情報と、前記複数の文それぞれについて前記複数の形態素それぞれを符号化することで生成された複数の符号と、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号それぞれに対して付加された欠落情報とを含む、符号化文書から、前記検索要求意味構造情報に基づいて前記検索要求に対応する文を検索し、
検索結果を出力する、
処理をコンピュータに実行させる検索プログラム。
（付記６）
前記検索要求に含まれる前記複数の形態素が属する前記意味構造は、前記検索要求に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記検索要求に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記文に含まれる前記複数の形態素が属する前記意味構造は、前記文に含まれる前記複数の形態素それぞれに対応する複数の意味記号と、前記文に含まれる前記複数の意味記号の間の接続関係とを用いて表され、
前記欠落情報は、前記検索対象文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含み、
前記コンピュータは、前記符号化文書から、前記検索要求に含まれる前記複数の形態素のうち１つの形態素を検索し、検索した形態素が、前記欠落情報が付加された前記符号に対応する場合、前記欠落情報を参照して、前記同じ意味記号に対応する形態素が出現する前記文を特定し、前記検索対象意味構造情報において、特定した前記文に出現する前記同じ意味記号に対応する形態素が属する第１意味構造と、前記検索対象意味構造情報において、前記欠落情報が付加された前記符号に対応する形態素が属する第２意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする付記５記載の検索プログラム。
（付記７）
前記複数の符号各々に対して、前記欠落情報、又は前記検索対象文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報が付加されており、
前記コンピュータは、前記検索した形態素が、前記非出現情報が付加された符号に対応する場合、前記検索対象意味構造情報において、前記非出現情報が付加された前記符号に対応する形態素が属する第３意味構造と、前記検索要求意味構造情報とを用いて、前記検索要求に対応する前記文を検索することを特徴とする付記６記載の検索プログラム。
（付記８）
前記検索要求意味構造情報及び前記検索対象意味構造情報は、前記複数の意味記号各々について、前記複数の意味記号のうち他の意味記号に対する接続距離を表す接続距離情報と、前記他の意味記号に対する接続関係を表す接続関係情報とを含み、
前記コンピュータは、前記検索要求意味構造情報に含まれる接続距離情報及び接続関係情報と、前記検索対象意味構造情報に含まれる接続距離情報及び接続関係情報とを比較することで、前記検索要求に対応する前記文を検索することを特徴とする付記６又は７記載の検索プログラム。
（付記９）
文書を記憶する記憶部と、
前記文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する符号化部と、
を備えることを特徴とする符号化装置。
（付記１０）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記９記載の符号化装置。
（付記１１）
前記符号化部は、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記１０記載の符号化装置。
（付記１２）
コンピュータが、
文書に含まれる複数の文それぞれについて、文に含まれる複数の形態素が属する意味構造を表す意味構造情報を生成し、
前記複数の文それぞれについて、前記複数の形態素それぞれを符号化した複数の符号を生成し、
前記複数の文それぞれについて、各文に含まれる複数の形態素のうち、意味構造において対応する形態素の少なくとも一部が欠落している可能性のある形態素に対応する符号を特定し、
前記特定された符号それぞれに対し、欠落情報をそれぞれ付加する、
ことを特徴とする符号化方法。
（付記１３）
前記複数の形態素が属する前記意味構造は、前記複数の形態素それぞれに対応する複数の意味記号と、前記複数の意味記号の間の接続関係とを用いて表され、前記欠落情報は、前記文書内において、前記欠落情報が付加された符号に対応する形態素と同じ意味記号に対応する形態素が、前記欠落情報が付加された前記符号に対応する形態素よりも前に出現することを示し、前記複数の文のうち前記同じ意味記号に対応する形態素が出現する文を特定する情報を含むことを特徴とする付記１２記載の符号化方法。
（付記１４）
前記コンピュータは、前記複数の符号各々に対して、前記欠落情報、又は前記文書内において同じ意味記号に対応する形態素が前に出現しないことを示す非出現情報を付加することを特徴とする付記１３記載の符号化方法。