(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-09-29
(54)【発明の名称】マルチホップアテンショングラフニューラルネットワークに基づく関係学習方法およびシステム
(51)【国際特許分類】
G06N 3/04 20230101AFI20230922BHJP
【FI】
G06N3/04 100
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023515590
(86)(22)【出願日】2021-09-23
(85)【翻訳文提出日】2023-03-28
(86)【国際出願番号】 CN2021119792
(87)【国際公開番号】W WO2022063151
(87)【国際公開日】2022-03-31
(32)【優先日】2020-09-23
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-05-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】522380893
【氏名又は名称】北京沃▲東▼天▲駿▼信息技▲術▼有限公司
【氏名又は名称原語表記】Beijing Wodong Tianjun Information Technology Co.,Ltd.
【住所又は居所原語表記】Room A402,4/f,No.2 Building,No.18 Kechuang 11th Street,Economic and Technological Development Zone,Beijing 100176,China
(71)【出願人】
【識別番号】521108663
【氏名又は名称】ジェイ・ディー・ドット・コム アメリカン テクノロジーズ コーポレーション
【氏名又は名称原語表記】JD.com American Technologies Corporation
【住所又は居所原語表記】675 E Middlefield Rd, Mountain View, CA 94043, USA
(71)【出願人】
【識別番号】511237117
【氏名又は名称】ザ ボード オブ トラスティーズ オブ ザ リーランド スタンフォード ジュニア ユニバーシティー
【氏名又は名称原語表記】THE BOARD OF TRUSTEES OF THE LELAND STANFORD JUNIOR UNIVERSITY
(74)【代理人】
【識別番号】110001771
【氏名又は名称】弁理士法人虎ノ門知的財産事務所
(72)【発明者】
【氏名】ワン グァンタオ
(72)【発明者】
【氏名】イン チータオ
(72)【発明者】
【氏名】ファン ジン
(72)【発明者】
【氏名】ユーリ レスコヴェツ
(57)【要約】
ナレッジグラフを完善するシステムと方法であって、コンピューティングデバイスを含み、コンピューティングデバイスは、プロセッサとコードを記憶する記憶デバイスを含む。コードがプロセッサに実行される時に、複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、各エッジは、複数のノードのうち2つのノードに接続し、一つのエッジが接続した任意の2つのノードの間のシングルホップアテンションに基づいて、不完全なナレッジグラフのアテンションマトリックスを計算し、アテンションマトリックスに従って、任意の2つのノードのマルチヘッド拡散アテンションを計算し、マルチヘッド拡散アテンションを使用して不完全なナレッジグラフの更新埋め込みを取得し、及び更新埋め込みに基づいて不完全なナレッジグラフを更新して更新したナレッジグラフを取得する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
システムであって、
コンピューティングデバイスを含み、前記コンピューティングデバイスは、プロセッサとコンピュータ実行可能なコードを記憶する記憶デバイスを含み、
ここで、前記コンピュータ実行可能なコードは、前記プロセッサに実行される時に、
複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、前記複数のエッジのうち各エッジが前記複数のノードのうち2つのノードに接続し、
前記複数のエッジのうち一つのエッジが接続した前記複数のノードのうち任意の2つのノードの間のシングルホップアテンションに基づいて、不完全なナレッジグラフのアテンションマトリックスを計算し、
前記アテンションマトリックスに従って、前記複数のノードのうち任意の2つのノードのマルチヘッド拡散アテンションを計算し、
前記マルチヘッド拡散アテンションを使用して前記不完全なナレッジグラフの更新埋め込みを取得し、
前記更新埋め込みに基づいて前記不完全なナレッジグラフを更新して更新したナレッジグラフを取得する、ように配置される
システム。
【請求項2】
前記コンピュータ実行可能なコードは、
【数1】
という方式により前記アテンションマトリックスを計算するように配置される
請求項1に記載のシステム。
【請求項3】
前記コンピュータ実行可能なコードは、
【数2】
という方式により前記マルチヘッド拡散アテンションを計算するように配置される
請求項2に記載のシステム。
【請求項4】
【数3】
請求項3に記載のシステム。
【請求項5】
hop又はKは2から12の範囲の正の整数であり、lは2から24の範囲の正の整数である
請求項4に記載のシステム。
【請求項6】
前記コンピュータ実行可能なコードは、
前記マルチヘッド拡散アテンションに対して第一レイヤ正規化と加算操作、フィードフォワードおよび第二レイヤ正規化と加算操作を順次実行する
という方式により、前記不完全なナレッジグラフの更新埋め込みを取得するように配置される
請求項5に記載のシステム。
【請求項7】
前記フィードフォワードは、2レイヤのマルチプレイヤパーセプトロンMLPを使用して実行される
請求項6に記載のシステム。
【請求項8】
前記コンピュータ実行可能なコードは、
更新埋め込みを取得する後に、前記更新埋め込み及び前記不完全なナレッジのノードとエッジとのラベルに基づいて損失関数を計算し、及び
前記アテンションマトリックスを計算するための、前記マルチヘッド拡散アテンションを計算するための、及び前記更新埋め込みを取得するためのパラメータを調整するようにさらに配置される
請求項1に記載のシステム。
【請求項9】
前記コンピュータ実行可能なコードは、
複数の反復で前記アテンションマトリックスを計算し、前記マルチヘッド拡散アテンションを計算し、前記更新埋め込みを取得し、前記損失関数を計算し、前記パラメータを調整し、及び
前記複数の反復を使用した後に取得された更新埋め込みを使用して前記不完全なナレッジグラフを更新するように配置される
請求項8に記載のシステム。
【請求項10】
前記コンピュータ実行可能なコードは、
前記更新埋め込みに基づいて前記複数のノードの新しい特徴又は新しいエッジを予測し、及び
前記新しい特徴を前記ノードに追加すること又は前記新しいエッジを前記不完全なナレッジグラフに追加する
という方式により、前記不完全なナレッジグラフを更新するように配置される
請求項9に記載のシステム。
【請求項11】
前記コンピュータ実行可能なコードは、
前記更新したナレッジグラフが複数の顧客と複数の製品が含まれている時に、製品と顧客が前記更新したナレッジグラフのうちエッジにリンクされた場合に、前記製品を前記顧客に推奨し、ここで前記エッジが前記製品に対する前記顧客の関心を示している
ようにさらに配置される
請求項1に記載のシステム。
【請求項12】
前記コンピュータ実行可能なコードは、
前記更新したナレッジグラフが複数の顧客が含まれている時に、前記ナレッジグラフのうち前記顧客の特徴に基づいて前記複数の顧客にクレジットスコアを提供する
ようにさらに配置される
請求項1に記載のシステム。
【請求項13】
方法であって、
コンピューティングデバイスで複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、前記複数のエッジのうち各エッジが前記複数のノードのうち2つのノードに接続することと、
コンピューティングデバイスで前記複数のエッジのうち一つのエッジが接続した前記複数のノードのうち任意の2つのノードの間のシングルホップアテンションに基づいて、前記不完全なナレッジグラフのアテンションマトリックスを計算することと、
前記コンピューティングデバイスで前記アテンションマトリックスに従って、前記複数のノードのうち任意の2つのノードのマルチヘッド拡散アテンションを計算することと、
コンピューティングデバイスで前記マルチヘッド拡散アテンションを使用して前記不完全なナレッジグラフの更新埋め込みを取得することと、
前記コンピューティングデバイスで前記更新埋め込みに基づいて前記不完全なナレッジグラフを更新して更新したナレッジグラフを取得することと、を含む
方法。
【請求項14】
前記アテンションマトリックスを計算するステップは、
【数4】
を含む
請求項13に記載の方法。
【請求項15】
前記マルチヘッド拡散アテンションを計算するステップは、
【数5】
請求項14に記載の方法。
【請求項16】
【数6】
請求項15に記載の方法。
【請求項17】
hop又はKは2から12の範囲の正の整数であり、lは2から24の範囲の正の整数である
請求項16に記載の方法。
【請求項18】
前記コンピュータ実行可能なコードは、
前記マルチヘッド拡散アテンションに対して第一レイヤ正規化と加算操作、フィードフォワードおよび第二レイヤ正規化と加算操作を順次実行する
という方式により前記不完全なナレッジグラフの更新埋め込みを取得するように配置される
請求項17に記載の方法。
【請求項19】
コンピュータ実行可能なコードをを記憶した非一時的なコンピュータ可読記憶媒体であって、
前記コンピュータ実行可能なコードは、アクティブコンピューティングデバイスのプロセッサに実行される時に、
複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、前記複数のエッジのうち各エッジは、前記複数のノードのうち2つのノードに接続し、
前記複数のエッジのうち一つのエッジが接続した前記複数のノードのうち任意の2つのノードの間のシングルホップアテンションに基づいて、不完全なナレッジグラフのアテンションマトリックスを計算し、
前記アテンションマトリックスに従って、前記複数のノードのうち任意の2つのノードのマルチヘッド拡散アテンションを計算し、
前記マルチヘッド拡散アテンションを使用して前記不完全なナレッジグラフの更新埋め込みを取得し、及び
前記更新埋め込みに基づいて前記不完全なナレッジグラフを更新して更新したナレッジグラフを取得する、ように配置される
非一時的なコンピュータ可読記憶媒体。
【請求項20】
前記コンピュータ実行可能なコードは、
【数7】
という方式により前記アテンションマトリックスを計算するように配置され、且つ
前記コンピュータ実行可能なコードは、
【数8】
という方式により前記マルチヘッド拡散アテンションを計算するように配置される
請求項19の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
米国35 U.S.C. § 119(e)に従い、本出願は、Guangtao Wang、Zhitao Ying、Jing Huang、および Jurij Leskovec によって 2020 年 9 月 23 日に提出された米国仮特許出願番号 63/082096、「グラフ拡散変換器による関係構造の表現学習の方法およびシステム」というタイトルの特許出願の優先権および利益を主張し、その全体が参照により本明細書に組み込まれている。上記の仮出願におけるグラフ拡散変換器は、本開示で論じるマルチホップアテンショングラフニューラルネットワーク(MAGNA)と等価であることに留意されたい。
特許、特許出願、および様々な刊行物を含み得るいくつかの参考文献が、本開示の説明において引用され、検討されている。そのような参考文献の引用および/または検討を提供することは、本開示の説明を明確にするためにのみに用いられ、そのような参考文献が本明細書に記載の開示された「先行技術」であることを認めるものではない。明細書で引用および検討されたすべての参考文献は、各参考文献が参照により個別に組み込まれるのと同程度に、その全体が参照により本明細書に組み込まれる。
【0002】
本開示は一般に関係学習に関し、より具体的には、マルチホップアテンショングラフニューラルネットワーク(Multi-hop Attention Graph Neural Network,MAGNA)を使用してグラフの表示学習の方法とシステムに関する。
【背景技術】
【0003】
ここで提供される背景の説明は、本開示のコンテキストを総括的に表現するためになされる。この背景部分の説明の範囲内で、現在の署名の発明者の仕事と、本願を提出する時に本質的に既存の技術を見なしていない説明の方に、明確または暗黙の方式で本願に対する従来技術と承認されない。
【0004】
セルフアテンションメカニズムの導入により、グラフの表示学習を含む多くの分野の最新の開発が促進された。グラフアテンションネットワーク(Graph Attention Network,GAT)と関連モデルは、グラフニューラルネットワーク(Graph Neural Network,GNN)にアテンションメカニズムを開発し、エッジで接続されたノード間のアテンションスコアを計算し、モデルがノード間のアテンションスコアに基づいてノードの直近のネイバーからのメッセージを処理する。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ただし、このようなアテンションメカニズムは、直接接続されておらず重要なネットワークコンテキストを提供するノードを考慮しない。したがって、本分野には、上記の欠陥と不足を解決する解決されないニーズがある。
【課題を解決するための手段】
【0006】
いくつかの方面で、本開示にはシステムに関する。いくつかの実施例では、前記システムには、コンピューティングデバイスを含み、前記コンピューティングデバイスは、プロセッサとコンピュータ実行可能なコードを記憶する記憶デバイスを含む。前記コンピュータ実行可能なコードが、前記プロセッサに実行される時に、
複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、前記複数のエッジのうち各エッジは、前記複数のノードのうち2つのノードに接続し、
前記複数のエッジのうち一つのエッジが接続した前記複数のノードのうち任意の2つのノードの間のシングルホップアテンションに基づいて、不完全なナレッジグラフのアテンションマトリックスを計算し、
前記アテンションマトリックスに従って、前記複数のノードのうち任意の2つのノードのマルチヘッド拡散アテンションを計算し、
前記マルチヘッド拡散アテンションを使用して前記不完全なナレッジグラフの更新埋め込みを取得し、及び
前記更新埋め込みに基づいて前記不完全なナレッジグラフを更新して更新したナレッジグラフを取得する、ように配置される。
【0007】
いくつかの実施例では、コンピュータ実行可能なコードは、次の方式で前記アテンションマトリックスを計算するように配置される。
【数1】
【0008】
いくつかの実施例では、前記コンピュータ実行可能なコードは、次の方式で前記マルチヘッド拡散アテンションを計算するように配置される。
【数2】
【0009】
【0010】
いくつかの実施例では、hopはkと同等であり、hopとKは2から12の範囲の正の整数である。 いくつかの実施例では、hopとKは3から10の範囲内である。いくつかの実施例では、hopとKは6、7、または8である。 いくつかの実施例では、lは2から24の範囲の正の整数である。 いくつかの実施例では、lは3、6、12、18、または24である。いくつかの実施例では、lは3、6、または12である。
【0011】
いくつかの実施例では、前記コンピュータ実行可能なコードは、前記マルチヘッド拡散アテンションに対して第一レイヤ正規化と加算操作、フィードフォワードおよび第二レイヤ正規化と加算操作を順次実行することにより、前記不完全なナレッジグラフの更新埋め込みを取得するように配置される。
【0012】
いくつかの実施例では、フィードフォワードは、2レイヤのフィードフォワードネットワークを使用して実行される。2レイヤのフィードフォワードネットワークは、2レイヤのマルチプレイヤパーセプトロン (Multiplayer Perceptron、MLP) であってもよい。
【0013】
いくつかの実施例では、前記コンピュータ実行可能なコードは、更新埋め込みを取得する後に、前記更新埋め込み及び前記不完全なナレッジのノードとエッジとのラベルに基づいて損失関数を計算し、及び前記アテンションマトリックスを計算するための、前記マルチヘッド拡散アテンションを計算するための、及び前記更新埋め込みを取得するためのパラメータを調整するように配置される。
【0014】
いくつかの実施例では、コンピュータ実行可能なコードは、複数の反復で前記アテンションマトリックスを計算し、前記マルチヘッド拡散アテンションを計算し、前記更新埋め込みを取得し、前記損失関数を計算し、及び前記パラメータを調整し、及び前記複数の反復を使用した後に取得された更新埋め込みを使用して前記不完全なナレッジグラフを更新するように配置される。
【0015】
いくつかの実施例では、前記コンピュータ実行可能なコードは、前記更新埋め込みに基づいて前記複数のノードの新しい特徴又は新しいエッジを予測し、及び前記新しい特徴を前記ノードに追加すること又は前記新しいエッジを前記不完全なナレッジグラフに追加することにより、前記不完全なナレッジグラフを更新するように配置される。
【0016】
いくつかの実施例では、前記コンピュータ実行可能なコードは、前記更新したナレッジグラフは、複数の顧客と複数の製品が含まれている時に、製品と顧客が前記更新したナレッジグラフのうちエッジにリンクされた場合に前記製品を顧客に推奨し、ここで前記エッジは、前記製品に対する前記顧客の関心を示しているように配置される。
【0017】
いくつかの実施例では、前記コンピュータ実行可能なコードは、前記更新したナレッジグラフは、複数の顧客が含まれている時に、前記ナレッジグラフのうち前記顧客の特徴に基づいて前記複数の顧客にクレジットスコアを提供するように配置される。
【0018】
いくつかの面で、本開示は1つの方法に関する。いくつかの実施例では、前記方法は、
コンピューティングデバイスで複数のノードと複数のエッジを含む不完全なナレッジグラフを提供し、前記複数のエッジのうち各エッジは、前記複数のノードのうち2つのノードに接続することと、
コンピューティングデバイスで前記複数のエッジのうち一つのエッジが接続した前記複数のノードのうち任意の2つのノードの間のシングルホップアテンションに基づいて、前記不完全なナレッジグラフのアテンションマトリックスを計算することと、
前記コンピューティングデバイスで前記アテンションマトリックスに従って、前記複数のノードのうち任意の2つのノードのマルチヘッド拡散アテンションを計算することと、
コンピューティングデバイスで前記マルチヘッド拡散アテンションを使用して前記不完全なナレッジグラフの更新埋め込みを取得することと、
前記コンピューティングデバイスで前記更新埋め込みに基づいて前記不完全なナレッジグラフを更新して更新したナレッジグラフを取得することと、を含む。
【0019】
いくつかの実施例では、前記アテンションマトリックスを計算するステップは、
【数4】
【0020】
いくつかの実施例では、前記マルチヘッド拡散アテンションを計算するステップは、
【数5】
【0021】
【0022】
いくつかの実施例では、hopはKと同等であり、hopとKは2から12の範囲の正の整数である。 いくつかの実施例では、hopとKは3から10の範囲内である。いくつかの実施例では、hopとKは6、7、または8である。 いくつかの実施例では、lは2から24の範囲の正の整数である。 いくつかの実施例では、lは3、6、12、18、または24である。いくつかの実施例では、lは3、6、または12である。
【0023】
いくつかの実施例では、前記コンピュータ実行可能なコードは、前記マルチヘッド拡散アテンションに対して第一レイヤ正規化と加算操作、フィードフォワードおよび第二レイヤ正規化と加算操作を順次実行することにより、前記不完全なナレッジグラフの更新埋め込みを取得するように配置される。
【0024】
いくつかの面で、本開示は、ンピュータ実行可能なコードを記憶した非一時的なコンピュータ可読記憶媒体に関する。前記ンピュータ実行可能なコードはコンピューティングデバイスのプロセンサに実行される時に前記方法を実行するように配置される。
【0025】
本開示のこれらおよび他の態様は、以下の図面およびそれらの見出しと組み合わせて好ましい実施例に対する以下の説明により明らかになる。本発明の新規な概念の精神および範囲から逸脱することなく場合にその中の変更及び補正を影響することができる。
【図面の簡単な説明】
【0026】
図面は、本開示の1つ以上の実施例を示しており、書面による説明とともに本開示の原理を説明する。可能の場合に、図面全体に同じ符号を使用して、実施例の同じまたは類似の要素を表示する。
【
図1A】
図1Aは、本開示のいくつかの実施例によるエッジのアテンション重みの計算を概略的に示している。
【
図1B】
図1Bは、本開示のいくつかの実施例による、エッジのアテンション重みを使用してアテンション拡散プロセスにより、接続されていないノードペアの間のセルフアテンション重みを計算することを概略的に示している。
【
図2】
図2は、本開示のいくつかの実施例による、マルチホップアテンショングラフニューラルネットワーク(MAGNA)アーキテクチャを概略的に示している。
【
図3A】
図3Aは、本開示のいくつかの実施例による、マルチホップアテンショングラフシステムを概略的に示している。
【
図3B】
図3Bは、本開示のいくつかの実施例による、MAGNAブロックを概略的に示している。
【
図4】
図4は、本開示のいくつかの実施例による、MAGNAアプリケーションのトレーニングプロセスを概略的に示している。
【
図5A】
図5Aは、MAGNAアプリケーションがトレーニングされた後に、本開示のいくつかの実施例によるノード分類方法を概略的に示している。
【
図5B】
図5Bは、MAGNAアプリケーションがトレーニングされた後に、本開示のいくつかの実施例による新しいエッジを見つけるための方法を概略的に示している。
【
図6】
図6、表1は、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用したCora、CiteseerおよびPubmed上のノード分類精度を示している。
【
図7】
図7、表2は、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用したOGB Arxivデータセット上のノード分類精度を示している。
【
図8】
図8、表3は、本開示のいくつかの実施例による、MAGNAとその他の相関方法によるWN18PRおよびFB15K-237OGB に対するナレッジの完善を示している。
【
図9A】
図9Aは、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用してCoraデータセットを処理する比
【数7】
を示している。
【
図9B】
図9Bは、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用したモデル層の深度によるCoraデータセットを処理することに対する影響を示している。
【
図9C】
図9Cは、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用したホップ数によるCoraデータセットを処理することに対する影響を示している。
【
図9D】
図9Dは、本開示のいくつかの実施例による、MAGNAとその他の相関方法を使用したパラメータαによるCoraデータセットを処理することに対する影響を示している。
【
図10】
図10は、本開示のいくつかの実施例による、Coraデータセット上のアテンション重みを示している。
【発明を実施するための形態】
【0027】
以下の例には、より具体的に本開示が説明されている。これらの例は説明としてのみ設計されている。なぜなら、それらの修正と変更の多くは、当業者にとって明らかだからである。ここで、この開示のさまざまな実施例について説明する。添付の図面を参照して全ての図面に対して、同じ数字が同じ部品を示している。文脈の明確な規定がない限り、本明細書の説明と全ての請求の範囲に使用されている「一」、「一つ」と「前記」には複数の意味が含まれる。さらに、文脈の明確な規定がない限り、本開示の説明と請求の範囲に使用されたように、、「に」の意味は「…の中に」と「…の上に」を含む。さらに、読者の便宜ためにタイトルまたはサブタイトルを使用し、これは本開示の範囲に影響しない。さらに、この明細書に使用されたいくつかの用語には、以下に具体的な定義がある。
【0028】
本明細書で使用される用語は、本分野、本開示の文脈及び各用語を使用する特定の文脈で一般に通常の意味を有する。本開示を説明するために使用されるいくつかの用語は、本開示の説明に関する追加の指示を当業者に提供するために、以下または本明細書の他の場所で論じられる。同じことが1つ以上の方法で記載され得ることを理解されたい。したがって、代替の言語及び同義語は、本明細書で説明する任意の1つ又は複数の用語に使用することができ、その用語は、本明細書で説明又は説明するかどうかに特別な意味を持たない。本開示では、ある用語の同義語が提供されているが、1つまたは複数の同義語の列挙は、他の同義語の使用を除外しない。本明細書において任意の場所で使用される例は、本明細書において論じられる任意の用語の例を含み、単に例示的なものであり、本開示または任意の例示的な用語の範囲および意味を決して限定するものではない。また、本開示は、本明細書で説明した様々な実施形態に限定されない。
【0029】
本明細書に記載されているように、「モジュール」という用語は、特定用途向け集積回路((Application Specific Integrated Circuit 、ASIC)、電子回路、組み合わせたロジック回路、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array,FPGA)、コードを実行するプロセッサ(共有、専用、またはグループ)、説明されている機能を提供するその他の適切なハードウェアコンポーネント、又は以上の部分或いは全ての組み合わせに属する又はを含むように指示してもよい。例えば、オンチップシステムに、モジュールという用語には、プロセッサによって実行されたコードを記憶するメモリ(共有、専用、またはグループ)が含まれる場合がある。
【0030】
本明細書で使用されている「コード」という用語には、ソフトウェア、ファームウェア、および/またはマイクロコードが含まれる場合があり、プログラム、ルーチン、関数、クラスおよび/またはオブジェクトを指してもよい。上記で使用された用語共有は、単一(共有)のプロセッサが複数のモジュールから部分またはすべてのコードを実行できることを意味する。また、複数のモジュールからの部分またはすべてのコードは、単一(共有)のメモリに保存できる。上記で使用される用語は、一組のプロセッサを使用して、単一のモジュールからの部分またはすべてのコードを実行できることを意味する。また、一組のメモリを使用して、単一のモジュールからの一部またはすべてのコードを保存できる。
【0031】
本明細書に記載されているように、「インターフェイス」という用語は、通常、コンポーネント間のインタラクションポイント間にコンポーネント間のデータ通信を通信するために使用される通信ツールまたは装置を指する。 一般的に、インターフェイスは、ハードウェアとソフトウェアのレイヤで適用でき、1つまたは2つのウェイインターフェイスにすることができる。物理的なハードウェアインターフェイスの例には、電気コネクタ、バス、ポート、ケーブル、ターミナル、その他のI/O装置またはコンポーネントが含まれる。インターフェイスと通信するコンポーネントは、コンピュータシステムのマルチコンポーネントまたは周辺装置である。
【0032】
マルチホップアテンショングラフニューラルネットワーク(MAGNA)の紹介
いくつかの面では、本開示は、マルチホップのコンテキスト情報をアテンション計算に組み合わせて、GNNの各層でリモートインタラクションを実現するようにマルチホップアテンショングラフニューラルネットワーク(MAGNA)を提供している。いくつかの実施例では、直接接続されていないノード間のアテンションを計算するために、MAGNAは、ネットワーク全体にアテンションスコアを拡散し、これによりGNNの各層の「受容野」を増加させる。以前の方法とは異なり、MAGNAはアテンション値の前の拡散を使用して、接続されていないノードペア間のすべてのパスを効果的に検討している。これにより、MAGNAは各層の大規模な構造情報をキャプチャし、より多くの情報アテンションを学習することができる。 ノード分類及びナレッジグラフの完善基準の実験結果とは、MAGNAが最も先進な結果を達成したことを示している。Cora、Citeseer、およびPubmedの最新技術と比較して、MAGNAは5:7 %の相対誤差の減少を達成した。MAGNAはまた、大規模なオープングラフベンチマークデータセットで最高のパフォーマンスを達成した。ナレッジグラフの完善の観点から、MAGNAはWN18RRとFB15K-237の4つの異なるパフォーマンス指標で最新の進歩を遂げした。
【0033】
図1Aは、本開示のいくつかの実施例によるエッジのアテンション重みの計算を概略的に示している。
図1Bは、本開示のいくつかの実施例による、エッジのアテンション重みを使用してアテンション拡散プロセスにより、接続されていないノードペアの間のセルフアテンション重みを計算することを概略的に示している。
【0034】
【0035】
MAGNAの準備作業
【0036】
【0037】
【0038】
MAGNAはGNNを基礎とし、グラフアテンションと拡散技術の利点を組み合わせている。MAGNAのコアは、マルチホップ属性の拡散である。これは、拡張可能な方法で任意なノードベアの間のアテンションを学習する原則な方法である。グラフ構造を考慮し、マルチホップコンテキストに関するアテンションを直接に採用することができる。
【0039】
ここでの重要な課題は、どのように柔軟であるがスケーラブルなコンテキストに関連するマルチホップアテンションを許可する方法である。その中で、単一のGNNレイヤうち任意のノードは任意の他のノードの埋め込みに影響を与える可能性がる(基礎となるネットワークに互いに離れていても)。すべてのノードペアのアテンションスコアを単純に学習することは実行可能ではなく、過度のフィッティングと一般化能力が低下することを招来する。
【0040】
MAGNAのマルチホップアテンション拡散
【0041】
【0042】
【0043】
【0044】
【0045】
【0046】
【0047】
【0048】
【0049】
【0050】
【0051】
【0052】
直接マルチホップアテンションに基づくGNNアーキテクチャ
上記の等式(1)、等式(2)、および等式(5)または等式(1)~等式(4)に基づいて、マルチホップアテンション拡散を計算し、本開示は直接マルチホップアテンションに基づくGNNアーキテクチャ、すなわちMAGNAを提供する。
図2は、本開示のいくつかの実施例による、MAGNAアーキテクチャを概略的に示している。
図2に示すように、MAGNAアーキテクチャにはLスタッキングブロックが含まれている。各スタックブロックには、マルチヘッドアテンション拡散層202と深度集約層204がある。
【0053】
【0054】
図2に示すように、深度集約層204には、完全な接続されたフィードフォワードサブレイヤが含まれている。いくつかの実施例では、完全な接続のフィードフォワードサブレイヤには、2レイヤのフィードフォワードネットワーク、例えば2レイヤのMLPを含む。また、サブレイヤ202およびサブレイヤ204にレイヤ正規化と残留接続が追加され、各ブロックの集約ステップがより表現力豊かになる。
【0055】
【0056】
【0057】
グラムアテンション拡散の分析
このセクションでは、我々は、グラフ上の離散信号処理の観点からMAGNAの利点を研究する(Sandryhaila&Moura、グラフ上の離散信号処理:グラフフーリエ変換(Discrete signal processing on graphs: graph Fourier transform)、ICASSP、2013)。私たちの最初の結果は、MAGNAが大規模な構造情報をよりよくキャプチャできることを示している。 2番目の結果は、MAGNAとパーソナライズされたページランク(PPR)との関係を調査する。
【0058】
【0059】
【0060】
【0061】
【0062】
【0063】
MAGNA中のパラメータは、PPRの配信確率と同等である。PPRは、加重グラフ(アテンションマトリックスAの重みから)のノード間の良好な相関スコアを提供する。概して、MAGNAはPPRをノードペアのアテンションスコアの前に配置し、ノードiとノードjの間の分散したアテンションは、iとjの間のすべてのパスのエッジのアテンションスコアに依存する。
【0064】
コンピューティングデバイスに本開示を実現する
本開示は、コンピュータシステムに関している。図に示すように、コンピュータコンポーネントには、実線のフレームに示されている物理ハードウェアコンポーネントと、点線のフレームに示されている仮想ソフトウェアコンポーネントが含まれてもよい。当業者は、他の指示がない限り、これらのコンピュータコンポーネントをソフトウェア、ファームウェアまたはハードウェアコンポーネント、またはそれらの組み合わせの形式で実現することができるが、これらのフォームに限定されないことを理解する。
【0065】
本明細書で説明する装置、システム、および方法は、1つ以上のプロセッサが実行する1つ以上のコンピュータプログラムによって実現することができる。コンピュータプログラムには、非一時的な有形のコンピュータ読取可能な媒体で記憶されたプロセッサ実行可能指令が含まれている。コンピュータプログラムには、記憶されたデータも含めることができる。非一時的な有形のコンピュータ読取可能な媒体の非限定的な例は、不揮発性メモリ、磁気メモリ、光学メモリである。
【0066】
ここで以下に添付の図面を参照してより前面的に本開示を説明し、その中でこの開示の実施例を示している。 ただし、本開示は多くの異なる形式に反映される可能性があり、本明細書で説明する実施例を制限することに解釈されるべきではない。 代わりに、これらの実施例を提供して本開示は全面且つ完全になさせ、本開示の範囲を当業者に完全に伝える。
【0067】
図3Aは、本開示のいくつかの実施例による、マルチホップアテンショングラフシステムを概略的に示している。
図3Aに示すように、システム300にはコンピューティングデバイス310が含まれている。いくつかの実施例では、コンピューティングデバイス310は、サーバコンピュータ、クラスター、クラウドコンピュータ、一般的なコンピュータ、ヘッドレスコンピュータ、または注釈分類またはナレッジグラフ(Knowledge Graph,KG)を提供するサービスを完善する専用コンピュータにすることができる。コンピューティングデバイス310は、プロセッサ312、メモリ314、およびストレージデバイス316を含めることができるが、これらに限定できない。 いくつかの実施例では、コンピューティングデバイス310には、対応するタスクを実行するために、他のハードウェアコンポーネントとソフトウェアコンポーネント(表示なし)が含まれる場合がある。 これらのハードウェアおよびソフトウェアコンポーネントの例には、他の必要なメモリ、インターフェイス、バス、入力/出力(I/O)モジュールまたはデバイス、ネットワークインターフェイス、周辺デバイスが含まれるが、これらに限定されない。
【0068】
プロセッサ312は、中央処理ユニット(Central Processing Unit、CPU)であり、コンピューティングデバイス310の動作を制御するように構成されている。プロセッサ312は、コンピューティングデバイス310のオペレーティングシステム(Operating System,OS)またはその他のアプリケーションを実行できる。 いくつかの実施例では、コンピューティングデバイス310は、例えば2つのCPU、4つのCPU、8つのCPU、または適切な数のCPUなどの一つ以上のCPUをプロセッサとして持つことができる。メモリ314は、コンピューティングデバイス310の動作中にデータおよび情報を格納するために使用される、ランダムアクセスメモリ(ラRandom-Access MemoryRAM)などの揮発性メモリであってもよい。いくつかの実施例では、メモリ314は揮発性メモリアレイであってもよい。 いくつかの実施例では、コンピューティングデバイス310は、1つまたは複数のメモリ314上で実行することができる。ストレージデバイス316は、コンピューティングデバイス310のOS(図示せず)および他のアプリケーションを記憶するための不揮発性データ記憶媒体である。ストレージデバイス316の例は、フラッシュメモリ、メモリカード、USBドライブ、ハードドライブ、フロッピーディスク、光学ドライブ、ソリッドステートドライブ、または任意の他のタイプのデータストレージデバイスなどの不揮発性メモリを含み得る。 いくつかの実施形態では、コンピューティングデバイス310は、同じストレージデバイスまたは異なるタイプのストレージデバイスであり得る複数のストレージデバイス316を有することができ、コンピューティングデバイス310のアプリケーションは、コンピューティングデバイス310中の1つまたは複数のストレージデバイス316に格納され得る。
【0069】
この実施例では、プロセッサ312、メモリ314、およびストレージデバイス316は、例えばサーバコンピューティングデバイスなどのコンピューティングデバイス310のコンポーネントである。 他の実施例では、コンピューティングデバイス310は分散コンピューティングデバイスであり、プロセッサ312、メモリ314、ストレージデバイス316は、事前に定義された領域からの複数のコンピューティングデバイスからの共有リソースである。
【0070】
ストレージデバイス316には、特にマルチホップアテンショングラフニューラルネットワーク(MAGNA)アプリケーション318およびナレッジグラフ332が含まれる。MAGNAアプリケーション318は、ナレッジグラフ332のラベルを使用してモデル構造をトレーニングし、予測してナレッジグラフ332を改善または完善するように配置されている。ナレッジグラフ332は、コンピューティングデバイス310について選択することができ、他のデバイスに記憶されているナレッジグラフはMAGNAアプリケーション 318でアクセスされでもよい。
【0071】
図3Aに示すように、MAGNAアプリケーション318には、データ準備モジュール320、1つ以上のMAGNAブロック322、損失関数モジュール324、予測モジュール326、機能モジュール328、およびインターフェイス330が含まれている。 いくつかの実施例では、MAGNAアプリケーション318には、MAGNAアプリケーション318の操作に必要な他のアプリケーションまたはモジュールが含まれる場合がある。 モジュール320からモジュール330は、それぞれンピュータ実行可能なコード又は指令、データテーブルまたはデータベース、またはハードウェアとソフトウェアの組み合わせにより実現し、それらはアプリケーションを共同で形成できることに注意すべきである。いくつかの実施例では、各モジュールにはサブモジュールも含めることができる 代替的に、一部のモジュールを一つのスタックに組み合わせることができる。他の実施例では、あるモジュールは、実行可能なコードではなく回路として達成できる。いくつかの実施例では、モジュールは集合的にモデルと呼ぶこともできる。このモデルはトレーニングデータを使用してトレーニングすることができ、トレーニング後には予測するに用いられる。
【0072】
データ準備モジュール320は、トレーニングサンプルまたは予測サンプルを準備するように配置され、準備されたトレーニングサンプルまたは予測サンプルをMAGNAブロックに送信した。ナレッジグラフ332には、1,000を超えるから数十万までのノードを持つことができるが、通常、エッジのタイプは制限されており、例えば1つのタイプ(はいといいえ)またはいくつかのタイプのエッジである。ノードの特徴は、ナレッジグラフ332に保存される。ノードに顧客が含まれる場合、ノードの特徴は顧客の年齢、性別、位置、教育などになる。ノード間のエッジまたは関係は、ナレッジグラフ332に保存され、例えば顧客ノードや製品ノードが、閲覧または購入の関係を持つことができる。いくつかの実施例では、ナレッジグラフ332は完全なナレッジグラフではない場合があり、ノードの特徴又はある関連するノード間のエッジの特徴を欠ける場合がある。この場合、トレーニングサンプルと予測サンプルは、ナレッジグラフ332にすることができる。ナレッジグラフ332には、ノードとノードの間の既知のラベルは、MAGNAアプリケーション218のトレーニングに使用される。 トレーニング後、トレーニングされたMAGNAアプリケーション318を使用して、ナレッジグラフ332中のより多くのノードを取得するか、ナレッジグラフ230を完善することができる。いくつかの実施例では、データ準備モジュール320は、ノードとエッジをベクトルに埋め込むことにより、ナレッジグラフ332を準備することができる。
【0073】
【0074】
MAGNAブロック 322は、データ準備モジュール320からトレーニングナレッジグラフ又は予測ためのナレッジグラフを受信したときにMAGNAブロック322と分類器またはKG完善モジュール326をトレーニングする、又はトレーニングされたMAGNAブロック322と分類器またはKG完善モジュール326を使用して予測するように配置される。MAGNAブロック 322には、1つ以上のMAGNAブロック3220が含まれている場合がある。各MAGNAブロック 3220には同じブロック構造がある。
図3Bは、本開示のいくつかの実施例による、MAGNAブロック3220を概略的に示している。
図3Bに示すように、MAGNAブロック3220には、第一レイヤ正規化モジュール3221、マルチヘッドアテンション拡散モジュール3222、第一加算操作モジュール3223、第二レイヤ正規化モジュール3224、フィードフォワードモジュール3225、および第二加算操作モジュール3226を含む。
【0075】
【0076】
【0077】
【0078】
【0079】
【0080】
【0081】
【0082】
【0083】
予測モジュール326は、損失関数モジュール324からモデルがトレーニングされた通知を受信したときに、トレーニングされたMAGNAブロック322を使用して、分類されたタイプを持たないノードを分類するか、エッジでリンクしないノード間の関係を予測し、新しいノード分類および/または新しいエッジ、および/またはナレッジグラフ332の新しいエッジ関係を追加し、これによりより多く情報でナレッジグラフ332を更新するように配置される。更新されたナレッジグラフ332は機能モジュール328に使用される。 いくつかの実施例では、予測モジュール326はフィールドトランスのデコーダーである。いくつかの実施例では、デコーダーは分類器である。
【0084】
機能モジュール328は、ナレッジグラフ332が更新されたときに、更新されたナレッジグラフを使用してある機能を実行するように配置され。 たとえば、ナレッジグラフ332が顧客および製品のナレッジグラフである場合、顧客が製品に関心を持っていると予測する場合、ナレッジグラフ332は1つ以上の顧客に製品を推奨することに用いられ、これは、リンク製品と顧客のエッジ又は関係で指示される。いくつかの実施例では、ナレッジグラフ332は顧客のナレッジグラフになることができ、各顧客は、高クレジットスコアの顧客または低クレジットスコアの顧客として分類できる。予測モジュール326による高クレジットまたは低クレジットの分類に属することを更新することにより、より多くの顧客のクレジット情報が利用可能になり、顧客のクレジットデータをローン会社が使用できる。
【0085】
いくつかの実施例では、機能モジュール328は、自動または事前定義された時間間隔で上記の機能を実行し、又はナレッジグラフ322の更新がトリガーされたときに上記の機能を実行するように配置される。たとえば、ナレッジグラフ332が更新された後、機能モジュール328は製品と顧客の間のより多くのリンク関係を見つける。更新された顧客と製品の関係が興味を持っている場合、機能モジュール328は製品を対応する顧客にプッシュする。
【0086】
インターフェイス330は、MAGNAブロック322をトレーニングし且つ選択可能的に損失関数モジュール324をトレーニングするためにMAGNAアプリケーション 318の管理者にインターフェイスを提供し、モデルパラメータを調整し、又は管理者がMAGNAアプリケーション 318を使用してナレッジグラフ332を取得し、更新されたナレッジグラフ332を使用してある機能に用いられるように配置される。
【0087】
【0088】
図4は、本開示のいくつかの実施例による、MAGNAアプリケーションのトレーニングプロセスを概略的に示している。いくつかの実施例では、トレーニングプロセスは、
図3Aに示すコンピューティングデバイス310によって実現されている。 特に、この開示に他の指示がない限り、トレーニングプロセスまたは方法のステップは異なる順序で配列することができ、したがって
図4に示す順序に限定されない。
【0089】
【0090】
【0091】
【0092】
【0093】
【0094】
【0095】
【0096】
【0097】
【0098】
【0099】
【0100】
ステップ424で、MAGNAブロック322からの出力埋め込みを受信した後、損失関数モジュール324は、出力埋め込みをナレッジグラフ332の実際の(グループトゥルース、ground truth)ラベルを比較して損失関数を計算し、損失関数を使用してMAGNAモジュール322のパラメータを調整する。いくつかの実施例では、損失関数は交差エントロピー損失である。
【0101】
ステップ426では、MAGNAアプリケーション318は、トレーニングが所定の回数繰り返されるまで、またはモデルパラメーターが収束するまで、以前の反復された更新埋め込みを使用してステップ404~424を反復に実行する。
【0102】
図5Aは、MAGNAアプリケーション318がトレーニングされた後に、本開示のいくつかの実施例によるノード分類方法500Aを概略的に示している。いくつかの実施例では、この方法はコンピューティングデバイス310、特に
図3Aに示す予測モジュール326によって実現されている。本開示に他の指示がない限り、トレーニングプロセスまたは方法のステップは異なる順序で配列することができ、
図5Aに示す順序に限定されないことに注意すべきである。MAGNAアプリケーション318のトレーニングデータは、同じナレッジグラフ332であってもよいと注意されたい。
【0103】
図5Aに示すように、ステップ426に、所定の回数反復されるまで、またはモデルパラメーターが収束するまで、ステップ404から420を反復に実行して、ナレッジグラフの埋め込みを継続的に更新する。次に、ステップ502に、更新埋め込みを取得した後、予測モジュール326は更新埋め込みを使用して、ナレッジグラフ332中のノードの特徴を予測する。たとえば、ノードが顧客である場合、この特徴は高いクレジットスコアと低いクレジットスコアになる可能性がある。いくつかの実施例では、予測モジュール326は、特徴的な値を持たないノードのみを予測する。選択では、モジュール326は、すべてのノードの特徴を予測し、すでに特徴なラベルまたは値を持つノードを除外できる。
【0104】
ノードの予測特性の確率は異なる場合がある。ステップ504では、予測モジュール326はノードの予測特徴の確率または信頼性に基づいて、高から低いまでノードを並べ替えられる。
【0105】
ステップ506では、予測モジュール326が前にランキングされたノードを選択し、選択したノードに予測特徴を追加する。特徴値を特徴を有していないノードに追加してナレッジグラフ332をより完全になさせる。
【0106】
図5Bは、MAGNAアプリケーション318がトレーニングされた後に、本開示のいくつかの実施例によるナレッジグラフから新しいエッジを見つけるための方法500Bを概略的に示している。いくつかの実施例では、この方法はコンピューティングデバイス310、特に
図3Aに示す予測モジュール326によって実現されている。 本開示に別の指示がない限り、トレーニングプロセスまたは方法のステップは異なる順序で配列することができ、
図5Bに示す順序に限定されないことに注意すべきである。MAGNAアプリケーション318のトレーニングデータは、同じナレッジグラフ332であってもよいと注意されたい。
【0107】
図5Bに示すように、ステップ426に、ステップ404から420を反復に実行して、所定の回数反復されるまで、またはモデルパラメーターが収束するまで、ナレッジグラフの埋め込みを継続的に更新する。次に、ステップ512に、更新埋め込みを取得した後、予測モジュール326は更新埋め込みを使用して、ナレッジグラフ332中の新しいエッジを予測する。 たとえば、ノードが顧客と製品であり、ナレッジグラフのエッジのタイプには「関心を持っている」関係が含まれている場合、新しいエッジはある顧客をある製品にリンクすることができる。その中で以前に当該顧客と当該製品との間の利用可能なリンクがない。
【0108】
予測されたエッジの確率は異なる場合がある。ステップ514では、予測モジュール326は、新しいエッジの確率または信頼に基づいて新しい予測されたエッジをランキングする。
【0109】
ステップ516では、予測モジュール326が前にランキングされた新しいエッジを選択し、予測された新しいエッジをナレッジグラフに追加する。前に存在しない新しいエッジを追加してナレッジグラフ332ををより完全になさせる。
【0110】
いくつかの点で、本開示は完善されたナレッジグラフを使用する方法を提供する。 いくつかの実施例では、この方法はクレジット評価方法である。この方法には、例えば人のクレジット履歴を使用してナレッジグラフを完善することを含むことができ、
図5Aに示すように、多数の人の各人はナレッジ グラフのノードであり、エッジは人々の間の社会的相互作用のつながりを表し、ノードのラベルはその人のクレジット類別 (低いクレジット、良好なクレジット、優良なクレジット) 、またはクレジットスコアであり、MAGNA のアプリケーションにより、ノードに割り当てられたクレジット類別は正確である。ある人からローン要求を受け取った後、その人のクレジットが良好または優良である場合、その人はローンを提供されるか、その人のクレジットスコアに基づいてローン限度額が決定される。いくつかの実施例では、この方法は製品推奨方法であり、推奨方法は、例えば顧客の購入履歴を使用してナレッジグラフを完善することを含むことができ、
図5Bに示されるように、多数の顧客と多数の製品の一つはナレッジグラフのノードであり、顧客ノードと製品ノードの間のエッジは、顧客が製品を購入したい可能性を表し、顧客とのエッジ関係が強い製品を選択し、顧客へ選んだ製品の情報を送信する。いくつかの実施例では、この方法は友人によって推奨され、推奨方法は、ソーシャルネットワーク情報を使用してナレッジグラフを完善し、
図5Bに示すように、多数のソーシャルネットワークのユーザの各ユーザは、ナレッジグラフ中の一つのノードであり、あるユーザノードと別のユーザノードの間のエッジは、ユーザが出会う機会があれば友達になる可能性を表すことと、オブジェクトユーザとのエッジ関係が強い候補ユーザを選択し、オブジェクトユーザに候補ユーザの情報を送信することと、を含むことができる。
【0111】
実験
2つのクラシカル的なタスクをMAGNA評価する。 (1)ノード分類の面で、平均5:7%の相対誤差の減少を達成した。(2)ナレッジグラフの完善の面で、1 メトリクスで 7:1% の相対的な改善を達成した。利用可能なベースライン論文で報告されている数値と比較した。
【0112】
タスク1:ノード分類。
データセット。 ノード分類には4つのベンチマークデータセットを使用する。(1)標準引用ネットワークベンチマークCora、Citeseer、およびPubmed;および(2)開放グラフベンチマーク(Open Graph Benchmark)からの 170K ノードおよび 1.2M エッジのベンチマークデータセット ogbn-arxiv。我々は、すべてのデータセットの標準データに従い分割する。
【0113】
ベースライン。 前面的な最も先進なGNN方法と比較した。この方法には、GCN、チェビシェフフィルターに基づくGCN、DualGCN、JKNet、LGCN、Diffusion-GCN、APPNP、Graph U-Nets(g-U-Nets)及びGATが含まれる。
【0114】
実験機器。データセット Cora、Citeseer、およびPubmedに対して、我々は、隠された寸法512と8のアテンションヘッドを持つ6つのMAGNAブロックを使用する。大規模なogbn-arxivデータセットに対して、隠された寸法128と8のアテンションヘッドを持つ2つのMAGNAブロックを使用する。
【0115】
結果。我々はベンチマークテストでノード分類精度を告した。結果は、
図6の表1と
図7の表2に総括されている。その中で、表1はCora、Citeseer、およびPubmedのノード分類精度を示している。表2は、OGB Arxivデータセットのノード分類精度を示している。MAGNAはすべての方法を改善し、すべてのデータセットで最新のテクノロジーを達成した。
【0116】
アブレーション研究。 表1では、MAGNA の各レイヤーから MAGNA の各コンポーネント (レイヤー正規化、アテンション拡散、および深度集約フィードフォワードレイヤー) を削除した後のモデルパフォーマンスを報告した。このモデルは、これらの3つのコンポーネントが含まれないGATと同等であることに注意すべきである。 拡散とレイヤ正規化が、すべてのデータセットのノード分類パフォーマンスを向上する上で重要な役割を果たすことを観察した。レイヤ正規化自体はGNNに利益をもたらしないが、アテンション拡散モジュールを組み合わせて使用してMAGNAのパフォーマンスを大幅に改善した。MAGNAは多くのアテンション値を計算するため、レイヤ正規化はトレーニングの安定性を確保するために不可欠である。 同時に、レイヤ正規化と深度集約フィードフォワードレイヤーも削除し、アテンション拡散層のみを保持する(表1のカウントダウンの第2行を参照)。 GATと比較して、アテンション拡散が各レイヤのマルチホップを許可するが、ノード分類のパフォーマンスを引き続き有利する。
【0117】
タスク2:ナレッジグラフを完善する
データセット。 標準ベンチマークのナレッジグラフWN18RRおよびFB15K-237でMAGNAを評価する。
【0118】
ベースライン。MAGNAを最も先進なベースラインと比較する。これには、(1)並進距離に基づくモデル:TransEとその最新の拡張RotatE、OTEおよびROTH;(2) セマンティックマッチングベースのモデル: ComplEx、QuatE、CoKE、convE、DistMult、および TuckER;(3)GNNベースのモデル:R-GCN、SACNおよびA2N。
【0119】
トレーニングプロセス。我々は、以前のKG埋め込みモデルで使用された標準トレーニングプロセスを使用する。我々はエンコーダデコーダーフレームワークに従う。 エンコーダーアプリケーションによって提案されたMAGNAモデルは、エンティティの埋め込みを計算する。次に、デコーダーはMAGNAから出力埋め込みを特定する場合に、リンクを予測し、前のモデルに既存のデコーダーを適用できる。MAGNAのパワーを表示するために、DistMultデコーダーを使用する。これは、追加のパラメーターを持たない単純なデコーダーである。
【0120】
評価。 ベンチマークテストの標準分割を使用し、ヘッド(テール)エンティティと関係タイプを特定する場合、テール(ヘッド)エンティティを予測する標準テストプログラムを使用する。以前の研究で使用された評価、つまり平均逆数順位(Mean Reciprocal Rank,MRR)、平均ランク(Mean Rank、MR)、およびKのヒット率(hit rate at K,H@K)に完全に従う。
【0121】
結果。
図8および表3に示すように、MAGNAは4つのインジケーターすべてで最新のナレッジグラフの完善を達成した。 最新の浅い埋め込み方法(quate)および深い埋め込み方法(SACN)と比較して、MAGNAはより有利である。 同じデコーダー(DistMult)を使用する場合、対応するDistMult埋め込みと比較して、MAGNAは独自の埋め込みを使用して大幅な改善を達成することに注意すべきである。
【0122】
MAGNAモデル分析
ここでは、(1)スペクトル分析の結果、(2)MAGNAパフォーマンスに対するハイパーパラメータの影響、および(3)アテンション分布を分析してMAGNAの利点を示した。
【0123】
【0124】
MAGNA深度モデル。Cora上にノード分類するために、GCN、GATと我々のMAGNAレイヤの数を3、6、12、18、および24に変更することで実験した。
図9Bの結果は、過平滑化問題ため、深 GCN と深GAT の両方で (残差接続が有しても)、パフォーマンスが低下する。対照的に、MAGNA モデルは 18 レイヤでも一貫して最良の結果を達成し、深度 MAGNA モデルにローバスト性と表現力を有させる。同じ受容野を持っているにもかかわらず、18 層を有する GAT は 3 層と K=6 ホップの MAGNA より優れているパフォーマンスを有していないことに注意されたい。
【0125】
Kとαの影響。
図9Cと
図9Dは、モデルのパフォーマンスに対するホップ数Kと伝送確率の影響を報告した。我々は、マルチホップネイバーの情報(k> 1)を考慮すると、パフォーマンスの大幅な改善が観察された。ただし、K≧6場合に、ホップ数Kを追加すると、収入が減少する。また、我々は、最適なKは、最大ノード平均の最短パス距離に関連していることがわる(たとえば、Coraの場合5.27)。 これにより、最適なKを選択することにガイダンスが提供される。 ここで、ノード平均の最短パスは、一つのノードから他のノードへのパス長の平均値を指する。
【0126】
また、より大きいα>0.25が場合、精度が大幅に低下することも観察した。 これは、αが小さいため、ローパス効果が増加するためである(
図9A)。 ただし、αが小さすぎると、モデルが大規模なグラフ構造のみにアテンションを払うだけで、周波数の高い情報を無視する可能性がある。
【0127】
【0128】
マルチホップアテンショングラフニューラルネットワーク(MAGNA)を提案する。このネットワークは、アテンション拡散、レイヤー正規化、および深度集約によりグラフアテンションと拡散技術のの利点を単一のレイヤに組み合わせている。MAGNAは、単一のレイヤにグラフ内の任意のノードベア間のコンテキストに関するアテンションを実現し、大きなスケール構造情報を強化し、より多くの丈量量を有するアテンション分布を学習した。MAGNAは、ノード分類とナレッジグラフの完善の標準タスクの観点から、最も先進なすべての方法を改善した。
【0129】
本開示の例示的な実施例の上記説明は、説明及び記述を目的として提示され、網羅的に、又は開示された形態そのものに限定することを意図していない。上記の教示によって多くの修正及び変形が行われ得る。
【0130】
実施例は、本開示の原理及びその実際な適用を説明するために選択及び説明され、それにより、他の当業者が、意図される特定の用途に適するように本開示及び様々な実施例を利用して、様々な修正を行うことができる。本開示の精神及び範囲から逸脱することなく、代替的な実施例が当業者にとっては明らかであろう。したがって、本開示の範囲は、前述の説明および本明細書に記載された例示的実施形態ではなく、添付の特許請求の範囲によって限定される。
【国際調査報告】