(57)【要約】【課題】異なる概念の体系に属す単語間の有意な関連度を利用可能とすること。【解決手段】上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を計算する情報処理装置であって、前記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するデータ取得部と、前記データ取得部により取得された前記基本単語データに基づいて、前記学習データにおける、第１の単語と第２の単語との間の共起回数、及びいずれか一方又は双方の基本単語の体系に属す各単語を対応する基本単語に置換えた場合の共起回数を計数する計数部と、前記計数部により計数された共起回数に基づいて、前記第１の単語と前記第２の単語との間の関連度を計算する関連度計算部と、を備える情報処理装置を提供する。【選択図】図１
2010231538.tif 000002
【特許請求の範囲】
【請求項１】
上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を計算する情報処理装置であって：
前記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するデータ取得部と；
前記データ取得部により取得された前記基本単語データに基づいて、前記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数する計数部と；
前記計数部により計数された前記第１の共起回数、前記第２の共起回数、前記第３の共起回数、及び前記第４の共起回数に基づいて、前記第１の単語と前記第２の単語との間の関連度を計算する関連度計算部と；
を備える情報処理装置。
【請求項２】
前記共起回数とは、前記学習データに含まれる前記複数のテキストデータのうち２つの単語を共に含むテキストデータの数を表す、請求項１に記載の情報処理装置。
【請求項３】
前記関連度計算部は、さらに、上下関係の定義に従って前記第１の単語の上位の第３の単語又は前記第２の単語の上位の第４の単語を取得し、取得した前記第３の単語と前記第２の単語との間の関連度、前記第１の単語と取得した前記第４の単語との間の関連度、又は取得した前記第３の単語と取得した前記第４の単語との間の関連度のうちの少なくとも１つを計算する、請求項２に記載の情報処理装置。
【請求項４】
前記関連度計算部は、さらに、上下関係の定義に従って前記第１の単語の下位の第３の単語又は前記第２の単語の下位の第４の単語を取得し、取得した前記第３の単語と前記第２の単語との間の関連度、前記第１の単語と取得した前記第４の単語との間の関連度、又は取得した前記第３の単語と取得した前記第４の単語との間の関連度のうちの少なくとも１つを計算する、請求項２に記載の情報処理装置。
【請求項５】
前記関連度は、前記第２の共起回数と前記第３の共起回数と前記第４の共起回数とを用いて計算される前記第１の単語と前記第２の単語との間の予測共起回数に対する前記第１の共起回数の発生確率に応じて計算される、請求項２〜４のいずれかに記載の情報処理装置。
【請求項６】
前記関連度は、前記予測共起回数に対する前記第１の共起回数の累積ポアソン確率に応じて計算される、請求項５に記載の情報処理装置。
【請求項７】
前記関連度計算部は、前記第１の単語と前記第２の単語との間の関連度を計算した後、計算した当該関連度が記憶媒体に記憶されている前記第１の単語と前記第２の単語との間の関連度よりも大きい場合に、計算した当該関連度を前記記憶媒体に記憶させる、請求項１に記載の情報処理装置。
【請求項８】
上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を表す関連度データ、及び複数の検索対象データを取得するデータ取得部と；
前記データ取得部により取得された前記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が前記関連度データにより定義されている他の単語と適合する検索対象データを特定する検索部と；
を備え、
各単語は、前記複数の単語のうち上位の単語が定義されていない基本単語のいずれかとそれぞれ対応付けられており、
前記関連度データにより表される各関連度は、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度である、
情報処理装置。
【請求項９】
前記検索部は、さらに、上下関係の定義に従って前記キーワードに含まれるいずれかの単語の上位又は下位の単語を取得し、当該上位又は下位の単語との間の関連度が前記関連度データにより定義されている他の単語と適合する検索対象データを特定する、請求項８に記載の情報処理装置。
【請求項１０】
前記検索部は、前記関連度データを用いて、特定した前記検索対象データごとに前記キーワードに対する適合度を算出する、請求項８又は請求項９のいずれかに記載の情報処理装置。
【請求項１１】
上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を計算する関連度計算方法であって、
前記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するステップと；
取得された前記基本単語データに基づいて、前記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数するステップと；
計数された前記第１の共起回数、前記第２の共起回数、前記第３の共起回数、及び前記第４の共起回数に基づいて、前記第１の単語と前記第２の単語との間の関連度を計算するステップと；
を含む関連度計算方法。
【請求項１２】
複数の検索対象データから所与のキーワードと適合する検索対象データを特定するためのデータ検索方法であって：
上下関係が定義された複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、並びに、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度を表す関連度データを記憶媒体に記憶している情報処理装置を用いて、
少なくとも２以上の単語の間の関連度を表す前記関連度データ、及び複数の検索対象データを取得するステップと；
取得された前記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が前記関連度データにより定義されている他の単語と適合する検索対象データを特定するステップと；
を含むデータ検索方法。
【請求項１３】
上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を情報処理装置を用いて計算するためのプログラムであって、前記情報処理装置を制御するコンピュータを：
前記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するデータ取得部と；
前記データ取得部により取得された前記基本単語データに基づいて、前記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数する計数部と；
前記計数部により計数された前記第１の共起回数、前記第２の共起回数、前記第３の共起回数、及び前記第４の共起回数に基づいて、前記第１の単語と前記第２の単語との間の関連度を計算する関連度計算部と；
として機能させるための、プログラム。
【請求項１４】
複数の検索対象データから所与のキーワードと適合する検索対象データを情報処理装置を用いて特定するためのプログラムであって、前記情報処理装置を制御するコンピュータを：
前記複数の検索対象データ、並びに、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を表す関連度データであって、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、前記第１の単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語との間の共起回数を含む第３の共起回数、及び前記第１の単語に対応付けられた基本単語の下位の各単語と前記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度を表す前記関連度データを記憶媒体から取得するデータ取得部と；
前記データ取得部により取得された前記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が前記関連度データにより定義されている他の単語と適合する検索対象データを特定する検索部と；
として機能させるための、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、関連度計算方法、データ検索方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、あらゆる種類の情報が電子化され、例えばインターネットなどのネットワークを介してユーザによりアクセス可能となっている。そして、このような大量の情報の中から所望の情報を容易に見つけ出すために、検索技術が用いられる。
【０００３】
検索技術に関する技術開発の事例としては、例えば下記特許文献１が挙げられる。下記特許文献１では、文字列が示す入力語との間で概念上の階層的な上下関係を持つ拡張語を概念の辞書データから取得し、取得した拡張語と入力語とを用いて構成した検索キーを使用して検索を行う技術が開示されている。同文献では、さらに、入力語の属性と上述した検索キーに一致するキーワードの属性との間の類似度に基づいて、検索された情報の優先順位を決定する手法も開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１０８４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、例えば、限られた分野の語彙について概念上の階層的な上下関係を網羅的に記述することは可能であるとしても、同一の階層に属しない（又は分野の異なる）単語間にまで網羅的に関連性を記述することは容易ではない。
【０００６】
例えば、図１９には、「資格」についての概念上の上下関係を表す概念体系Ｃ１、及び「職種」についての概念上の上下関係を表す概念体系Ｃ２が部分的に示されている。概念体系Ｃ１においては、例えば、相対的に上位の概念を表す「経理関連資格」、「ＩＴ関連資格」及び「法律関連資格」という３つの単語が定義されている。さらに、「ＩＴ関連資格」の下位の概念を表す単語として、「パソコン検定」、「ワープロ検定」及び「情報処理技術者」という３つの単語が定義されている。また、「法律関連資格」の下位の概念を表す単語として、「公認会計士」及び「行政書士」という２つの単語が定義されている。さらに、「ワープロ検定」の下位の概念を表す単語として、「ワープロ検定１級」及び「ワープロ検定２級」という２つの単語が定義されている。同様に、概念体系Ｃ２においては、例えば、「ＩＴ系職種」の下位の概念を表す「ソフトウェア開発」及び「プログラマ」が定義され、さらに「プログラマ」の下位の概念を表す「オープン系プログラマ」が定義されている。このような概念体系Ｃ１及びＣ２をまたがる単語の組合せは、例えば、数十万から数百万といった膨大な数となり得る。そのため、それら組合せについて網羅的に関連度を付与することは作業量の面から見て現実的でなく、また客観的な基準に基づいて有意な関連度を付与することも容易でない。
【０００７】
図１９に示したような概念上の上下関係を定義された単語の組合せについて関連度を付与する１つの手法として、概念体系の上位に位置する単語間のみに関連度を付与し、その関連度を下位の単語間にも適用するということも考えられる。即ち、例えば、「ＩＴ関連資格」と「ＩＴ系職種」との間の関連度が１．０であれば、下位の「情報処理技術者」と「プログラマ」との間の関連度も１．０（又は１．０に所定の係数を乗じた値）とする。この場合、関連度を付与すべき上位の概念を表す単語間の組合せは、例えば数百程度に削減され得る。しかし、こうした手法では、下位概念を表す単語間の本来一様でない関連性が正確に表現されにくい。例えば、「ＩＴ関連資格」の下位に「情報処理技術者」及び「ＣＡＤ関連資格」、「ＩＴ系職種」の下位に「ＣＡＤ設計者」があった場合、「情報処理技術者」と「ＣＡＤ設計者」との間の関連度は、「ＣＡＤ関連資格」と「ＣＡＤ設計者」との間の関連度よりも低いはずである。しかし、これら単語の各組合せの関連度として上位の単語間に付与された関連度を使用すると、実態に反して一様な関連度が使用されることとなる。
【０００８】
また、例えば求人情報の検索などにおいて「勤務地」、「業務内容」、「給与」、「資格」又は「職種」などといった複数の種類のデータ項目が検索キーとなる場合がある。このような各データ項目は、それぞれ、上下関係を持つ別個の概念体系を有し得る。例えば、「勤務地」についての相対的な上位概念を表す単語としては「首都圏」、下位概念を表す単語としては「新宿」又は「渋谷」などが挙げられる。こうした場合に、例えば、ユーザにより「勤務地」と「資格」のみを指定する検索条件が与えられたとき、指定された勤務地から想定される業務内容、又は指定された資格から想定される職種などを考慮に入れて検索を行うことができれば有益である。このような検索は、例えば、概念体系をまたがった単語間の有意な関連度を表すデータを与えることにより実現され得る。
【０００９】
そこで、本発明は、異なる概念の体系に属す単語間の有意な関連度を利用可能とする、新規かつ改良された情報処理装置、関連度計算方法、データ検索方法、及びプログラムを提供しようとするものである。
【課題を解決するための手段】
【００１０】
本発明のある実施形態によれば、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を計算する情報処理装置であって、上記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するデータ取得部と、上記データ取得部により取得された上記基本単語データに基づいて、上記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数する計数部と、上記計数部により計数された上記第１の共起回数、上記第２の共起回数、上記第３の共起回数、及び上記第４の共起回数に基づいて、上記第１の単語と上記第２の単語との間の関連度を計算する関連度計算部と、を備える情報処理装置が提供される。
【００１１】
かかる構成によれば、互いに異なる基本単語ごとの概念の体系に属す第１の単語と第２の単語との間の関連度が、上記学習データから計数された上記第１から第４の共起回数に基づいて自動的に算出される。それにより、客観的な基準に基づく有意な関連度を単語の多数の組合せについて供給することが可能となる。
【００１２】
また、上記共起回数は、上記学習データに含まれる上記複数のテキストデータのうち２つの単語を共に含むテキストデータの数を表してもよい。
【００１３】
また、上記関連度計算部は、さらに、上下関係の定義に従って上記第１の単語の上位の第３の単語又は上記第２の単語の上位の第４の単語を取得し、取得した上記第３の単語と上記第２の単語との間の関連度、上記第１の単語と取得した上記第４の単語との間の関連度、又は取得した上記第３の単語と取得した上記第４の単語との間の関連度のうちの少なくとも１つを計算してもよい。
【００１４】
また、上記関連度計算部は、さらに、上下関係の定義に従って上記第１の単語の下位の第３の単語又は上記第２の単語の下位の第４の単語を取得し、取得した上記第３の単語と上記第２の単語との間の関連度、上記第１の単語と取得した上記第４の単語との間の関連度、又は取得した上記第３の単語と取得した上記第４の単語との間の関連度のうちの少なくとも１つを計算してもよい。
【００１５】
また、上記関連度は、上記第２の共起回数と上記第３の共起回数と上記第４の共起回数とを用いて計算される上記第１の単語と上記第２の単語との間の予測共起回数に対する、上記第１の共起回数の発生確率に応じて計算されてもよい。
【００１６】
また、上記関連度は、上記予測共起回数に対する上記第１の共起回数の累積ポアソン確率に応じて計算されてもよい。
【００１７】
また、上記関連度計算部は、上記第１の単語と上記第２の単語との間の関連度を計算した後、計算した当該関連度が記憶媒体に記憶されている上記第１の単語と上記第２の単語との間の関連度よりも大きい場合に、計算した当該関連度を上記記憶媒体に記憶させてもよい。
【００１８】
また、本発明の別の実施形態によれば、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を表す関連度データ、及び複数の検索対象データを取得するデータ取得部と、上記データ取得部により取得された上記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が上記関連度データにより定義されている他の単語と適合する検索対象データを特定する検索部と、を備え、各単語は、上記複数の単語のうち上位の単語が定義されていない基本単語のいずれかとそれぞれ対応付けられており、上記関連度データにより表される各関連度は、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度である、情報処理装置が提供される。
【００１９】
かかる構成によれば、互いに異なる基本単語ごとの概念の体系に属す第１の単語と第２の単語との間の関連度であって、上記学習データから計数された上記第１から第４の共起回数に基づいて自動的に算出された関連度を用いて、所与のキーワードに適合するデータが検索される。それにより、例えば、概念の体系をまたがって関連性を有するデータを含む検索結果を、キーワードに応じて柔軟にユーザに提供することが可能となる。
【００２０】
また、上記検索部は、さらに、上下関係の定義に従って上記キーワードに含まれるいずれかの単語の上位又は下位の単語を取得し、当該上位又は下位の単語との間の関連度が上記関連度データにより定義されている他の単語と適合する検索対象データを特定してもよい。
【００２１】
また、上記検索部は、上記関連度データを用いて、特定した上記検索対象データごとに上記キーワードに対する適合度を算出してもよい。
【００２２】
また、本発明の別の実施形態によれば、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を計算する関連度計算方法であって、上記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するステップと、取得された上記基本単語データに基づいて、上記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数するステップと、計数された上記第１の共起回数、上記第２の共起回数、上記第３の共起回数、及び上記第４の共起回数に基づいて、上記第１の単語と上記第２の単語との間の関連度を計算するステップと、を含む関連度計算方法が提供される。
【００２３】
また、本発明の別の実施形態によれば、複数の検索対象データから所与のキーワードと適合する検索対象データを特定するためのデータ検索方法であって、上下関係が定義された複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、並びに、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度を表す関連度データを記憶媒体に記憶している情報処理装置を用いて、少なくとも２以上の単語の間の関連度を表す上記関連度データ、及び複数の検索対象データを取得するステップと、取得された上記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が上記関連度データにより定義されている他の単語と適合する検索対象データを特定するステップと、を含むデータ検索方法が提供される。
【００２４】
また、本発明の別の実施形態によれば、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を情報処理装置を用いて計算するためのプログラムであって、上記情報処理装置を制御するコンピュータを、上記複数の単語のうち上位の単語が定義されていない基本単語と当該基本単語の下位の単語とを対応付けて定義している基本単語データ、及び複数のテキストデータを含む学習データを取得するデータ取得部と、上記データ取得部により取得された上記基本単語データに基づいて、上記学習データにおける、第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数を計数する計数部と、上記計数部により計数された上記第１の共起回数、上記第２の共起回数、上記第３の共起回数、及び上記第４の共起回数に基づいて、上記第１の単語と上記第２の単語との間の関連度を計算する関連度計算部と、として機能させるためのプログラムが提供される。
【００２５】
また、本発明の別の実施形態によれば、複数の検索対象データから所与のキーワードと適合する検索対象データを情報処理装置を用いて特定するためのプログラムであって、上記情報処理装置を制御するコンピュータを、上記複数の検索対象データ、並びに、上下関係が定義された複数の単語のうち少なくとも２以上の単語の間の関連度を表す関連度データであって、複数のテキストデータを含む学習データにおける第１の単語と第２の単語との間の第１の共起回数、上記第１の単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第２の共起回数、上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語との間の共起回数を含む第３の共起回数、及び上記第１の単語に対応付けられた基本単語の下位の各単語と上記第２の単語に対応付けられた基本単語の下位の各単語との間の共起回数を含む第４の共起回数に基づいて計算された関連度を表す上記関連度データを記憶媒体から取得するデータ取得部と、上記データ取得部により取得された上記複数の検索対象データのうち、所与のキーワードに含まれるいずれかの単語と適合し又は当該単語との間の関連度が上記関連度データにより定義されている他の単語と適合する検索対象データを特定する検索部と、として機能させるためのプログラムが提供される。
【発明の効果】
【００２６】
以上説明したように、本発明に係る情報処理装置、関連度計算方法、データ検索方法、及びプログラムによれば、異なる概念の体系に属す単語間の有意な関連度を多くの手作業を要することなく自動的に生成し、データ検索に利用することが可能となる。
【図面の簡単な説明】
【００２７】
【図１】一実施形態に係る関連度計算のための情報処理装置の構成を示すブロック図である。
【図２】一実施形態に係る上下関係データのデータ例を示す説明図である。
【図３】一実施形態に係る基本単語データのデータ例を示す説明図である。
【図４】一実施形態に係る初期関連度データのデータ例を示す説明図である。
【図５】一実施形態に係る学習データのデータ例を示す説明図である。
【図６】一実施形態に係る共起回数計数処理について説明するための説明図である。
【図７】一実施形態に係る関連度計算処理について説明するための第１の説明図である。
【図８】共起回数のデータの一例を示す説明図である。
【図９】図８に示した共起回数に基づいて算出され得る単語間の関連度のデータ例を示す説明図である。
【図１０】一実施形態に係る関連度計算処理について説明するための第２の説明図である。
【図１１】一実施形態に係る関連度計算処理の流れを示すフローチャートである。
【図１２】一実施形態に係るデータ検索のための情報処理装置の構成を示すブロック図である。
【図１３】一実施形態に係る検索対象データのデータ例を示す説明図である。
【図１４】一実施形態に係る検索条件入力画面の一例を示す説明図である
【図１５】一実施形態に係る関連度抽出処理について説明するための説明図である。
【図１６】一実施形態に係る適合度算出処理について説明するための説明図である。
【図１７】一実施形態に係るデータ検索処理の流れを示すフローチャートである。
【図１８】汎用コンピュータの構成の一例を示すブロック図である。
【図１９】単語の概念上の上下関係について説明するための説明図である。
【発明を実施するための形態】
【００２８】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付すことにより重複説明を省略する。
【００２９】
また、次の見出しの順序で説明を行うものとする。
１．関連度の計算
１−１．装置の構成例
１−２．処理の流れ
２．データ検索
２−１．装置の構成例
２−２．処理の流れ
３．まとめ
【００３０】
＜１．関連度の計算＞
［１−１．装置の構成例］
図１は、本発明の一実施形態に係る関連度を計算するための情報処理装置１００の構成を示すブロック図である。図１を参照すると、情報処理装置１００は、データ取得部１４０、共起回数計数部１５０、及び関連度計算部１６０を主に備える。また、情報処理装置１００は、第１のデータベース１２０及び第２のデータベース１３０と接続される。なお、第１のデータベース１２０及び第２のデータベース１３０は、それぞれ情報処理装置１００の一部であってもよい。また、第１のデータベース１２０と第２のデータベース１３０とは物理的に同一のデータベースであってもよい。
【００３１】
（第１のデータベース）
第１のデータベース１２０は、例えばハードディスク又は半導体メモリなどの記憶媒体を用いて、上下関係データ１２２、基本単語データ１２４、初期関連度データ１２６、及び学習関連度データ１２８を主に記憶する。
【００３２】
上下関係データ１２２は、複数の単語の上下関係を予め定義しているデータである。上下関係データ１２２により定義される上下関係とは、例えば、各単語の表す概念についての上位概念又は下位概念などの関係、又は意味上若しくは数値的な包含−被包含の関係などであってよい。
【００３３】
図２は、本実施形態に係る上下関係データ１２２のデータ例を示す説明図である。図２を参照すると、上下関係データ１２２は、「単語Ａ」、「関係」及び「単語Ｂ」の３つのデータ項目を有している。
【００３４】
図２の第２行において、「関係」として「基本単語」、「単語Ｂ」として「職種」が与えられている。これは、「職種」という単語が上位の単語を定義されていない基本単語であることを表している。同様に、第３行は、「資格」という単語が上位の単語を定義されていない基本単語であることを表している。
【００３５】
また、図２の第４行において、「単語Ａ」、「関係」及び「単語Ｂ」として「ＩＴ関連資格」、「上位・下位」及び「情報処理技術者」が与えられている。これは、「ＩＴ関連資格」という単語の下位の単語として「情報処理技術者」が定義されていることを表している。同様に、第５行は、「情報処理技術者」という単語の下位の単語として「基本情報技術者」が定義されていることを表している。第６行は、「ＩＴ系職種」という単語の下位の単語として「ソフトウェア開発」が定義されていることを表している。
【００３６】
このような上下関係データ１２２によれば、例えば図１９に示したような単語間の上下関係を、基本単語ごとの木構造の体系として定義することができる。なお、単語間の関係は図２に示した例に限定されない。例えば、共通する概念を表す異なる単語である「同義関係」などが、さらに上下関係データ１２２において定義されてもよい。
【００３７】
基本単語データ１２４は、上述した基本単語と当該基本単語の下位の単語とを対応付けて予め定義しているデータである。
【００３８】
図３は、本実施形態に係る基本単語データ１２４のデータ例を示す説明図である。図３を参照すると、基本単語データ１２４は、「単語」及び「基本単語」の２つのデータ項目を有している。
【００３９】
図３の第２行では、「ＩＴ関連資格」という単語が、「資格」という基本単語に対応付けられている。これは、「ＩＴ関連資格」という単語が「資格」という基本単語の体系に属すことを表している。同様に、第３行及び第４行では、「情報処理技術者」及び「基本情報技術者」がそれぞれ「資格」という基本単語と対応付けられている。また、第５行及び第６行では、「ＩＴ系職種」及び「ソフトウェア」がそれぞれ「職種」という基本単語と対応付けられている。
【００４０】
このような基本単語データ１２４により、各単語が属す基本単語の体系を単語ごとに定義することができる。なお、基本単語と各基本単語の下位の単語とを対応付けて定義することができれば、基本単語データ１２４のデータ形式はかかる例に限定されない。例えば、図２に示した上下関係データ１２２と図３に示した基本単語データ１２４とを統合した１つのテーブルを用いて、単語間の上下関係、及び基本単語と単語との対応を併せて定義してもよい。
【００４１】
初期関連度データ１２６は、上下関係データ１２２により上下関係が定義された複数の単語のうち階層構造の相対的に上位に位置する単語について、基本単語の体系をまたがった関連度を予め定義しているデータである。初期関連度データ１２６により予め関連度が定義される単語は、例えば階層構造の基本単語から数段目（例えば２段目）までの単語などであってよい。但し、本来関連の無い（又は関連の低い）単語間の関連度は定義されなくてよい。
【００４２】
図４は、本実施形態に係る初期関連度データ１２６のデータ例を示す説明図である。図４を参照すると、初期関連度データ１２６は、「単語Ｘ」、「基本単語Ｘｂ」、「単語Ｙ」、「基本単語Ｙｂ」、及び「関連度」の５つのデータ項目を有している。
【００４３】
図４の第２行では、「単語Ｘ」及び「基本単語Ｘｂ」として「ＩＴ関連資格」及び「資格」、「単語Ｙ」及び「基本単語Ｙｂ」として「ＩＴ系職種」及び「職種」、「関連度」として「１．０」が与えられている。これは、「資格」の体系に属す「ＩＴ関連資格」と「職種」の体系に属す「ＩＴ系職種」との間の関連度が１．０であることを表している。同様に、第３行は、「資格」の体系に属す「経理関連資格」と「職種」の体系に属す「経理事務」との間の関連度が１．０であることを表している。また、第４行は、基本単語である「資格」と基本単語である「職種」との間の関連度が１．０であることを表している。なお、関連度に方向がある場合、即ち「単語Ｘ」の「単語Ｙ」に対する関連度と「単語Ｙ」の「単語Ｘ」に対する関連度が異なる場合には、それぞれ「単語Ｘ」及び「基本単語Ｘｂ」と「単語Ｙ」及び「基本単語Ｙｂ」とを入れ替えた２つの行が初期関連度データ１２６に含まれていてもよい。
【００４４】
ここまで説明した上下関係データ１２２、基本単語データ１２４、及び初期関連度データ１２６は、後述する本実施形態に係る関連度計算処理の実行前に予め用意されるデータである。これに対し、学習関連度データ１２８は、当該関連度計算処理により生成される。学習関連度データ１２８のデータ項目は、図４に示した初期関連度データ１２６のデータ項目と同一であってよい。
【００４５】
（第２のデータベース）
第２のデータベース１３０は、例えばハードディスク又は半導体メモリなどの記憶媒体を用いて、学習データ１３２を主に記憶する。学習データ１３２とは、単語間の関連度の計算に用いるデータであって、複数のテキストデータを含むデータの集合である。学習データに含まれるテキストデータとは、例えば、関連度の計算結果を用いた検索の対象となるデータであってもよい。即ち、例えば求人情報の検索に使用する関連度を計算する場合には、学習データ１３２は、求人情報の１件を１単位とするテキストデータの集合などであってよい。
【００４６】
図５は、本実施形態に係る学習データ１３２のデータ例を示す説明図である。図５を参照すると、学習データ１３２は、「データＩＤ」、「テキストデータ」、及び「生起単語」の３つのデータ項目を有している。
【００４７】
図５において、学習データ１３２は、データＩＤ＝「Ｔ１００」及び「Ｔ１０１」の２つのテキストデータを含んでいる。また、各テキストデータにおいて、上下関係を定義された単語に予めタグが付与されている。例えば、データＩＤ＝「Ｔ１００」のテキストデータ（以下、テキストデータＴ１００という）において、「ソフトウェア開発」という単語に“<職種  class="ソフトウェア開発">ソフトウェア開発</職種>”というタグが付与されている。かかるタグは、「ソフトウェア開発」という単語が「職種」という基本単語の体系に属すことを表している。同様に、テキストデータＴ１００において、「ＳＥ」及び「情報処理技術者」の各単語にもそれぞれタグが付与されている。また、テキストデータＴ１０１においては、「ＣＡＤ関連資格」及び「ＣＡＤ設計者」の各単語にそれぞれタグが付与されている。なお、ここではテキストデータに付与されるタグの形式としてＸＭＬ（eXtensible  Markup  Language）形式を用いているが、タグの形式はかかる例に限定されない。
【００４８】
学習データ１３２の「生起単語」は、各テキストデータにおいて付与されたタグにより表される基本単語と単語の対、即ち、各テキストデータにおいて出現した単語に対応する基本単語と当該単語の対を示している。例えば、テキストデータＴ１００の生起単語は、「資格：情報処理技術者」、「職種：ソフトウェア開発」、及び「職種：ＳＥ」である（コロン“：”の前が基本単語、後が単語を表す）。一方、テキストデータＴ１０１の生起単語は、「資格：ＣＡＤ関連資格」及び「職種：ＣＡＤ設計者」である。
【００４９】
なお、学習データ１３２に含まれるテキストデータへのタグの付与及び生起単語の抽出は、後述する本実施形態に係る関連度計算処理の実行前に予め行われてもよく、又は関連度計算処理の一部として行われてもよい。
【００５０】
本実施形態に係る情報処理装置１００は、かかる上下関係データ１２２、基本単語データ１２４、初期関連度データ１２６、及び学習データ１３２を用いて、単語間の関連度を自動的に計算し、計算結果を学習関連度データ１２８に登録する。
【００５１】
（データ取得部）
データ取得部１４０は、情報処理装置１００が第１のデータベース１２０及び第２のデータベース１３０にアクセスしてデータを入出力するための手段としての役割を果たす。データ取得部１４０は、情報処理装置１００による単語間の関連度の計算に際して、例えば第１のデータベース１２０から上下関係データ１２２、基本単語データ１２４、及び初期関連度データ１２６を取得して共起回数計数部１５０へ出力する。同様に、データ取得部１４０は、例えば第２のデータベース１３０から学習データ１３２を取得して共起回数計数部１５０へ出力する。
【００５２】
（共起回数計数部）
共起回数計数部１５０は、上記データ取得部１４０により取得された各データを用いて、学習データ１３２における所定の単語間の共起回数を計数する。本実施形態において、単語間の共起回数とは、例えば、学習データ１３２に含まれる複数のテキストデータのうち２つの単語を共に含む（即ち２つの単語が“共起”する）テキストデータの数であってよい。
【００５３】
共起回数計数部１５０は、例えば、まず、初期関連度データ１２６から基本単語間の関連度を抽出する。このとき、例えば図４に示した「資格」と「職種」との間の関連度１．０が抽出される。次に、共起回数計数部１５０は、関連度が抽出された基本単語の双方が生起単語に含まれるテキストデータを、学習データ１３２から取得する。このとき、例えば「資格」と「職種」とを共に含む図５のテキストデータＴ１００及びＴ１０１が学習データ１３２から取得される。次に、共起回数計数部１５０は、取得したテキストデータの数を、共起している単語の組合せごとに計数する。例えばＸとＹが共起する場合を（Ｘ，Ｙ）と表記すると、図５の例では、（資格：情報処理技術者，職種：ソフトウェア開発）、（資格：情報処理技術者，職種：ＳＥ）、及び（資格：ＣＡＤ関連資格，職種：ＣＡＤ設計者）の共起回数がそれぞれ１回ずつカウントされる。
【００５４】
このような共起回数を学習データ１３２から取得した全てのテキストデータについて計数することにより、例えば、図６に示したような単語間の計数結果Ｒｅｓ１が算出される。
【００５５】
図６の計数結果Ｒｅｓ１を参照すると、（資格：情報処理技術者，職種：ソフトウェア開発（ＳＷ開発））の共起回数が１２回、（資格：情報処理技術者，職種：ＳＥ）の共起回数が７回、（資格：情報処理技術者，職種：ＣＡＤ設計者）の共起回数が３回と計数されている。同様に、（資格：ＣＡＤ関連資格，職種：ＳＷ開発）の共起回数が２回、（資格：ＣＡＤ関連資格，職種：ＳＥ）の共起回数が３回、（資格：ＣＡＤ関連資格，職種：ＣＡＤ設計者）の共起回数が１０回と計数されている。また、（資格：パソコン検定，職種：ＳＷ開発）の共起回数が０回、（資格：パソコン検定，職種：ＳＥ）の共起回数が２回、（資格：パソコン検定，職種：ＣＡＤ設計者）の共起回数が１回と計数されている。
【００５６】
次に、共起回数計数部１５０は、計数した共起回数を集計することにより、２つの単語のうち一方を基本単語に置換えた場合の共起回数を算出する。例えば、図６の計数結果Ｒｅｓ２を参照すると、「職種」の下位の「ＳＷ開発」、「ＳＥ」及び「ＣＡＤ設計者」を基本単語である「職種」に置換えた場合の共起回数が算出されている。例えば、（資格：情報処理技術者，職種）の共起回数は１２＋７＋３＝２２回である。また、（資格：ＣＡＤ関連資格，職種）の共起回数は２＋３＋１０＝１５回、（資格：パソコン検定，職種）の共起回数は０＋２＋１＝３回である。同様に、例えば、図６の計数結果Ｒｅｓ３を参照すると、「資格」の下位の「情報処理技術者」、「ＣＡＤ関連資格」及び「パソコン検定」を基本単語である「資格」に置換えた場合の共起回数が算出されている。例えば、（資格，ＳＷ開発）の共起回数は１４回、（資格，ＳＥ）の共起回数は１２回、（資格，ＣＡＤ設計者）の共起回数は１４回である。
【００５７】
さらに、共起回数計数部１５０は、２つの単語のうち双方を基本単語に置換えた場合の共起回数を算出する。例えば、図６の計数結果Ｒｅｓ４を参照すると、（資格，職種）の共起回数が２２＋１５＋３＝１４＋１２＋１４＝４０回と算出されている。
【００５８】
共起回数計数部１５０は、このように計数した計数結果Ｒｅｓ１、Ｒｅｓ２、Ｒｅｓ３及びＲｅｓ４を関連度計算部１６０へ出力する。
【００５９】
（関連度計算部）
関連度計算部１６０は、共起回数計数部１５０による共起回数の計数結果に基づいて、複数の単語間の関連度を計算する。図７は、本実施形態に係る関連度計算処理について説明するための第１の説明図である。
【００６０】
図７において、共起回数計数部１５０により計数された第１の単語Ｘｉ（ｉ＝１，２，３）と第２の単語Ｙｊ（ｊ＝１，２，３）との間の第１の共起回数が、Ｆ（Ｘｉ，Ｙｊ）と表されている。また、第１の単語Ｘｉと第２の単語Ｙｊに対応する基本単語Ｙｂの下位の各単語との間の共起回数を含む第２の共起回数が、Ｆ（Ｘｉ，Ｙｂ）と表されている。また、第１の単語Ｘｉに対応する基本単語Ｘｂの下位の各単語と第２の単語Ｙｊとの間の共起回数を含む第３の共起回数が、Ｆ（Ｘｂ，Ｙｊ）と表されている。さらに、第１の単語Ｘｉに対応する基本単語Ｘｂの下位の各単語と第２の単語Ｙｊに対応する基本単語Ｙｂの下位の各単語との間の共起回数を含む第４の共起回数が、Ｆ（Ｘｂ，Ｙｂ）と表されている。
【００６１】
このような第１、第２、第３及び第４の共起回数を用いて、関連度計算部１６０は、例えば次式に従って、第１の単語Ｘｉと第２の単語Ｙｊとの間の共起回数Ｓ（Ｘｉ，Ｙｊ）を計算することができる。
【００６２】
【数１】
2010231538.tif 000003
【００６３】
ここで、式（１）において、Ｐｏｉｓｓｏｎ（Ｎ１，Ｎ２）は、ポアソン分布における予測共起回数をＮ２とした場合に共起回数Ｎ１が実測される累積ポアソン確率を表す。また、α１は、関連度計算部１６０により自動計算された関連度を例えば初期関連度データ１２６により予め定義された関連度と区別するための補正値（重み）である。α１は、例えば０．９などであってよい。
【００６４】
例えば、図７に示したように、単語Ｘ１と単語Ｙ１との間の第１の共起回数Ｆ１、単語Ｘ１と単語Ｙ１に対応する基本単語Ｙｂの下位の各単語との間の共起回数を含む第２の共起回数Ｆ２、単語Ｘ１に対応する基本単語Ｘｂの下位の各単語と単語Ｙ１との間の共起回数を含む第３の共起回数Ｆ３、基本単語Ｘｂの下位の各単語と基本単語Ｙｂの下位の各単語との間の共起回数を含む第４の共起回数をＦ４とする。そうすると、式（１）の累積ポアソン確率における第２引数、即ち予測共起回数Ｎ２は、Ｎ２＝（Ｆ２・Ｆ３）／Ｆ４と計算される。当該予測共起回数Ｎ２は、例えば、基本単語Ｘｂにより表される概念と基本単語Ｙｂにより表される概念が共に扱われる文脈（テキストデータ）において、平均的に単語Ｘ１と単語Ｙ１とが共起すると想定される回数である、ということができる。一方、式（１）の累積ポアソン確率における第１引数Ｎ１は、単語Ｘ１と単語Ｙ１との間の実測された共起回数Ｆ１に等しい。
【００６５】
このような計算式によれば、例えば単語Ｘ１と単語Ｙ１との間の関連性が低い場合（互いにばらばらに生起する場合）には、共起回数Ｎ１は予測共起回数Ｎ２に近くなり、累積ポアソン確率は０．５に近い値となる。一方、例えば単語Ｘ１と単語Ｙ１との間の関連性が高い場合（単語Ｘ１と単語Ｙ１が予測されるよりも高い頻度で共起する場合）には、共起回数Ｎ１は予測共起回数Ｎ２よりも大きくなり、累積ポアソン確率は１．０に近い値となる。逆に、例えば単語Ｘ１と単語Ｙ１との間の負の関連性が高い場合（単語Ｘ１と単語Ｙ１とが排他的に出現する場合）には、共起回数Ｎ１は予測共起回数Ｎ２よりも小さくなり、累積ポアソン確率は０．０に近い値となる。即ち、累積ポアソン確率の値域は、０．０〜１．０である。これに対し、式（１）では、累積ポアソン確率の値から０．５を減じて２を乗算することにより、累積ポアソン確率の値域を−１．０〜１．０に修正している。それにより、例えば単語Ｘ１と単語Ｙ１との間の関連性が低い場合には、関連度Ｓ（Ｘ１，Ｙ１）の値は０．０に近くなる。また、例えば、例えば単語Ｘ１と単語Ｙ１との間の関連性が高い場合には、関連度Ｓ（Ｘ１，Ｙ１）の値は１．０に近くなる。図６の例における「資格：情報処理技術者」と「職種：ＳＷ開発」との間の関連度は、関連度計算部１６０により、次式の通り約０．８１と計算される。
【００６６】
【数２】
2010231538.tif 000004
【００６７】
さらに、関連度計算部１６０により計算される関連度の値についての理解のために、図８及び図９のデータ例について説明する。図８は、共起回数のデータの一例を示す説明図である。なお、ここでは、説明の便宜のために、極端な共起回数の値が提示されている。
【００６８】
図８を参照すると、（資格：情報処理技術者，職種：ＳＷ開発）、（資格：情報処理技術者，職種：ＳＥ）、及び（資格：情報処理技術者，職種：ＣＡＤ設計者）の共起回数がそれぞれ１００回、１回、１回と計数されている。同様に、（資格：ＣＡＤ関連資格，職種：ＳＷ開発）、（資格：ＣＡＤ関連資格，職種：ＳＥ）、及び（資格：ＣＡＤ関連資格，職種：ＣＡＤ設計者）の共起回数がそれぞれ１回ずつ計数されている。また、（資格：公認会計士，職種：ＳＷ開発）、（資格：公認会計士，職種：ＳＥ）、及び（資格：公認会計士，職種：ＣＡＤ設計者）の共起回数がそれぞれ１回ずつ計数されている。さらにこれら共起回数から、各単語の一方又は双方を基本単語に置換えた場合の共起回数も計数されている。
【００６９】
次に、図９は、図８に示した共起回数に基づいて、式（１）に従って算出された単語間の関連度を示している。
【００７０】
例えば、図９に示した関連度のうち、「情報処理技術者」と「ＳＷ開発」との間の関連度Ｓ１＝０．３１である。これは、例えば、「情報処理技術者」を含むテキストデータにおける「ＳＷ開発」の出願割合（及びその逆の出現割合）は大きいものの、「情報処理技術者」と「ＳＷ開発」は共に通常高い頻度で出現する単語であるため、「情報処理技術者」と「ＳＷ開発」との間の関連度Ｓ１は後述する関連度Ｓ２ほどには高くない値となっている、と理解され得る。
【００７１】
また、図９に示した関連度のうち、「ＣＡＤ関連資格」と「ＳＥ」との間の関連度Ｓ２＝０．８９である。これは、例えば、「ＣＡＤ関連資格」と「ＳＥ」とが通常ほとんど出現しない単語であるにも関わらず、「ＣＡＤ関連資格」を含むテキストデータにおいて「ＳＥ」が３分の１程度の高い割合で出現しているため、「ＣＡＤ関連資格」と「ＳＥ」との間の関連度Ｓ２は相対的に高い値となっている、と理解され得る。
【００７２】
また、図９に示した関連度のうち、「公認会計士」と「ＳＷ開発」との間の関連度Ｓ３＝−０．４９である。これは、例えば、「公認会計士」を含むテキストにおける「ＳＷ開発」の実際の出現回数（１回）が学習データから予測される「ＳＷ開発」の出現回数（３×１０２／１０８≒約３回）より少ないため、「公認会計士」と「ＳＷ開発」との間で負の関連度が現れている、と理解され得る。
【００７３】
関連度計算部１６０は、このような単語間の関連度を学習データ１３２において共起した単語の各組合せについて算出し、データ取得部１４０を介して第１のデータベース１２０の学習関連度データ１２８に登録する。ここで、例えば上下関係データ１２２には含まれるものの、学習データ１３２において出現しなかった単語については、この時点では関連度は算出されない。
【００７４】
さらに、関連度計算部１６０は、例えば、関連度を計算した２つの単語の各組合せについて、上下関係データ１２２に従って第１の単語の上位の第３の単語又は第２の単語の上位の第４の単語のうちの少なくとも一方を取得する。そして、関連度計算部１６０は、例えば、第３の単語と第２の単語との間の関連度、第１の単語と第４の単語との間の関連度、又は第３の単語と第４の単語との間の関連度のうちの少なくとも１つを計算する。図１０は、本実施形態に係る関連度計算処理について説明するための第２の説明図である。
【００７５】
例えば、図２に示した上下関係データ１２２によれば、「情報処理技術者」の上位の単語として「ＩＴ関連資格」が定義されている。同様に、「パソコン検定」の上位の単語も「ＩＴ関連資格」であったとする。また、「ＳＷ開発」及び「ＳＥ」の上位の単語が「ＩＴ系職種」であったとする。そうすると、まず、関連度計算部１６０は、共起回数計数部１５０により計数された共起回数Ｒｅｓ１０のうち、（ＩＴ関連資格，ＩＴ系職種）の下位の共起回数を集計する。図１０の例では、１２＋７＋０＋２＝２１回と集計される。同様に、（ＩＴ関連資格，ＣＡＤ設計者）の共起回数は３＋１＝４回、（ＣＡＤ関連資格，ＩＴ系職種）の共起回数は２＋３＝５回とそれぞれ集計される。さらに、例えば、「ＩＴ関連資格」と「ＩＴ系職種」との間の共起回数が既に存在する場合（即ち、「ＩＴ関連資格」と「ＩＴ系職種」が学習データ１３２において共起していた場合）、関連度計算部１６０は、例えば、集計した上記共起回数と既に存在する共起回数とを加算する。例えば、図１０の例では、既に存在する共起回数Ｒ１２を用いて、（ＩＴ関連資格，ＩＴ系職種）の共起回数は、上記２１回＋４回＝２５回と計算される。関連度計算部１６０は、このように、まず、共起回数計数部１５０により計数された単語間の共起回数から各単語の上位の単語に関する第１の共起回数Ｒｅｓ２１を集計する。次に、関連度計算部１６０は、図６に示した手法と同様にして、いずれか一方の単語を基本単語に置換えた第２の共起回数Ｒｅｓ２２及び第３の共起回数Ｒｅｓ２３、並びに双方の単語を基本単語に置換えた第４の共起回数Ｒｅｓ２４を集計する。
【００７６】
このような集計処理の結果を用いて、関連度計算部１６０は、例えば次式に従い、２つの単語Ｘｉ又はＹｊのいずれか一方又は双方を上位の単語に置換えた単語Ｘ´と単語Ｙ´との間の共起回数Ｓ´（Ｘ´ｉ，Ｙ´ｊ）を計算することができる。
【００７７】
【数３】
2010231538.tif 000005
【００７８】
なお、式（３）におけるＦ´（Ｘ´ｉ，Ｙ´ｊ）とは、次式のように、学習データ１３２において直接的に２つの単語Ｘ´ｉ及びＹ´ｊが共起していた共起回数の値（右辺の第１項）と下位の単語の共起回数を集計して得た値（右辺の第２項）との和を表す。Ｆ´（Ｘ´ｊ，Ｙｂ）及びＦ´（Ｘｂ，Ｙ´ｊ）についても同様である。
【００７９】
【数４】
2010231538.tif 000006
【００８０】
ここで、式（３）における補正値α２は、例えば、上下関係データ１２２に応じて取得された単語について計算される関連度よりも、学習データ１３２に直接的に含まれる単語について計算される関連度を優先して扱うための補正値（重み）である。例えば、α１＝０．９である場合には、α２＝０．８などであってよい。例えば、図１０の例における「資格：ＩＴ関連資格」と「職種：ＩＴ系職種」との間の関連度は、関連度計算部１６０により、次式に従って約０．６４と計算される。
【００８１】
【数５】
2010231538.tif 000007
【００８２】
関連度計算部１６０は、このような関連度を上下関係データ１２２に従って置換えた単語間の各組合せについて算出し、データ取得部１４０を介して第１のデータベース１２０の学習関連度データ１２８に登録する。なお、既に単語間の同じ組合せについての関連度が関連度データ１２６又は学習関連度データ１２８に存在する場合には、関連度計算部１６０は、例えば既に存在する関連度と新たに計算した関連度のうち大きい方の値を採用するものとする。
【００８３】
なお、関連度計算部１６０は、さらに、学習データ１３２において共起した単語の上位の単語に関する関連度に加えて、当該共起した単語の下位の単語に関する関連度を計算してもよい。この場合、関連度計算部１６０は、例えば、まず、学習データ１３２において直接的に共起した単語間の共起回数を上下関係データ１２２に従って取得される下位の単語の共起回数に加算することにより、下位の単語の第１の共起回数を取得する。次に、関連度計算部１６０は、取得した下位の単語の第１の共起回数から、いずれか一方の単語を基本単語に置換えた第２及び第３の共起回数、並びに双方の単語を基本単語に置換えた第４の共起回数を計算する。そして、関連度計算部１６０は、それら第１から第４の共起回数に基づいて、下位の単語に関する関連度を計算することができる。
【００８４】
［１−２．処理の流れ］
図１１は、ここまでに説明した本実施形態に係る情報処理装置１００による関連度計算処理の流れを示すフローチャートである。
【００８５】
図１１を参照すると、まず、データ取得部１４０により、基本単語データ１２４及び初期関連度データ１２６が第１のデータベース１２０から取得さる（Ｓ１０２）。また、データ取得部１４０により、学習データ１３２が第２のデータベース１３０から取得さる（Ｓ１０４）。データ取得部１４０により取得された各データは、共起回数計数部１５０へ出力される。
【００８６】
次に、共起回数計数部１５０により、単語間の第１の共起回数が計数される（Ｓ１０６）。かかる第１の共起回数とは、例えば図６に示した集計結果Ｒｅｓ１に含まれる共起回数である。また、共起回数計数部１５０により、基本単語と単語との間の第２及び第３の共起回数が計数される（Ｓ１０８）。かかる第２及び第３の共起回数とは、例えば図６に示した集計結果Ｒｅｓ２及びＲｅｓ３に含まれる共起回数である。さらに、共起回数計数部１５０により、基本単語間の第４の共起回数が計数される（Ｓ１１０）。かかる第４の共起回数とは、例えば図６に示した集計結果Ｒｅｓ４の共起回数である。これら第１から第４の共起回数は、共起回数計数部１５０から関連度計算部１６０へ出力される。
【００８７】
次に、関連度計算部１６０により、例えば上述した式（１）に従い、学習データ１３２において共起した単語の各組合せについての関連度が計算される（Ｓ１１２）。ここで算出された関連度は、例えば、データ取得部１４０を介して第１のデータベース１２０の学習関連度データ１２８に登録される（Ｓ１１４）。
【００８８】
次に、データ取得部１４０により、上下関係データ１２２が第１のデータベース１２０から取得される（Ｓ１１６）。データ取得部１４０により取得された上下関係データ１２２は、関連度計算部１６０へ出力される。
【００８９】
次に、関連度計算部１６０により、ステップＳ１１２において関連度が計算された単語のうちの一方又は双方の単語を上位の単語に置換えた共起回数が集計される（Ｓ１１８）。そして、関連度計算部１６０により、例えば上述した式（２）に従い、一方又は双方の単語を上位の単語に置換えた単語の各組合せについての関連度が計算される（Ｓ１２０）。ここで算出された関連度は、例えば、データ取得部１４０を介して第１のデータベース１２０の学習関連度データ１２８に登録される（Ｓ１２２）。
【００９０】
なお、ステップＳ１１４及びステップＳ１２８において、関連度計算部１６０により算出された関連度の値が予め決定され得る所定の閾値よりも小さい場合には、当該関連度を学習関連度データ１２８に登録しなくてもよい。かかる関連度は、２つの単語間の関連性が低いことを意味しているためである。
【００９１】
このようなデータ取得から関連度データの更新までの一連の関連度計算処理により、基本単語の体系をまたがって、単語間の関連度を自動的に算出することができる。また、本実施形態では、単語の予測共起回数に対する当該単語の実測された共起回数の累積ポアソン確率に応じた関連度が算出される。即ち、本実施形態において算出される関連度は、客観的な基準に基づいた有意な関連度である。また、本実施形態では、学習データ１３２に直接的に現れた単語間の関連度に加えて、上下関係データ１２２に従って取得された単語に関する関連度も算出される。それにより、手作業で関連度を付与することは現実的でなかった単語間の多数の組合せについて、関連度を自動的に算出することができる。
【００９２】
このような関連度計算処理は、例えば上下関係データ１２２、基本単語データ１２４若しくは初期関連度データ１２６が追加若しくは変更され、又は学習データ１３２が大きく変更された場合などに、適宜実行されてよい。
【００９３】
なお、本実施形態では、学習データ１３２に含まれる複数のテキストデータのうち、２つの単語を共に含むテキストデータの数を当該２つの単語の間の共起回数とした。即ち、１つのテキストデータにおいて２つの単語が２回以上共起する場合にも、共起回数は１回と計数された。しかしながら、その代わりに、１つのテキストデータにおいて２つの単語が２回以上共起する場合には、共起回数は複数回計数されてもよい。
【００９４】
（変形例）
また、本実施形態の一変形例として、式（１）の代わりに、次のような計算式に従って関連度を計算してもよい。即ち、第１の単語Ｘｉが生起する場合の第２の単語Ｙｊの生起確率をＰ（Ｘｉ，Ｙｊ）とする。かかる生起確率は、例えば、学習データ１３２において第１の単語Ｘｉと第２の単語Ｙｊが共起したテキストデータ数を第１の単語Ｘｉが出現したテキストデータ数で除算して求められ得る。また、第２の単語の生起確率をＰ（Ｙｊ）とする。かかる生起確率は、例えば、学習データ１３２において第２の単語Ｙｊが出現したテキストデータ数をテキストデータの総数で除算して求められ得る。これら２つの生起確率Ｐ（Ｘｉ，Ｙｊ）及びＰ（Ｙｊ）を用いて、例えば、第１の単語Ｘｉから第２の単語Ｙｊへのリフト値Ｌ（Ｘｉ→Ｙｊ）を式（８）に従って計算する。
【００９５】
【数６】
2010231538.tif 000008
【００９６】
そして、かかるリフト値Ｌ（Ｘｉ→Ｙｊ）の値域を式（９）に従って正規化し、第１の単語Ｘｉと第２の単語Ｙｊとの間の本変形例に係る関連度Ｓ（Ｘｉ，Ｙｊ）を算出する。
【００９７】
【数７】
2010231538.tif 000009
【００９８】
このように算出された関連度は、第１の単語Ｘｉと第２の単語Ｙｊとの間の関連性が低い場合にはゼロに近く、第１の単語Ｘｉと第２の単語Ｙｊとの間の関連性が高い場合には１に近い値となる。なお、この場合も、算出される関連度を例えば式（１）のα１又は式（２）のα２などの補正値を使って補正するのが好適である。また、本変形例の場合には、関連度は方向を有する。即ち、第１の単語Ｘｉの第２の単語Ｙｊに対する関連度と、第２の単語Ｙｊの第１の単語Ｘｉに対する関連度は、異なる可能性がある。そのため、この場合には１対の単語の組合せについて式（８）においてＸｉとＹｊとを入れ替えた２通りの関連度が算出され得る。
【００９９】
＜２．データ検索＞
次に、上述した情報処理装置１００により算出された関連度を用いてデータを検索する本発明の別の実施形態について説明する。
【０１００】
［２−１．装置の構成例］
図１２は、本発明の一実施形態に係るデータを検索するための情報処理装置２００の構成を示すブロック図である。図１２を参照すると、情報処理装置２００は、データ取得部２４０、画面制御部２８０、及び検索部２９０を主に備える。また、情報処理装置２００は、第１のデータベース２２０及び第２のデータベース２３０と接続される。なお、第１のデータベース２２０及び第２のデータベース２３０は、それぞれ情報処理装置２００の一部であってもよい。また、第１のデータベース２２０と第２のデータベース２３０とは物理的に同一のデータベースであってもよい。
【０１０１】
（第１のデータベース）
第１のデータベース２２０は、例えばハードディスク又は半導体メモリなどの記憶媒体を用いて、上下関係データ１２２、基本単語データ１２４、初期関連度データ１２６、及び学習関連度データ２２８を主に記憶している。このうち、学習関連度データ２２８は、初期関連度データ１２６と同一のデータ項目を有し、上述した情報処理装置１００により算出された単語間の多数の組合せについての関連度データを含んでいる。
【０１０２】
（第２のデータベース）
第２のデータベース２３０は、例えばハードディスク又は半導体メモリなどの記憶媒体を用いて、検索対象データ２３４を主に記憶する。検索対象データ２３４は、例えば、求人情報など、検索の対象の属性又は内容を少なくともテキストで記述したデータの集合であってよい。検索対象データ２３４は、例えば、図５に示した学習データ１３２と同一のデータの集合であってもよく、又は学習データ１３２とは異なるデータの集合であってもよい。
【０１０３】
図１３は、本実施形態に係る検索対象データ２３４のデータ例を示す説明図である。図１３を参照すると、検索対象データ２３４は、「データＩＤ」及び「テキストデータ」の２つのデータ項目を有している。なお、ここではテキストデータに図５に示したようなＸＭＬタグが付与されていない例を示している。図１３において、検索対象データ２３４は、データＩＤ＝「Ｔ２００」及び「Ｔ２０１」の２つのテキストデータを含んでいる。また、各テキストデータは、１件ごとの求人情報の内容を表している。例えば、テキストデータＴ２００には、求人の内容として、「ソフトウェア開発者」又は「ＳＥ」という「職種」について、「情報処理技術者」という「資格」を有する者が歓迎されることが記述されている。
【０１０４】
本実施形態に係る情報処理装置２００は、このような検索対象データ２３４から、上述した関連度に基づいて、後述するように所与のキーワードと適合するいずれかの検索対象データを特定する。
【０１０５】
（データ取得部）
データ取得部２４０は、情報処理装置２００が第１のデータベース２２０及び第２のデータベース２３０にアクセスしてデータを入出力するための手段としての役割を果たす。例えば、データ取得部２４０は、画面制御部２８０を介してデータの検索の開始が指示されると、第１のデータベース２２０から上下関係データ１２２、基本単語データ１２４、初期関連度データ１２６及び学習関連度データ２２８を取得して検索部２９０へ出力する。同様に、データ取得部２４０は、例えば第２のデータベース２３０から検索対象データ２３４を取得して検索部２９０へ出力する。以下、初期関連度データ１２６及び学習関連度データ２２８を特に区別する必要が無い場合には、これらに含まれるデータを関連度データと総称する。なお、データ取得部２４０による各データベースからのデータ取得は、データの検索が指示される前に予め行われていてもよい。
【０１０６】
（画面制御部）
画面制御部２８０は、例えば、ユーザに検索条件を入力させるための検索条件入力画面、及び検索結果を表示する検索結果表示画面を生成し、情報処理装置２００に接続された所定の表示装置に表示させることができる。
【０１０７】
図１４は、画面制御部２８０により生成され得る検索条件入力画面２８２の一例を示す説明図である。ここでは、求人情報の検索のための検索条件を入力することのできる例を示している。図１４を参照すると、検索条件入力画面２８２には、条件別入力欄２８４、自由入力欄２８６、及び検索ボタン２８８が含まれる。例えば、ユーザは、条件別入力欄２８４に、勤務地、給与、職種、及び資格の４種類の条件を入力又は選択することができる。そして、ユーザが条件別入力欄２８４に条件を入力又は選択して検索ボタン２８８を押下すると、例えば、図１４に示したキーワードＫ１＝「勤務地＝“新宿”，資格＝“公認会計士”」などの検索キーワードが生成され、画面制御部２８０から検索部２９０へ出力される。このような検索キーワードは、例えば、項目名（“勤務地”、“資格”など）に相当する基本単語と入力内容（“新宿”、“公認会計士”など）に相当する単語の対の集合であるとみなすことができる。一方、自由入力欄２８６には、ユーザは、自由なテキストを入力することができる。そして、ユーザが自由入力欄２８６にテキストを入力して検索ボタン２８８を押下すると、例えば、図１４に示したキーワードＫ２＝「自由入力＝“・・・”」が生成され、画面制御部２８０から検索部２９０へ出力される。なお、このとき、画面制御部２８０は、例えば、かかるキーワードＫ２のようなテキストを解釈して上述したキーワードＫ１のような単語と基本単語との対を含む検索キーワードを生成し、検索部２９０へ出力してもよい。
【０１０８】
（検索部）
検索部２９０は、データ取得部２４０により取得された関連度データに基づいて、複数のデータを含む検索対象データ２３４から所与のキーワードと適合する検索対象データを特定する。所与のキーワードと適合する検索対象データには、例えば、キーワードに含まれるいずれかの単語と適合するデータ、及び当該単語との間の関連度が関連度データにより定義されている他の単語と適合する検索対象データが含まれる。さらに、本実施形態では、上記キーワードに含まれるいずれかの単語の上位又は下位の単語との間の関連度が関連度データにより定義されている他の単語と適合するデータも、検索部２９０により特定されるデータに含まれ得る。
【０１０９】
図１５は、本実施形態に係る検索部２９０による関連度データの抽出処理について説明するための説明図である。図１５の例では、画面制御部２８０から検索部２９０へ、検索条件を指定するキーワードとして「資格＝“公認会計士”」というキーワードＫ３が入力されている。この場合、検索部２９０は、まず、「資格：公認会計士」に関する関連度データを抽出する。図１５の例では、「資格：公認会計士」と「職種：会計監査」との間の関連度０．９０を示す関連度データＳＳ０１が抽出されている。次に、検索部２９０は、上下関係データ１２２に従って「資格：公認会計士」の上位及び下位の単語を取得する。図１５の例では、「資格：公認会計士」の上位の単語として「資格：法律関連資格」、「資格：公認会計士」の下位の単語として「資格：会計士補」が取得されている。そして、検索部２９０は、例えば、取得した上位及び下位の単語に関する関連度データを抽出する。図１５の例では、「資格：法律関連資格」と「職種：経営企画」との間の関連度０．４０を示す関連度データＳＳ０２、及び「資格：会計士補」と「職種：会計監査補助」との間の関連度０．７０を示す関連度データＳＳ０３が抽出されている。検索部２９０は、このように抽出した関連度データＳＳ０１〜ＳＳ０３に基づき、例えば拡張されたキーワードＥＫ＝「資格＝“公認会計士”，職種＝“会計監査”，資格＝“法律関連資格”，職種＝“経営企画”，資格＝“会計士補”，職種＝“会計監査補助”」を生成する。そして、検索部２９０は、例えば、拡張されたキーワードＥＫに含まれるいずれかの単語と適合する検索対象データを、検索対象データ２３４から特定する。
【０１１０】
さらに、検索部２９０は、例えば、関連度データを用いて、特定した検索対象データごとにキーワードに対する適合度を算出する。このとき、検索部２９０は、例えば、入力されたキーワードに含まれる単語の上位の単語又は下位の単語に適合する検索対象データについては、関連度の値を補正して使用するのが望ましい。
【０１１１】
図１６は、一実施形態に係る適合度算出処理について説明するための説明図である。図１６を参照すると、図１５に示した拡張されたキーワードＥＫに含まれる単語と適合する検索対象データとして、検索対象データＴ２１０、Ｔ２１２、Ｔ２２０、Ｔ２３０及びＴ２４０が特定されている。また、各検索対象データについて、拡張されたキーワードＥＫに含まれる単語との適合の程度に応じた予備適合度がそれぞれ与えられている。例えば、検索対象データＴ２１０には、「公認会計士」という単語と完全一致する単語が含まれていたため、予備適合度１．０が与えられている。同様に、検索対象データＴ２２０、Ｔ２３０及びＴ２４０には、それぞれ「会計監査」、「経営企画」及び「会計監査補助」という単語と完全一致する単語が含まれていたため、予備適合度１．０が与えられている。一方、検索対象データＴ２１２には、「公認会計士」という単語と例えば部分的に一致（非完全一致）する単語が含まれていたため、予備適合度０．８が与えられている。
【０１１２】
なお、このような予備適合度は、典型的には、拡張されたキーワードＥＫに含まれる単語との適合の程度に応じて予め決定される。例えば、図１４に示した「勤務地」が検索条件として指定された場合には、単語により表される場所の地理的な距離に応じて予備適合度が決定されてもよい。即ち、例えば「勤務地」として「新宿」が指定された場合には、勤務地が「新宿」である求人情報（検索対象データ）の予備適合度は１．０、勤務地が「渋谷」である求人情報の予備適合度は０．８などと決定され得る。
【０１１３】
図１６の例において、検索対象データごとに、さらに「関連度（補正前）」、「補正値」及び「関連度（補正後）」が示されている。このうち、「関連度（補正前）」は、図１５を用いて説明したように初期関連度データ１２６又は学習関連度データ２２８から抽出された関連度の値である。また、「補正値」は、適合した単語の当初の（拡張前の）キーワードに含まれる単語との関係に応じて与えられる、関連度に対する補正値である。例えば、検索対象データＴ２３０において適合した単語「経営企画」は、当初のキーワードに含まれる「公認会計士」の上位の「法律関連資格」と関連する単語である。そこで、例えば検索対象データＴ２３０の補正値α３＝０．５とする。また、例えば、検索対象データＴ２４０において適合した単語「会計監査補助」は、当初のキーワードに含まれる「公認会計士」の下位の「会計士補」と関連する単語である。そのため、例えば検索対象データＴ２３０の補正値α４＝０．９とする。この場合、上位の単語は下位の複数の単語の特徴を統合したものであるのに対し、下位の単語は上位の単語の特徴を承継するという観点から、補正値α４の値を補正値α３の値よりも大きくしている。なお、これら補正値の値はかかる例に限定されない。例えば、補正値α３を、下位の単語の種類の数が多いほど小さくなる変数などとしてもよい。一方、検索対象データＴ２１０、Ｔ２１２、Ｔ２２０については、当初のキーワードに含まれる「公認会計士」、又は「公認会計士」と直接関連する「会計監査」が適合した単語であるため、補正値は使用されない。
【０１１４】
検索部２９０は、検索対象データＴ２３０及びＴ２４０について、例えば上述した補正値を補正前の関連度に乗算し、補正後の関連度を算出する。例えば、検索対象データＴ２３０の補正後の関連度は、０．４０×０．５＝０．２０である。また、検索対象データＴ２４０の補正後の関連度は、０．７０×０．９＝０．６３である。
【０１１５】
そして、検索部２９０は、上述した予備適合度に関連度を乗算し、検索対象データごとの適合度を算出する。例えば、検索対象データＴ２２０の適合度は、１．０×０．９０＝０．９である。また、検索対象データＴ２３０の適合度は、１．０×０．２０＝０．２である。また、検索対象データＴ２４０の適合度は、１．０×０．６３＝０．６３である。また、適合した単語が当初のキーワードに含まれる「公認会計士」である検索対象データＴ２１０及びＴ２１２については、関連度が乗算されず、予備適合度の値がそのまま適合度となる。即ち、検索対象データＴ２１０の適合度は、１．０である。また、検索対象データＴ２１２の適合度は、０．８である。
【０１１６】
このような適合度の算出処理により、検索部２９０は、例えば単語間の概念上の階層における近さと単語間の関連性とに応じて調整された適合度を用いて、検索の結果を評価することができる。
【０１１７】
その後、検索部２９０は、例えば、特定した検索対象データを、算出した適合度に応じてソート（並べ替え）し、例えば適合度の大きい順に画面制御部２８０へ出力する。例えば、図１６の例では、検索対象データＴ２１０（適合度１．０）、Ｔ２２０（適合度０．９）、Ｔ２１２（適合度０．８）、Ｔ２４０（適合度０．６３）、Ｔ２３０（適合度０．２）の順に検索結果がソートされた上で、当該検索結果が画面制御部２８０へ出力される。そして、画面制御部２８０は、検索部２９０から入力された検索の結果を、例えばソートされた順に所定の検索結果表示画面に表示する。
【０１１８】
［２−２．処理の流れ］
図１７は、ここまでに説明した本実施形態に係る情報処理装置２００によるデータ検索処理の流れを示すフローチャートである。
【０１１９】
図１７を参照すると、まず、データ取得部２４０により、上下関係データ１２２、基本単語データ１２４、初期関連度データ１２６及び学習関連度データ２２８が第１のデータベース２２０から取得さる（Ｓ２０２）。ここで取得された各データは、データ取得部２４０から検索部２９０へ出力される。
【０１２０】
次に、例えば図１４に例示した検索条件入力画面２８２においてユーザにより検索条件が指定されると、画面制御部２８０によりキーワードが生成され、生成されたキーワードが画面制御部２８０から検索部２９０へ出力される（Ｓ２０４）。
【０１２１】
次に、検索部２９０により、キーワードに含まれる単語に関する関連度データが初期関連度データ１２６及び学習関連度データ２２８から抽出される（Ｓ２０６）。さらに、検索部２９０により、キーワードに含まれる単語の上位の単語及び下位の単語が上下関係データ１２２に従って取得され、各単語に関する関連度データが初期関連度データ１２６及び学習関連度データ２２８から抽出される（Ｓ２０８）。次に、検索部２９０により、例えば図１６を用いて説明した手順で、補正御の関連度データが計算される（Ｓ２１０）。
【０１２２】
次に、検索部２９０により、キーワードに含まれる単語、若しくは当該単語の上位の単語若しくは下位の単語、又は各単語と関連する単語に適合するデータが、検索対象データ２３４の中から特定される（Ｓ２１２）。
【０１２３】
次に、検索部２９０により、特定された各検索対象データについての適合度が計算される（Ｓ２１４）。さらに、検索部２９０により、算出された適合度の順に、特定された検索対象データがソートされる（Ｓ２１６）。そして、検索部２９０から画面制御部２８０へソート後の検索対象データが出力され、画面制御部２８０により検索結果表示画面に検索結果が表示される（Ｓ２１８）。
【０１２４】
このような一連のデータ検索処理により、例えば、ユーザが明示的に入力していない単語を含むデータであっても、ユーザが入力した単語又は当該単語の上位概念又は下位概念を表す単語と関連性を有する単語を含んでいれば、そのデータが抽出され得ることとなる。それにより、例えば、ユーザが的確な検索条件を指定できなかった場合であっても、ユーザの要望に見合った検索結果を提供することが可能となる。また、本実施形態では、上述した情報処理装置１００により自動的に計算された関連度データに応じて、抽出され得るデータの範囲が拡張される。即ち、抽出され得るデータの範囲は、基本単語の体系をまたがって拡張される。また、本実施形態では、当該関連度データを用いて検索されたデータごとのキーワードに対する適合度が評価され、当該適合度の順に検索結果が表示される。それにより、ユーザは、より自らの要望に見合ったデータから順に検索結果を参照することが可能となる。
【０１２５】
なお、ここでは、情報処理装置１００により計算された関連度が学習関連度データ２２８に予め記憶されている例について説明した。その代わりに、情報処理装置２００は、例えば、検索処理を行う際に単語間の関連度を計算してもよい。即ち、情報処理装置２００は、まず、例えばユーザから何らかのキーワードが入力されると、当該キーワードに含まれる単語と他の単語との間の関連度を計算する。次に、情報処理装置２００は、算出した関連度を用いて、本節で説明した手法に従ってキーワードを拡張する。そして、情報処理装置２００は、拡張されたキーワードを用いてデータ検索処理を行う。それにより、予め多数の関連度を算出しておくことなく、ユーザの要望に見合った検索結果を動的に提供することが可能となる。
【０１２６】
＜３．まとめ＞
ここまで、図１〜図１７を用いて、本発明の一実施形態に係る関連度の計算とデータ検索について説明を行った。各実施形態によれば、例えば、異なる概念の体系に属す単語間の有意な関連度が、情報処理装置１００を用いて自動的に計算される。そして、計算された関連度に従って、情報処理装置２００を用いてデータを検索することが可能となる。それにより、例えば、ユーザに提供されるデータ検索の柔軟性又は効率性が高められる。
【０１２７】
例えば、求人情報の検索に際して、ユーザが自らの資格を活かした職を探そうとした場合を想定する。その際、例えば、求人情報の各データには明示的に資格についての記述が無かった場合であっても、ユーザにより入力された資格に関連する職種が推定され、その職種に適合するデータが検索結果として取得され得る。それにより、ユーザは、自らの資格を活かした職に関する求人情報を効率的に手にすることができる。また、このような異なる概念の体系、即ち、例えば「資格」及び「職種」といった基本単語の各体系に属す単語間の関連度が、多くの作業負担を要することなく利用可能となる。
【０１２８】
なお、本明細書において説明した一実施形態に係る関連度計算処理及びデータ検索処理は、典型的には、コンピュータ上で動作するソフトウェアを用いて実現される。一連の処理又はその一部をソフトウェアで実行させる場合には、ソフトウェアを構成するプログラムが、例えば、図１８に示した汎用コンピュータなどを用いて実行される。
【０１２９】
図１８において、ＣＰＵ（Central  Processing  Unit）９０２は、汎用コンピュータの動作全般を制御する。ＲＯＭ（Read  Only  Memory）９０４には、一連の処理の一部又は全部を記述したプログラム又はデータが格納される。ＲＡＭ（Random  Access  Memory）９０６には、処理の実行時にＣＰＵ９０２により用いられるプログラムやデータなどが一時的に記憶される。
【０１３０】
ＣＰＵ９０２、ＲＯＭ９０４、及びＲＡＭ９０６は、バス９１０を介して相互に接続される。バス９１０にはさらに、入出力インタフェース（Ｉ／Ｆ）９１２が接続される。入出力インタフェース９１２は、ＣＰＵ９０２、ＲＯＭ９０４、及びＲＡＭ９０６と、表示装置９２０、入力装置９２２、記憶装置９２４、及び通信インタフェース（Ｉ／Ｆ）９２８とを接続するためのインタフェースである。
【０１３１】
表示装置９２０は、例えばＣＲＴ、ＬＣＤ、ＰＤＰ、又はＯＬＥＤなどを用いて、ユーザに視覚的な情報を出力する。入力装置９２２は、例えばマウスやキーボード、タッチパネル又はボタンなどを介して、ユーザからの指示や情報入力を受け付ける。記憶装置９２４は、例えばハードディスク又は半導体メモリなどの記憶媒体を用いて、プログラムやプログラムデータ、処理結果などを記憶する。通信Ｉ／Ｆ９２８は、ＬＡＮ又はインターネットなどのネットワークを介する通信処理を行う。
【０１３２】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属すものと了解される。
【符号の説明】
【０１３３】
１００    情報処理装置（関連度計算用）
１２２    上下関係データ
１２４    基本単語データ
１２６    初期関連度データ
１２８    学習関連度データ
１３２    学習データ
１４０    データ取得部
１５０    共起回数計数部
１６０    関連度計算部
２００    情報処理装置（データ検索用）
２２８    学習関連度データ
２３４    検索対象データ
２４０    データ取得部
２８０    画面制御部
２９０    検索部
【図１】
2010231538.tif 000010
【図２】
2010231538.tif 000011
【図３】
2010231538.tif 000012
【図４】
2010231538.tif 000013
【図５】
2010231538.tif 000014
【図６】
2010231538.tif 000015
【図７】
2010231538.tif 000016
【図８】
2010231538.tif 000017
【図９】
2010231538.tif 000018
【図１０】
2010231538.tif 000019
【図１１】
2010231538.tif 000020
【図１２】
2010231538.tif 000021
【図１３】
2010231538.tif 000022
【図１４】
2010231538.tif 000023
【図１５】
2010231538.tif 000024
【図１６】
2010231538.tif 000025
【図１７】
2010231538.tif 000026
【図１８】
2010231538.tif 000027
【図１９】
2010231538.tif 000028