(57)【要約】【課題】入力されたテキスト内の要素同士の関係を、文法に依存せずに求めることができるようにする。【解決手段】オントロジーＤＢ１６には、クラス（概念）間の上位・下位関係と、上位・下位関係以外の自由に定義されるプロパティ関係の情報が保持される。入力されたテキストは形態素解析部１０により単語等の要素に分解され、それら要素間の係り受けが係り受け解析部１２で解析される。インスタンス生成部１８は、各要素に対応するインスタンスを生成し、そのインスタンスをオントロジーＤＢ１６に保持されたクラスに対応付ける。トリプル生成部２０は、それらインスタンス同士を、対応するクラス同士についてオントロジーＤＢ１６で規定されたプロパティ関係で結んだ関係（トリプル）を生成する。生成されたトリプルを、トリプル評価部２２により評価してもよい。【選択図】図１
2018005690.tif 000002
【特許請求の範囲】
【請求項１】
入力テキスト内の各要素に対応するオントロジー内の概念を特定する特定手段と、
前記入力テキスト内の要素同士の関係として、それら要素に対応する前記概念同士の間に前記オントロジーで規定されている関係を出力する関係出力手段と、
を含む情報処理装置。
【請求項２】
前記特定手段は、前記要素に対応するものとして規定されている概念、及び、前記オントロジーでその概念に対する直接又は間接の上位と規定されている各概念、をそれぞれ前記要素に対応する概念として特定し、
前記関係出力手段は、前記入力テキスト内の第１の要素について前記特定手段が特定した概念群に含まれる第１の概念と、前記入力テキスト内の第２の要素について前記特定手段が特定した概念群に含まれる第２の概念と、の間に、前記オントロジーに規定された関係が存在する場合に、その関係を前記第１の要素と前記第２の要素との間の関係として出力する、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記関係出力手段が出力した前記要素同士の関係のうちの１以上から構成されるネットワークを、前記入力テキストに対応する意味ネットワークとして生成する生成手段、
を更に含む請求項１又は２に記載の情報処理装置。
【請求項４】
前記関係出力手段が出力した前記要素同士の関係についての評価値である関係評価値を算出する関係評価値算出手段、を更に含み、
前記生成手段は、前記関係評価値に基づいて選抜された前記要素同士の関係から前記意味ネットワークを生成する、ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記入力テキストに含まれる要素間の係り受けを解析する係り受け解析手段、を更に含み、
前記関係評価値算出手段は、前記要素同士の関係と、当該関係をなす前記要素同士について前記係り受け解析手段で求められた係り受けと、の組み合わせについての評価値に基づき前記関係評価値を算出する、ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記関係評価値算出手段は、前記要素同士の関係と、当該関係をなす前記各要素に対応する前記各概念と、の組み合わせについての評価値に基づき前記関係評価値を算出する、ことを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記生成手段が生成した各意味ネットワークについての評価値であるネットワーク評価値を、その意味ネットワークが含む前記要素同士の関係についての前記関係評価値に基づいて求め、求めたネットワーク評価値に基づいて選んだ意味ネットワークを前記入力テキストに対応する意味ネットワークとして出力する意味ネットワーク出力手段、を更に含むことを特徴とする請求項４〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記特定手段が特定した前記入力テキスト内の要素に対応する概念に対して前記オントロジー内に下位の概念が存在する場合、その要素をその下位の概念に対応付けた場合について、前記関係出力手段、前記生成手段、前記関係評価値算出手段、及び前記意味ネットワーク出力手段に処理を実行させる制御を行う実行制御手段、更に含むことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記生成手段が生成した各意味ネットワークについて求めた前記ネットワーク評価値がすべて予め定めた閾値以下であり、かつ前記特定手段が特定した前記入力テキスト内の要素に対応する概念に対して前記オントロジー内に下位の概念が存在する場合に、その要素をその下位の概念に対応付けることを提案する手段、を更に備える請求項７又は８に記載の情報処理装置。
【請求項１０】
コンピュータを、
入力テキスト内の各要素に対応するオントロジー内の概念を特定する特定手段、
前記入力テキスト内の要素同士の関係として、それら要素に対応する前記概念同士の間に前記オントロジーで規定されている関係を出力する関係出力手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
意味をコンピュータ処理できる形で表現する（一般に「知識表現」と呼ばれる）手段の一つに、意味ネットワークがある。
【０００３】
近年、意味ネットワークをインターネットで共有するためのメカニズムの研究分野としてSemantic Web（セマンティック・ウェブ）が提唱され注目されている。
【０００４】
意味ネットワークは、有向グラフ構造を持ち各ノードに個体（物理的あるいは仮想的な存在を指し示す）を割り当て（インスタンスと呼ぶ）、個体間の関係を関係の種類ごとに異なるラベルを持つエッジで結びつけることによって、物や事柄の存在を表現する。個体を示すノードはインスタンスと呼ばれ、２つの個体（ノード）とそれら両者間の関係（エッジ）からなる三者は「トリプル」と呼ばれる。
【０００５】
オントロジーは個体の特徴の種類（「クラス」と呼ばれる）や関係の種類（「プロパティ」と呼ばれる）などの概念を体系的に記述するものである。オントロジーは、意味ネットワークの背景にある前提知識を与えることで、知識表現の標準化と含意推論や意味制約検証などの機能を実現する。また、ユーザーにとって有用なドメイン固有の知識体系を記述することも可能である。
【０００６】
一方、テキスト情報からそこに書かれた意味を抽出し知識表現に変換する技術（意味解析）がある。意味解析は、多くの場合文法に基づいて解析を行うため事前に定義されたまたはそれに類似した構文でしか解析できない。また、意味解析結果は、テキストの意味内容をそのままグラフ表現したものであるため、オントロジーと関連づいたユーザーにとって有用な意味ネットワークを得るためには、事前に用意したルールなどを用いてグラフを拡張しなければならず、メンテナンスコストがかかる割には高い精度を見込めない。
【０００７】
特許文献１には、このような意味解析に関する方法が開示されている。この方法では、形態素解析、構文解析、構文意味解析（機能構造決定手段）などを介して述語トリプルを決定する。この方法では、構文解析や構文意味解析により単語間の文法的な関係を特定した上でそれら単語間の関係を表す述語トリプルを生成している。この方法では、述語トリプルを求めるに際し、単語間の概念の上位・下位の関係を求めるのにＷｏｒｄＮｅｔオントロジーを参照している。
【０００８】
特許文献２には、文書から、ユーザーが興味を持つ中心語に対する属性名と属性値を抽出する方法が開示されている。この方法では、個々の文書中に出現する単語を、語彙間の意味的関係を体系化した辞書であるオントロジー辞書上に記述された、抽出すべき情報の要素となる単語である抽出対象語に読み替えて、格納し、文書中に認識された抽出対象語をオントロジー辞書上に記述された語彙間の意味的関係を用いて、該文書中に出現しない関係を補足しつつ、該オントロジー辞書中で利用者の興味を端的に示す指標である中心語に対する単語関係列へと展開し、得られた該単語関係列を格納し、個々の単語関係列を、部分的な単語の関係や記事全体の語の用いられ方に基づいて、属性名と属性値からなる関係に変換し、得られた関係を格納する。この方法で用いられるオントロジーは中心語に関連する語彙間の関係を表すものであり、中心語を根とするツリー構造をなしている。また解析の対象となる文書は、中心語に関係することが予め分かっている文書である。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−０８７４０１号公報
【特許文献２】特開２０００−２０７４０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
入力されたテキストが含む単語等の要素同士の関係の情報を求めるのに構文解析を行う方式では、前提となる文法に規定される要素間の関係しか求めることができない。（オントロジーからは概念間の上位・下位関係以外の関係が得られない場合、入力テキスト内の要素同士の他の関係を得るには、そのオントロジー以外の文法（構文解析）等に頼る必要があった。）
【００１１】
本発明は、入力されたテキスト内の要素同士の関係を、文法に依存せずに求めることができるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
請求項１に係る発明は、入力テキスト内の各要素に対応するオントロジー内の概念を特定する特定手段と、前記入力テキスト内の要素同士の関係として、それら要素に対応する前記概念同士の間に前記オントロジーで規定されている関係を出力する関係出力手段と、を含む情報処理装置である。
【００１３】
請求項２に係る発明は、前記特定手段は、前記要素に対応するものとして規定されている概念、及び、前記オントロジーでその概念に対する直接又は間接の上位と規定されている各概念、をそれぞれ前記要素に対応する概念として特定し、前記関係出力手段は、前記入力テキスト内の第１の要素について前記特定手段が特定した概念群に含まれる第１の概念と、前記入力テキスト内の第２の要素について前記特定手段が特定した概念群に含まれる第２の概念と、の間に、前記オントロジーに規定された関係が存在する場合に、その関係を前記第１の要素と前記第２の要素との間の関係として出力する、ことを特徴とする請求項１に記載の情報処理装置である。
【００１４】
請求項３に係る発明は、前記関係出力手段が出力した前記要素同士の関係のうちの１以上から構成されるネットワークを、前記入力テキストに対応する意味ネットワークとして生成する生成手段、を更に含む請求項１又は２に記載の情報処理装置である。
【００１５】
請求項４に係る発明は、前記関係出力手段が出力した前記要素同士の関係についての評価値である関係評価値を算出する関係評価値算出手段、を更に含み、前記生成手段は、前記関係評価値に基づいて選抜された前記要素同士の関係から前記意味ネットワークを生成する、ことを特徴とする請求項３に記載の情報処理装置である。
【００１６】
請求項５に係る発明は、前記入力テキストに含まれる要素間の係り受けを解析する係り受け解析手段、を更に含み、前記関係評価値算出手段は、前記要素同士の関係と、当該関係をなす前記要素同士について前記係り受け解析手段で求められた係り受けと、の組み合わせについての評価値に基づき前記関係評価値を算出する、ことを特徴とする請求項４に記載の情報処理装置である。
【００１７】
請求項６に係る発明は、前記関係評価値算出手段は、前記要素同士の関係と、当該関係をなす前記各要素に対応する前記各概念と、の組み合わせについての評価値に基づき前記関係評価値を算出する、ことを特徴とする請求項４又は５に記載の情報処理装置。
【００１８】
請求項７に係る発明は、前記生成手段が生成した各意味ネットワークについての評価値であるネットワーク評価値を、その意味ネットワークが含む前記要素同士の関係についての前記関係評価値に基づいて求め、求めたネットワーク評価値に基づいて選んだ意味ネットワークを前記入力テキストに対応する意味ネットワークとして出力する意味ネットワーク出力手段、を更に含むことを特徴とする請求項４〜６のいずれか１項に記載の情報処理装置である。
【００１９】
請求項８に係る発明は、前記特定手段が特定した前記入力テキスト内の要素に対応する概念に対して前記オントロジー内に下位の概念が存在する場合、その要素をその下位の概念に対応付けた場合について、前記関係出力手段、前記生成手段、前記関係評価値算出手段、及び前記意味ネットワーク出力手段に処理を実行させる制御を行う実行制御手段、更に含むことを特徴とする請求項７に記載の情報処理装置である。
【００２０】
請求項９に係る発明は、前記生成手段が生成した各意味ネットワークについて求めた前記ネットワーク評価値がすべて予め定めた閾値以下であり、かつ前記特定手段が特定した前記入力テキスト内の要素に対応する概念に対して前記オントロジー内に下位の概念が存在する場合に、その要素をその下位の概念に対応付けることを提案する手段、を更に備える請求項７又は８に記載の情報処理装置である。
【００２１】
請求項１０に係る発明は、コンピュータを、入力テキスト内の各要素に対応するオントロジー内の概念を特定する特定手段、前記入力テキスト内の要素同士の関係として、それら要素に対応する前記概念同士の間に前記オントロジーで規定されている関係を出力する関係出力手段、として機能させるためのプログラムである。
【発明の効果】
【００２２】
請求項１又は１０に係る発明によれば、入力されたテキスト内の要素同士の関係を、文法に依存せずに求めることができる。
【００２３】
請求項２に係る発明によれば、特定手段により特定できない要素に対応する概念の上位の概念について関係も、要素同士の関係として求めることが可能になる。
【００２４】
請求項３に係る発明によれば、入力テキストに対応する意味ネットワークを求めることができる。
【００２５】
請求項４に係る発明によれば、入力テキストに含まれる可能性が低い意味に対応する要素同士の関係を含まない意味ネットワークを生成することができる。
【００２６】
請求項５に係る発明によれば、入力テキスト内の要素同士の係り受けから見て可能性が低い要素同士の関係を含まない意味ネットワークを生成することができる。
【００２７】
請求項６に係る発明によれば、概念同士の関係として可能性が低いものに基づく要素同士の関係を含まない意味ネットワークを生成することができる。
【００２８】
請求項７に係る発明によれば、意味ネットワーク全体としての評価がよいものを出力することができる。
【００２９】
請求項８に係る発明によれば、要素から特定される概念よりも要素に近い可能性がある下位の概念についてのオントロジー上の関係をその要素と他の要素との関係とすることでより評価のよい意味ネットワークが得られる場合には、そのようにすることができる。
【００３０】
請求項９に係る発明によれば、要素から特定される概念をそのまま用いたのでは適切な意味ネットワークが得られない場合に、下位の概念に対応付けることで改善できる可能性があることをユーザーに知らせることができる。
【図面の簡単な説明】
【００３１】
【図１】実施の形態の装置構成の例を示す図である。
【図２】オントロジーの例を示す図である。
【図３】入力テキスト（例文１及び２）の意味内容を示す意味ネットワークの例を示す図である。
【図４】入力テキスト（例文１及び２）の係り受け解析結果の単語依存木の例を示す図である。
【図５】例文１に含まれる単語に対応するインスタンスをオントロジーに追加して形成したグラフの例を示す図である。
【図６】例文２に含まれる単語に対応するインスタンスをオントロジーに追加して形成したグラフの例を示す図である。
【図７】例文１についてオントロジーから求めたトリプルを示すエッジを追加したグラフの例を示す図である。
【図８】例文２についてオントロジーから求めたトリプルを示すエッジを追加したグラフの例を示す図である。
【図９】プロパティ重みの表の例を示す図である。
【図１０】インスタンス重みの表の例を示す図である。
【図１１】形態素重みの表の例を示す図である。
【図１２】係り受け重みの表の例を示す図である。
【図１３】入力テキスト（例文２）に含まれる未知語に対応するクラスが特定でき無かった結果、その未知語がオントロジーの最上位のクラスに対応付けられた場合のグラフの例を示す図である。
【図１４】変形例の装置構成の例を示す図である。
【図１５】別の変形例の装置構成の例を示す図である。
【発明を実施するための形態】
【００３２】
＜実施の形態の概要＞
この実施の形態では、入力されたテキスト（入力テキストと呼ぶ）に含まれる要素（単語等の形態素）同士の関係（すなわちトリプル）を、構文解析を用いずに求める。要素同士の関係を求めるにあたり、本実施形態ではオントロジーを利用する。利用するオントロジーは、概念同士の上位・下位関係の他に、概念同士の「プロパティ」関係の情報も含む。上・下位関係は、上位の概念は下位の概念に該当するエンティティをすべて包含するという特定の関係を表すものであるのに対し、プロパティ関係は、上位・下位関係以外の自由に定義可能な関係である。例えば概念「人間」と概念「人工物」との間に「製造者」又は「被製造物」、「所有者」又は「被所有物」といったプロパティ関係を定義可能である。
【００３３】
本実施形態では、入力テキスト内の各要素に対応するそのオントロジー上の概念を、例えば辞書等を参照して特定する。そして、それら要素同士の関係を求めるために、それら要素に対応する概念同士の関係をそのオントロジーから求める。ここで求めるのは概念間のプロパティ関係である。そして、それら要素と、求めたプロパティとからなる組を、それら要素間の関係（トリプル）の候補として出力（例えばユーザーに提示、あるいは後続の自動解析処理に入力）する。
【００３４】
オントロジーに規定される概念間の上位・下位関係は、単語等の要素とオントロジー上の概念との対応付けを拡張するのに用いてもよい。例えば、辞書等から特定した単語等の要素に対応する概念だけでなく、オントロジーに規定されるその上位の概念も考慮に入れて、概念同士の関係をオントロジー上から求める。そして、それら要素に「直接対応」する概念（すなわちその要素について辞書等から特定された概念）同士の関係（プロパティ関係）だけでなく、（１）第１の要素についての「直接対応」する概念と、第２の要素についての「直接対応」する概念の上位の概念との間の関係、（２）第１の要素についての「直接対応」する概念の上位の概念と、第２の要素についての「直接対応」する概念との関係、（３）第１の要素についての「直接対応」する概念の上位の概念と、第２の要素についての「直接対応」する概念の上位の概念との間の関係、をオントロジーから求める。このようにして求められるいわば多層的なプロパティ関係を、それら単語等の要素の関係の候補として出力する。
【００３５】
入力テキストには単語等の要素がいくつか含まれており、それら要素同士の組合せがいくつか存在する。一つの態様では、それら要素同士の組合せについて上述のようにして求めた関係（トリプル）の候補を組み合わせることで、その入力テキストの意味内容を表す意味ネットワークを生成する。
【００３６】
オントロジーから求められる多様な要素同士の関係（トリプル）を単に組み合わせるだけでは、入力テキストの意味内容からかけ離れた（例えば漠然としすぎている）意味ネットワークも生成されてしまう場合がある。そこで、別の一つの態様では、オントロジーから求めた要素間の関係に対して評価値を求め、評価値に基づいて意味ネットワークの生成に用いる要素間の関係の絞り込みを行う。評価値は、例えば、その要素間の関係（トリプル）や、それら要素同士の入力テキスト内での関係（それら要素間の係り受け、又は少なくとも一方の要素と等）が、実際に用いられる文章群（を集積したコーパス）においてどのくらい出現しやすいか（すなわち該当する関係の出現頻度）に基づいて求める。評価値がある閾値以上の要素間関係（トリプル）のみを組み合わせて意味ネットワークを構成することで、あり得るトリプルを無差別に組み合わせる場合よりも、実際の文章群から見て適切度が高い意味ネットワークが得られやすくなる。
また、生成した意味ネットワークが含む要素同士の関係群の評価値からその意味ネットワークの評価値を求め、その意味ネットワーク評価値が高い意味ネットワークを、入力テキストに対応する意味ネットワークとして優先的に選ぶようにしてもよい。
【００３７】
＜装置構成の例＞
以上、この実施の形態の概要について説明した。次に、この実施の形態に沿った意味ネットワーク構築装置の例を説明する。図１に、意味ネットワーク構築装置の構成の一例を示す。
【００３８】
この装置において、形態素解析部１０は、入力されたテキスト（「入力テキスト」と呼ぶ）に形態素解析を実行する。この形態素解析により、入力テキストが単語等の形態素と呼ばれる要素に分解され、それら各形態素の品詞等の属性情報が求められる。形態素は単語である場合が多いので、以下では簡潔さのため形態素解析の結果を単語と呼ぶこともある。したがって、以下に現れる単語の概念には、単語以外の形態素も含まれる。この形態素解析は、従来と同様の処理でよく、例えば形態素解析用の辞書を参照したり、形態素解析を行うモデルを機械学習で構築して用いたりすることで実現される。形態素解析に用いる辞書又は機械学習モデルに固有名詞を登録しておき、これらを用いることで入力テキストから固有名詞を抽出してもよい。また、オントロジー（例えばオントロジーＤＢ１６に登録されたもの）を用いて構成した辞書をその形態素解析に用いてもよい。この場合、その辞書には、単語に対応付けて、品詞や、オントロジー上の概念（「クラス」）等の属性情報が登録されている。この辞書を用いた形態素解析によれば、形態素解析により求めた単語に対して、その品詞のみならず、その単語が属するオントロジー上のクラス等の属性情報が求められる。
【００３９】
係り受け解析部１２は、入力されたテキストにおける単語同士の係り受けを解析し、解析結果としての係り受け情報を生成する。係り受け情報は、一般に文末をルートとするツリー構造となる。
【００４０】
初期グラフ生成部１４は、入力テキストに対応する意味ネットワークを構築する処理の基になる初期グラフを、オントロジーＤＢ（データベース）１６に保持されたオントロジーから構成する。
【００４１】
オントロジーＤＢ１６は、オントロジーを規定する情報を保持するデータベースである。このオントロジーＤＢ１６に保持される情報は、概念間の関係を規定する。個々の概念はクラスとして定義される。それらクラス（概念）同士の間には上位・下位の関係を規定することが可能である。また、クラス同士の間に、上位・下位関係以外の自由に定義可能な関係、すなわちプロパティ関係を規定することも可能である。オントロジーＤＢ１６が保持する、クラス、クラス間の関係（上位・下位関係、プロパティ関係）を規定する情報は、例えばOWL（Web Ontology Language）言語で記述可能である。この場合、プロパティ関係は、プロパティと、このプロパティが取り得るドメイン（Domain：定義域）とレンジ（Range：値域）のクラスとの三つ組みで表現される。ドメイン及びレンジはOWLが用いているRDF（Resource Description Framework）スキーマに従ったものである。以下、この実施の形態の説明で単に「オントロジー」と言った場合、それはオントロジーＤＢ１６に登録された情報から規定されるオントロジーのことである。
【００４２】
インスタンス生成部１８は、形態素解析部１０の解析により得られた個々の単語に対してインスタンスを生成する。また、単語に対応付けて生成したインスタンスを、オントロジー上のクラスを結びつける。上述のように形態素解析部１０が解析に用いる辞書から単語に対応するオントロジー上のクラス（概念）が求められる場合は、インスタンス生成部１８は、その単語に対するインスタンスとして、そのクラスに属するインスタンスを生成する。
【００４３】
トリプル生成部２０は、オントロジー上でのプロパティ定義から、インスタンス生成部１８が生成したインスタンス同士の関係を示す情報すなわち「トリプル」、を生成する。
あるインスタンスが属するクラスがあるプロパティのドメインであり、別のインスタンスが属するクラスがそのプロパティのレンジであるという関係がある場合、それら２つのインスタンスとそのプロパティがなすその関係のことがトリプルである。これらドメイン、レンジ、トリプルは、ＲＤＦスキーマに規定されている。
【００４４】
トリプル評価部２２は、トリプル生成部２０が生成した各トリプルを評価する。この評価では、トリプルが入力テキストの意味を反映している度合いを示す評価値を計算する（詳細は後述）。
【００４５】
候補生成部２４は、トリプル評価部２２の評価により求められた評価値付きのトリプルの集合を組み合わせて、意味ネットワークの候補を構成する。
【００４６】
候補評価部２６は、候補生成部２４が生成した各候補を評価する。この評価では、候補である意味ネットワークが入力テキストの意味を反映している度合いを示す評価値を計算する。
【００４７】
候補選択部２８は、候補評価部２６が求めた各候補の評価値に基づき、入力テキストの意味を最もよく反映している候補（意味ネットワーク）を選択し、出力する。
【００４８】
＜意味ネットワーク構築装置が実行する処理＞
次に、本実施形態の意味ネットワーク構築装置が実行する構築処理を、具体例を用いて説明する。
【００４９】
この例では、オントロジーＤＢ１６に保持されているオントロジーは、例えばSemantic WebにおけるOWL（Web Ontology Language）言語などを用いて定義されているものとする。また、この具体例では、オントロジーＤＢ１６に保持されている情報は、図２のグラフが示すオントロジーを定義しているものとする。
【００５０】
図２のグラフでは、楕円形のノードがクラス、矩形のノードがプロパティを示す。また、点線の矢印は上位概念（クラス同士の場合は上位クラス(subClassOf)、プロパティ同士の場合は上位プロパティ(subPropertyOf)）を、破線の矢印はプロパティのドメイン(domain)を、一点鎖線の矢印はプロパティ(range)のレンジを、それぞれ表現している。クラス、プロパティ、ドメイン、レンジ等の概念は、OWLがベースとしているRDF（Resource Description Framework）で規定されている。
【００５１】
ここで、点線矢印が示す上位-下位関係（矢印の先が根元の上位概念であるという関係）は集合的包含関係を表している。例えば図２の例では、会社クラスに属するインスタンスは、すべてエージェントクラスやオブジェクトクラス、Thing（ものごと一般）クラスにも属すると定義されている。
【００５２】
プロパティ（図２内の矩形のノード）のドメイン（定義域）とレンジ（値域）は、そのプロパティとトリプルを構成し得る２つのインスタンス同士の関係において、その関係の始点と終点としてとりうる値の範囲を制約する。例えば、製造者プロパティのドメインは人工物でありレンジはエージェントであるが、これは人工物のインスタンスからエージェントのインスタンスにだけ製造者プロパティの型を持つ関係（トリプル）を持つことができることを意味する。
【００５３】
ここで、入力テキストとして以下の２つの例文を考える。
例文１: 「カメラで撮影した」
例文２: 「あなたのAで太郎を撮影した」(Aはカメラの製品名)
【００５４】
これらの例文に対して期待される出力である意味ネットワーク（すなわち意味ネットワーク構築装置が求めようとしているゴールの意味ネットワーク）は、例文１については図３に示す（Ａ）であり、例文２については（Ｂ）である。
【００５５】
図３において、左右が２重線となっている矩形のノードはインスタンスを、楕円のノードはクラスを、点線の矢印はそのインスタンスが属するクラス(instanceOf関係)を、実線のラベルつき矢印はそのラベル名のプロパティを持つインスタンス間の関係（トリプル）を示している。ここで、クラスおよびプロパティは、図２のオントロジーの同名のものを指す。
【００５６】
以下では、図１に示した意味ネットワーク構築装置の各要素の機能を、上述の例文からこれに対応する意味ネットワークを生成する場合を例にとって、段階的に説明する。
【００５７】
［ステップ１］
形態素解析部１０が入力テキスト（例文１，２）を形態素解析して単語ごとに分解し、各単語に品詞を対応付ける。また、入力テキストに固有名詞が含まれる場合はその固有名詞の品詞の細分類を行う。
この形態素解析処理により、例文１「カメラで撮影した」については、例えば以下の解析結果が得られる。
「カメラ」    名詞-一般名詞-カメラ
「で」        助詞-で
「撮影した」  動詞-過去
【００５８】
この解析結果は、例えば単語「カメラ」の品詞が名詞、より細かい分類では一般名詞であること、及び単語「カメラ」がオントロジー上のクラス「カメラ」に属することを示している。
また例文２「あなたのAで太郎を撮影した」については、形態素解析により、例えば以下の解析結果が得られる。
「あなた」    名詞-代名詞-人間
「の」        助詞-の
「A」         名詞-固有名詞-カメラ
「で」        助詞-で
「太郎」      名詞-固有名詞-人間
「を」        助詞-を
「撮影した」  動詞-過去
【００５９】
この解析結果には、例えば単語「A」が固有名詞であり、オントロジー上の「カメラ」概念に属するものであること、単語「太郎」が固有名詞であり、オントロジー上の「人間」の概念に属するものであることが示される。単語「A」が「カメラ」の概念に属すること（例えば「カメラ」の機種名であること）や単語「太郎」が「人間」の概念に属すること（例えば人名であること）が、形態素解析用の辞書に登録されていれば、このような解析結果が得られる。
【００６０】
［ステップ２］
係り受け解析部１２が、ステップ１により得られた単語（形態素）の列に対して係り受け解析を行う。
例文１についての係り受け解析結果として例えば図４に示すツリー（１）が得られ、例文２についての係り受け解析結果として例えツリー（２）が得られたとする。これらツリーは、矢印（方向付きのエッジ）の根元の単語（矩形のノード）が先端（鏃）の単語に係っていることを示している。係り受け解析結果のツリーのことを、以下では単語依存木と呼ぶ。
【００６１】
［ステップ３］
初期グラフ生成部１４が、初期グラフとしてオントロジーＤＢ１６が表すオントロジー（図２参照）の構造をそのまま持つグラフGを生成する。
【００６２】
［ステップ４］
インスタンス生成部１８が、形態素解析結果の単語のうち、名詞や動詞などのように意味を構成するインスタンスとしてふさわしい単語に対して、グラフＧにその単語に対応するインスタンスノードを付加する。インスタンスとしてふさわしいと考えられる単語は、例えば日本語の場合、自立語である。またインスタンス生成部１８は、付加したインスタンスノードからその単語が属する概念（クラス）のノードに対して、instanceOf関係（インスタンスノードがクラスノードのインスタンスであることを示す関係）を表すエッジを追加する。単語が属する概念は、形態素解析の辞書から求められたその単語の品詞、単語ラベル、クラスラベル等から特定される。なお、単語が属する概念が特定できなかった場合は、その単語に対応するインスタンスノードから、オントロジーの最上位のクラス(Thing)のノードに対してinstanceOf関係のエッジを設ける。
【００６３】
例えば例文１については、インスタンス生成部１８は、単語「カメラ」及び「撮影した」に対応するインスタンスノードを生成し、instanceOf関係のエッジを追加することで、図５に示す新しいグラフGを生成する。またインスタンス生成部１８は、例文２について、インスタンス生成及びエッジ追加により図６に示す新しいグラフGを生成する。
【００６４】
［ステップ５］
トリプル生成部２０は、ステップ４でグラフGに追加されたインスタンスの任意の２つに対して、それらのうち一方が属するクラスがプロパティのドメインであり他方がそのプロパティのレンジであるという関係を満たすプロパティをそのグラフGから探す。そのようなプロパティが見つかった場合、グラフGにおいて、それら２つのインスタンスのノードの間にそのプロパティの名を持つエッジを張る。このとき、エッジの方向はプロパティのドメインからレンジの方向である。それら２つのインスタンスノードとその間のプロパティを示すエッジが、１つのトリプルを示す。
【００６５】
ここで、インスタンスの属するクラスには、そのインスタンスがinstanceOf関係を持つクラス（すなわち直接的に所属しているクラス）だけに限らず、そのクラスの上位概念に該当するクラス群も含まれる。例えば、インスタンス「太郎」は、「人間」クラスに属すると同時に、その上位である「エージェント」クラス、更に上位である「オブジェクト」クラス、及び更に上位である「Thing」クラスにも属する（図６参照）。トリプル生成部２０は、ある２つのインスタンスについてのトリプルを生成する場合、それら各インスタンスが属する複数段階のクラスのそれぞれについて、上述したドメイン・レンジ関係が成立するプロパティを求める。
【００６６】
例文１については、トリプル生成部２０により図７に示されるグラフGが得られる。すなわち、インスタンス「カメラ」が直接属するクラス「カメラ」と、インスタンス「撮影した」が直接属するクラス「撮影する」とについて、後者をドメインとし前者をレンジとするプロパティ「撮影機材」がグラフG内に存在する。したがって、トリプル生成部２０の処理を経たグラフGには、インスタンス「撮影した」からインスタンス「カメラ」に向かうエッジ（ラベルは「撮影機材」）が追加されている（図５と比較）。また、グラフGには、クラス「撮影する」をドメインとし、クラス「カメラ」の上位クラスであるクラス「オブジェクト」をレンジとするプロパティ「被写体」が存在する。したがって、トリプル生成部２０の処理結果のグラフGには、インスタンス「撮影した」からインスタンス「カメラ」に延びる、ラベル「被写体」を有するエッジが追加されている。
【００６７】
以下では、それら２つのトリプルをそれぞれ「撮影した-被写体->カメラ」「撮影した-撮影機材->カメラ」のように表記する。すなわち、あるプロパティに着目したトリプルは「ドメインに属するインスタンス-プロパティ->レンジに属するインスタンス」と表現される。ここで「->」という表記は、プロパティを示すエッジの矢印の先端（鏃）を示す。
【００６８】
また、説明のため以下のように関数を定義する。
subj(t)=トリプルtの始点（ドメイン）のインスタンス
obj(t)=トリプルtの終点（レンジ）のインスタンス
prop(t)=トリプルtのプロパティ
cls(i)=インスタンスiの属するクラス
domain(p)=プロパティpのドメインクラス
range(p)=プロパティpのレンジクラス
sup(c)=クラスcの上位クラスの集合
sup(p)=プロパティpの上位プロパティの集合
word(i)=インスタンスiの生成元となった単語
【００６９】
この定義に従うと、例文１におけるトリプル「撮影した-被写体->カメラ」に関しては以下のようになる。
subj(撮影した-被写体->カメラ)=インスタンス「撮影した」
cls(subj(撮影した-被写体->カメラ))=クラス「撮影する」
sup(obj(撮影した-被写体->カメラ))={カメラ,人工物,オブジェクト,Thing}
prop(撮影した-被写体->カメラ)=プロパティ「被写体」
range(撮影した-被写体->カメラ)=クラス「オブジェクト」
word(撮影した-被写体->カメラ)=単語「撮影した」
【００７０】
例文２については、トリプル生成部２０の処理結果として、図８に示すグラフGが得られる。
【００７１】
［ステップ６］
トリプル評価部２２は、ステップ５で求められたすべてのトリプルに対して、そのトリプルが示す関係の出現可能性の程度を示す評価値（「重み値Wt」）を算出する。
トリプル評価部２２は、以下に例示する４つの重みのうちの１つ以上から、最終的な評価値Wtを計算する。
（１）プロパティ重み(Wtp)
（２）インスタンスの重み(Wti)
（３）形態素の重み(Wtwp)
（４）係り受けの重み(Wtwd)
【００７２】
以下、各重みの求め方について説明する。
（１）プロパティ重み(Wtp)
プロパティ重み(Wtp)は、トリプルtに含まれるプロパティprop(t)についての評価値であり、意味解析で想定している世界におけるそのプロパティの出現可能性の高さを示す。
【００７３】
１つの例では、各プロパティのプロパティ重み値を保持した表（その一例を図９に示す）を予め用意しておき、プロパティprop(t)のプロパティ重み(Wtp)をその表の検索により求める。
【００７４】
この表における各プロパティの重み値は、例えば事前に基準となる意味ネットワークを多数記憶したデータベースを用意し、そのデータベースに記憶されたそれら既存の意味ネットワーク群に当該プロパティを含むトリプルが出現する頻度から求めればよい。ここでいう出現の頻度は、データベース内の全意味ネットワークが含む全トリプルの数を上限とする値である。出現の頻度の代わりに、その上限数に対するその頻度の率（出現確率）を用いてプロパティ重み(Wtp)を求めてもよい。出現頻度（又は確率）が高いプロパティほど重み(Wtp)が高い。この表の作成のために事前に用意した意味ネットワーク群が、意味解析で想定している世界を記述しているものと考える。なお、データベースに記憶されるそれら意味ネットワーク群は、例えば、コーパスに蓄積された膨大な数の文から生成しておけばよい。
【００７５】
また表に含まれる重みは、プロパティ間に上位-下位関係(subPropertyOf関係)がある場合は、下位のプロパティの重み(Wtp)が大きくなるように設定してもよい。この例では、例えば、オントロジーにおけるプロパティpに対するsup(p)の要素の数からプロパティpについてのプロパティ重み(Wtp)を求める。例えば、sup(p)の要素の数そのもの、またはその数を正規化した値を、プロパティpの重み(Wtp)とする。下位のプロパティほど、プロパティが示す概念が限定的（具体的）であり、より有用な意味を表している可能性が高い。
【００７６】
また、オントロジーを構成する各クラスに対して、プロパティと同様上位-下位関係に基づくスコア（下位ほど大きくなるスコア）を計算し、このスコアを考慮に入れてプロパティ重み(Wtp)を計算してもよい。この例では、注目しているプロパティpのドメインdomain(p)またはレンジrange(p)のうちの少なくとも一方のクラスのスコアを、そのプロパティpのプロパティ重み(Wtp)に反映させる。
【００７７】
また出現頻度に基づく重み、プロパティ間に上位-下位関係に基づく重み等を総合（例えば加重平均）してプロパティ重み(Wtp)を求めてもよい。
【００７８】
上述のように各プロパティの重み(Wtp)の表を予め生成しておく代わりに、評価対象のトリプルtが与えられた時点での最新の意味ネットワーク群や最新のオントロジーから、そのプロパティの重み(Wtp)を計算してもよい。すなわち、最新の意味ネットワーク群内でのトリプルt内のプロパティの出現頻度を求め、この出現頻度からそのプロパティの重み(Wtp)を計算する等である。この例では、プロパティ重みの計算のもとになる意味ネットワーク群が時間経過と共に変化する場合（例えば時流の変化に従ってあまり使われなくなった意味ネットワークが削除されたり、新たに現れた事象を示す意味ネットワークが追加されたりする場合）、最新の情報に基づく重みが得られる。
【００７９】
例文１から抽出された２つのトリプルについて、図９の表から求められるプロパティ重み(Wtp)は以下のようになる。
Wtp(撮影した-被写体->カメラ)=0.02
Wtp(撮影した-撮影機材->カメラ)=0.01
【００８０】
また例文２から抽出された各トリプルについての図９に基づくプロパティ重み(Wtp)は以下の通りである。
Wtp(撮影した-被写体->太郎)=0.02
Wtp(撮影した-行為の主体->太郎)=0.3
Wtp(撮影した-被写体->あなた)=0.02
Wtp(撮影した-行為の主体->あなた)=0.3
Wtp(太郎-所有者->あなた)=0.2
Wtp(あなた-所有者->太郎)=0.2
Wtp(撮影した-被写体->A)=0.02
Wtp(撮影した-撮影機材->A)=0.01
Wtp(A-所有者->太郎)=0.2
Wtp(A-製造者->太郎)=0.1
Wtp(A-所有者->あなた)=0.2
Wtp(A-製造者->あなた)=0.1
【００８１】
（２）インスタンスの重み(Wti)
インスタンスの重み(Wti)は、トリプルtにおける２つのインスタンスの属するクラスcls(subj(t)),cls(obj(t))とプロパティprop(t)の三つ組みに対する評価値である。この評価値は、想定している世界におけるそのトリプルの出現可能性の高さを示す。
【００８２】
１つの例では、各トリプルのインスタンス重み値(Wti)を保持した表（その一例を図１０に示す）を予め用意しておき、注目しているトリプルtのインスタンス重み(Wti)をその表の検索により求める。この表は、例えば「所有者」プロパティに着目した場合、カメラの所有者として人間と会社を比較すると前者のほうが可能性が高い（0.9対0.2）ことを表している。
【００８３】
この表の各エントリの重み値は、プロパティ重みの場合と同様、例えば事前に用意したデータベースに記憶された既存の意味ネットワーク群における、当該エントリに該当するトリプルの出現頻度（あるいは確率）に基づいて求めておけばよい。出現の頻度が高いエントリほど重み(Wti)が高い。
【００８４】
すなわち、図１０に示した表内のエントリは、オントロジー内のプロパティと、そのプロパティのドメインのクラスと、そのプロパティのレンジのクラスと、の三つ組みに対応するインスタンス重みを規定している。この三つ組みに対するインスタンス重みは、その三つ組みに該当するトリプル（すなわちその三つ組みに含まれるプロパティと、その三つ組みに含まれるドメインのクラスのインスタンスと、その三つ組みに含まれるドメインのクラスのインスタンスと、から構成されるトリプル）がデータベース内の意味ネットワーク群に出現する頻度に応じた値とする。三つ組みに該当するトリプルとは、その三つ組みに含まれるプロパティと、その三つ組みに含まれるドメインのクラスのインスタンスと、その三つ組みに含まれるドメインのクラスのインスタンスと、から構成されるトリプルである。例えば、プロパティ「撮影機材」とそのドメインのクラス「撮影する」とそのレンジのクラス「カメラ」との三つ組みに該当するトリプルとして、データベース内の意味ネットワーク群に、「撮影した-撮影機材->カメラ」というトリプルが２回、「撮影した-撮影機材->A（カメラの機種名）」というトリプルが１回、「撮影した-撮影機材->B（カメラの機種名）」というトリプルが１回、それぞれ出現しており、それら以外にその三つ組みに該当するトリプルは出現していない場合、その三つ組みに対するインスタンス重みは、その出現回数の合計４に応じた値（例えばその合計回数４をデータベース内の全トリプル数で除した値）とする。
【００８５】
また、プロパティ重みの場合と同様、オントロジーを構成するクラスやプロパティに対して上位-下位関係に基づくスコア（下位ほど大きくなるスコア）を設定し、トリプルtを構成する各インスタンスの所属クラスやプロパティのスコアから重み(Wti)を求めてもよい。
【００８６】
また、トリプルtが与えられた際に、図１０に例示する表を作成するのに用いるのと同じ基礎データ（意味ネットワーク群等）を用いて、そのトリプルtについてのインスタンス重み値(Wti)を計算してもよい。
これらの値は、事前に出現数などから計算してもよいし、cls(subj())やcls(obj())のオントロジー上のクラスの上位-下位関係の位置づけやprop()に対する同様な上下関係の位置づけを利用して設定してもよい。
【００８７】
例文１から抽出された２つのトリプルについて、図１０の表から求められるインスタンス重み(Wti)は以下のようになる。
Wti(撮影した-被写体->カメラ)=0.5
Wti(撮影した-撮影機材->カメラ)=1
【００８８】
また例文２から抽出された各トリプルについての図１０に基づくインスタンス重み(Wti)は以下の通りである。
Wti(撮影した-被写体->太郎)=0.8
Wti(撮影した-行為の主体->太郎)=1
Wti(撮影した-被写体->あなた)=0.8
Wti(撮影した-行為の主体->あなた)=1
Wti(太郎-所有者->あなた)=0.01
Wti(あなた-所有者->太郎)=0.01
Wti(撮影した-被写体->A)=0.5
Wti(撮影した-撮影機材->A)=1
Wti(A-所有者->太郎)=0.9
Wti(A-製造者->太郎)=0.1
Wti(A-所有者->あなた)=0.9
Wti(A-製造者->あなた)=0.1
【００８９】
（３）形態素の重み(Wtwp)
形態素の重みは、トリプルtに含まれるプロパティprop(t)と、２つのインスタンスの元になった単語word(subj(t)),word(obj(t))のうちの少なくとも１つと、の組み合わせについての評価値である。この評価値は、単語word(subj(t))又はword(obj(t))についての品詞などの形態素情報、あるいは、その単語word(subj(t))又はword(obj(t))の前後の１以上の単語の情報等のうちの少なくとも１つを考慮して求めてもよい。
【００９０】
例えば、プロパティprop(t)と、そのプロパティのレンジのインスタンスの生成元の単語word(obj(t))の次に現れる単語（「後続単語」と呼ぶ）の品詞と、の組み合わせから形態素重み(Wtwp)を求め、図１１に示すような表を作成してもよい。この表において、ただし、品詞表現内の文字「*」（ワイルドカード）の位置には任意の分類が出現可能である。
【００９１】
図１１の表は、例えば「被写体」プロパティに着目すると、そのレンジに該当する単語の後ろに「助詞-を」（助詞である「を」）が続くほうが「助詞-で」が続く場合よりも可能性が高い（0.3対0.05）ことを示している。
【００９２】
図１１の表の作成は、例えば次のようにして行えばよい。すなわち、まず、コーパスに蓄積された多数の文から構成した意味ネットワーク群を生成し、これら意味ネットワーク群を記憶したデータベース（プロパティ重みやインスタンス重みの算出に用いたデータベースと同じ）を用意する。コーパス中のどの文からデータベース中のどの意味ネットワークが生成されたかを示す対応関係の情報も記録しておく。次に、あるトリプルtに含まれるプロパティとレンジのインスタンスとの組について、その組を含む意味ネットワーク群をデータベースから抽出し、抽出した各意味ネットワークに対応する文をそれぞれ特定する。次に、特定した文から、そのインスタンスに対応する単語word(obj(t))（ただしそのプロパティのレンジのインスタンスに該当するものに限る）の後続単語を抽出する。このようにしてそのプロパティとそのインスタンス（レンジ）との組に関して抽出された後続単語群を集計し、この集計により得られる後続単語ごとの出現頻度に応じて、その後続単語に対応する重み(Wtwp)を計算する。重み(Wtwp)は出現頻度が高いほど大きくなるように定める。そして、その後続単語の出現頻度から求めた重み(Wtwp)を、そのプロパティとその後続単語との組に対応付けて、表（図１１参照）に登録する。
【００９３】
例文１から抽出された２つのトリプルについて、図１１の表から求められる形態素の重み(Wtwp)は以下のようになる。
Wtwp(撮影した-被写体->カメラ)=0.05
Wtwp(撮影した-撮影機材->カメラ)=0.3
【００９４】
また例文２から抽出された各トリプルについては、同様に以下のようになる。
Wtwp(撮影した-被写体->太郎)=0.3
Wtwp(撮影した-行為の主体->太郎)=0.01
Wtwp(撮影した-被写体->あなた)=0.01
Wtwp(撮影した-行為の主体->あなた)=0.01
Wtwp(太郎-所有者->あなた)=0.3
Wtwp(あなた-所有者->太郎)=0.01
Wtwp(撮影した-被写体->A)=0.05
Wtwp(撮影した-撮影機材->A)=0.3
Wtwp(A-所有者->太郎)=0.01
Wtwp(A-製造者->太郎)=0.01
Wtwp(A-所有者->あなた)=0.3
Wtwp(A-製造者->あなた)=0.3
【００９５】
なお、予め用意した表（図１１）から形態素重み(Wtwp)を検索する代わりに、その表を作成するのと同様の処理を、コーパス及び意味ネットワークのデータベースを参照して行うことで、注目するトリプルtについての形態素重み(Wtwp)を計算してもよい。
【００９６】
（４）係り受けの重み(Wtwd)
係り受けの重み(Wtwd)は、トリプルtの２つのインスタンスの生成元となる単語word(subj(t)),word(obj(t))の組に対する評価値であり、係り受け解析部１２の解析結果である単語依存木から求められる。例えば、単語依存木をグラフと見た場合のそれら２単語間の距離（グラフ上のそれら２単語の間の経路上に存在するエッジの数）からこの重み(Wtwd)を求めてもよい。例えば、それら２単語間の距離が小さいほど、この重みを大きい値とする。
【００９７】
また、係り受けの重み(Wtwd)は、プロパティprop(t)と、単語依存木におけるそれら２単語word(subj(t)),word(obj(t))の間の経路と、のペア、に基づいて求めてもよい。
【００９８】
ここで、２単語word(subj(t)),word(obj(t))の間の経路の情報としては、その経路上に単語の列の情報を用いる。上述の例文２に現れる２つの単語「A」と「撮影した」との間の係り受けの経路は、図４の単語依存木（２）を参照すると「（A）->助詞-で->（撮影した）」である（ただし「A」と「撮影した」は注目している２単語なので、経路からは外す）。これは、「A」が助詞「で」に係り、その助詞「で」が「撮影した」に係るという係り受け関係を示す。また、「あなた」と「撮影した」との間の経路は、「（A）->助詞-の->名詞-A->助詞-で->（撮影した）」である。
【００９９】
プロパティprop(t)と単語word(subj(t)),word(obj(t))間の経路とのペアに基づいた係り受けの重み(Wtwd)は、例えば、世界におけるそのペアの出現頻度（出現確率）から求めればよい。例えば、出現頻度が高いペアほど重み(Wtwd)の値を大きくする。ペアの出現頻度に基づく重み(Wtwd)は、例えば以下のような処理手順により求めればよい。
(1) コーパスに含まれる多数のサンプル文から、各サンプル文に対応する意味ネットワーク（サンプル意味ネットワークと呼ぶ）をそれぞれ作成する
(2) 係り受け解析により各サンプル文の単語依存木を作成する
(3) 同じサンプル文から生成したサンプル意味ネットワークと単語依存木を対応付ける
(4) サンプル意味ネットワークに現れるトリプルtについて、(a)そのトリプルtのプロパティprop(t)を抽出する。(b)また、そのサンプル意味ネットワーク対応する単語依存木において、２単語word(subj(t)),word(obj(t))間の経路を求める。求めた経路のうち名詞や動詞等は具体的な単語の代わりにワイルドカード（「*-*」）に置き換える（ただし品詞は維持）。抽出したプロパティprop(t)と置換え済みの経路情報とのペアを作成し、記憶する。
(5) 上記(4)の処理を全サンプル意味ネットワークに含まれる全トリプルtについて繰り返す。
(6) 上記(5)の完了後に蓄積されているペア群を集計し、プロパティと経路情報とが一致するペアの合計数を求める。この合計数が、全サンプル文及び全サンプル意味ネットワーク内でのそのペアの出現頻度である。この出現頻度が高いほど重み(Wtwd)が大きくなるよう、各ペアの係り受けの重み(Wtwd)を計算する。
【０１００】
以上に例示した係り受け重み(Wtwd)の算出のための処理手順はあくまで一例に過ぎない。同等の意味を持つ重み(Wtwd)を計算できる他の手順を用いてももちろんよい。
【０１０１】
上述の処理手順等を用いて事前に各ペアの係り受けの重み(Wtwd)を計算することで、図１２に例示するような表を作成し、入力テキストの解析の際には、この表を検索することで係り受けの重み(Wtwd)を求めてもよい。この表における経路の情報では、word(subj)が次の単語に係る方向を「→」、受ける方向を「←」で表している。経路中で通過する単語をその品詞で表す。このような経路のマッチングルールはここに上げた表現に限定するものではない。
【０１０２】
図１２の表を用いた係り受け重み(Wtwd)の算出処理は、例えば以下のように行えばよい。すなわち、重み算出の対象であるトリプルtについて、プロパティprop(t)と単語word(subj(t)),word(obj(t))間の経路とを求め、求めたプロパティと経路のペアにマッチするペアを表（図１２）から求める。そのようなペアが表から見つかれば、見つかったペアに対応づけてその表に登録されている重みを、そのトリプルtの係り受け重み(Wtwd)とする。
【０１０３】
例文１を考えた場合、単語依存木は図４のツリー（１）であり、出現単語（自立語）は「カメラ」と「撮影した」の２つである。また例文１についてオントロジーから求められたトリプルtは、「撮影した-被写体->カメラ」と「撮影した-撮影機材->カメラ」の２つである。これら２つのトリプルについてそれぞれ係り受け重み(Wtwd)を求める。
【０１０４】
例えば、トリプルt=「撮影した-被写体->カメラ」については、word(subj(t))=「撮影した」からword(obj(t))=「カメラ」へのツリー（１）上での経路は、「←助詞-で←」になる。またこのトリプルtについてのプロパティprop(t)は「被写体」である。図１２の表から、これらプロパティprop(t)=「被写体」と経路=「←助詞-で←」のペアに対応する重みとして「0.01」が得られる。したがって、このトリプルについての係り受け重み(Wtwd)は次のように決定される。
Wtwd(撮影した-被写体->カメラ)=0.01
同様に例文１について得られたもう一つのトリプルについての係り受け重み(Wtwd)は、次の通りとなる。
Wtwd(撮影した-撮影機材->カメラ)=0.3
【０１０５】
例文２の場合、図８に例示したように多数のトリプルが得られるが、それら各トリプルについての係り受け重みは、図１２の表から以下のように求められる。
Wtwd(撮影した-被写体->太郎)=0.4
Wtwd(撮影した-行為の主体->太郎)=0
Wtwd(撮影した-被写体->あなた)=0
Wtwd(撮影した-行為の主体->あなた)=0
Wtwd(太郎-所有者->あなた)=0
Wtwd(あなた-所有者->太郎)=0
Wtwp(撮影した-被写体->A)=0.01
Wtwp(撮影した-撮影機材->A)=0.3
Wtwp(A-所有者->太郎)=0
Wtwp(A-製造者->太郎)=0
Wtwp(A-所有者->あなた)=0.3
Wtwp(A-製造者->あなた)=0.3
【０１０６】
なお、それらトリプルのうち、プロパティprop(t)と単語word(subj(t)),word(obj(t))間の経路のペアにマッチするエントリが図１２の表から見つからないものについては、係り受け重み(Wtwd)の値を最低値0とする。表にないということは、コーパスの膨大なサンプル文（及びサンプル意味ネットワーク）群の中から見つからなかったということであり、そのようなペアは出現頻度が０と見なせる。
【０１０７】
最終的なトリプルの重みWtは、以上に説明した４つの重み要素Wtp,Wti,Wtwp,Wtwdのうちの１以上の組み合わせから計算する。例えば、
Wt(t)=0.2*Wtp(t)+0.2*Wti(t)+0.1*Wtwp(t)+0.5*Wtwd(t)  ...（式１）
のように、それら４つの要素の調和平均（加重平均）を最終的な重みWtとしてもよい。なお、調和平均はそれら４つの要素の組み合わせ方の一例に過ぎず、それら４つの要素を用いる別の関数を用いて最終的な重みWtを求めてもよい。
【０１０８】
また、それら４つの重み要素のうちの１つを最終的な重みWtとしてもよいし、それら４つの重み要素のうちの２つ又は３つの組み合わせから最終的な重みWtを求めてもよい。
【０１０９】
上記（式１）を用いる場合、例文１についての２つのトリプルの最終的な重みWtは次のように求められる。
Wt(撮影した-被写体->カメラ)=0.2*0.02+0.2*0.5+0.1*0.05+0.5*0.01 = 0.114
Wt(撮影した-撮影機材->カメラ)=0.2*0.01+0.2*1+0.1*0.3+0.5*0.3 = 0.382
【０１１０】
また、（式１）を用いた場合の例文２の各トリプルの重みWtは以下のようになる。
Wt(撮影した-被写体->太郎)=        0.2*0.02+ 0.2* 0.8+ 0.1*0.3+  0.5*0.4  = 0.394
Wt(撮影した-行為の主体->太郎)=    0.2*0.3+  0.2*1+    0.1*0.01+ 0.5*0    = 0.261
Wt(撮影した-被写体->あなた)=      0.2*0.02+ 0.2*0.8+  0.1*0.01+ 0.5*0    = 0.165
Wt(撮影した-行為の主体->あなた)=  0.2*0.3+  0.2*1+    0.1*0.01+ 0.5*0    = 0.261
Wt(太郎-所有者->あなた)=          0.2*0.2+  0.2*0.01+ 0.1*0.3+  0.5*0    = 0.072
Wt(あなた-所有者->太郎)=          0.2*0.2+  0.2*0.01+ 0.1*0.01+ 0.5*0    = 0.043
Wt(撮影した-被写体->A)=           0.2*0.02+ 0.2*0.5+  0.1*0.05+ 0.5*0.01 = 0.114
Wt(撮影した-撮影機材->A)=         0.2*0.01+ 0.2*1+    0.1*0.3+  0.5*0.3  = 0.382
Wt(A-所有者->太郎)=               0.2*0.2+  0.2*0.9+  0.1*0.01+ 0.5*0    = 0.221
Wt(A-製造者->太郎)=               0.2*0.1+  0.2*0.1+  0.1*0.01+ 0.5*0    = 0.041
Wt(A-所有者->あなた)=             0.2*0.2+  0.2*0.9+  0.1*0.3+  0.5*0.3  = 0.4
Wt(A-製造者->あなた)=             0.2*0.1+  0.2*0.1+  0.1*0.3+  0.5*0.3  = 0.22
【０１１１】
トリプル評価部２２は、トリプルtについて求めた最終的な重みWtを、そのトリプルtに対応付けて記憶する。重みWtが対応付けられたトリプルtのことを重み付きトリプルtと呼ぶ。
【０１１２】
［ステップ７］
候補生成部２４は、ステップ６で得られた重み付きのトリプルを意味ネットワークの構成要素の候補として考え、それらを任意に組み合わせて意味ネットワークの候補を0個以上生成する。すなわち、候補生成部２４は、それらトリプルの中からｎ個（ｎは０からそれらトリプルの総数Nまでの整数）を選んだ組み合わせを、１つの意味ネットワーク（候補）として生成する。
【０１１３】
ここで一般にステップ６までで得られたトリプルがN個あった場合、それらの組み合わせは2^N個となる。したがって、Nが大きい場合、考えられる意味ネットワークの候補をすべて列挙するのは計算量の点で現実的ではない。そこで、生成条件を設定し、生成する候補をこの生成条件を満たすものに限定してもよい。
【０１１４】
例えば生成条件として以下に例示する要素条件の論理積などが挙げられる。なお、これら４つの要素条件のすべての論理積を用いる代わりに、それら４つのうちの１以上についての論理積を用いてもよい。
（要素条件１）すべてのインスタンスは、トリプルの始点、または終点、またはその両方になっている。
（要素条件２）任意のインスタンスの組i1,i2について、i1からi2へのトリプルは高々１個である。
（要素条件３）生成された意味ネットワークは、高々２つ連結グラフから構成される。
（要素条件４）生成された意味ネットワークを構成するトリプルのWtスコアがすべて0.25以上である
【０１１５】
それら４要素条件の論理積を生成条件として用いた場合、例文１について生成される意味ネットワークの候補は次の１つの「意味ネットワーク1-1」に絞られる。
意味ネットワーク1-1:
撮影した-撮影機材->カメラ
【０１１６】
例文２の場合は以下に示す１０個の候補が生成される
意味ネットワーク2-1:
撮影した-被写体->太郎
撮影した-行為の主体->あなた
撮影した-撮影機材->A
意味ネットワーク2-2:
撮影した-行為の主体->太郎
撮影した-行為の主体->あなた
撮影した-撮影機材->A
意味ネットワーク2-3:
撮影した-被写体->太郎
A-所有者->あなた
意味ネットワーク2-4:
撮影した-行為の主体->太郎
A-所有者->あなた
意味ネットワーク2-5:
撮影した-被写体->太郎
撮影した-行為の主体->あなた
A-所有者->あなた
意味ネットワーク2-6:
撮影した-行為の主体->太郎
撮影した-行為の主体->あなた
A-所有者->あなた
意味ネットワーク2-7:
撮影した-被写体->太郎
撮影した-撮影機材->A
A-所有者->あなた
意味ネットワーク2-8:
撮影した-行為の主体->太郎
撮影した-撮影機材->A
A-所有者->あなた
意味ネットワーク2-9:
撮影した-被写体->太郎
撮影した-行為の主体->あなた
撮影した-撮影機材->A
A-所有者->あなた
意味ネットワーク2-10:
撮影した-行為の主体->太郎
撮影した-行為の主体->あなた
撮影した-撮影機材->A
A-所有者->あなた
【０１１７】
以上では、候補生成部２４は、トリプルの集合を意味ネットワーク（候補）として生成したが、トリプルの集合に対してそのトリプルに含まれる各インスタンスの所属クラスやその上位クラスを加えたものを意味ネットワークとして生成してもよい。例えば、トリプルの集合が示すネットワークと、その集合に含まれるトリプルが含む各インスタンスが所属する各クラスに対応するノードと、及びそれら各インスタンスから対応する各所属クラスへのinstanceOf関係のエッジと、から意味ネットワークを構成する等である。
【０１１８】
［ステップ８］
候補評価部２６は、ステップ７で得られた意味ネットワーク候補のそれぞれに対して評価値を算出する。
【０１１９】
例えば、候補評価部２６は、以下に例示する要素評価値を１以上組み合わせて、意味ネットワーク候補nの重み値Wnを計算する。
（要素評価値１）候補nが含むすべてのトリプルt_iの重みWt(t_i)の平均値Wna
（要素評価値２）候補nの大きさ（例えばトリプルの数が多い）に基づく重みWnn
（要素評価値３）候補nが持つ閉路の数に基づく重み(Wno)
（要素評価値４）候補nが含む連結グラフの数に基づく重み(Wnc)
【０１２０】
・要素評価値１について
重みWnaは意味ネットワークnがトリプルt_1,…t_i,…t_mから構成される場合、ΣWt(t_i) / mとなる。
例文１の場合、各候補についての重みWnaは以下のようになる。
Wna(意味ネットワーク1-1)=0.382/1=0.382
例文２の場合、各候補についての重みWnaは以下のようになる。
Wna(意味ネットワーク2-1) =(0.394+0.261+0.382)/3=0.34567
Wna(意味ネットワーク2-2) =(0.261+0.261+0.382/3=0.30133
Wna(意味ネットワーク2-3) =(0.394+0.4)/2=0.397
Wna(意味ネットワーク2-4) =(0.261+0.4)/2=0.3305
Wna(意味ネットワーク2-5) =(0.394+0.261+0.4)/3=0.35167
Wna(意味ネットワーク2-6) =(0.261+0.261+0.4)/3=0.30733
Wna(意味ネットワーク2-7) =(0.394+0.382+0.4)/3=0.392
Wna(意味ネットワーク2-8) =(0.261+0.382+0.4)/3=0.34767
Wna(意味ネットワーク2-9) =(0.394+0.261+0.382+0.4)/4=0.35925
Wna(意味ネットワーク2-10)=(0.261+0.261+0.382+0.4)/4=0.326
【０１２１】
・要素評価値２について
重みWnnは、意味ネットワークが大きいほどそれが表現する意味内容が豊富であることに基づく評価値である。意味内容が豊富であるほど意味ネットワークの利用価値が高いので、重みWnnを大きい値とする。意味ネットワークの大きさを示す指標としては、例えば、その意味ネットワークが含んでいるトリプルの数を用いる（もちろん大きさを示す他の指標を用いてもよい）。意味ネットワークの大きさの指標値そのものをその意味ネットワークの重みWnnとして用いてもよい。以下の例は、この方針に沿ったものである。
【０１２２】
例文１の場合、候補の重みWnnは以下のようになる。
Wnn(意味ネットワーク1-1)=1  （意味ネットワーク1-1が含むトリプルの数は１）
例文２の場合、各候補の重みWnnは以下のようになる。
Wnn(意味ネットワーク2-1) =3
Wnn(意味ネットワーク2-2) =3
Wnn(意味ネットワーク2-3) =2
Wnn(意味ネットワーク2-4) =2
Wnn(意味ネットワーク2-5) =3
Wnn(意味ネットワーク2-6) =3
Wnn(意味ネットワーク2-7) =3
Wnn(意味ネットワーク2-8) =3
Wnn(意味ネットワーク2-9) =4
Wnn(意味ネットワーク2-10)=4
【０１２３】
・要素評価値３について
重みWnoは、意味ネットワークが閉路を持つ場合、内容が冗長であるため意図しない関連付けが付いている、という可能性を考慮した評価値である。すなわち、意味ネットワーク内に閉路がある場合、その閉路内の２つのノード（インスタンス）の間には複数の経路が存在する。これは、それら２つのインスタンスの組がなす意味に多義性（曖昧性）があるということである。閉路が多い意味ネットワークほど曖昧さを多く含むことになる。曖昧度合いが高い意味ネットワークは利用価値が少ないと考えられる。したがって、閉路数に基づく重みWnoは、候補nに含まれる閉路の数が少ないほど大きい値とする。
【０１２４】
あるいは、重みWnoを負の値（減点）とし、候補nに含まれる閉路の数が多いほど大きく減点するようにしてもよい。以下の例は、この方法に従ったものであり、
Wno= -1*（候補が含む閉路の数）
という計算式で重みWnoを計算する。なお、ここでいう「閉路」とは、候補（意味ネットワーク）を無向グラフと見たときの閉路である。
【０１２５】
例文１の場合、候補の重みWnoは以下のようになる。
Wno(意味ネットワーク1-1)=0
【０１２６】
例文２の場合、各候補の重みWnoは以下のようになる。
Wno(意味ネットワーク2-1) =0
Wno(意味ネットワーク2-2) =0
Wno(意味ネットワーク2-3) =0
Wno(意味ネットワーク2-4) =0
Wno(意味ネットワーク2-5) =0
Wno(意味ネットワーク2-6) =0
Wno(意味ネットワーク2-7) =0
Wno(意味ネットワーク2-8) =0
Wno(意味ネットワーク2-9) =-1
Wno(意味ネットワーク2-10)=-1
【０１２７】
・要素評価値４について
重みWncは、１つの文に出現する単語はすべて意味的に関連づいているはずであるという考えに基づく評価値である。よって意味ネットワークの構造上大きく連結している（すなわちその意味ネットワークを構成する連結グラフの数が少ない）ほうが評価値が高くなるべきである。
【０１２８】
候補nが複数の連結グラフから構成されているということは、その候補nは、元になった入力テキストを複数の意味構造（連結グラフ）の組として表現していることになる。例えば入力テキストが例えば１つのテーマについて語っているものであれば、それを表現する意味ネットワークが複数の断片に分かれるのは望ましくない。入力テキストが１つの文であれば、その文に出現する単語はすべて意味的に関連づいているはずであり、その文から生成される意味ネットワークが複数の断片（連結グラフ）に分かれることはないはずである。このような考えから、同じ入力テキストから求められた意味ネットワークの候補であれば、構成要素の連結グラフが少ないものほど、その入力テキストを表現する意味ネットワークとしてふさわしいものとする。したがって、重みWncは、候補nが含む連結グラフの数が少ないほど大きい値とする。あるいは、重みWncを、上述の閉路数に基づく要素評価値３と同様減点方式としてもよい。
【０１２９】
例えば、以下の式で定義される重みWncを用いてもよい。
Wnc=1-1*構成される連結グラフの数
【０１３０】
この計算式を用いた場合、例文１の候補の重みWncは以下のようになる。
Wnc(意味ネットワーク1-1)=0
【０１３１】
また例文２の場合、各候補の重みWncは以下のようになる。
Wnc(意味ネットワーク2-1) =0
Wnc(意味ネットワーク2-2) =0
Wnc(意味ネットワーク2-3) =-1
Wnc(意味ネットワーク2-4) =-1
Wnc(意味ネットワーク2-5) =0
Wnc(意味ネットワーク2-6) =0
Wnc(意味ネットワーク2-7) =0
Wnc(意味ネットワーク2-8) =0
Wnc(意味ネットワーク2-9) =0
Wnc(意味ネットワーク2-10)=0
【０１３２】
候補nの最終的な重み値Wnは上記 Wna,Wnn,Wno,Wncのうちの１つ以上を組み合わせて計算される。例えば、次の式２に従って重み値Wnを計算してもよい（この式阿あくまで一例に過ぎない）。
Wn = Wna*(Wnn+Wno+Wnc)  ...（式２）
【０１３３】
式２を用いる場合、例文１から生成された候補の最終的な重み値Wnは以下のように計算される。
Wn(意味ネットワーク1-1)=0.382*(1+0+0) = 0.382
【０１３４】
同様に例文２の各候補の最終的な重み値Wnは以下のようになる。
Wn(意味ネットワーク2-1) =0.34567*(3+0+0)=1.037
Wn(意味ネットワーク2-2) =0.30133*(3+0+0)=0.904
Wn(意味ネットワーク2-3) =0.397*(2-1+0)=0.397
Wn(意味ネットワーク2-4) =0.3305*(2-1+0)=0.3305
Wn(意味ネットワーク2-5) =0.35167*(3+0+0)=1.055
Wn(意味ネットワーク2-6) =0.30733*(3+0+0)=0.922
Wn(意味ネットワーク2-7) =0.392*(3+0+0)=1.176
Wn(意味ネットワーク2-8) =0.34767*(3+0+0)1.043
Wn(意味ネットワーク2-9) =0.35925*(4+0-1)=1.07778
Wn(意味ネットワーク2-10)= 0.326*(4+0-1)=0.978
【０１３５】
［ステップ９］
候補選択部２８は、ステップ８で得られた各候補の最終的な評価値Wnに基づき、それら各候補の中から、入力テキストの意味を表現するのに最もふさわしいものを選択し、選択したものを解析結果として出力する。具体的には、最終的な評価値Wnが最も高い候補を、入力テキストの最終的な解析結果である意味ネットワークとして選択する。
例文１の場合、候補は「意味ネットワーク1-1」（図３の（Ａ）に該当）のみなので、候補選択部２８はこれを選択する。例文２の場合、候補選択部２８は、重み値Wnが最大である「意味ネットワーク2-7」（図３の（Ｂ）に該当）を選択する。例文の意味を的確に表現した意味ネットワークが選択されていることが分かる。
【０１３６】
なお、最終的な出力を１つの意味ネットワークに限定することは必須ではない。この代わりに、評価値Wnが上位の所定数個の候補を選ぶという基準や、評価値Wnが出力対象判定のために定めた閾値以上である候補を選ぶという基準等といった他の基準に従って、最終的な出力とする候補を選択してもよい。
【０１３７】
以上に示した例では、最終的な評価値Wnが最も高い候補を最終的な解析結果として選択したが、これは一例に過ぎない。この代わりに、最終的な評価値Wnが高い順位にいくつかを候補を解析結果としてもよいし、それらいくつかの候補を選択肢として提示し、その中から入力テキストに最も適合するものをユーザーに選択させてもよい。
【０１３８】
＜変形例１＞
例文２の形態素解析において以下のような結果が得られたとする。
あなた    名詞-代名詞-人間
の        助詞-の
A         未知語
で        助詞-で
太郎      名詞-固有名詞-人間
を        助詞-を
撮影した  動詞-過去
【０１３９】
この形態素解析結果では、形態素解析部１０が単語「A」の固有名抽出に失敗し、単語「A」を未知語と判定している。
【０１４０】
この場合、上述した実施の形態の処理のステップ４では、図１３に示すグラフが得られる。このグラフでは、未知語「A」はクラスが特定できないので、オントロジーにおける最上位のクラスThingのインスタンスとなっている。クラスThingは非常に抽象度が高いため、クラスThingをドメインあるいはレンジに持つプロパティが少ない（図２に示した今回のオントロジーの場合はゼロ）。このため、「A」をインスタンスとして持つクラスから構成されるトリプル自体の数が少ない（今回のオントロジーの場合ゼロ）。また、クラスThingを含むトリプルがあったとしても、ステップ６におけるWtpを初めとする、プロパティに依拠する重みの値が低くなりがちである。その結果ステップ８で求められる意味ネットワークの候補の評価値Wnがすべて低くなり、正しい（または正解に近い）意味ネットワークが得られない可能性がある。
【０１４１】
この変形例は、このような問題に対する対策を提供する。すなわち、この変形例では、インスタンス生成部１８が生成したインスタンスiに対応するクラスcls(i)に下位クラスが存在する場合に、そのインスタンスiに対応するクラスをユーザーに人手で再割り当てするように提案する機能を意味ネットワーク構築装置に設ける。
【０１４２】
図１４が、この変形例に係る意味ネットワーク構築装置の機能ブロック図である。この図に示したクラス変更処理部３０が、この変形例で新たに追加した上述の提案機能を担う。
【０１４３】
１つの例では、クラス変更処理部３０は、候補評価部２６が求めた意味ネットワークの各候補の最終評価値Wnの中から最大値を求め、その最大値を予め定めた閾値と比較する。比較の結果、その最大値が閾値以上である場合、クラス変更処理部３０は、候補選択部２８に上述の実施の形態と同様の選択処理を実行させる。これに対し、その最大値が閾値より小さい場合、クラス変更処理部３０は、ステップ４でインスタンス生成部１８がグラフGに追加した各インスタンスiに対応する各クラスcls(i)の中から、下位クラスが存在するものを探す。そして、下位クラスが存在するクラスcls(i)が見つかれば、ユーザーに対して、そのクラスcls(i)の下位クラスの一覧を表示（クラス再割り当ての提案の一例）し、その一覧の中からそのインスタンスiの生成元の単語に適した下位クラスをユーザーに選択させる。そして、クラス変更処理部３０は、インスタンス生成部１８に対して、そのインスタンスiの対応クラスをクラスcls(i)からユーザーが選択した下位クラスに変更するよう指示し、トリプル生成部２０〜候補評価部２６に対して、変更後のグラフを対象として処理を再度実行させる。これにより、得られる各候補の評価値Wnが変更前よりも改善される。
【０１４４】
一例として、図１３に例示した具体例のグラフから求めた意味ネットワークの候補の評価値Wnがすべて閾値より低かったと仮定する。４つのインスタンス「A」、「あなた」、「太郎」、「撮影した」のうち対応するクラスに下位クラスが存在するのは「A」のみである。したがって、クラス変更処理部３０がユーザーへクラスの割り当てを提案するのはインスタンスAである。
【０１４５】
よって、クラス変更処理部３０は、インスタンスAに現在割り当てられているクラスThingの下位クラスをグラフGから探し、見つけた下位クラスの一覧を表示した選択用のＵＩ（ユーザインタフェース）画面をユーザーに提供する。図１３の例でいえば、Thing以外のその図に示したすべてのクラスが、そのインスタンスAの生成元の単語（形態素）に対するクラスの選択肢として、そのＵＩ画面に示される。このとき、クラス変更処理部３０は、下位クラスの選択のための参考情報として、それら各下位クラスにそれぞれインスタンスAを割り当てた場合の意味ネットワークの候補の評価値の最大値を計算してそのＵＩ画面に表示してもよい。これには例えば、それら各下位クラスについて、インスタンスAをその下位クラスを割り当てた場合のシミュレーションをインスタンス生成部１８〜候補評価部２６で実行し、その下位クラスについての各意味ネットワーク候補の評価値を求め、その中の最大値を求めればよい。ユーザーは、そのＵＩ画面から、インスタンスAの再割り当て先とするクラスを選択する。クラス変更処理部３０は、インスタンスAの対応付け先をユーザーが選択したクラスに変更するようインスタンス生成部１８に指示し、トリプル生成部２０〜候補評価部２６に、この変更を加えた後のグラフGに対して意味ネットワークの候補の生成や評価を実行させる。この再実行の結果、評価値Wnが閾値以上となる意味ネットワークの候補が見つかった場合は、候補選択部２８がそれら候補のうちその評価値が最大であるものを解析結果として選択する。なお、上述のシミュレーションを実施した場合は、候補生成や評価を再実行する代わりに、ユーザーが選択したクラスに対応するシミュレーションの結果を利用してもよい。
【０１４６】
このようにしてユーザーの手によって単語「A」のクラスの対応付けが正しくなされた（すなわち評価値Wnが閾値以上である最終的な解析結果の意味ネットワークが得られた）とき、その対応付けを正解データとして形態素解析部１０に学習させてもよい。この学習は、形態素解析用の辞書にその単語「A」のクラス情報としてその正解のクラスを登録したり、その正解を教師データとして形態素解析のモデルに機械学習を実行したりすることにより実現される。この学習により、次回からの単語に対するクラスへの割り当て精度の向上が図られる。
【０１４７】
以上の例では、クラス変更処理部３０が再割り当て先のクラスの選択肢をユーザーに提示し、ユーザーに選択を行わせたが、これは一例に過ぎない。この代わりに、クラス変更処理部３０が各選択肢についての上述のシミュレーションの結果を用いて最適な再割り当て先（例えば評価値Wnが閾値以上かつ最大のもの）を判定し、判定した再割り当て先に対してインスタンスAを自動的に割り当て直してもよい。また、クラス変更処理部３０は、シミュレーションにより評価値Wnが閾値以上かつ他の候補よりも顕著に高い候補が１つだけ得られた場合は、その候補で用いたクラス再割り当てを自動的に採用し、そうでない場合すなわち評価値Wnが閾値以上で最大に近い候補が複数得られた場合には、それらを提示してユーザーに選択させるという方式を用いてもよい。
【０１４８】
＜変形例２＞
上述した実施の形態及び変形例１では、入力テキストに対する意味ネットワークを作成した。しかし、意味ネットワーク生成の前の段階、例えばトリプル生成の段階まででも有益性がある。この変形例２は、トリプル生成を利用した装置構成について説明する。
【０１４９】
図１５にこの変形例２の装置構成の例を示す。図１５に示す装置のうち、形態素解析部１０からトリプル生成部２０までの各要素は、図１に示した装置の同符号の要素と同様のものである。この変形例２の装置は、図１の装置のトリプル評価部２２〜候補選択部２８までの要素に代えて、質問部４０を有する。
【０１５０】
質問部４０は、トリプル生成部２０が入力テキストとオントロジーとの組み合わせから生成したトリプル群の中に、両端のインスタンスは同じだがプロパティが互いに異なるトリプルが複数あれば、それら複数のトリプルのうちのどのトリプル（すなわちどのプロパティ）が意味的に適切であるかをユーザーに質問する。
【０１５１】
例えば、上述した例文１の場合、トリプル生成部２０は「撮影した-被写体->カメラ」と「撮影した-撮影機材->カメラ」という２つのトリプルを生成する。これら２つのトリプルは、図７に示されるように、両端のインスタンス「カメラ」及び「撮影した」が共通で、その間のプロパティが異なる。このように両端のインスタンスが共通のトリプルが複数あるということは、それら両インスタンスの関係の意味づけに曖昧性があることを意味する。上述の実施の形態では、トリプル評価部２２による評価によりそのような曖昧性が低減される方向への絞込を行っているのに対し、この変形例２の質問部４０は、それら複数のトリプルをユーザーに提示し、どの意味づけが適切かをユーザーに選択させる。
【０１５２】
例えば「あなたは何を撮影しましたか」という入力テキストに対して、トリプル生成部２０が、オントロジーを参照することで、インスタンス「あなた」とインスタンス「撮影した」が構成するトリプルとして、「撮影した-所有者->あなた」、「撮影した-被写体>あなた」、「撮影した-行為の主体->あなた」の３つを生成したとする。すると質問部４０は、それら３つのトリプルのうちどれがインスタンス「あなた」とインスタンス「撮影した」の関係を表すものとして正しいのかを尋ねる内容の質問用ＵＩ画面を生成し、ユーザーに対して提示する。この画面には、例えば、次に例示する選択肢が示され、ユーザーからの選択を受け付ける。
【０１５３】
１）「あなた」は「撮影した」に対する「所有者」である
２）「あなた」は「撮影した」に対する「被写体」である
３）「あなた」は「撮影した」に対する「行為の主体」である
これらの選択肢の文は、質問部４０が、各トリプルのデータから自動的に生成する。
そして、ユーザーから選択されたトリプルを、それら２つのインスタンス間の関係を表すものとして確定する。
【０１５４】
図１５の装置は、質問部４０の質問用ＵＩ画面を用いてユーザーから選択されたトリプルを、最終的な処理結果として出力する。
【０１５５】
なお、質問部４０から出力される処理結果（トリプル）を用いて入力テキストに対応する意味ネットワークを生成してもよい。これには、質問部４０は、処理結果を候補生成部２４に渡せばよい。この場合、任意の２つのインスタンス間のエッジ（トリプル内のプロパティ）は高々１つであるので、生成される候補の数が上記実施の形態の場合よりも少なくなる。
【０１５６】
以上に例示した意味ネットワーク解析装置やその変形例の装置は、コンピュータにそれら装置の持つ機能を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、ＣＰＵ等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）およびリードオンリメモリ（ＲＯＭ）等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）やＳＳＤ（ソリッドステートドライブ）等の固定記憶装置を制御するコントローラ、各種Ｉ／Ｏ（入出力）インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバス等を介して接続された回路構成を有する。また、そのバスに対し、例えばＩ／Ｏインタフェース経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭに読み出されＣＰＵ等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。
【符号の説明】
【０１５７】
１０  形態素解析部、１２  係り受け解析部、１４  初期グラフ生成部、１６  オントロジーＤＢ（データベース）、１８  インスタンス生成部、２０  トリプル生成部、２２  トリプル評価部、２４  候補生成部、２６  候補評価部、２８  候補選択部、３０  クラス変更処理部、４０  質問部。
【図１】
2018005690.tif 000003
【図２】
2018005690.tif 000004
【図３】
2018005690.tif 000005
【図４】
2018005690.tif 000006
【図５】
2018005690.tif 000007
【図６】
2018005690.tif 000008
【図７】
2018005690.tif 000009
【図８】
2018005690.tif 000010
【図９】
2018005690.tif 000011
【図１０】
2018005690.tif 000012
【図１１】
2018005690.tif 000013
【図１２】
2018005690.tif 000014
【図１３】
2018005690.tif 000015
【図１４】
2018005690.tif 000016
【図１５】
2018005690.tif 000017