IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特開2023-144408情報処理装置、情報処理方法、及びプログラム
<>
  • 特開-情報処理装置、情報処理方法、及びプログラム 図1
  • 特開-情報処理装置、情報処理方法、及びプログラム 図2
  • 特開-情報処理装置、情報処理方法、及びプログラム 図3
  • 特開-情報処理装置、情報処理方法、及びプログラム 図4
  • 特開-情報処理装置、情報処理方法、及びプログラム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023144408
(43)【公開日】2023-10-11
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
   G06N 5/02 20230101AFI20231003BHJP
   G06F 16/90 20190101ALI20231003BHJP
【FI】
G06N5/02
G06F16/90 100
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022051365
(22)【出願日】2022-03-28
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100166006
【弁理士】
【氏名又は名称】泉 通博
(74)【代理人】
【識別番号】100154070
【弁理士】
【氏名又は名称】久恒 京範
(74)【代理人】
【識別番号】100153280
【弁理士】
【氏名又は名称】寺川 賢祐
(72)【発明者】
【氏名】黒川 茂莉
(72)【発明者】
【氏名】米川 慧
(72)【発明者】
【氏名】春田 秀一郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
(57)【要約】
【課題】知識アラインメントとリンク予測のバランスをとる技術を提供する。
【解決手段】グラフ関係取得部36は、2つの異なる知識グラフのうち一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得する。正例選択部は33、同値関係情報に含まれるノードを正例として選択する。ベクトル更新部37は、正例に割り当てられたベクトル、及びノード間関係情報に関する評価関数に基づいてベクトルを更新する。
【選択図】図3
【特許請求の範囲】
【請求項1】
異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得する知識グラフ取得部と、
前記知識グラフ取得部が取得した2つの異なる知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てるベクトル割当部と、
前記知識グラフ取得部が取得した2つの異なる知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出する組抽出部と、
前記組抽出部が抽出した複数の組それぞれを1つの正例として選択する正例選択部と、
前記知識グラフ取得部が取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得するグラフ関係取得部と、
前記正例に割り当てられたベクトル、及び前記ノード間関係情報に関する評価関数に基づいて、前記ベクトル割当部が割り当てたベクトルを更新するベクトル更新部と、を備える、
情報処理装置。
【請求項2】
前記評価関数は、前記正例選択部が選択した正例である前記組に対し、前記第1ノードに割り当てられたベクトルに前記エッジに割り当てられたベクトルを加算したベクトルと前記第2ノードに割り当てられたベクトルとの差分ベクトルのノルムとして設定されている、
請求項1に記載の情報処理装置。
【請求項3】
前記評価関数は、前記ノード間関係情報に含まれる前記複数の観点それぞれに登場するノードついて、一方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布と、他方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布との分布間の類似度が大きくなるほど小さくなるように設定されており、
前記ベクトル更新部は、前記評価関数が小さくなるように前記ベクトル割当部が割り当てたベクトルを更新する、
請求項1又は2に記載の情報処理装置。
【請求項4】
前記ベクトル更新部は、
前記組に由来する評価関数の勾配に基づく反復処理によって前記ベクトルを更新し、
前記組に由来する評価関数による更新が収束した後、前記ノード間関係情報に由来する評価関数の勾配に基づく反復処理によって前記ベクトルを更新する、
請求項1から3のいずれか1項に記載の情報処理装置。
【請求項5】
プロセッサが、
異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得するステップと、
取得した2つの異なる前記知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てるステップと、
取得した2つの異なる前記知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出するステップと、
抽出した複数の前記組それぞれを1つの正例として選択するステップと、
取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得するステップと、
前記正例に割り当てられたベクトル及び前記ノード間関係情報に関する評価関数に基づいて、割り当てた前記ベクトルを更新するステップと、を実行する、
情報処理方法。
【請求項6】
コンピュータに、
異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得する機能と、
取得した2つの異なる前記知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てる機能と、
取得した2つの異なる前記知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出する機能と、
抽出した複数の前記組それぞれを1つの正例として選択する機能と、
取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得する機能と、
前記正例に割り当てられたベクトル及び前記ノード間関係情報に関する評価関数に基づいて、割り当てた前記ベクトルを更新する機能と、を実現させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は情報処理装置、情報処理方法、及びプログラムに関し、特に、ベクトルを用いて知識グラフを表現する技術に関する。
【背景技術】
【0002】
異なるノード間をエッジで接続して構成されるグラフが知られている。グラフのうち、知識グラフは、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである。1つの知識グラフを元に実体と関係とを低次元のベクトルで表現し、ベクトル演算に基づいて当該グラフに関係する未知の事実の確からしさを評価することで事実を補完する技術が知られている(非特許文献1)。
【0003】
また、複数の知識グラフを用いて、一部の実体間の同値関係を入力として、一方の知識グラフから他方の知識グラフに関係する事実を補完する技術も知られている(非特許文献2)。さらに、複数の知識グラフを用いて、一部の実体間の同値関係を入力として、他の実体間の同値関係又は類似関係を導出する技術も知られている(非特許文献3)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Bordes, A., Usunier, N., Garcia-Duran, A., Weston, J., and Yakhnenko, O, “Translating embeddings for modeling multi-relational data,” In Advances in neural information processing systems, 2013.
【非特許文献2】Zhu, H., Xie, R., Liu, Z., and Sun, M., “Iterative Entity Alignment via Joint Knowledge Embeddings,” In Proceedings of the 26th International Joint Conference on Artificial Intelligence (IJCAI), 2017.
【非特許文献3】Sun, Z., Hu, W., Zhang, Q., and Qu, Y., “Bootstrapping Entity Alignment with Knowledge Graph Embedding,” In Proceedings of the 27th International Joint Conference on Artificial Intelligence (IJCAI), 2018.
【発明の概要】
【発明が解決しようとする課題】
【0005】
知識グラフを構成する実体や関係にベクトルを割り当てることは、これらの関係をベクトルの次元と同等の空間に埋め込むことに相当する。上記の技術は、それぞれの知識グラフに含まれる知識を補完し合うことで知識アラインメントの精度を高めた結果埋め込み空間を歪めることになり、リンク予測の精度が必ずしも向上しない場合がある。
【0006】
本発明はこれらの点に鑑みてなされたものであり、知識アラインメントとリンク予測のバランスをとる技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の第1の態様は、情報処理装置である。この装置は、異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得する知識グラフ取得部と、前記知識グラフ取得部が取得した2つの異なる知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てるベクトル割当部と、前記知識グラフ取得部が取得した2つの異なる知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出する組抽出部と、前記組抽出部が抽出した複数の組それぞれを1つの正例として選択する正例選択部と、前記知識グラフ取得部が取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得するグラフ関係取得部と、前記正例に割り当てられたベクトル、及び前記ノード間関係情報に関する評価関数に基づいて、前記ベクトル割当部が割り当てたベクトルを更新するベクトル更新部と、を備える。
【0008】
前記評価関数は、前記正例選択部が選択した正例である前記組に対し、前記第1ノードに割り当てられたベクトルに前記エッジに割り当てられたベクトルを加算したベクトルと前記第2ノードに割り当てられたベクトルとの差分ベクトルのノルムとして設定されてもよい。
【0009】
前記評価関数は、前記ノード間関係情報に含まれる前記複数の観点それぞれに登場するノードついて、一方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布と、他方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布との分布間の類似度が大きくなるほど小さくなるように設定されていてもよく、前記ベクトル更新部は、前記評価関数が小さくなるように前記ベクトル割当部が割り当てたベクトルを更新してもよい。
【0010】
前記ベクトル更新部は、前記組に由来する評価関数の勾配に基づく反復処理によって前記ベクトルを更新してもよく、前記組に由来する評価関数による更新が収束した後、前記ノード間関係情報に由来する評価関数の勾配に基づく反復処理によって前記ベクトルを更新してもよい。
【0011】
本発明の第2の態様は、情報処理方法である。この方法において、プロセッサが、異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得するステップと、取得した2つの異なる前記知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てるステップと、取得した2つの異なる前記知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出するステップと、抽出した複数の前記組それぞれを1つの正例として選択するステップと、取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得するステップと、前記正例に割り当てられたベクトル及び前記ノード間関係情報に関する評価関数に基づいて、割り当てた前記ベクトルを更新するステップと、を実行する。
【0012】
本発明の第3の態様は、プログラムである。このプログラムは、コンピュータに、異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである知識グラフを取得する機能と、取得した2つの異なる前記知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てる機能と、取得した2つの異なる前記知識グラフそれぞれについて、第1ノードと、前記第1ノードを始点として第2ノードを終点とするエッジと、前記第2ノードとの3つの要素から構成される組を抽出する機能と、抽出した複数の前記組それぞれを1つの正例として選択する機能と、取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得する機能と、前記正例に割り当てられたベクトル及び前記ノード間関係情報に関する評価関数に基づいて、割り当てた前記ベクトルを更新する機能と、を実現させる。
【0013】
このプログラムを提供するため、あるいはプログラムの一部をアップデートするために、このプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよく、また、このプログラムが通信回線で伝送されてもよい。
【0014】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0015】
本発明によれば、知識アラインメントとリンク予測のバランスをとる技術を提供することができる。
【図面の簡単な説明】
【0016】
図1】実施の形態に係る情報処理装置が処理対象とする知識グラフの一例を模式的に示す図である。
図2】知識グラフにおける実体と知識グラフにおける実体との間の関係を表形式で示す図である。
図3】実施の形態に係る情報処理装置の機能構成を模式的に示す図である。
図4】実施の形態に係る評価関数を説明するための図である。
図5】実施の形態に係る情報処理装置が実行する情報処理の流れを説明するためのフローチャートである。
【発明を実施するための形態】
【0017】
<実施の形態の概要>
以下、図1(a)-(c)及び図2を参照して、実施の形態に係る情報処理装置の概要を述べる。
【0018】
図1(a)-(c)は、実施の形態の概要を説明するための図であり、実施の形態に係る情報処理装置が処理対象とする知識グラフの一例を模式的に示す図である。具体的には、図1(a)は、知識グラフRの構造と、知識グラフRとは異なる知識グラフSの構造、及び知識グラフRの実体と知識グラフSの実体との間の先見情報が示す関係を示す図であり、図1(b)は知識グラフRのノード及び関係を表形式で示す図であり、図1(c)は知識グラフSのノード及び関係を表形式で示す図である。
【0019】
図1(a)において、ノードe、ノードA、ノードB、ノードC、ノードf、及びノードXは、知識グラフRにおける実体を示す。また、知識グラフRにおける異なるノードを接続する矢印は、知識グラフRにおける実体間の関係を示している。図1(b)に示すように、ノードeはあるテレビ番組(番組1)を示しており、ノードA、ノードB、及びノードCはその番組の出演者(俳優A、俳優B、及び俳優C)を示している。また、ノードfは、その番組が映画のカテゴリに属すことを示しており、ノードXはその映画の制作者である監督Xを示している。したがって、図1(a)において、ノードeからノードA、ノードB、及びノードCに向かって接続するエッジは、「出演」の関係を示しており、ノードeからノードfに向かって接続するエッジは「カテゴリ」の関係を示している。また、ノードXからノードeに向かって接続するエッジは「制作」の関係を示している。
【0020】
同様に、図1(a)において、ノードe、ノードα、ノードβ、ノードγ、ノードD、及びノードfは、知識グラフSにおける実体を示す。図1(c)に示すように、ノードeもあるテレビ番組(番組2)を示しており、ノードα、ノードβ、ノードγ、及びノードDはその番組の出演者(俳優α、俳優β、俳優γ、及び俳優D)を示している。また、ノードfは、その番組が映画のカテゴリに属すことを示している。したがって、図1(a)において、ノードeからノードα、ノードβ、ノードγ、及びノードDに向かって接続するエッジは、「出演」の関係を示しており、ノードeからノードfに向かって接続するエッジは「カテゴリ」の関係を示している。
【0021】
知識グラフRと知識グラフSとは異なる知識グラフであるが、知識グラフRにおける実体と知識グラフSにおける実体との間のいくつか異なる観点からの関係が先見情報として得られており、図1においてそれぞれ破線、一点鎖線、及び二点鎖線で示されている。
【0022】
図2は、図1(a)に示す知識グラフRにおける実体と知識グラフSにおける実体との間の関係を表形式で示す図である。図2は、知識グラフRにおける実体と知識グラフSにおける実体との間に観点1から観点3までの3つの異なる観点における関係が先見情報として得られている場合の例を示している。具体的には、観点1は、俳優の属性データに関する先見情報であり、俳優Aと俳優αとがともに日本国籍の男性である点で関係づけられている。また、観点2は俳優同士の共演関係に関する先見情報であり、俳優Aと俳優β、俳優Bと俳優γ、及び俳優Cと俳優αとが共演したことがあるという点で関係づけられている。さらに、観点3は、俳優同士の同値関係(俳優が同一人物であるという関係)に関する先見情報であり、番組1に出演した俳優Aと番組2に出演した俳優αとが同一人物であり、番組1に出演した俳優Bと番組2に出演した俳優Dとが同一人物であることを示している。
【0023】
また、上記以外の観点のバリエーションとして、外部の知識グラフE(不図示)があり、知識グラフEと知識グラフRの間、知識グラフEと知識グラフSの間それぞれに実体間の同値関係が定義されており、さらに、知識グラフRの実体と知識グラフSの実体とが知識グラフE上の関係の連鎖を介して接続されていることを関係の先見情報とみなしてもよい。この際、知識グラフE上の関係の連鎖パターン毎に別々の観点とみなしてもよい。
【0024】
実施の形態に係る情報処理装置は、まず、知識グラフRを構成する各ノード及び各エッジにそれぞれ初期ベクトルを割り当てる。同様に、実施の形態に係る情報処理装置は、知識グラフSを構成する各ノード及び各エッジにも、それぞれ初期ベクトルを割り当てる。限定はしないが、一例として、情報処理装置が各知識グラフに割り当てるベクトルの次元は200次元程度である。
【0025】
続いて、実施の形態に係る情報処理装置は、各知識グラフそれぞれに含まれるノード同士の接続関係、及び先見情報が与えられているベクトルの観点毎の分布間の類似度に関する価関数を設定する。詳細は後述するが、実施の形態に係る情報処理装置が設定する評価関数は、あるノードHとあるノードTとがエッジRによって接続されているとき、ノードHに割り当てられたベクトルとエッジRに割り当てられたベクトルとの和が、ノードTに割り当てられたベクトルと近いほど小さくなるような項を含んでいる。これは、リンク予測に関する評価項目に対応する。
【0026】
また、任意のベクトルは、ベクトルの要素と同じ次元の空間における一点として表すことができる。実施の形態に係る情報処理装置は、ある観点が与えられているノードに割り当てられたベクトルに対応する点の分布をそれぞれの知識グラフについて求める。実施の形態に係る情報処理装置が設定する評価関数は、これらの分布間の類似度が大きくなるほど(すなわち、分布が類似するほど)小さくなるような項を含んでいる。分布を類似させることにより、知識グラフ間で知識が共有されやすくすることが期待できる。したがって、これは、知識アラインメントに関する評価項目に対応する。
【0027】
実施の形態に係る情報処理装置は、知識アラインメントとリンク予測とを同一の評価関数で評価できるので、評価関数を最適化することで知識アラインメントとリンク予測のバランスをとることができる。
【0028】
<実施の形態に係る情報処理装置1の機能構成>
図3は、実施の形態に係る情報処理装置1の機能構成を模式的に示す図である。情報処理装置1は、記憶部2と制御部3とを備える。図3において、矢印は主なデータの流れを示しており、図3に示していないデータの流れがあってもよい。図3において、各機能ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図3に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
【0029】
記憶部2は、情報処理装置1を実現するコンピュータのBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)や情報処理装置1の作業領域となるRAM(Random Access Memory)、OS(Operating System)やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の大容量記憶装置である。
【0030】
制御部3は、情報処理装置1のCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等のプロセッサであり、記憶部2に記憶されたプログラムを実行することによって知識グラフ取得部30、ベクトル割当部31、組抽出部32、正例選択部33、グラフ関係取得部36、及びベクトル更新部37として機能する。
【0031】
なお、図3は、情報処理装置1が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置1は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部3を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
【0032】
知識グラフ取得部30は、知識グラフを取得する。ここで知識グラフ取得部30が取得する知識グラフは、異なるノード間をエッジで接続して構成されるグラフであって、各ノードに実体を割り当てるとともに各ノード間の関係をエッジに割り当てたグラフである。知識グラフ取得部30は、2つの異なる知識グラフを取得する。
【0033】
ベクトル割当部31は、知識グラフ取得部30が取得した2つの異なる知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てる。限定はしないが、ベクトル割当部31は、知識グラフ取得部30が取得した知識グラフを構成する各ノード及び各エッジに、乱数を用いて初期ベクトルを割り当てる。ベクトルの次元は、例えば200次元である。
【0034】
組抽出部32は、知識グラフ取得部30が取得した2つの異なる知識グラフそれぞれについて、第1ノードと、第1ノードを始点として第2ノードを終点とするエッジと、第2ノードとの3つの要素から構成される組を抽出する。
【0035】
図3は、実施の形態に係る組抽出部32が抽出する組の一例を表形式で示す模式図である。具体的には、知識グラフ取得部30が図1に示す2つの知識グラフ(知識グラフR及び知識グラフS)を取得した場合に、組抽出部32が抽出した組の一例を示す図である。
【0036】
例えば、図1に示す知識グラフRにおいて、ノードeを始点としてノードBに向かう関係R1が定義されている。この場合、組抽出部32は、第1ノードとしてノードe、第2ノードとしてB、第1ノードeを始点として第2ノードBを終点とするエッジとして関係R1を1つの組として抽出する。
【0037】
また、図1に示す知識グラフSにおいて、ノードeを始点としてノードfに向かう関係R3が定義されている。この場合、組抽出部32は、第1ノードとしてノードe、第2ノードとしてf、第1ノードeを始点として第2ノードfを終点とするエッジとして関係R3を1つの組として抽出する。以下同様である。
【0038】
このように、組抽出部32は、知識グラフ取得部30が取得した知識グラフRと知識グラフSとのそれぞれについて、各ノード間の関係に基づいて個別に組を抽出する。
【0039】
正例選択部33は、組抽出部32が抽出した複数の組それぞれを1つの正例として選択する。ここで、正例選択部33が選択する「正例」とは、組を構成するノード及びエッジの関係が正しいことを意味する。
【0040】
グラフ関係取得部36は、知識グラフ取得部30が取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すノード間関係情報を取得する。
【0041】
上述したとおり、図2は、図1(a)に示す知識グラフRにおける実体と知識グラフSにおける実体との間の関係を示すノード間関係情報の一例を表形式で示す図である。図2に示すノード間関係情報は一例であり、一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の関係性を示す先見情報があればノード間関係情報となりうる。
【0042】
ベクトル更新部37は、正例に割り当てられたベクトル、及びノード間関係情報に関する評価関数に基づいて、ベクトル割当部31が割り当てたベクトルを更新する。
【0043】
実施の形態に係るベクトル更新部37が参照する評価関数Lは、以下の式(1)で表される。
【0044】
【数1】
【0045】
式(1)において、右辺第1項は、2つの知識グラフのうちの一方の知識グラフの構造、すなわち上述したリンク予測に関する項である。また右辺第2項は、2つの知識グラフのうちの他方の知識グラフのリンク予測に関する項である。右辺第3項は、ノード間関係情報に関する項であり、上述した知識アラインメントに関する項である。右辺第3項におけるΣのインデックスであるpはノード間の関係性の種類を示す。例えば、図2に示すノード間関係情報の例では、観点1~観点3までの3種類ノード間関係情報があるため、pは1から3までの値を動く。
【0046】
式(1)に示す評価関数Lの右辺第1項は以下の式(2)で表される。
【0047】
【数2】
【0048】
式(2)において、正例選択部33が選択した正例の組に対し、hは第1ノードに割り当てられたベクトル、rはエッジの関係に割り当てられたベクトル、tは第2ノードに割り当てられたベクトルであり、|h+r―t|は、第1ノードに割り当てられたベクトルにエッジに割り当てられたベクトルを加算したベクトルと第2ノードに割り当てられたベクトルとの差分ベクトルのノルムとなる。なお、評価関数Lは正例のみならず、負例も考慮して評価してもよい。
【0049】
式(1)に示す評価関数Lの右辺第2項は以下の式(3)で表される。
【0050】
【数3】
【0051】
式(3)右辺においてh、r及びtの添え字の「2」は、2つの知識グラフのうちの他方の知識グラフであることを示している。それ以外は式(2)と同様である。式(1)に示す評価関数Lの右辺第1項L及び右辺第2項Lとはともに、その値が小さいほど、知識グラフの構造をベクトルで表現できていることになる。
【0052】
式(1)に示す評価関数Lの右辺第3項は以下の式(4)で表される。
【0053】
【数4】
【0054】
式(4)の右辺において、Q は2つの知識グラフのうち一方の知識グラフにおいて観点Pが与えられているノードに対応する点の分布を表し、Q は2つの知識グラフのうち他方の知識グラフにおいて観点Pが与えられているノードに対応する点の分布を表す。また、Sim(A,B)は、2つの空間のうちの一方の空間における分布Aと他方の空間における分布Bとの間の分布間の類似度を反映する関数であり、例えば既知のカルバック・ライブラー・ダイバージェンス、輸送距離、正準相関分析、ペアワイズのユークリッド距離の平均値等である。
【0055】
図4(a)-(b)は、評価関数Lの右辺第3項L3を説明するための図である。具体的には、図4(a)は図1に示す知識グラフRのノード及び知識グラフSのノードに割り当てられたベクトルを表形式で示す図であり、図4(b)はベクトルを空間上の1点に対応づけたときのベクトルに対応する点の集合を示す模式図である。
【0056】
上述したように、各ノードに割り当てられるベクトルの次元数は例えば200である。この場合、ノードに割り当てられたベクトルは200次元空間の1点に対応づけられることになるが、図示の都合上、図4(b)では便宜的に2次元空間上の点として図示している。なお、図2は各観点について2つ又は3つのノードに関するノード間関係情報が与えられている場合の例を示している。この場合、図4(b)に示す点の集合も2点又は3点となるが、一般にはノード間関係情報が与えられるノードの数は2以上で点の集合として分布を形成する。評価関数Lの右辺第3項L3は、ノード間関係情報に含まれる複数の観点それぞれに登場するノードついて、一方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布と、他方の知識グラフに含まれるノードに割り当てられたベクトルに対応する点の分布との分布間の類似度が大きくなるほど小さくなる。
【0057】
ベクトル更新部37は、評価関数Lが小さくなるようにベクトル割当部31が割り当てたベクトルを更新する。これにより、ベクトル更新部37は、知識グラフをベクトルで表現するリンク予測と、ノード間関係情報に基づく知識アラインメントとのバランスをとることができる。
【0058】
ここで、ベクトル更新部37は、式(1)に示す評価関数Lの勾配に基づく反復処理によって、評価関数Lが小さくなるように、ベクトル割当部31割り当てたベクトルを段階的に更新してもよい。また、ベクトル更新部37は、評価関数Lのうち組に由来する評価関数であるL1及びLの勾配に基づく反復処理によってベクトルを更新し、組に由来する評価関数による更新が収束した後、ノード間関係情報に由来する評価関数であるLの勾配に基づく反復処理によってベクトルを更新してもよい。
【0059】
これにより、情報処理装置1は、知識グラフ毎に計算できる組に由来する評価関数を用いた更新と、ノード間関係情報に由来する評価関数を用いた更新とを、異なる計算機で実行することが可能となる。知識グラフ毎の情報を各々が保存された計算機から移動せずベクトルの更新を実行することができ、知識グラフに個人情報が含まれる場合にはそれを保護しながら実行することができる。さらに、ノード間関係情報に関する実体の識別子はハッシュ関数のような不可逆な変換関数で非識別化して共有することも可能である。このように個人識別可能な情報と不可能な情報を分けて管理し、分けたままそれぞれの計算機上でベクトルの更新を実行することが可能となる。
【0060】
<情報処理装置1が実行する情報処理の処理フロー>
図5は、実施の形態に係る情報処理装置1が実行する情報処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置1が起動したときに開始する。
【0061】
知識グラフ取得部30は、2つの異なる知識グラフを取得する(S2)。ベクトル割当部31は、知識グラフ取得部30が取得した2つの異なる知識グラフそれぞれについて、各知識グラフを構成する各ノード及び各エッジにベクトルを割り当てる(S4)。
【0062】
組抽出部32は、知識グラフ取得部30が取得した2つの異なる知識グラフそれぞれについて、第1ノードと、第1ノードを始点として第2ノードを終点とするエッジと、第2ノードとの3つの要素から構成される組を抽出する(S6)。
【0063】
正例選択部33は、組抽出部32が抽出した複数の組それぞれを1つの正例として選択する(S8)。グラフ関係取得部36は、知識グラフ取得部30が取得した一方の知識グラフを構成するノードと、他方の知識グラフを構成するノードとの間の複数の観点それぞれについての関係を示すグラフ関係情報を取得する(S10)。
【0064】
ベクトル更新部37は、正例に割り当てられたベクトル、及びノード間関係情報に関する評価関数に基づいて、ベクトル割当部31が割り当てたベクトルを反復更新する(S12)。
【0065】
ベクトル割当部31によるベクトルの反復更新処理が終了すると、本フローチャートにおける処理は終了する。
【0066】
<実施の形態に係る情報処理装置1が奏する効果>
以上説明したように、実施の形態に係る情報処理装置1によれば、各知識グラフのノードの接続関係をベクトル表現しつつ、異なる知識グラフのノード間の関係の先見情報を利用して知識グラフにおける未知の事実をより効果的に補完することができる。これにより、実施の形態に係る情報処理装置1は、知識アラインメントとリンク予測のバランスをとることができる。
【0067】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果をあわせ持つ。
【0068】
<変形例>
上記では、評価関数LがL、L、及びLの総和で示される場合について説明した。これに替えて、評価関数Lは、L、L、及びLの重み付きの総和としてもよい。具体的には、評価関数Lは以下に示す式(5)としてもよい。
【0069】
【数5】
ここで、α、β、γは、それぞれ0より大きく1以下の数値である。
【0070】
これにより、変形例に係る情報処理装置1は、ベクトル更新におけるリンク予測に関する評価関数と知識アラインメントに関する評価関数との重要度を変更することができる。
【符号の説明】
【0071】
1・・・情報処理装置
2・・・記憶部
3・・・制御部
30・・・知識グラフ取得部
31・・・ベクトル割当部
32・・・組抽出部
33・・・正例選択部
36・・・グラフ関係取得部
37・・・ベクトル更新部
図1
図2
図3
図4
図5