(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-03
(45)【発行日】2025-03-11
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06F 16/35 20250101AFI20250304BHJP
G06F 40/295 20200101ALI20250304BHJP
【FI】
G06F16/35
G06F40/295
(21)【出願番号】P 2023503327
(86)(22)【出願日】2021-03-05
(86)【国際出願番号】 JP2021008743
(87)【国際公開番号】W WO2022185538
(87)【国際公開日】2022-09-09
【審査請求日】2023-08-30
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】竹岡 邦紘
【審査官】甲斐 哲雄
(56)【参考文献】
【文献】特表2002-541590(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06F 40/20-40/58
(57)【特許請求の範囲】
【請求項1】
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、
前記文集合を参照してフレーズを生成する生成手段と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、を含み、
前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用
し、
前記補助情報は、自然言語文を含む、
情報処理装置。
【請求項2】
前記生成手段は、前記文集合を参照して、前記補助情報に類似する前記フレーズを生成する、請求項1に記載の情報処理装置。
【請求項3】
前記生成手段は、前記文集合を参照して候補となるフレーズを生成し、前記候補となるフレーズのうち、前記補助情報との類似度が所定条件を満たすものを抽出する、請求項2に記載の情報処理装置。
【請求項4】
前記構築手段は、前記複数のフレーズの間の関係性として、前記補助情報に整合する関係性を推定する、請求項1から3の何れか1項に記載の情報処理装置。
【請求項5】
前記構築手段は、前記複数のフレーズの間の関係性を示す情報を算出し、算出した情報を、前記補助情報を用いて修正することにより、前記補助情報に整合する関係性を推定する、請求項4に記載の情報処理装置。
【請求項6】
前記補助情報は、単語の集合を含む、請求項1から5の何れか1項に記載の情報処理装置。
【請求項7】
前記取得手段は、前記構築すべきタクソノミの一部を構成する部分タクソノミをさらに取得し、
前記生成手段は、前記文集合を参照して、前記部分タクソノミに含まれるフレーズとは異なる新たなフレーズを生成し、
前記構築手段は、前記部分タクソノミに含まれるフレーズと前記新たなフレーズとの間の関係性を推定することにより、前記部分タクソノミを拡張する、
請求項1から
6の何れか1項に記載の情報処理装置。
【請求項8】
少なくとも1つのプロセッサが、文集合、及び、構築すべきタクソノミに関する補助情報を取得すること、
前記少なくとも1つのプロセッサが、前記文集合を参照してフレーズを生成すること、及び、
前記少なくとも1つのプロセッサが、前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築すること、を含み、
前記少なくとも1つのプロセッサが、前記フレーズを生成すること、及び、前記タクソノミを構築すること、の一方又は両方において前記補助情報を使用
し、
前記補助情報は、自然言語文を含む、
情報処理方法。
【請求項9】
コンピュータを情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、
前記文集合を参照してフレーズを生成する生成手段と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、して機能させ、
前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用
し、
前記補助情報は、自然言語文を含む、
プログラム。
【請求項10】
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、
前記文集合を参照してフレーズを生成する生成手段と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、を含み、
前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用し、
前記生成手段は、前記文集合を参照して、前記補助情報に類似する前記フレーズを生成する、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、タクソノミを生成する技術に関する。
【背景技術】
【0002】
タクソノミを生成する技術が知られている。タクソノミは、複数のフレーズの間の関係性を表す情報であり、階層性を有する有向グラフで表現される。
【0003】
例えば、非特許文献1には、確率付きのタクソノミを構築する技術が記載されている。当該技術は、文集合からフレーズを抽出し、抽出したフレーズ間の関係性に確率値を付与し、確率値に基づき構築したフレーズ間のグラフをタクソノミに変換する。
【0004】
また、例えば、非特許文献2には、文集合から抽出したフレーズを、シードタクソノミに追加することによりタクソノミを生成する技術が記載されている。シードタクソノミは、人手等により生成された未完成の比較的小さなタクソノミである。
【先行技術文献】
【非特許文献】
【0005】
【文献】Wentao Wu et al., "Probase: A Probabilistic Taxonomy for Text Understanding", SIGMOD 2012
【文献】Jiaming Shen et al., "HiExpan: Task-Guided Taxonomy Construction by Hierarchical Tree Expansion", KDD 2018.
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、非特許文献1及び2に記載された技術は、文集合から、タクソノミの目的に沿わないフレーズを抽出する可能性がある。また、これらの技術は、フレーズ間の関係として、タクソノミの目的に沿わない関係性を推定する可能性がある。このため、これらの技術は、目的に沿う所望のタクソノミを精度よく生成する上で改善の余地がある。
【0007】
本発明の一態様は、上記の問題に鑑みてなされたものであり、その目的の一例は、所望のタクソノミをより精度よく生成する技術を提供することである。
【課題を解決するための手段】
【0008】
本発明の一側面に係る情報処理装置は、文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、前記文集合を参照してフレーズを生成する生成手段と、前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、を含み、前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用する。
【0009】
本発明の一側面に係る情報処理方法は、文集合、及び、構築すべきタクソノミに関する補助情報を取得すること、前記文集合を参照してフレーズを生成すること、及び、前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築すること、を含み、前記フレーズを生成すること、及び、前記タクソノミを構築すること、の一方又は両方において前記補助情報を使用する。
【0010】
本発明の一側面に係るプログラムは、コンピュータを情報処理装置として機能させるためのプログラムであって、前記コンピュータを、文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、前記文集合を参照してフレーズを生成する生成手段と、前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、して機能させ、前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用する。
【発明の効果】
【0011】
本発明の一態様によれば、所望のタクソノミをより精度よく生成することができる。
【図面の簡単な説明】
【0012】
【
図1】例示的実施形態1に係る情報処理装置の構成を示すブロック図である。
【
図2】例示的実施形態1に係る情報処理方法の流れを示すフロー図である。
【
図3】例示的実施形態2に係る情報処理装置の構成を示すブロック図である。
【
図4】例示的実施形態2に係る情報処理方法の流れを示すフロー図である。
【
図5】例示的実施形態2においてフレーズを生成する処理の詳細な流れの一例を示すフロー図である。
【
図6】例示的実施形態2において関係性を推定する処理の詳細な流れの一例を示すフロー図である。
【
図7】例示的実施形態3に係る情報処理装置の構成を示すブロック図である。
【
図8】例示的実施形態3において取得するタクソノミの一例を模式的に示す図である。
【
図9】例示的実施形態3に係る情報処理方法の流れを示すフロー図である。
【
図10】例示的実施形態3においてフレーズを生成する処理の詳細な流れの一例を示すフロー図である。
【
図11】例示的実施形態2において関係性を推定する処理の詳細な流れの一例を示すフロー図である。
【
図12】本発明の各例示的実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0013】
〔例示的実施形態1〕
本発明の第1の例示的実施形態について、図面を参照して詳細に説明する。本例示的実施形態は、後述する例示的実施形態の基本となる形態である。
【0014】
<情報処理装置1の構成>
本例示的実施形態に係る情報処理装置1の構成について、
図1を参照して説明する。
図1は、情報処理装置1の機能的な構成を示すブロック図である。
【0015】
図1に示すように、情報処理装置1は、取得部11と、生成部12と、構築部13とを含む。取得部11は、請求の範囲に記載した取得手段を実現する構成の一例である。生成部12は、請求の範囲に記載した生成手段を実現する構成の一例である。構築部13は、請求の範囲に記載した構築手段を実現する構成の一例である。
【0016】
取得部11は、文集合、及び、構築すべきタクソノミに関する補助情報を取得する。生成部12は、文集合を参照してフレーズを生成する。構築部13は、生成部12が生成したフレーズを含む複数のフレーズの間の関係性を推定することによりタクソノミを構築する。生成部12及び構築部13の一方又は両方は、補助情報を使用する。
【0017】
(フレーズ)
フレーズは、1又は複数の単語によって表され、概念を表す。例えば、フレーズ「パスタ」は、イタリア料理の主食の1つである小麦粉を主体とする練り物という概念を表している。また、フレーズ「イタリア料理」は、イタリア発祥の料理法という概念を表している。以下では、「フレーズが表す概念」を、単に、「フレーズ」と記載する。したがって、「2つのフレーズがそれぞれ表す概念の間に関係性が有る」ことを、「2つのフレーズの間に関係性が有る」と記載する。例えば、フレーズ「パスタ」はフレーズ「イタリア料理」に含まれる。このため、これらのフレーズの間には親子関係が有る。
【0018】
(タクソノミ)
タクソノミは、複数のフレーズの間の関係性を表す情報である。例えば、タクソノミは、階層性を有する有向グラフによって表される。具体的には、タクソノミは、各フレーズを表すノードと、親子関係を有する2つのノード間を接続するエッジとをそれぞれ表す情報を含む。また、構築すべきタクソノミとは、情報処理装置1が出力するタクソノミである。
【0019】
なお、タクソノミにおける階層性は、関係性を有するフレーズ間の親子関係を規定している。例えば、親子関係は、親が上位概念であり子が下位概念であるとの関係を表すものであってもよい。また、例えば、親子関係は、親が所属組織であり子が構成員であるとの関係を表すものであってもよい。また、例えば、親子関係は、地理的な包含関係を表すものであってもよい。
【0020】
また、同一のタクソノミに含まれる親子関係は、階層に応じて異なり得る。例えば、サッカーチームに関するタクソノミにおいて、第1階層及び第2階層間の親子関係は、地理的な包含関係(親が国又は地域、子がサッカーチーム)を表し、第2階層及び第3階層間の親子関係は、所属組織及び構成員の関係(親がサッカーチーム、子が選手)を表していてもよい。
【0021】
(文集合)
文集合は、文の集合である。文集合は、構築すべきタクソノミに含めるフレーズを生成する際に参照される。
【0022】
(補助情報)
補助情報は、構築すべきタクソノミに関する情報である。補助情報は、自然言語文を含んでもよいし、単語の集合を含んでもよい。
【0023】
例えば、補助情報は、構築すべきタクソノミの目的を示す情報を含んでもよい。タクソノミの目的とは、例えば、タクソノミを生成する意図、又は用途等であってもよい。また、補助情報は、構築すべきタクソノミに含めるフレーズを限定する情報を含んでもよい。また、補助情報は、構築すべきタクソノミにおけるフレーズ間の関係性を示す情報を含んでもよい。
【0024】
フレーズを限定する情報を含む補助情報の一例としては、「レシピに出てくる食材のタクソノミ」、「レシピに出てくる調理動作についてのタクソノミ」等といった自然言語文を含むものが挙げられる。
【0025】
また、関係性を示す情報を含む補助情報の一例としては、「サッカーチームに関するタクソノミで、国・地域に分けたもの」、「サッカーチームに関するタクソノミで、現在そのチームに属する選手まで含むもの」等といった自然言語文を含むものが挙げられる。
【0026】
<情報処理方法S1の流れ>
以上のように構成された情報処理装置1が実行する情報処理方法S1の流れについて、
図2を参照して説明する。
図2は、情報処理方法S1の流れを示すフロー図である。
図2に示すように、情報処理方法S1は、ステップS11~S13を含む。
【0027】
(ステップS11)
ステップS11において、取得部11は、文集合、及び補助情報を取得する。例えば、取得部11は、文集合及び補助情報の一方又は両方を、情報処理装置1のメモリ(図示せず)から取得してもよいし、ネットワークを介して接続された他の装置から取得してもよいし、入力装置を介して取得してもよい。
【0028】
(ステップS12)
ステップS12において、生成部12は、文集合を参照してフレーズを生成する。なお、「文集合を参照してフレーズを生成する」とは、「文集合に含まれるフレーズを抽出する」ことであってもよいし、「文集合に必ずしも含まれるとは限らないフレーズを、文集合に基づき予測する」ことであってもよい。当ステップにおいて、生成部12は、文集合を参照してフレーズを生成するために、補助情報を使用してもよいし、使用しなくてもよい。ただし、当該ステップS12及び後述するステップS13の少なくとも一方は、補助情報を使用する。
【0029】
(補助情報を使用する場合)
例えば、生成部12は、文集合を参照して、補助情報に類似するフレーズを生成する。具体的には、生成部12は、文集合を参照して生成したフレーズと補助情報との類似度を算出する。また、生成部12は、算出した類似度が所定条件を満たす場合には、当該フレーズを、構築すべきタクソノミに含めるフレーズとして採用し、満たさない場合には採用しない。
【0030】
(補助情報を使用しない場合)
例えば、生成部12は、文集合を参照してフレーズを生成し、生成したフレーズを、構築すべきタクソノミに含めるフレーズとする。
【0031】
(ステップS13)
ステップS13において、構築部13は、ステップS12で生成したフレーズを含む複数のフレーズ間の関係性を推定することにより、タクソノミを構築する。当ステップにおいて、構築部13は、複数のフレーズ間の関係性を推定するために、補助情報を使用してもよいし、使用しなくてもよい。ただし、前述したように、前述のステップS12及び当該ステップS13の少なくとも一方は、補助情報を使用する。
【0032】
(補助情報を使用する場合)
例えば、構築部13は、複数のフレーズ間の関係性として、補助情報に整合する関係性を推定する。具体的には、構築部13は、複数のフレーズ間の関係性を示す情報を算出し、算出した情報を、補助情報を用いて修正する。また、構築部13は、修正した情報に基づいて複数のフレーズを関連付けることにより、タクソノミを構築する。
【0033】
(補助情報を使用しない場合)
例えば、構築部13は、複数のフレーズ間の関係性を示す情報を算出し、算出した情報に基づいて複数のフレーズを関連付けることにより、タクソノミを構築する。
【0034】
<本例示的実施形態の効果>
以上のように、本例示的実施形態に係る情報処理装置1は、(i)文集合を参照してフレーズを生成する生成処理、及び、(ii)生成したフレーズを含む複数のフレーズ間の関係性を推定することによりタクソノミを構築する処理の一方又は両方において、補助情報を使用する。これにより、生成処理において補助情報を使用する場合には、構築したタクソノミに含まれるフレーズが、補助情報の内容に沿う可能性が高くなる。また、構築処理において補助情報を使用する場合には、構築したタクソノミにおける複数のフレーズ間の関係性が、補助情報の内容に沿う可能性が高くなる。補助情報は、構築すべきタクソノミに関する情報であるため、本例示的実施形態は、より精度よく所望のタクソノミを構築することができる。
【0035】
〔例示的実施形態2〕
本発明の第2の例示的実施形態について、図面を参照して詳細に説明する。なお、例示的実施形態1にて説明した構成要素と同じ機能を有する構成要素については、同じ符号を付し、その説明を適宜省略する。
【0036】
<情報処理装置2の構成>
本例示的実施形態に係る情報処理装置2の構成について、
図3を参照して説明する。
図3は、情報処理装置2の機能的な構成を示すブロック図である。
図3に示すように、情報処理装置2は、文集合D1及び補助情報F1を入力として、タクソノミT1を出力する装置である。情報処理装置2は、取得部21と、生成部22と、構築部23とを含む。取得部21は、例示的実施形態1における取得部11と同様に構成される。生成部22は、文集合D1を参照して、補助情報F1に類似する複数のフレーズを生成する。構築部23は、複数のフレーズ間の関係性として、補助情報F1に整合する関係性を推定する。
【0037】
<情報処理方法S2の流れ>
以上のように構成された情報処理装置2が実行する情報処理方法S2の流れについて、
図4を参照して説明する。
図4は、情報処理方法S2の流れを示すフロー図である。
図4に示すように、情報処理方法S2は、ステップS21~S23を含む。
【0038】
(ステップS21)
ステップS21において、取得部21は、文集合D1、及び補助情報F1を取得する。当ステップの詳細は、例示的実施形態1におけるステップS11で説明した通りである。
【0039】
(ステップS22)
ステップS22において、生成部22は、文集合D1を参照して、補助情報F1に類似するフレーズを生成する。当ステップの詳細については後述する。
【0040】
(ステップS23)
ステップS23において、構築部23は、タクソノミT1に含める複数のフレーズ間の関係性として、補助情報F1に整合する関係性を推定する。また、構築部23は、推定結果を参照してタクソノミT1を構築する。当ステップの詳細については後述する。
【0041】
<ステップS22の詳細>
ステップS22の詳細について、
図5を参照して説明する。
図5は、ステップS22の処理の詳細な流れの一例を示すフロー図である。
図5に示すように、ステップS22の処理は、ステップS221~S222を含む。
【0042】
(ステップS221)
ステップS221において、生成部22は、文集合D1を参照して、2以上の候補となるフレーズを生成する。候補となるフレーズを生成する処理には、例えば、非特許文献1に記載された技術を用いることができる。ただし、候補となるフレーズを生成する処理に用いる技術は、これに限定されない。
【0043】
(ステップS211の具体例)
例えば、
図5に示すように、文集合D1に「チーズ等の乳製品を使ったレシピをご紹介。…バジルを包丁で刻みます。」との文が含まれる例について説明する。この場合、生成部22は、文集合D1から、候補となるフレーズ「チーズ」、「乳製品」、「レシピ」、「バジル」、「包丁」を生成する。
【0044】
(ステップS222)
ステップS222において、生成部22は、2以上の候補となるフレーズのうち、補助情報F1との類似度が所定条件を満たす複数のフレーズを抽出し、タクソノミT1に含める複数のフレーズとする。換言すると、生成部22は、候補となるフレーズを、補助情報F1に類似するとの条件で絞り込む。所定条件の一例として、候補となるフレーズと補助情報F1との類似度が閾値以上であるとの条件が挙げられる。類似度は、例えば、分散表現を用いて算出することができる。具体的には、類似度は、候補となるフレーズの分散表現と補助情報F1の分散表現とのコサイン類似度又はユークリッド距離等であってもよい。ただし、所定条件は、これに限られない。また、類似度の算出手法は、これに限られない。以降、補助情報F1に類似するとの条件で候補となるフレーズを絞り込むことを、単に、「補助情報F1を用いた絞り込み」とも記載する。
【0045】
(ステップS222の具体例)
例えば、
図5に示すように、補助情報F1に「料理で用いられる食材」との自然言語文が含まれる例について説明する。この場合、生成部22は、候補となるフレーズのうち、「チーズ」と補助情報F1との類似度0.9を算出する。同様に、生成部22は、「乳製品」、「レシピ」、「バジル」、「包丁」の各々と補助情報F1との類似度として0.9、0.1、0.9、0.1を算出する。このように、補助情報F1「料理で用いられる食材」に沿ったフレーズは、そうでないフレーズと比較して、補助情報F1との類似度が高くなる。
【0046】
ここで、例えば、閾値が0.7であるとする。この場合、生成部22は、補助情報F1との類似度が閾値以上となるフレーズ「チーズ」、「乳製品」、「バジル」を、タクソノミT1に含める複数のフレーズとして抽出する。
【0047】
このように、補助情報F1を用いた絞り込みにより、タクソノミT1に含める複数のフレーズとして、補助情報F1に類似するフレーズ「チーズ」、「乳製品」、「バジル」が採用され、補助情報F1に類似しない「レシピ」、「包丁」は採用されない。
【0048】
なお、
図5では、ステップS221において候補となるフレーズを生成した後、ステップS222において補助情報F1を用いた絞り込みを行う例について説明した。これに限らず、生成部22は、文集合D1からフレーズを生成する処理の過程で補助情報F1を参照することにより、補助情報F1に類似するフレーズを生成してもよい。
【0049】
<ステップS23の詳細>
ステップS23の詳細について、
図6を参照して説明する。
図6は、ステップS23の処理の詳細な流れの一例を示すフロー図である。
図6に示すように、ステップS23の処理は、ステップS231~S233を含む。
【0050】
(ステップS231)
ステップS231において、構築部23は、タクソノミT1に含める複数のフレーズ間の関係性を示すスコアを算出する。なお、スコアは、関係性を有する確度であり、請求の範囲に記載した「関係性を示す情報」の一例である。関係性を示すスコアを算出する処理には、例えば、非特許文献1に記載された技術を用いることができる。ただし、関係性を示す情報を算出する処理に用いる技術は、これに限定されない。
【0051】
(ステップS231の具体例)
例えば、ステップS22において複数のフレーズ「チーズ」、「乳製品」、「バジル」が生成された場合のステップS231の具体例について説明する。一例として、構築部23は、フレーズ「チーズ」及び「バジル」間の関係性を示すスコアとして0.9を算出する。当該スコアは、フレーズ「チーズ」及び「バジル」が相性の良い食材であるという関係性を示していると考えられる。同様に、構築部23は、フレーズ「チーズ」及び「乳製品」間の関係性を示すスコアとして0.9を算出する。当該スコアは、「チーズ」が「乳製品」に含まれるとの関係性を示していると考えられる。また、構築部23は、フレーズ「バジル」及び「乳製品」間の関係性を示すスコアとして0.1を算出する。当該スコアは、これらのフレーズが関係性を有していない可能性を示している。
【0052】
(ステップS232)
ステップS232において、構築部23は、複数のフレーズ間の関係性を示すスコアを、補助情報F1を用いて修正する。例えば、構築部23は、次式(1)を用いてスコアを修正する。
【0053】
【数1】
式(1)において、term1,term2は2つのフレーズを示す。descriptionは、補助情報F1を示す。Sim()は、修正後のスコアを示す。Sim_original()は、修正前のスコアを示す。Sim_d()は、term1及びterm2の各分散表現の差分と、descriptionの分散表現との類似度を示す。なお、このような差分は、term1及びterm2の関係性を表す。したがって、Sim_d()は、term1及びterm2の関係性と、補助情報F1との類似度を示している。λは係数である。ただし、補助情報F1を用いた修正処理は、これに限定されない。
【0054】
(ステップS232の具体例)
例えば、構築部23は、フレーズ「チーズ」の分散表現及びフレーズ「バジル」の分散表現の差分と、補助情報F1の分散表現との類似度0.1を求める。これは、フレーズ「チーズ」及び「バジル」間の「相性の良い食材という関係性」と、補助情報F1「料理で用いられる食材」との類似度が低いことを示す。そして、構築部23は、式(1)に従って、フレーズ「チーズ」及び「バジル」間のスコア0.8に当該類似度0.1を加算して、スコアを0.9に修正する。なお、ここでは、λ=1を適用している。
【0055】
同様に、構築部23は、フレーズ「チーズ」の分散表現及びフレーズ「乳製品」の分散表現の差分と、補助情報F1の分散表現との類似度0.9を求める。これは、フレーズ「チーズ」が「乳製品」に含まれるとの関係性と、補助情報F1「料理で用いられる食材」との類似度が高いことを示す。そして、構築部23は、式(1)に従って、フレーズ「チーズ」及び「乳製品」間のスコア0.9に当該類似度0.9を加算して、スコアを1.8に修正する。
【0056】
同様に、構築部23は、フレーズ「バジル」の分散表現及びフレーズ「乳製品」の分散表現の差分と、補助情報F1の分散表現との類似度0.1を求める。これは、フレーズ「バジル」及び「乳製品」の関係性と、補助情報F1「料理で用いられる食材」との類似度が低いことを示す。そして、構築部23は、式(1)に従って、フレーズ「バジル」及び「乳製品」間のスコア0.1に当該類似度0.1を加算して、スコアを0.2に修正する。
【0057】
このようにして、2つのフレーズが補助情報F1に整合しない「相性の良い食材という関係性」を有する場合、そのような関係性を示すスコアは、補助情報F1を用いて相対的に低い値に修正される。
【0058】
(ステップS233)
ステップS233において、構築部23は、修正したスコアに基づいてタクソノミT1を構築する。一例として、構築部23は、修正後のスコアが閾値以上である2つのフレーズを関連付ける。
【0059】
(ステップS233の具体例)
例えば、構築部23は、修正後のスコアが閾値1.0以上であるフレーズ「チーズ」及び「乳製品」を関連付け、これらのフレーズを含むタクソノミT1を構築する。
図6に示すように、タクソノミT1は、ノードN1~N7及びエッジE1~E6を含む有向グラフによって表される。ノードN1~N7は、ステップS22で生成された複数のフレーズにそれぞれ対応する。例えば、ノードN3はフレーズ「乳製品」に対応し、ノードN5はフレーズ「バジル」に対応し、ノードN6はフレーズ「チーズ」に対応する。また、エッジE1~E6は、両端に接続された2つのフレーズの間に「上位概念及び下位概念の関係」があることを表す。
図6では、エッジE1~E6を矢印で表し、根元に接続されたノードが親であり、矢頭に接続されたノードが子である。例えば、エッジE5は、根元に接続されたノードN2に対応するフレーズ「乳製品」が親(上位概念)であり、矢頭に接続されたノードN5に対応するフレーズ「チーズ」が子(下位概念)であることを表す。
【0060】
このように、複数のフレーズ「チーズ」、「乳製品」、「バジル」は、補助情報F1に類似する「食材の上位概念及び下位概念の関係性」により関連付けられ、補助情報F1に類似しない「相性の良い食材という関係性」によって関連付けられることはない。
【0061】
<本例示的実施形態の効果>
以上のように、本例示的実施形態に係る情報処理装置2は、タクソノミT1に含める複数のフレーズとして、文集合D1に類似する複数のフレーズを生成する。これにより、構築したタクソノミT1に含まれる複数のフレーズは、補助情報F1に整合する可能性が高くなる。また、本例示的実施形態に係る情報処理装置2は、複数のフレーズ間の関係性として、補助情報F1に整合する関係性を推定し、推定結果に基づきタクソノミT1を構築する。これにより、構築したタクソノミT1に含まれる関係性は、補助情報F1に整合する可能性が高くなる。補助情報F1は、構築すべきタクソノミT1に関する情報であるため、本例示的実施形態は、より精度よく所望のタクソノミT1を構築することができる。
【0062】
<本例示的実施形態の他の態様>
なお、本例示的実施形態は、ステップS22及びS23の何れか一方において、補助情報F1を使用しなくてもよい。例えば、生成部22は、ステップS22において、補助情報F1を使用せずに文集合D1からフレーズを生成してもよい。具体的には、生成部22は、
図5に示したステップS221~S222のうち、ステップS222の処理を省略してもよい。この場合、生成部22は、ステップS221で求めた候補となるフレーズを全て、タクソノミT1に含める複数のフレーズとする。
【0063】
また、例えば、構築部23は、ステップS23において、補助情報F1を使用せずにタクソノミT1を構築してもよい。具体的には、構築部23は、
図6に示したステップS231~S233のうち、ステップS232の処理を省略してもよい。ただし、ステップS232の処理を省略できるのは、ステップS22で補助情報F1を使用する場合である。ステップS22で補助情報F1を使用しない場合には、構築部23は、ステップS232の処理を省略せずに実行する。
【0064】
このように、ステップS22及びS23の一方において補助情報F1を使用し他方において使用しない態様であっても、両方において補助情報F1を使用しない場合に比べて、より精度よく所望のタクソノミT1を構築することができる。
【0065】
〔例示的実施形態3〕
本発明の第3の例示的実施形態について、図面を参照して詳細に説明する。なお、例示的実施形態1、2にて説明した構成要素と同じ機能を有する構成要素については、同じ符号を付記し、その説明を繰り返さない。
【0066】
<情報処理装置3の構成>
本例示的実施形態に係る情報処理装置3の構成について、
図7を参照して説明する。
図7は、情報処理装置3の機能的な構成を示すブロック図である。
図7に示すように、情報処理装置3は、タクソノミT2、文集合D2及び補助情報F2を入力として、タクソノミT3を出力する装置である。情報処理装置3は、取得部31と、生成部32と、構築部33とを含む。取得部31は、例示的実施形態1における取得部11と同様に構成されることに加えて、さらにタクソノミT2を取得する。生成部32は、文集合D2を参照して、タクソノミT2に含まれるフレーズとは異なる新たなフレーズを生成する。構築部33は、タクソノミT2に含まれるフレーズと新たなフレーズとの間の関係性を推定することにより、タクソノミT2を拡張してタクソノミT3を構築する。
【0067】
(タクソノミT2、T3)
タクソノミT3は、情報処理装置3が出力するタクソノミであり、請求の範囲に記載した「構築すべきタクソノミ」の一例である。タクソノミT2は、タクソノミT3の一部を構成するタクソノミであり、請求の範囲に記載した「部分タクソノミ」の一例である。タクソノミT2を拡張することによりタクソノミT3が構築される。
【0068】
タクソノミT2は、特定のドメインに関するフレーズを含む。以降、特定のドメインに関するフレーズを含むことを、単に、特定のドメインに関する、とも記載する。
【0069】
図8は、タクソノミT2の一例を模式的に示す図である。この例では、タクソノミT2は、ドメイン「ニュース」に関する。タクソノミT2は、ノードN1~N7及びエッジE1~E6を含む有向グラフによって表される。ノードN1~N7は、ドメイン「ニュース」における複数のフレーズにそれぞれ対応する。例えば、ノードN2はフレーズ「天気」に対応し、ノードN3はフレーズ「スポーツ」に対応し、ノードN6はフレーズ「野球」に対応する。なお、エッジE1~E6については、
図6を用いて説明した通りであるため、詳細な説明を繰り返さない。
【0070】
(新たなフレーズ)
新たなフレーズは、タクソノミT2に含まれる複数のフレーズの何れとも異なるフレーズであり、タクソノミT2に追加するためのフレーズである。換言すると、新たなフレーズは、タクソノミT2に含まれないフレーズである。
【0071】
(既存のフレーズ)
以降、タクソノミT2に含まれる各フレーズを、新たなフレーズと区別して説明するため、「既存のフレーズ」と記載する。
【0072】
(文集合D2)
文集合D2は、タクソノミT2に追加すべきフレーズを生成する際に参照される。文集合D2は、既存のフレーズと同一のドメインに関連する文の集合であることが望ましい。
【0073】
<情報処理方法S3の流れ>
以上のように構成された情報処理装置3が実行する情報処理方法S3の流れについて、
図9を参照して説明する。
図9は、情報処理方法S3の流れを示すフロー図である。
図9に示すように、情報処理方法S3は、ステップS31~S33を含む。
【0074】
(ステップS31)
ステップS31において、取得部31は、タクソノミT2、文集合D2、及び補助情報F2を取得する。例えば、取得部31は、タクソノミT2、文集合D2、及び補助情報F2の一部又は全部を、情報処理装置3のメモリから取得してもよいし、ネットワークを介して接続された他の装置から取得してもよいし、入力装置を介して取得してもよい。
【0075】
(ステップS32)
ステップS32において、生成部32は、文集合D2を参照して、補助情報F2に類似する新たなフレーズを生成する。当ステップの詳細については後述する。
【0076】
(ステップS33)
ステップS33において、構築部33は、ステップS32で生成した新たなフレーズと、タクソノミT2に含まれる既存のフレーズとの関係性として、補助情報F2に整合する関係性を推定する。また、構築部33は、推定結果に基づいて新たなフレーズを既存のフレーズに関連付けることにより、タクソノミT2を拡張する。当ステップの詳細については後述する。
【0077】
<ステップS32の詳細>
ステップS32の詳細について、
図10を参照して説明する。
図10は、ステップS32の処理の詳細な流れの一例を示すフロー図である。
図10に示すように、ステップS32の処理は、ステップS321~S322を含む。
【0078】
(ステップS321)
ステップS321において、生成部32は、文集合D2を参照して、候補となる新たなフレーズを生成する。例えば、生成部32は、当ステップにおいて言語モデルを用いることが可能である。
【0079】
(言語モデル)
言語モデルは、入力された単語列に対してその確度を出力するモデルである。例えば、ある言語モデルに「his age is 100」という単語列を入力して出力される確度は、「his birthday is 100」という単語列を入力して出力される確度より大きい。これは、この言語モデルは、「he」と「100」との間の関係性が「age」である確度と「birthday」である確度とを保持しており、「age」である確度が「birthday」である確度より高いからである。また、言語モデルを用いて、一部の単語がマスクされた単語列に対して、マスクされた箇所に適合する単語を予測することが可能である。言語モデルの一例としては、例えば、以下の参考文献1又は参考文献2によって生成された言語モデルを適用可能である。
【0080】
[参考文献1] Jacob Devlin et al., "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding", NAACL 2019.
[参考文献2] Yinhan Liu et al., "RoBERTa: A Robustly Optimized BERT Pretraining Approach", arXiv 2019.
例えば、生成部32は、言語モデルを用いて生成した抽出モデルを用いて、文集合D2から候補となる新たなフレーズを抽出してもよい。ここで、抽出モデルは、言語モデルと、言語モデルからの出力が入力される識別器とを含む。抽出モデルは、文集合D2に含まれる文が言語モデルに入力されると、新たなフレーズを識別器が識別して出力するよう、文集合D2に出現する既存のフレーズを正解とする教師データを用いた機械学習により生成される。この場合、生成部32は、文集合D2を抽出モデルに入力して抽出されるフレーズのうち、既存のフレーズとは異なるものを、候補となる新たなフレーズとする。
【0081】
(ステップS321の具体例)
具体例として、文集合D2に「本日のサッカーの試合速報をお届け。…ニューヨークの野球チームの二大勢力は…。」との文が含まれる例について説明する。この場合、生成部32は、文集合D2を抽出モデルに入力することにより、フレーズ「サッカー」、「ニューヨーク」、「野球」を抽出する。また、生成部32は、抽出モデルが抽出したフレーズのうち、既存のフレーズ「野球」とは異なるフレーズ「サッカー」、「ニューヨーク」を、候補となる新たなフレーズとする。
【0082】
(ステップS322)
ステップS322において、生成部32は、候補となる新たなフレーズのうち、補助情報F2との類似度が所定条件を満たすフレーズを抽出し、タクソノミT2に追加する新たなフレーズとする。換言すると、生成部32は、候補となる新たなフレーズを、補助情報F2に類似するとの条件で絞り込む。所定条件の一例として、フレーズ及び補助情報F2の類似度が閾値以上であるとの条件が挙げられる。類似度については上述した通りである。ただし、所定条件は、これに限られない。
【0083】
(ステップS322の具体例)
例えば、補助情報F2に「日本でのニュース配信の推薦に使いたい」との自然言語文が含まれる例について説明する。この場合、生成部32は、ステップS321で求めた新たなフレーズのうち、「サッカー」の分散表現と補助情報F2の分散表現との類似度0.9を算出する。同様に、生成部32は、「ニューヨーク」の分散表現と補助情報F2の分散表現との類似度として0.1を算出する。このように、補助情報F2に沿うフレーズは、そうでないフレーズと比較して、補助情報F2との類似度が高くなる。
【0084】
ここで、例えば、閾値が0.7であるとする。この場合、生成部32は、補助情報F2との類似度が閾値以上となるフレーズ「サッカー」を、新たなフレーズとして抽出する。
【0085】
このように、補助情報F2を用いた絞り込みにより、タクソノミT2に追加する新たなフレーズとして、補助情報F2に類似するフレーズ「サッカー」が採用され、補助情報F2に類似しない「ニューヨーク」は採用されない。
【0086】
なお、
図10では、ステップS321において候補となる新たなフレーズを生成した後、ステップS322において補助情報F2を用いた絞り込みを行う例について説明した。これに限らず、生成部32は、文集合D2から新たなフレーズを生成する処理の過程で補助情報F2を参照することにより、補助情報F2に類似する新たなフレーズを生成してもよい。
【0087】
<ステップS33の詳細>
ステップS33の詳細について、
図11を参照して説明する。
図11は、ステップS33の処理の詳細な流れの一例を示すフロー図である。
図11に示すように、ステップS33の処理は、ステップS331~S333を含む。
【0088】
(ステップS331)
ステップS331において、構築部33は、新たなフレーズと既存のフレーズとの間の関係性を示すスコアを算出する。例えば、構築部33は、新たなフレーズと既存のフレーズとの間の関係性を示すスコアを算出するために、言語モデルを用いることが可能である。
【0089】
例えば、構築部33は、新たなフレーズと既存のフレーズとを含む文の確度を言語モデルにより算出し、算出した確度を上述した関係性を示すスコアとしてもよい。
【0090】
(ステップS331の具体例)
例えば、ステップS32において新たなフレーズ「サッカー」が生成された場合のステップS331の具体例について説明する。一例として、構築部33は、新たなフレーズ「サッカー」と既存のフレーズ「スポーツ」との間のスコアとして0.9を算出する。当該スコアは、「サッカー」が「スポーツ」に含まれるとの関係性を示していると考えられる。また、構築部33は、新たなフレーズ「サッカー」と既存のフレーズ「天気」との間のスコアとして0.1を算出する。当該スコアは、これらのフレーズが関係性を有していない可能性を示している。また、構築部33は、新たなフレーズ「サッカー」と既存のフレーズ「野球」との間のスコアとして0.8を算出する。当該スコアは、「どちらもスポーツの種別を示すという関係性」を示していると考えられる。
【0091】
(ステップS332)
ステップS332において、構築部33は、既存のフレーズと新たなフレーズとの間の関係性を示すスコアを、補助情報F2を用いて修正する。例えば、構築部33は、上述した式(1)において、term1を既存のフレーズとし、term2を新たなフレーズとし、descriptionを補助情報F2とすることにより、スコアを修正する。ただし、補助情報F2を用いた修正処理は、これに限定されない。
【0092】
(ステップS332の具体例)
例えば、構築部33は、新たなフレーズ「サッカー」の分散表現及び既存のフレーズ「スポーツ」の分散表現の差分と、補助情報F2の分散表現との類似度0.9を求める。これは、フレーズ「サッカー」が「スポーツ」に含まれるとの関係性と、補助情報F2「日本でのニュース配信の推薦に使いたい」との類似度が高いことを示す。そして、構築部33は、式(1)に従って、フレーズ「サッカー」及び「スポーツ」間のスコア0.9に当該類似度0.9を加算して、スコアを1.8に修正する。
【0093】
同様に、構築部33は、新たなフレーズ「サッカー」の分散表現及び既存のフレーズ「天気」の分散表現の差分と、補助情報F2の分散表現との類似度0.1を求める。これは、フレーズ「サッカー」及び「天気」の関係性と、補助情報F2との類似度が低いことを示す。そして、構築部33は、式(1)に従って、フレーズ「サッカー」及び「天気」間のスコア0.1に当該類似度0.1を加算して、スコアを0.2に修正する。
【0094】
同様に、構築部33は、新たなフレーズ「サッカー」の分散表現及び既存のフレーズ「野球」の分散表現の差分と、補助情報F2の分散表現との類似度0.1を求める。これは、例えば、フレーズ「サッカー」及び「野球」がどちらもスポーツの種類を示すという関係性と、補助情報F2「日本でのニュース配信の推薦に使いたい」との類似度が低いことを示す。そして、構築部33は、式(1)に従って、フレーズ「サッカー」及び「野球」間のスコア0.8に当該類似度0.1を加算して、スコアを0.9に修正する。
【0095】
このようにして、新たなフレーズ及び既存のフレーズが補助情報F2に整合しない「どちらもスポーツの種類を示す関係性」を有する場合、そのような関係性を示すスコアは、補助情報F2を用いて相対的に低い値に修正される。
【0096】
(ステップS333)
ステップS333において、構築部33は、修正したスコアに基づいてタクソノミT2を拡張する。一例として、構築部33は、新たなフレーズとの間の修正後のスコアが閾値以上である既存のフレーズに、当該新たなフレーズを関連付ける。
【0097】
(ステップS333の具体例)
例えば、既存のフレーズ「スポーツ」は、新たなフレーズ「サッカー」との間の修正後のスコアが閾値1.0以上の1.8である。そこで、
図11に示すように、構築部33は、新たなフレーズ「サッカー」に対応するノードN7を、既存のフレーズ「スポーツ」に対うするノードN3に、エッジE6により関連付ける。これにより、タクソノミT2が拡張されたタクソノミT3が構築される。
【0098】
このように、新たなフレーズ「サッカー」は、補助情報F2に整合する「ニュースの上位概念及び下位概念の関係性」を有する既存のフレーズ「スポーツ」に関連付けられる。新たなフレーズ「サッカー」は、補助情報F2に整合しない「どちらもスポーツの種類を示す」との関係性を有する既存のフレーズ「野球」には関連付けられない。
【0099】
<本例示的実施形態の効果>
以上のように、本例示的実施形態に係る情報処理装置3は、タクソノミT2に追加する新たなフレーズとして、文集合D2を参照して補助情報F2に類似するフレーズを生成する。これにより、タクソノミT2に追加する新たなフレーズは、補助情報F2に整合する可能性が高くなる。また、本例示的実施形態に係る情報処理装置3は、新たなフレーズ及び既存のフレーズ間の関係性として、補助情報F2に整合する関係性を推定し、推定結果に基づきタクソノミT2を拡張する。これにより、拡張後のタクソノミT3に含まれる関係性は、補助情報F2に整合する可能性が高くなる。補助情報F2は、構築すべきタクソノミT3に関する情報であるため、本例示的実施形態は、より精度よく所望のタクソノミT3を構築することができる。
【0100】
<本例示的実施形態の他の態様1>
なお、本例示的実施形態は、ステップS32及びS33の何れか一方において、補助情報F2を使用しなくてもよい。例えば、生成部32は、ステップS32において、補助情報F2を使用せずに文集合D2から新しいフレーズを生成してもよい。具体的には、生成部32は、
図10に示したステップS321~S322のうち、ステップS322の処理を省略してもよい。この場合、生成部32は、ステップS321で求めた候補となる新たなフレーズを全て、タクソノミT2に追加する新たなフレーズとする。
【0101】
また、例えば、構築部33は、ステップS33において、補助情報F2を使用せずにタクソノミT2を拡張してもよい。具体的には、構築部33は、
図11に示したステップS331~S333のうち、ステップS332の処理を省略してもよい。ただし、ステップS332の処理を省略できるのは、ステップS32で補助情報F2を使用する場合である。ステップS32で補助情報F2を使用しない場合には、構築部33は、ステップS332の処理を省略せずに実行する。
【0102】
このように、ステップS32及びS33の一方において補助情報F2を使用し他方において使用しない態様1であっても、両方において補助情報F2を使用しない場合に比べて、より精度よくタクソノミT2を拡張して所望のタクソノミT3を構築することができる。
【0103】
<本例示的実施形態の他の態様2>
本例示的実施形態では、ステップS321において、生成部32が生成する候補となる新たなフレーズは、文集合D2から抽出されたフレーズである例について説明した。これに限らず、生成部32は、文集合D2に必ずしも含まれるとは限らないフレーズを、文集合D2を参照して予測することにより、候補となる新たなフレーズとして生成してもよい。候補となる新たなフレーズを予測する処理においては、例えば、言語モデルを用いることが可能である。
【0104】
例えば、生成部32は、文集合D2に含まれる文において既存のフレーズが出現する箇所をマスクし、マスクした箇所に適合するフレーズを、言語モデルを用いて予測する。この場合、生成部32は、予測したフレーズを、候補となる新たなフレーズとする。
【0105】
<本例示的実施形態の他の態様3>
本例示的実施形態では、ステップS331において、言語モデルを用いて新たなフレーズと既存のフレーズとの間の関係性を示すスコアを算出する例について説明した。なお、言語モデルを用いて関係性を示すスコアを算出する手法はこれに限られない。
【0106】
例えば、構築部33は、言語モデルを用いて生成した判別モデルを用いて、既存のフレーズと新たなフレーズとの関係性を示すスコアを算出してもよい。この場合、判別モデルは、言語モデルと、言語モデルからの出力が入力される分類器とを含む。判別モデルは、既存のフレーズと新たなフレーズとを含む文が言語モデルに入力されると、関係性を示すスコアを分類器が出力するよう学習される。当該判別モデルの学習は、タクソノミT2が示す2つの既存のフレーズ間の関係性を正解とする教師データを用いて行われる。
【0107】
〔変形例1〕
上述した例示的実施形態2、3において、生成部22、32は、候補となるフレーズを、補助情報F1、F2全体との類似度に基づいて絞り込む例について説明した。これに限らず、生成部22、32は、候補となるフレーズと、補助情報F1、F2の一部分との類似度、又は異なる各部分との類似度の組み合わせに基づいて絞り込みを行ってもよい。例えば、生成部22は、補助情報F1、F2に含まれる複数の文(又は複数のフレーズ)のうち、候補となるフレーズとの類似度が最大の文(又は最大のフレーズ)との類似度に基づいて絞り込みを行ってもよい。また、例えば、生成部22は、補助情報F1、F2に含まれる複数の文(又は複数のフレーズ)の各々と、候補となるフレーズとの類似度の平均値に基づいて絞り込みを行ってもよい。
【0108】
〔変形例2〕
上述した例示的実施形態2、3において、生成部22、32は、候補となるフレーズを、補助情報F1、F2の分散表現との類似度に基づいて絞り込む例について説明した。ただし、補助情報F1、F2を用いて候補となるフレーズを絞り込む手法はこれに限られない。例えば、補助情報F1、F2を用いて候補となるフレーズを絞り込む処理において、言語モデルを使用することができる。
【0109】
具体的には、生成部22、32は、候補となるフレーズ及び補助情報F1、F2を含む文を言語モデルに入力し、言語モデルから出力される確度に基づいて候補となるフレーズを絞り込んでもよい。
【0110】
〔変形例3〕
上述した例示的実施形態2、3において、構築部23、33は、複数のフレーズの間の関係性を示すスコアを、当該関係性を示す分散表現の差分と補助情報F1、F2との類似度に基づいて修正する例について説明した。ただし、補助情報F1、F2に整合する関係性を推定する手法はこれに限られない。例えば、補助情報F1、F2に整合する関係性を推定する処理において、言語モデルを使用することができる。
【0111】
具体的には、構築部23、33は、2つのフレーズ及び補助情報F1、F2を含む文を言語モデルに入力し、言語モデルから出力される確度に基づいて、補助情報F1、F2に整合する関係性を示すスコアを算出してもよい。
【0112】
〔変形例4〕
上述した例示的実施形態2、3において、補助情報F1、F2が自然言語文を含む例について説明した。ただし、補助情報F1、F2は、自然言語文を含んでいなくてもよい。例えば、補助情報F1は、「料理」、「食材」といった単語の集合であってもよいし、補助情報F2は、「ニュース」、「日本」、「配信」、「推薦」といった単語の集合であってもよい。
【0113】
〔ソフトウェアによる実現例〕
情報処理装置1、2、3の一部又は全部の機能は、集積回路(ICチップ)等のハードウェアによって実現してもよいし、ソフトウェアによって実現してもよい。
【0114】
後者の場合、情報処理装置1、2、3は、例えば、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータによって実現される。このようなコンピュータの一例(以下、コンピュータCと記載する)を
図12に示す。コンピュータCは、少なくとも1つのプロセッサC1と、少なくとも1つのメモリC2と、を備えている。メモリC2には、コンピュータCを情報処理装置1、2、3として動作させるためのプログラムPが記録されている。コンピュータCにおいて、プロセッサC1は、プログラムPをメモリC2から読み取って実行することにより、情報処理装置1、2、3の各機能が実現される。
【0115】
プロセッサC1としては、例えば、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)、DSP(Digital Signal Processor)、MPU(Micro Processing Unit)、FPU(Floating point number Processing Unit)、PPU(Physics Processing Unit)、マイクロコントローラ、又は、これらの組み合わせなどを用いることができる。メモリC2としては、例えば、フラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又は、これらの組み合わせなどを用いることができる。
【0116】
なお、コンピュータCは、プログラムPを実行時に展開したり、各種データを一時的に記憶したりするためのRAM(Random Access Memory)を更に備えていてもよい。また、コンピュータCは、他の装置との間でデータを送受信するための通信インタフェースを更に備えていてもよい。また、コンピュータCは、キーボードやマウス、ディスプレイやプリンタなどの入出力機器を接続するための入出力インタフェースを更に備えていてもよい。
【0117】
また、プログラムPは、コンピュータCが読み取り可能な、一時的でない有形の記録媒体Mに記録することができる。このような記録媒体Mとしては、例えば、テープ、ディスク、カード、半導体メモリ、又はプログラマブルな論理回路などを用いることができる。コンピュータCは、このような記録媒体Mを介してプログラムPを取得することができる。また、プログラムPは、伝送媒体を介して伝送することができる。このような伝送媒体としては、例えば、通信ネットワーク、又は放送波などを用いることができる。コンピュータCは、このような伝送媒体を介してプログラムPを取得することもできる。
【0118】
〔付記事項1〕
本発明は、上述した実施形態に限定されるものでなく、請求項に示した範囲で種々の変更が可能である。例えば、上述した実施形態に開示された技術的手段を適宜組み合わせて得られる実施形態についても、本発明の技術的範囲に含まれる。
【0119】
〔付記事項2〕
上述した実施形態の一部又は全部は、以下のようにも記載され得る。ただし、本発明は、以下の記載する態様に限定されるものではない。
【0120】
(付記1)
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、
前記文集合を参照してフレーズを生成する生成手段と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、を含み、
前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用する、
情報処理装置。
【0121】
上記構成によれば、生成手段において補助情報を使用する場合には、構築したタクソノミに含まれるフレーズが、補助情報の内容に沿った所望のフレーズである可能性が高くなる。また、構築手段において補助情報を使用する場合には、構築したタクソノミにおける複数のフレーズ間の関係性が、補助情報の内容に沿った所望の関係性である可能性が高くなる。そのため、より精度よく所望のタクソノミを構築することができる。
【0122】
(付記2)
前記生成手段は、前記文集合を参照して、前記補助情報に類似する前記フレーズを生成する、付記1に記載の情報処理装置。
【0123】
上記構成によれば、構築したタクソノミに含まれるフレーズが補助情報に類似するので、当該フレーズが所望のものである可能性が高くなる。
【0124】
(付記3)
前記生成手段は、前記文集合を参照して候補となるフレーズを生成し、前記候補となるフレーズのうち、前記補助情報との類似度が所定条件を満たすものを抽出する、付記2に記載の情報処理装置。
【0125】
上記構成によれば、構築したタクソノミに所望しないフレーズが含まれる可能性を低減できる。
【0126】
(付記4)
前記構築手段は、前記複数のフレーズの間の関係性として、前記補助情報に整合する関係性を推定する、付記1から3の何れか1つに記載の情報処理装置。
【0127】
上記構成によれば、構築したタクソノミに含まれる関係性が補助情報に整合するので、当該関係性が所望のものである可能性が高くなる。
【0128】
(付記5)
前記構築手段は、前記複数のフレーズの間の関係性を示す情報を算出し、算出した情報を、前記補助情報を用いて修正することにより、前記補助情報に整合する関係性を推定する、付記4に記載の情報処理装置。
【0129】
上記構成によれば、構築したタクソノミに含まれる関係性は、補助情報を用いて修正された関係性であるため、当該関係性が所望のものである可能性が高くなる。
【0130】
(付記6)
前記補助情報は、自然言語文を含む、付記1から5の何れか1つに記載の情報処理装置。
【0131】
上記構成によれば、より精度良いタクソノミを生成するために用いる補助情報として、容易に生成可能な自然言語文を用いることができる。
【0132】
(付記7)
前記補助情報は、単語の集合を含む、付記1から5の何れか1つに記載の情報処理装置。
【0133】
上記構成によれば、より精度良いタクソノミを生成するために用いる補助情報として、容易に生成可能な単語の集合を用いることができる。
【0134】
(付記8)
前記取得手段は、前記構築すべきタクソノミの一部を構成する部分タクソノミをさらに取得し、
前記生成手段は、前記文集合を参照して、前記部分タクソノミに含まれるフレーズとは異なる新たなフレーズを生成し、
前記構築手段は、前記部分タクソノミに含まれるフレーズと前記新たなフレーズとの間の関係性を推定することにより、前記部分タクソノミを拡張する、
付記1から7の何れか1つに記載の情報処理装置。
【0135】
上記構成によれば、部分タクソノミを拡張して構築するタクソノミを、より精度よく補助情報の内容に沿った所望のものとすることができる。
【0136】
(付記9)
文集合、及び、構築すべきタクソノミに関する補助情報を取得すること、
前記文集合を参照してフレーズを生成すること、及び、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築すること、を含み、
前記フレーズを生成すること、及び、前記タクソノミを構築すること、の一方又は両方において前記補助情報を使用する、情報処理方法。
【0137】
上記構成によれば、付記1と同様の効果を奏する。
【0138】
(付記10)
コンピュータを情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得手段と、
前記文集合を参照してフレーズを生成する生成手段と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築手段と、して機能させ、
前記生成手段及び前記構築手段の一方又は両方において前記補助情報を使用する、プログラム。
【0139】
上記構成によれば、付記1と同様の効果を奏する。
【0140】
〔付記事項3〕
上述した実施形態の一部又は全部は、更に、以下のように表現することもできる。
【0141】
少なくとも1つのプロセッサを備え、前記プロセッサは、
文集合、及び、構築すべきタクソノミに関する補助情報を取得する取得処理と、
前記文集合を参照してフレーズを生成する生成処理と、
前記フレーズを含む複数のフレーズの間の関係性を推定することにより前記タクソノミを構築する構築処理と、を実行し、
前記生成処理及び前記構築処理の一方又は両方において前記補助情報を使用する、情報処理装置。
【0142】
なお、この情報処理装置は、更にメモリを備えていてもよく、このメモリには、前記取得処理と、前記生成処理と、前記構築処理とを前記プロセッサに実行させるためのプログラムが記憶されていてもよい。また、このプログラムは、コンピュータ読み取り可能な一時的でない有形の記録媒体に記録されていてもよい。
【符号の説明】
【0143】
1、2、3 情報処理装置
11、21、31 取得部
12、22、32 生成部
13、23、33 構築部