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

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

▶ ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングの特許一覧

特開2023-4969知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法
<>
  • 特開-知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法 図1
  • 特開-知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法 図2
  • 特開-知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023004969
(43)【公開日】2023-01-17
(54)【発明の名称】知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法
(51)【国際特許分類】
   G06N 5/02 20230101AFI20230110BHJP
   G06N 20/00 20190101ALI20230110BHJP
   G06F 16/90 20190101ALI20230110BHJP
【FI】
G06N5/02
G06N20/00
G06F16/90 100
【審査請求】未請求
【請求項の数】9
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022101646
(22)【出願日】2022-06-24
(31)【優先権主張番号】21181822
(32)【優先日】2021-06-25
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】チャバ ドモコス
(72)【発明者】
【氏名】ダリア ステパノワ
(72)【発明者】
【氏名】メディナ アンドレーゼル
(72)【発明者】
【氏名】チュン キエン チャン
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175EA01
(57)【要約】
【課題】オントロジー(202)によって強化される知識グラフ(200)の知識グラフ埋め込みモデル(208)を訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法に関する。
【解決手段】本方法は、知識グラフ埋め込みモデル(208)を、第1の訓練クエリと、第1の訓練クエリの所定の応答とを用いて、知識グラフ埋め込みモデル(208)における応答の埋め込みと、知識グラフ埋め込みモデル(208)における第1の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、かつ、応答の埋め込みと、知識グラフ埋め込みモデル(208)における第2の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、訓練すること(2)を含み、第2の訓練クエリは、オントロジー(202)に依存して第1の訓練クエリから決定される(1)。
【選択図】図2
【特許請求の範囲】
【請求項1】
オントロジー(202)によって強化される知識グラフ(200)の知識グラフ埋め込みモデル(208)を訓練するためのコンピュータ実装された方法であって、
当該方法は、
前記知識グラフ埋め込みモデル(208)を、前記第1の訓練クエリと、前記第1の訓練クエリの所定の応答とを用いて、
前記知識グラフ埋め込みモデル(208)における前記応答の埋め込みと、前記知識グラフ埋め込みモデル(208)における前記第1の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、かつ、
前記応答の埋め込みと、前記知識グラフ埋め込みモデル(208)における第2の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、
訓練すること(2)
を含み、
前記第2の訓練クエリは、前記オントロジー(202)に依存して前記第1の訓練クエリから決定される(1)
ことを特徴とする、方法。
【請求項2】
前記オントロジーに従って無矛盾である、可能性のある単項の連続的なクエリの集合と、前記知識グラフ(200)のエンティティの集合及び関係の集合とを決定すること(1)と、
前記単項の連続的なクエリの集合から前記第1の訓練クエリを選択することと、
を特徴とする、請求項1に記載の方法。
【請求項3】
当該方法は、前記第1の訓練クエリを所定のクエリ形状に従って決定することを含む
ことを特徴とする、請求項2に記載の方法。
【請求項4】
当該方法は、
クエリを、特にランダムにサンプリングすることと、
前記オントロジー(202)を用いて前記クエリの汎化を決定することと、
前記汎化、特に前記汎化の特化から前記第2の訓練クエリを決定することと、
を含む
ことを特徴とする、請求項1乃至3のいずれか一項に記載の方法。
【請求項5】
汎化深さを提供し、前記汎化深さまで前記クエリの汎化を決定すること、
及び/又は
特化深さを提供し、前記特化深さまで前記クエリの特化を決定すること
を特徴とする、請求項4に記載の方法。
【請求項6】
前記知識グラフ埋め込みモデル(208)を用いて、連言クエリに対する応答を提供すること
を特徴とする、請求項1乃至5のいずれか一項に記載の方法。
【請求項7】
前記第1の訓練クエリの前記埋め込みと、前記第1の訓練クエリに対する応答ではない所定のエンティティの少なくとも1つの埋め込みとの間の距離を増加させるために、特に最大化するために、及び/又は、
前記第2の訓練クエリの前記埋め込みと、前記第2の訓練クエリに対する応答ではない所定のエンティティの少なくとも1つの埋め込みとの間の距離を増加させるために、特に最大化するために、
前記知識グラフ埋め込みモデル(208)を訓練すること
を特徴とする、請求項1乃至6のいずれか一項に記載の方法。
【請求項8】
オントロジー(202)によって強化される知識グラフ(200)の知識グラフ埋め込みモデル(208)を訓練するための装置(300)であって、
当該装置(300)は、請求項1乃至7のいずれか一項に記載の方法における各ステップを実施するように構成されている
ことを特徴とする、装置(300)。
【請求項9】
コンピュータプログラムであって、
当該コンピュータプログラムは、コンピュータによって実行された場合に、請求項1乃至7のいずれか一項に記載の方法を前記コンピュータに実施させるためのコンピュータ可読命令を含む
ことを特徴とする、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
背景
本発明は、知識グラフ埋め込みモデルを訓練するための装置、コンピュータプログラム、及び、コンピュータ実装された方法に関する。
【背景技術】
【0002】
知識グラフ埋め込みモデルは、クエリに対する応答を提供するように訓練可能である。不完全な知識グラフに対するクエリに応答する体系的な手法を有する方法を提供することが望ましい。
【発明の概要】
【課題を解決するための手段】
【0003】
発明の開示
オントロジーによって強化される知識グラフの知識グラフ埋め込みモデルを訓練するためのコンピュータ実装された方法は、知識グラフ埋め込みモデルを、第1の訓練クエリと、第1の訓練クエリの所定の応答とを用いて、知識グラフ埋め込みモデルにおける応答の埋め込みと、知識グラフ埋め込みモデルにおける第1の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、かつ、応答の埋め込みと、知識グラフ埋め込みモデルにおける第2の訓練クエリの埋め込みとの間の距離を減少させるために、特に最小化するために、訓練することを含み、第2の訓練クエリは、オントロジーに依存して第1の訓練クエリから決定される。第2の訓練クエリは、知識グラフにおける応答を有する所定のクエリの特化である。これにより、不完全な知識グラフに対する連言クエリ(conjunctive query)に応答するために、知識グラフ埋め込みモデルを訓練することが可能となる。訓練は、元々の知識グラフだけでなく、知識グラフに付随するオントロジーにも依存している。第2の訓練クエリの埋め込みは、第2の訓練クエリを決定するために使用されたオントロジー公理を考慮している。
【0004】
第1の訓練クエリをサンプリングするために、本方法は、オントロジーに従って無矛盾である、可能性のある単項の連続的なクエリの集合と、知識グラフのエンティティの集合及び関係の集合とを決定することと、単項の連続的なクエリの集合から第1の訓練クエリを選択することとを含み得る。訓練するためのクエリをランダムにサンプリングする代わりに、オントロジーに依存してクエリを戦略的にサンプリングのための方法が提供される。
【0005】
本方法は、第1の訓練クエリを所定のクエリ形状に従って決定することを含み得る。クエリをランダムにサンプリングする代わりに、所定のクエリ形状に従ったクエリが考慮される。ランダムに選択された例は、オントロジーに基づいて互いに関連するクエリを何ら含まない可能性がある。このことは、オントロジーに基づくサンプリングによって回避される。
【0006】
本方法は、クエリを、特にランダムにサンプリングすることと、オントロジーを用いてクエリの汎化を決定することと、汎化から、特に汎化の特化から第2の訓練クエリを決定することとを含み得る。汎化は、複数の特化を記述し、オントロジーに従って第1の訓練クエリに類似する多くの異なる訓練クエリを決定することを可能にする。
【0007】
本方法は、汎化深さを提供し、汎化深さまでクエリの汎化を決定すること、及び/又は、特化深さを提供し、特化深さまでクエリの特化を決定することを含み得る。このことは、実質的に、計算労力を制限するためである。
【0008】
本方法は、知識グラフ埋め込みモデルを用いて、連言クエリに対する応答を提供することを含み得る。
【0009】
本方法は、第1の訓練クエリの埋め込みと、第1の訓練クエリに対する応答ではない所定のエンティティの少なくとも1つの埋め込みとの間の距離を増加させるために、特に最大化するために、及び/又は、第2の訓練クエリの埋め込みと、第2の訓練クエリに対する応答ではない所定のエンティティの少なくとも1つの埋め込みとの間の距離を増加させるために、特に最大化するために、知識グラフ埋め込みモデルを訓練することを含み得る。このようにすると、訓練の結果、第1の訓練クエリの埋め込みは、第1の訓練クエリの非応答の埋め込みによりも、第1の訓練クエリの応答の埋め込みの方に近づくこととなる。
【0010】
オントロジーによって強化される知識グラフの知識グラフ埋め込みモデルを訓練するための装置は、本方法における各ステップを実施するように構成されている。
【0011】
コンピュータプログラムは、コンピュータによって実行された場合に、本方法をコンピュータに実施させるためのコンピュータ可読命令を含む。
【0012】
以下の説明及び図面から、さらなる有利な実施形態を導き出すことができる。
【図面の簡単な説明】
【0013】
図1】知識グラフパターンを示す図である。
図2】知識グラフのための知識グラフ埋め込みモデルを訓練するための方法を示す図である。
図3】知識グラフのための知識グラフ埋め込みモデルを訓練するための装置を示す図である。
【発明を実施するための形態】
【0014】
知識グラフKGは、エンティティの集合及び関係の集合を含む。KGは、特定の関心ドメインに関するファクトを、エンティティの集合のうちの少なくとも1つのエンティティを用いてそのファクトを表現することによって記述し、エンティティの集合のうちのこの少なくとも1つのエンティティは、関係の集合のうちの少なくとも1つの関係を介して、エンティティの集合のうちの少なくとも1つの他のエンティティに相互接続されている。
【0015】
KG表現においては、エンティティは、KGのノードによって表現され、2つのエンティティの間の関係が、これらのノードの間のKGのエッジによって表現される。
【0016】
ファクトは、主語(subject)と、述語(predicate)と、目的語(object)とのトリプルである。KGにおいては、主語は、エンティティであり、目的語は、エンティティであり、述語は、関係である。
【0017】
KGの知識グラフ埋め込みKGEにおいては、エンティティが埋め込みによって表現される。KGEにおいては、関係が埋め込みによって表現される。ファクトの主語の埋め込みと、述語の埋め込みと、目的語の埋め込みとのトリプルが、KGEにおけるファクトを表現する。
【0018】
KGは、第1の所与のエンティティと第2の所与のエンティティとの間の関係を予測するために使用可能である。関係は、関係の集合からスコアに依存して選択可能である。スコアは、KGEにおける第1のエンティティの埋め込みと、KGEにおける第2のエンティティの埋め込みと、KGEにおける関係の埋め込みとをスコアにマッピングするスコア関数を用いて決定可能である。
【0019】
埋め込みは、ベクトル空間内のベクトルであるものとしてよい。スコア関数を用いてスコアを決定することは、ベクトル和を決定することを含み得る。ベクトル和を決定することは、第1のエンティティを表現するベクトルに、関係を表現するベクトルを加算することを含み得る。スコアを決定することは、ベクトル和から第2のエンティティを表現するベクトルまでの距離を決定することを含み得る。
【0020】
エンティティの埋め込みは、第1のベクトル空間内のベクトルであるものとしてよい。関係の埋め込みは、第2のベクトル空間内のベクトルであるものとしてよい。スコアを決定することは、第1のベクトル空間内の第1のエンティティを表現する第1のベクトルと、第2のベクトル空間内の第1のベクトルとのマッピングを決定することを含み得る。スコアを決定することは、第1のベクトル空間内の第2のエンティティを表現する第2のベクトルと、第2のベクトル空間内の第2のベクトルとのマッピングを決定することを含み得る。スコア関数を用いてスコアを決定することは、ベクトル和を決定することを含み得る。ベクトル和を決定することは、第1のベクトルに、第2のベクトル空間内の関係を表現するベクトルを加算することを含み得る。スコアを決定することは、ベクトル和から第2のベクトルまでの距離を決定することを含み得る。
【0021】
一例においては、距離は、ユークリッド距離である。
【0022】
KGとの関係を予測するために、2つの所与のエンティティを含む入力を、関係を含む出力にマッピングすることができる。関係は、関係の集合から選択可能である。一例においては、選択された関係は、関係の集合のうちの少なくとも1つの他の関係よりも高いスコアを結果的にもたらす。好ましくは、関係の集合において最高のスコアの関係を結果的にもたらすような関係が選択される。
【0023】
ニューラルネットワークは、KGEを表現するように訓練可能である。ニューラルネットワークは、埋め込みのトリプルを含む訓練データを用いて訓練可能である。訓練データは、KGの真のファクトを表現するトリプルを含み得る。訓練データは、KGの真のファクトではないトリプルを表現するトリプルを含み得る。
【0024】
ニューラルネットワークは、エンティティの集合のうちの第1の所与のエンティティの第1の埋め込みと、第2の所与のエンティティの第2の埋め込みとを、関係の集合のうちのそれぞれの関係ごとのスコアにマッピングするように訓練可能である。関係のスコアは、関係に関して、この関係が第1の所与のエンティティと第2の所与のエンティティとの間の関係である確率を表す。
【0025】
ニューラルネットワークは、所与のエンティティの埋め込みと、関係の集合のうちの所与の関係の埋め込みとを、エンティティの集合のうちのそれぞれのエンティティごとのスコアにマッピングするように訓練可能である。エンティティのスコアは、エンティティに関して、このエンティティが所与のエンティティに対する所与の関係を有するエンティティである確率を表す。
【0026】
KGは、自然質問応答、ウェブ検索及びデータ分析のために広く使用されている。KGは、数百万のファクトに関する情報を格納している。
【0027】
KGは、自動的に、半自動的に又は少なくとも部分的に手動により、例えばクラウドソーシング法を使用することによって構築可能である。
【0028】
訓練においては、KG又はKGE、特にニューラルネットワークは、利用可能な知識を表現するために、訓練データを用いて訓練可能である。訓練データは、真のファクトを表現する正のトリプルと、正しくないファクトを表現する負のトリプルとを含み得る。
【0029】
KG又はKGE、特にニューラルネットワークは、正のトリプル及び負のトリプルを用いて訓練可能である。
【0030】
本方法は、正しいトリプル即ち正のトリプルと、正しくないトリプル即ち負のトリプルとを識別する。
【0031】
KGは、ファクトに基づいた情報の、相互リンクされた集合体を表現する。KGは、(主語;述語;目的語)のトリプル、例えば(john;worksAt;bosch)の集合としてエンコード可能である。このようなトリプルのうちの主語又は目的語は、エンティティと称され、述語は、関係と称される。KGのトリプルの集合は、有向グラフとして表現可能であり、この有向グラフの頂点及び辺にはラベルが付されている。KGトリプルは、ファクトと称される。KGファクトは、man(john),worksAt(john;bosch)のように、単項又は二項の基底述語として表現可能である。
【0032】
本例においては、KG Gのシグネチャ
【数1】
は、Gに出現するエンティティ
【数2】
の集合及び関係Rの集合を定義する。シグネチャΣ内の関係Rは、述語、即ち、KGのエッジを表現する。シグネチャΣ内の定数は、エンティティ
【数3】
、即ち、KGのノード、又は、関係Rを表現する。
【0033】
KGEは、KGのエンティティ及び関係を、ユーザ指定された次元nを有する連続的なベクトル空間に埋め込むことに関する。より具体的には、KGEモデルは、KGトリプルの集合を入力として受信し、KG構造を反映するいくつかの特徴が保持されるように、エンティティ及び関係をn次元のベクトル空間にマッピングすることを目的とする。これらの特徴は、それぞれのKGEモデルの目的関数によって捕捉される。このようにして、リレーショナルデータから数値ベクトルの集合が得られる。
【0034】
オントロジーは、公理の集合として表現される関心ドメインを概念化したものである。オントロジーは、KGが従うべきスキーム、例えば、
【数4】
を反映している。
【0035】
第1の公理は、企業で働く人は従業員であると陳述し、その一方で、第2の公理は、関係managerAtが関係worksAtよりも特有であることを示す。
【0036】
本発明は、Artale, A., Calvanese, D., Kontchakov, R., Zakharyaschev, M.: The DL-lite family and relations. CoRR abs/1401.3487 (2014)によるDL-liteにおけるオントロジーに、ルールの右側の実存論的な制約なしに基づいている。サポートされる例示的なルール形式の概要は、
(1)type(X,A)→type(X,B)
(2)p(X,Y)→type(X,A)
(3)p(X,Y)→type(Y,A)
(4)p(X,Y)→s(X,Y)
(5)p(X,Y)→s(Y,X)
である。
【0037】
連言クエリは、q(X,X,・・・,X)←B又は<X,X,・・・,X>←Bの形式で表現したものであり、ここで、Bは、ルールにおいて定義されたボディであり、X,X,・・・,Xは、応答変数、即ち、クエリの応答を保持する変数である。単項のCQ(monadic conjunctive query)は、単一の応答変数を有するCQである。
【0038】
KG及びオントロジーOに関して、CQに対する特定の応答は、KG及びオントロジーOの結果として生じる全てのファクトによって強化されたKGに対して得られる応答である。
【0039】
ユーザによって自然言語で定式化された情報ニーズは、例えば、Yahya, M., Berberich, K., Elbassuoni, S., Ramanath, M., Tresp, V., Weikum, G.: Deep answers for naturally asked questions on the web of data. In: Proceedings of the 21st World Wide Web Conference, WWW 2012, Lyon, France, April 16-20, 2012 (Companion Volume). pp. 445-449 (2012)に開示されている方法を使用して、そのような形式的なCQに翻訳される。例えば、人とその職場とに関する情報を格納しているKGの場合、ユーザは、Bosch社のいくつかのIT部門で働いている全ての人に興味がある可能性がある。形式的には、このようなクエリは、
Q(X)←workAt(X,bosch);employedIn(X,Y);type(Y,it_department)
のように定式化されるべきであり、これは、単項のCQである。
【0040】
連言クエリは、KGパターンとして自然に表現可能である。上記のクエリに対応するKGパターンについて、例示的なKGパターンが図1に示されている。
【0041】
以下に、不完全なKGに対してCQに応答するための方法を説明する。本方法は、元々のKGのみならず、KGが付随するオントロジーOにも依存している。
【0042】
本方法は、オントロジーに基づく訓練戦略を含み、オントロジー公理を考慮することを可能にする損失関数を拡張し、拡張された損失関数を使用する。このような損失関数は、例えば、Ren, H., Hu, W., Leskovec, J.: Query2box: Reasoning over knowledge graphs in vector space using box embedding. In: ICLR. OpenReview.net (2000)に記載されている。
【0043】
エンティティは、d次元のベクトル空間内に点として埋め込まれる。
【0044】
クエリは、ボックスとして埋め込まれる。この文脈におけるボックスとは、d次元のベクトル空間内の、座標軸に平行な超長方形(axis-aligned hyper-rectangle)を指す。
【0045】
(ΣG;Q)についてのd次元の埋め込みは、
【数5】
をc∈Rにマッピングし、かつ、q∈Q
【数6】
にマッピングする関数Fであり、ここで、シグネチャΣは、KG Gの所与のシグネチャ
【数7】
であり、Qは、シグネチャΣに対する単項のCQの集合であり、cenは、ボックスの中心であり、offは、ボックスのオフセットcenである。ボックスの中心cenまでの距離offの内部にある、d次元ベクトル空間の任意の点は、ボックスの内側にあるとみなされる。
【0046】
オントロジールールB,・・・,B→Hは、B,・・・,Bが保持されるときにはいつでもHを強制的に保持するように、KGEモデルを構成することができる場合に、KGEモデルに注入可能である。
【0047】
本方法は、クエリボックスの内側の点の集合がCQの応答エンティティの集合に対応するという条件に従ってCQを埋め込むことを目的とする。それぞれのオントロジールールごとにルールの左手側及び右手側をクエリに変換することができるので、オントロジーをKGEモデルに注入することは、それぞれのクエリに対応するボックスの相互の包含を保証することに等しい。
【0048】
本方法を、図2を参照してさらに説明する。
【0049】
本方法への入力は、KG200及びオントロジー202である。任意選択肢として、以下に説明するようにクエリ深さ204が提供される。
【0050】
訓練は、正のサンプル206-1及び負のサンプル206-2に基づいている。訓練においては、KGEモデル208が訓練される。
【0051】
本方法は、ステップ1を含む。
【0052】
ステップ1は、正のサンプル及び負のサンプルを決定することを含む。
【0053】
正のサンプルは、訓練クエリと、その応答とを含む。訓練クエリは、以下に説明される訓練戦略に従って決定される。負のサンプルは、正のサンプルと同様に構造化されており、特に、KGからランダムにサンプリングされる。
【0054】
本例においては、複数の正のサンプル及び複数の負のサンプルが決定される。
【0055】
その後、ステップ2が実施される。
【0056】
ステップ2は、正のサンプル及び負のサンプルを用いてKGEモデル208を訓練することを含む。KGEモデル208は、本例においては、複数の正のサンプル及び複数の負のサンプルを用いて訓練される。
【0057】
訓練目的、特にKGEモデル208を訓練するための損失関数を、以下に説明する。
【0058】
ステップ2の結果として計算されたKGEモデルを使用して、CQに応答することができる。
【0059】
ステップ1において活用される訓練戦略は、KG200のシグネチャΣ内の述語及び定数を使用して形成することができる可能な単項のCQの集合Qを考慮している。好ましくは、全ての可能な単項のCQが考慮される。
【0060】
即ち、本方法は、知識グラフ200に出現するエンティティの集合及び関係の集合を使用して、オントロジーによって、即ち、オントロジーに従って形成することができる可能な単項の連続的なクエリの集合Qから、訓練クエリを決定することを含み得る。
【0061】
以下に、オントロジーによってガイドされるように訓練クエリを決定するための3つの例を説明する。
【0062】
特定の応答に基づくサンプリング:
特定の応答に基づくサンプリングは、クエリをランダムにサンプリングすることと、それらのクエリを、訓練において標準の応答ではなくそれらのクエリの特定の応答とともに使用することとを含む。
【0063】
オントロジーが、クエリ応答を効率的に実施することができる言語での公理を含む場合には、訓練クエリを、それら訓練クエリの特定の応答とともに生成することが、実際に実現可能である。特定の応答に基づくサンプリングのための例示的な言語は、Artale, A., Calvanese, D., Kontchakov, R., Zakharyaschev, M.: The dl-lite family and relations. CoRR abs/1401.3487 (2014)に開示されている。
【0064】
例として、KG200が、以下のファクト:
hasAlumnus(u1,pete);
worksFor(pete,ibm);
hasAlumnus(u1,john);
managerAt(john,bosch)
を格納していて、オントロジーOが、以下のルール:
managerAt(X,Y)→worksAt(X,Y)
と、特にランダムに選択された所与のクエリ:
q1(X)←hasAlumnus(u1,X)^worksFor(X,Y)
とを含み、そのクエリの特定の応答が、
{john,pete}
であると仮定する。
【0065】
本例においては、このクエリと、そのクエリの特定の応答とが、訓練ステップ2のための正のサンプルを定義する。
【0066】
クエリ書き換えに基づくサンプリング:
クエリ書き換えに基づくサンプリングは、ランダムにサンプリングされたクエリの集合に、それらのクエリの特化(specialization)及び汎化(generalization)も追加する。クエリの特化は、オントロジーOを考慮して得られる。クエリの汎化は、オントロジーOを考慮して得られる。
【0067】
所与のクエリqの特化は、以下においてはSpec(q)として表される。特化は、クエリqに対する応答を構築するために有用である可能性のある情報を組み込んでいる。所与のクエリqの汎化は、Gen(q)として表される。汎化は、もっともらしい欠落した応答である可能性のある追加的な関連するエンティティを組み込んでいる。
【0068】
クエリの汎化
【数8】
及び特化
【数9】
を取得するための例示的なルールは、
【数10】
である。
【0069】
例として、以下の公理:
type(X,assist_prof)→type(X,professor);teachesAt(X,Y)→worksAt(X,Y)
と、以下のクエリ:
q(X)←type(X,assist_prof)^worksFor(X,Y)
とが与えられた場合、第1のルールR1は、クエリqの汎化として
q’(X)←type(X,professor)^worksFor(X,Y)
をもたらし、第3のルールR3は、クエリq’の特化として
q’’(X)←type(X,assist_prof)^teachesAt(X,Y)
をもたらす。
【0070】
本方法は、複数のクエリを、それらのクエリの汎化及び特化とともにランダムにサンプリングすることを含み得るものであり、複数のクエリと、それらのクエリの汎化及び特化とを使用して、訓練サンプルを構築することができる。
【0071】
計算労力を軽減するために、本方法は、汎化深さk及び/又は特化深さkを提供することを含み得るものであり、この汎化深さk及び/又は特化深さkまで、訓練クエリが生成される。本例においては、本方法に入力されるクエリ深さ204が、汎化深さk及び/又は特化深さkを定義する。
【0072】
ランダムなクエリに汎化及び特化を追加することによって、オントロジーの背景知識のいくつかの部分を捕捉することが可能となる。
【0073】
オントロジーに基づく戦略的な訓練:
オントロジーに基づく戦略的な訓練は、オントロジーOに基づいて関連するクエリを見つけることを目的とする。
【0074】
本方法は、オントロジーOに依存することによって訓練クエリを生成することを含み得る。
【0075】
目標クエリの集合が、有向非巡回グラフ(N,E)によって定式化され、ここで、Nは、ノードの集合であり、Eは、有向エッジの集合である。このような有向非巡回グラフDAGは、クエリ形状を捕捉する。この形状を、関係R及び定数の集合によってシグネチャΣからインスタンス化することができる。シグネチャΣは、まださらに決定されるべき関係R又はエンティティ
【数11】
のためのシンボル、例えば、関係シンボル又は変数をさらに含み得る。次いで、シグネチャΣ内のシンボルをKGのノード及びエッジに割り当てるためのラベル付け関数fを適用することにより、目標クエリの集合が得られる。
【0076】
本例においては、クエリ形状Sは、タプル(N,E,A,n)であり、従って、(N,E)は、DAGであり、n∈Nは、Sの識別ノードであり、A⊆Nは、Sにおけるアンカーノードの集合を表す。シグネチャΣからの関係及び定数の所与の集合について、ラベル付け関数fは、N∪EからΣ∪Vへのマッピングであり、ここで、Vは、変数の集合であり、従って、それぞれのアンカーノードは、定数にマッピングされ、それぞれの非アンカーノードは、変数又は定数のいずれかにマッピングされ、それぞれのエッジは、シグネチャΣ内の関係シンボルにマッピングされる。
【0077】
シグネチャΣ及びクエリ形状Sが与えられた場合、CQの集合は、
【数12】
であり、ただし、
【数13】
である。
【0078】
本例においては、ラベル付け関数fは、以下の集合:
【数14】
によって決定され、ここで、所与の関係pについて:
inv(p)は、pの全ての逆関係を含む集合である。
dom(p)は、pの複数のドメインタイプを含む集合である。dom(p)は、好ましくは全てのドメインタイプを含む。
range(p)は、pの複数の範囲タイプを含む集合である。range(p)は、好ましくは全ての範囲タイプを含む。
follows(p)は、pに続くことができる複数の関係p’を含む集合である。follows(p)は、好ましくは全てのそのような関係p’を含む。
inter(p)は、範囲内でpと交差することができる複数の関係p’を含む集合である。inter(p)は、好ましくは全てのこのような関係p’を含む。
inter(p)は、ドメイン位置においてpと交差することができる複数の関係p’を含む集合である。inter(p)は、好ましくは全てのこのような関係p’を含む。
【0079】
本例においては、クエリ形状S及びオントロジーOに関して、エッジのそれぞれのペアe=(n,n),e’=(n,n)について、
f(e’)∈follows(f(e))である場合、又は、
f(e)=type,f(n)=AかつA∈dom(f(e’))である場合、又は、
p∈inv(f(e’))かつA∈range(p)である場合、又は、
f(e’)∈type,f(n)=AかつA∈range(f(e))である場合、又は、
p∈inv(f(e))かつA∈dom(p)である場合には、
ラベル付け関数fは、Oに関してSに対して有効である。
【0080】
本例においては、クエリ形状S及びオントロジーOに関して、エッジのそれぞれのペアe=(n,n),e’=(n,n)について、
f(e’)∈inter(f(e))である場合、又は、
f(e)=type,f(n)=AかつA∈dom(f(e’))である場合、又は、
p∈inv(f(e’))かつA∈range(p)である場合、又は、
f(e)=f(e’)=type,f(n)=A,f(n)=A2であって、かつ、
【数15】
となるような概念Aが存在する場合には、
ラベル付け関数fは、Oに関してSに対して有効である。
【0081】
本例においては、クエリ形状S及びオントロジーOに関して、エッジのそれぞれのペアe=(n,n),e’=(n,n)について、
f(e’)∈inter(f(e))である場合、又は、
f(e)=type,f(n)=AかつA∈dom(f(e’))である場合、又は、
p∈inv(f(e’))かつA∈range(p)である場合、又は、
f(e)=f(e’)=type,f(n)=A,f(n)=Aであって、かつ、
【数16】
となるようないくつかのエンティティAが存在する場合には、
ラベル付け関数fは、Oに関してSに対して有効である。
【0082】
上記の*記号は、例えば、type(X,A)→type(X,A)→type(X,A’)→type(X,A’’)・・・type(X,A)のように、複数の公理を介して汎化を実施することができることを反映している。
【0083】
このようにして、意味論的に意味のあるクエリが作成される。
【0084】
例として、クエリ形状
S=({n;n},{e=(n),e=(n,n)g},n
と、
(e)=worksAt、及び、
(e)=type、及び、
(e)=worksAt
をマッピングするラベル付け関数fとが与えられた場合、ラベル付け関数f(n)=companyは、オントロジーOに関して有効であるが、その一方で、ラベル付け関数f(e)=worksAt及びf(e)=teachesAtは、worksAtの範囲と、teachesAtのドメインとが交差していないので、オントロジーOに関して有効ではない。
【0085】
複数の訓練クエリを含む訓練集合は、例えば、それぞれのクエリ形状に対するそれぞれの有効なラベル付け関数を計算し、オントロジーOによって捕捉されないデータパターンを追加することによって構築される。この文脈における、オントロジーOによって捕捉されないデータパターンとは、その汎化又は特化であるものとしてよい。
【0086】
本例においては、KGに対する応答を有している所与の形状Sの全てのラベル付けされたクエリは、単項のCQの集合Qである。オントロジーOを使用して、それぞれのクエリの汎化が、例えば、上記のルールR1乃至R6によって決定される。取得された複数の訓練クエリは、本例においては、オントロジーOと、データパターンの集合とが与えられた場合に構成することができる全てのクエリを含む。
【0087】
本方法は、それぞれのアンカーノードに対して、特にランダムに、有効なエンティティの一部を選択することを含み得る。即ち、アンカーとして選択されたそれぞれのエンティティに対して、結果として生じるクエリにより、KG200に対する特定の応答が生成される。
【0088】
Ren, H., Leskovec, J.: Beta embedding for multi-hop logical reasoning in knowledge graphs. In: Advances in Neural Information Processing Systems 33: Annual Conference on Neural Information Processing Systems 2020, NeurIPS 2020, December 6-12, 2020, virtual (2020)は、目的関数を用いて知識グラフ埋め込みモデルを訓練するための例示的な訓練方法を開示している。
【0089】
KGEモデル208は、この訓練方法に基づいている。この方法とは対照的に、訓練のための目的関数は、オントロジー公理も考慮する。
【0090】
本例における方法は、オントロジーOに依存して、クエリの汎化及び/又は特化を含む、クエリの表現を学習することを目的とする。
【0091】
本例における方法は、クエリの埋め込みと、応答、即ち、正のサンプルを表現する埋め込みとの間の距離を減少させること、好ましくは最小化することを目的とし、その一方で、クエリの埋め込みと、非応答、即ち、負のサンプルを表現する埋め込みとの間の距離を増加させること、特に最大化することを目的とする。
【0092】
本例においては、距離は、boxとvとの間のL距離として、クエリボックス
【数17】
と、エンティティベクトル
【数18】
との間の距離であり、即ち、
d(v,q)=max(v-qmax,0)+max(qmin-v,0)
であり、ここで、
max=Cen+Offかつqmin=Cen-Off
である。
【0093】
本例においては、関数
【数19】
が、距離を(0,1)の間隔に変換し、ここで、γ≧0は、マージンであり、σ>0は、ペナルティの強さを制御する。
【0094】
本方法は、特定の訓練クエリqが、オントロジーOに依存している他のクエリq’の汎化である場合に、訓練クエリqのためのボックスboxが、この他の訓練クエリq’のためのボックスboxq’を含むことを保証することを目的とする。
【0095】
より一般的には、aが訓練クエリqに対する応答エンティティである場合、本方法は、応答aと訓練クエリqとの間の距離だけでなく、応答aと訓練クエリqの特化との間の距離も最小化することを目的とする。
【0096】
一例においては、クエリの所与の訓練集合が、クエリの応答とともに提供され、同様にして、クエリの複数の汎化又はクエリの全ての汎化も提供される。
【0097】
例えば、クエリqの全ての汎化の集合Gen(q)={q,・・・,q}が、オントロジーOに基づいて決定される。次いで、オントロジーOに関して、訓練クエリqと、この訓練クエリqの特定の応答v∈q[G,O]とが与えられた場合、目的関数は、vのための損失関数であるものとしてよい。損失関数の2つの例、即ち、第1の損失関数及び第2の損失関数を以下に提示する。
【0098】
第1の損失関数は、負の対数尤度:
【数20】
であり、ここで、
【数21】
は、負のサンプリングによって得られたランダムなエンティティであり、β≧0は、固定されたスカラーである。
【0099】
第2の損失関数は、
【数22】
であり、ここで、v∈q[G,O]は、Oに関するGに対するqの特定の応答、即ち、
【数23】
であり、γは、マージンであり、d*(v,q)=Σqi∈Gen(q)βd(v,q)及び0≦β≦1は、固定されたスカラーである。
【0100】
例として、オントロジーOは、以下のルール
O={teachesAt(X,Y)→worksAt(X,Y);type(X,assist_prof)→type(X,professor)}
を含み得る。
【0101】
次に、qの汎化の集合Gen(q)={q,q,q}は、連言肢teachesAt(X,Y)をworksAt(X,Y)に置き換えることによってqから得られたqと、type(X,assist_prof)の代わりにtype(X,professor)を有するクエリqであるqと、q,q,q及びそれぞれの場合と同様である第1、第2及び第3の連言肢を有するqと、を含む。
【0102】
オントロジーOによるKG Gに対するクエリqへの特定の応答がq[G,O]={p}であるとすると、訓練目的は、関数pの埋め込みvと、クエリqの埋め込みboxとの間の距離も、埋め込みvと、クエリqの汎化q,q,qに対応する埋め込み空間内のボックスとの間の距離も最小化することである。
【0103】
上で定義された2つの目的関数の一方と、上で説明された方法のうちの1つを使用して生成された正のクエリサンプル及び負のクエリサンプルとに依存して、知識グラフ埋め込みモデル208が訓練される。
【0104】
取得された知識グラフ埋め込みモデル208を使用して、オントロジーを備えた不完全なKGに対する連言クエリに応答することができる。
【0105】
知識グラフ200、オントロジー202及び/又は埋め込みモデル208は、機械状態、デジタル画像内のオブジェクトのプロパティ、又は、質問に対する応答に関係することができる。
【0106】
知識グラフ200は、機械のステータスメッセージを機械状態にマッピングすることに関する知識を表現することができる。本方法は、ステータスメッセージを受信することと、ステータスメッセージに依存して機械状態を出力することとを含み得る。ステータスを表現する主語エンティティと、機械状態を表現する目的語エンティティとを含むトリプルが存在するかどうかを知識グラフ埋め込みモデル208を用いて予測することによって、状態を決定することができる。本方法は、機械状態を出力することを含み得る。
【0107】
デジタル画像処理の場合、知識グラフ200は、画像のためのオブジェクト認識において認識されるオブジェクトの記述であるものとしてよい。知識グラフ200におけるエンティティは、オブジェクト及び/又はそのプロパティを表現することができる。本方法は、オブジェクトを受信することと、オブジェクトに依存して記述を出力することとを含み得る。
【0108】
ストリートビューにおいては、オブジェクトは、自動車、人間、家、又は、インフラストラクチャの他の部分であるものとしてよい。ストリートビューにおいては、知識グラフ200、オントロジー202及び/又は埋め込みモデル208は、オブジェクト、及び/又は、特にデジタル画像におけるオブジェクトと他のオブジェクトとの関係を記述することができる。本方法は、オブジェクトを受信することと、オブジェクトに依存して記述を出力することとを含み得る。
【0109】
本方法は、オントロジーによって強化される不完全なKGに対する複雑なクエリに応答するために使用可能である。本方法は、例えば製造ドメインにおけるデジタルツインの文脈において適用可能である。
【0110】
図3には、オントロジー202によって強化される知識グラフ200の知識グラフ埋め込みモデル208を訓練するための装置300の少なくとも一部が概略的に図示されている。装置300は、本方法における各ステップを実施するように構成されている。
【0111】
装置300は、少なくとも1つのストレージと、少なくとも1つのプロセッサとを含む。
【0112】
本例においては、ストレージ302は、KG200と、KGEモデル208と、オントロジー202と、正のサンプル206-1と、負のサンプル206-2とを格納するように構成されている。
【0113】
本例においては、プロセッサ304は、上記の方法を実施するように構成されている。ストレージ302は、プロセッサ304によって実行された場合に、本方法をプロセッサ304に実行させるためのコンピュータ可読命令を格納することができる。プロセッサ304は、例えば、ストレージ302又はインタフェース(図示せず)からクエリ深さ204を受信するように構成可能である。
図1
図2
図3
【外国語明細書】