(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-03
(45)【発行日】2024-12-11
(54)【発明の名称】情報処理装置、情報処理方法及びプログラム
(51)【国際特許分類】
G06N 3/04 20230101AFI20241204BHJP
G06N 3/02 20060101ALI20241204BHJP
G06N 5/022 20230101ALI20241204BHJP
【FI】
G06N3/04 100
G06N3/02
G06N5/022
(21)【出願番号】P 2021174330
(22)【出願日】2021-10-26
【審査請求日】2024-02-01
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110004222
【氏名又は名称】弁理士法人創光国際特許事務所
(74)【代理人】
【識別番号】100166006
【氏名又は名称】泉 通博
(74)【代理人】
【識別番号】100154070
【氏名又は名称】久恒 京範
(74)【代理人】
【識別番号】100153280
【氏名又は名称】寺川 賢祐
(72)【発明者】
【氏名】春田 秀一郎
(72)【発明者】
【氏名】小西 達也
(72)【発明者】
【氏名】黒川 茂莉
(72)【発明者】
【氏名】水谷 優斗
(72)【発明者】
【氏名】塚常 健太
【審査官】宮司 卓佳
(56)【参考文献】
【文献】国際公開第2020/230658(WO,A1)
【文献】Dan Busbridge et al,Relational Graph Attention Networks,arXiv,Cornell University,2019年04月11日,p.1-p.21,https://arxiv.org/pdf/1904.05811/
【文献】Michael Schlichtkrull et al,Modeling Relational Data with Graph Convolutional Networks,arXiv,Cornell University,2017年10月26日,https://arxiv.org/pdf/1703.06103/
【文献】清水 良太郎,ファッション系ECサイトにおける多様な補助情報を有したグラフ構造の学習アルゴリズムに関する一考察,日本経営工学会 2021年 春季大会 予稿集,日本経営工学会,2021年05月16日,pp.334-335
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-3/04
G06N 5/022
(57)【特許請求の範囲】
【請求項1】
複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するデータ取得部と、
複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する特徴量分布算出部と、
前記複数のノードそれぞれに対し、前記特徴量分布算出部が算出した前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出する重要度算出部と、
前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、前記重要度算出部が算出した当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する更新部と、
前記更新部により更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力する出力部と、
を有する情報処理装置。
【請求項2】
前記複数のノードそれぞれに対して算出された前記周辺特徴量分布に対し、第1の重みパラメータを乗算することにより第1の線形変換を行い第1特徴量分布を算出するとともに、前記第1の重みパラメータとは異なる第2の重みパラメータを乗算することにより第2の線形変換を行い第2特徴量分布を算出する特徴量分布変換部をさらに有し、
前記重要度算出部は、算出された前記第1特徴量分布に含まれる前記ノードに対応する要素と、算出された前記第2特徴量分布に含まれる当該ノードに接続される前記隣接ノードに対応する複数の要素とに基づいて、当該ノードに対応する当該隣接ノードそれぞれの重要度を算出する、
請求項1に記載の情報処理装置。
【請求項3】
前記エッジ情報は、前記複数のノードのそれぞれに対し、自身への接続関係を示す情報を含んでおり、
前記特徴量分布算出部は、前記ノードに接続される隣接ノードに、当該ノード自身も含めて前記周辺特徴量分布を算出する、
請求項1又は2に記載の情報処理装置。
【請求項4】
前記更新部は、前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードそれぞれの特徴量と、前記隣接ノードそれぞれの重要度との加重平均を、当該ノードの特徴量とする、
請求項1から3のいずれか1項に記載の情報処理装置。
【請求項5】
コンピュータが実行する、
複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するステップと、
複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出するステップと、
前記複数のノードそれぞれに対し、算出された前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出するステップと、
前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、算出された当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新するステップと、
更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力するステップと、
を有する情報処理方法。
【請求項6】
コンピュータを、
複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するデータ取得部、
複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する特徴量分布算出部、
前記複数のノードそれぞれに対し、前記特徴量分布算出部が算出した前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出する重要度算出部、
前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、前記重要度算出部が算出した当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する更新部、及び、
前記更新部により更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力する出力部、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、グラフデータに含まれるノードの特徴を更新するための情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
従来、GNN(Graph Neural Networks)を用いて、グラフデータの特徴を解析する技術が知られている。例えば、非特許文献1には、グラフデータに含まれるノードのうち、着目したノードの特徴量を、当該ノードの周辺ノードからの特徴量伝播に基づいて更新することが開示されている。また、非特許文献2には、グラフデータに含まれるすべてのラベルの結合確率を算出し、当該結合確率に基づいて特徴量伝搬に重み付けを行うことにより、着目したノードの特徴量を更新することが開示されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】Tomas N. Kipf, Max Welling著“Semi-Supervised Classification with Graph Convolutional Networks”https://arxiv.org/abs/1609.02907
【文献】Jiong Zhu, Ryan A. Rossi, Anup Rao, Tung Mai, Nedim Lipka, Nesreen K. Ahmed, Danai Koutra著“Graph Neural Networks with Heterophily” https://arxiv.org/abs/2009.13566
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1に記載された技術は、着目したノードと周辺ノードとに一定の類似性がある場合に、更新後の特徴量の精度が高いものの、着目したノードと周辺ノードとの特徴量の分布が乖離している場合に、更新後の特徴量の精度が低くなるという問題がある。また、非特許文献2に記載された技術は、グラフデータに含まれるすべてのラベルの結合確率に基づいて着目したノードの特徴量を加工することから、着目したノードの周辺ノードのラベルの分布が、全てのラベルの結合確率から乖離している場合、着目したノードの更新後の特徴量の精度が低くなるという問題がある。
【0005】
そこで、本発明はこれらの点に鑑みてなされたものであり、ノードの特徴量を精度良く更新することができるようにすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の態様に係る情報処理装置は、複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するデータ取得部と、複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する特徴量分布算出部と、前記複数のノードそれぞれに対し、前記特徴量分布算出部が算出した前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出する重要度算出部と、前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、前記重要度算出部が算出した当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する更新部と、前記更新部により更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力する出力部と、を有する。
【0007】
前記情報処理装置は、前記複数のノードそれぞれに対して算出された前記周辺特徴量分布に対し、第1の重みパラメータを乗算することにより第1の線形変換を行い第1特徴量分布を算出するとともに、前記第1の重みパラメータとは異なる第2の重みパラメータを乗算することにより第2の線形変換を行い第2特徴量分布を算出する特徴量分布変換部をさらに有し、前記重要度算出部は、算出された前記第1特徴量分布に含まれる前記ノードに対応する要素と、算出された前記第2特徴量分布に含まれる当該ノードに接続される前記隣接ノードに対応する複数の要素とに基づいて、当該ノードに対応する当該隣接ノードそれぞれの重要度を算出してもよい。
【0008】
前記エッジ情報は、前記複数のノードのそれぞれに対し、自身への接続関係を示す情報を含んでおり、前記特徴量分布算出部は、前記ノードに接続される隣接ノードに、当該ノード自身も含めて前記周辺特徴量分布を算出してもよい。
【0009】
前記更新部は、前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードそれぞれの特徴量と、前記隣接ノードそれぞれの重要度との加重平均を、当該ノードの特徴量としてもよい。
【0010】
本発明の第2の態様に係る情報処理方法は、コンピュータが実行する、複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するステップと、複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出するステップと、前記複数のノードそれぞれに対し、算出された前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出するステップと、前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、算出された当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新するステップと、更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力するステップと、を有する。
【0011】
本発明の第3の態様に係るプログラムは、コンピュータを、複数のノードそれぞれの特徴量を示すノード情報と、前記複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得するデータ取得部、複数のノードそれぞれに対し、前記ノード情報及び前記エッジ情報に基づいて特定される前記ノードに接続される隣接ノードの特徴量と前記隣接ノードの数とに基づく、当該ノードに対応する前記隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する特徴量分布算出部、前記複数のノードそれぞれに対し、前記特徴量分布算出部が算出した前記複数のノードそれぞれの前記周辺特徴量分布のうちノードに接続される前記隣接ノードに対応する前記周辺特徴量分布に基づいて、当該ノードに対する当該隣接ノードそれぞれの重要度を算出する重要度算出部、前記複数のノードそれぞれに対し、前記ノードに接続される前記隣接ノードの特徴量と、前記重要度算出部が算出した当該ノードに対応する前記隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する更新部、及び、前記更新部により更新された前記複数のノードそれぞれの特徴量を示すノード情報を出力する出力部、として機能させる。
【発明の効果】
【0012】
本発明によれば、ノードの特徴量を精度良く更新することができるという効果を奏する。
【図面の簡単な説明】
【0013】
【
図1】本実施形態に係る情報処理装置の概要を説明する図である。
【
図2】本実施形態に係る情報処理装置の構成を示す図である。
【
図3】ノードと隣接ノードとの関係を説明する図である。
【
図4】本実施形態に係る情報処理装置における処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0014】
[情報処理装置の概要]
図1は、本実施形態に係る情報処理装置1の概要を説明する図である。情報処理装置1は、複数のノードそれぞれの特徴量を示すノード情報と、複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得し、当該グラフ形式データに含まれるノード情報が示す複数のノードそれぞれの特徴量を更新するためのコンピュータである。
【0015】
図1に示すように、情報処理装置1は、グラフ形式データを取得する(
図1における(1))。グラフ形式データは、例えば、SNS(Social Networking Service)に参加しているメンバーの構成、ベンゼン環の構造、分子構造、インターネットのWebサイトの構成、WebサイトのWEBページの構成、交通網、神経回路、3Dデータのポリゴン構造等を示すデータである。グラフ形式データが示すグラフは、n個のノードを有している。グラフ形式データは、n個のノードそれぞれの特徴量X
iを示すノード情報Xと、n個のノードにおけるノード間の接続関係を示すエッジ情報Eとを含む。
【0016】
情報処理装置1は、グラフ形式データが示す複数のノードそれぞれに対し、ノードに接続される隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する(
図1における(2))。情報処理装置1は、複数のノードそれぞれに対し、ノードに接続される隣接ノードの周辺特徴量分布に基づいて、当該ノードに対応する隣接ノードそれぞれの重要度を算出する(
図1における(3))。
【0017】
情報処理装置1は、複数のノードそれぞれに対し、ノードの特徴量と、ノードに接続される隣接ノードの特徴量と、当該ノードに対応して算出された隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する(
図1における(4))。情報処理装置1は、特徴量が更新されたノード情報と、エッジ情報とを含むグラフ形式データである更新済グラフ形式データを出力する(
図1における(5))。このようにすることで、情報処理装置1は、ノードと隣接ノードとに一定の類似性がない場合、又はノードがグラフ全体のラベルや特徴量の分布と乖離したラベルや特徴量を有している場合であっても、ノードの特徴量を精度良く更新することができる。
【0018】
[情報処理装置1の構成例]
続いて、情報処理装置1の構成について説明する。
図2は、本実施形態に係る情報処理装置1の構成を示す図である。情報処理装置1は、通信部11と、記憶部12と、制御部13とを有する。制御部13は、データ取得部131と、特徴量分布算出部132と、特徴量分布変換部133と、重要度算出部134と、ノード特徴量変換部135と、更新部136と、出力部137とを有する。
【0019】
通信部11は、インターネット等のネットワークを介して外部装置とデータを送受信するための通信インターフェースである。
記憶部12は、例えば、ROM(Read Only Memory)及びRAM(Random Access Memory)等である。記憶部12は、情報処理装置1を機能させるための各種プログラムを記憶する。例えば、記憶部12は、情報処理装置1の制御部13を、データ取得部131、特徴量分布算出部132、特徴量分布変換部133、重要度算出部134、ノード特徴量変換部135、更新部136、及び出力部137として機能させるプログラムを記憶する。
【0020】
制御部13は、例えばCPU(Central Processing Unit)である。制御部13は、記憶部12に記憶されている各種プログラムを実行することにより、情報処理装置1に係る機能を制御する。制御部13は、記憶部12に記憶されているプログラムを実行することにより、データ取得部131、特徴量分布算出部132、特徴量分布変換部133、重要度算出部134、ノード特徴量変換部135、更新部136、及び出力部137として機能する。
【0021】
データ取得部131、特徴量分布算出部132、特徴量分布変換部133、重要度算出部134、ノード特徴量変換部135、更新部136、及び出力部137は、1つの特徴量更新モデルを構成する。本実施形態において、特徴量更新モデルは、複数層重ねられており、層数がLnであるものとする。第L層に対して入力されたグラフ形式データは、ノードの特徴量が更新された後、第(L+1)層の特徴量更新モデルに入力されるものとする。以下の説明において、第L層目の特徴量更新モデルに対応するデータ取得部131、特徴量分布算出部132、特徴量分布変換部133、重要度算出部134、ノード特徴量変換部135、更新部136、及び出力部137について説明を行う。
【0022】
データ取得部131は、複数のノードそれぞれの特徴量を示すノード情報と、複数のノードそれぞれの接続関係を示すエッジ情報とを含むグラフ形式データを取得する。具体的には、Lが0であり、特徴量更新モデルが最上位層の特徴量更新モデルである場合、データ取得部131は、通信部11を介して、情報処理装置1に接続されている端末(不図示)からグラフ形式データを取得する。また、Lが0よりも大きい場合、データ取得部131は、第(L-1)層の出力部137から、グラフ形式データを取得する。
【0023】
L層目において入力されるグラフ形式データは、n個のノードそれぞれの特徴量を示すノード情報X(L)と、n個のノードそれぞれの接続関係を示すエッジ情報Eとを含んでいる。以下の説明において、L層目におけるノード情報X(L)が示すノードiの特徴量をXi
(L)とする。
【0024】
特徴量分布算出部132は、複数のノードそれぞれに対し、ノード情報及びエッジ情報に基づいて特定されるノードに接続される隣接ノードの特徴量と隣接ノードの数とに基づく、当該ノードに対応する隣接ノードの特徴量の分布を示す周辺特徴量分布を算出する。
【0025】
図3は、ノードと隣接ノードとの関係を説明する図である。
図3において円はノード、円同士を結ぶ線はエッジを示している。また、円の内部に「i」と付されているノードは、ノードiを示しており、その他のノードはノードiに隣接する隣接ノードを示している。まず、特徴量分布算出部132は、エッジ情報に基づいて、ノードiの隣接ノードを特定する。ここで、エッジ情報は、複数のノードのそれぞれに対し、自身への接続関係を示す情報を含んでおり、ノードiの隣接ノードには、ノードi自身も含まれている。
【0026】
図3に示す例では、特徴量分布算出部132は、ノードiの隣接ノードとして、ノードi自身と、3つのノードとを特定する。
図3に示す例では、ノードiとは異なる3つの隣接ノードそれぞれに対し、インデックスとして0~2を付している。
【0027】
特徴量分布算出部132は、ノードに接続される隣接ノードに当該ノード自身も含め、隣接ノードの特徴量に基づいて周辺特徴量分布を算出する。特徴量分布算出部132は、以下の式(1)に示すようにノードiに接続される全ての隣接ノードの特徴量を合計し、隣接ノードの数で除算することにより、ノードiに対応する周辺特徴量分布Hi
(L)を算出する。
【0028】
【数1】
ここで、deg(i)は、ノードiに接続される隣接ノードの数であり、N
iは、ノードiの隣接ノードの集合を示す。なお、特徴量分布算出部132は、複数のノードそれぞれで算出される周辺特徴量分布の正規化を行うために、隣接ノードの特徴量の合計を隣接ノードの数で除算したが、これに限らない。特徴量分布算出部132は、他の方法により、複数のノードそれぞれで算出される周辺特徴量分布の正規化を行ってもよい。
【0029】
特徴量分布変換部133は、特徴量分布算出部132が算出した複数のノードそれぞれの周辺特徴量分布の線形変換を行う。具体的には、特徴量分布変換部133は、複数のノードそれぞれに対して算出された周辺特徴量分布に対し、第1の重みパラメータを乗算することにより第1の線形変換を行い、第1特徴量分布を算出するとともに、第1の重みパラメータとは異なる第2の重みパラメータを乗算することにより第2の線形変換を行い、第2特徴量分布を算出する。
【0030】
ここで、第1の重みパラメータ及び第2の重みパラメータは、グラフニューラルネットワークにおいて学習可能な重み行列であり、周辺特徴量分布に対して表現力を持たせるために用いられる。第1の重みパラメータをWq、第2の重みパラメータをWk、第1特徴量分布をQ、第2特徴量分布をKとすると、第1特徴量分布Q、第2特徴量分布Kは、以下の式(2)、(3)に示す特徴行列により表される。ここで、式(2)、(3)における記号Rn×dは、ノードの数がn個、特徴量分布の次元がdであることを示している。
【0031】
【0032】
重要度算出部134は、複数のノードそれぞれに対応する隣接ノードそれぞれの重要度を算出する。重要度算出部134は、複数のノードそれぞれに対し、特徴量分布算出部132が算出した複数のノードそれぞれの周辺特徴量分布のうち、ノードに対応する周辺特徴量分布と、当該ノードに接続される隣接ノードに対応する周辺特徴量分布とに基づいて、当該ノードに対応する当該隣接ノードそれぞれの重要度を算出する。
【0033】
具体的には、重要度算出部134は、特徴量分布変換部133により算出された第1特徴量分布Qと、第2特徴量分布Kとに対して、アテンション機構を用いることにより、複数のノードそれぞれに対応する隣接ノードそれぞれの重要度を算出する。
【0034】
重要度算出部134は、第1特徴量分布Qに含まれるノードiに対応する要素を示す行列Q
iと、第2特徴量分布Kに含まれる当該ノードiに接続される隣接ノードjに対応する複数の要素を示す行列K
Niとを抽出する。行列K
Niは、ノードiの隣接ノードjに含まれるノードのインデックスをm(1≦m≦N
i)とすると、以下の式(4)により示される。
【数4】
【0035】
重要度算出部134は、以下の式(5)に示すように、第1特徴量分布Qに含まれるノードiに対応する要素を示す行列Q
iと、第2特徴量分布Kに含まれる当該ノードiに接続される隣接ノードに対応する複数の要素を示す行列K
Niとの乗算を行い、softmax関数を用いて、重要度を示す複数の要素の合計が1となるように、ノードiに対応する隣接ノードそれぞれの重要度α
iを算出する。ここで、行列K
T
Niは、行列K
Niの転置行列である。
【数5】
【0036】
式(5)の演算により、重要度αiに含まれる一以上の隣接ノードそれぞれに対応する重要度は、隣接ノードに対応する特徴量分布と、ノードiに対応する特徴量分布とが類似すればするほど高くなる。これにより、一以上の隣接ノードのうち、ノードiと類似する特徴量分布を有する隣接ノードの重要度を高くすることができる。
【0037】
ノード特徴量変換部135は、データ取得部131が取得したグラフ形式データが示す複数のノードそれぞれの特徴量に対し、第3の重みパラメータを乗算することにより線形変換を行い、変換後特徴量を算出する。ここで、第3の重みパラメータは、グラフニューラルネットワークにおいて学習可能な重み行列であり、特徴量に対して表現力を持たせるために用いられる。第3の重みパラメータをW
vとすると、変換後特徴量Vは、以下の式(6)に示す特徴行列により表される。
【数6】
【0038】
更新部136は、複数のノードそれぞれに対し、ノードに接続される隣接ノードの特徴量と、重要度算出部134が算出した当該ノードに対応する隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する。更新部136は、複数のノードそれぞれに対し、ノードに接続される隣接ノードそれぞれの特徴量と、隣接ノードそれぞれの重要度との加重平均を、当該ノードの特徴量とする。
【0039】
具体的には、更新部136は、ノード特徴量変換部135により変換された変換後特徴量Vから、複数のノードiそれぞれに対応する隣接ノードの変換後特徴量を示す行列V
Niを抽出する。行列V
Niは、ノードiの隣接ノードに含まれるノードのインデックスをj
mとすると、以下の式(7)により表される。
【数7】
【0040】
更新部136は、以下の式(8)に示すように、ノードiに対して抽出した行列V
Niと、重要度算出部134により算出された重要度α
iとを乗算した結果を、ノードiの更新後の特徴量とする。第L層における更新後のノードiの特徴量は、第(L+1)層の特徴量更新モデルに入力されることから、更新後のノードiの特徴量をX
i
(L+1)と表す。
【数8】
【0041】
更新部136は、全てのノードiに対して、式(8)に基づいて更新後の特徴量を算出する。
出力部137は、更新部136により更新された複数のノードそれぞれの特徴量を示すノード情報を出力する。例えば、出力部137は、特徴量更新モデルが最下層の特徴量更新モデルではない場合、エッジ情報Eと、特徴量が更新されたノード情報X(L)とを含むグラフ形式データを第(L+1)層の特徴量更新モデルに出力する。また、出力部137は、特徴量更新モデルが最下層の特徴量更新モデルである場合、通信部11を介して、情報処理装置1に接続されている端末にエッジ情報と、特徴量が更新されたノード情報X(L)とを含むグラフ形式データを出力する。なお、出力部137は、グラフ形式データを出力したが、これに限らず、更新部136により特徴量が更新されたノード情報X(L)のみを出力してもよい。
【0042】
[動作フロー]
図4は、本実施形態に係る情報処理装置1における処理の流れの一例を示すフローチャートである。
まず、データ取得部131は、グラフ形式データを取得する(S1)。
続いて、特徴量分布算出部132は、未選択の1つのノードを選択し(S2)、選択したノードに対応する周辺特徴量分布を算出する(S3)。
【0043】
特徴量分布算出部132は、全ノードで周辺特徴量分布を算出したか否かを判定する(S4)。特徴量分布算出部132は、全ノードで周辺特徴量分布を算出したと判定すると、S5に処理を移し、全ノードで周辺特徴量分布を算出していないと判定すると、S2に処理を移す。
【0044】
特徴量分布変換部133は、算出された複数のノードそれぞれの周辺特徴量分布の線形変換を行うことにより、第1特徴量分布及び第2特徴量分布を算出する(S5)。
重要度算出部134は、未選択の1つのノードを選択する(S6)。重要度算出部134は、選択したノードに対応する第1特徴量分布と第2特徴量分布とに対し、アテンション機構を用いることにより、選択したノードに対応する一以上の隣接ノードそれぞれの重要度を算出する(S7)。
【0045】
重要度算出部134は、全ノードのそれぞれに対応して隣接ノードの重要度を算出したか否かを判定する(S8)。重要度算出部134は、全ノードのそれぞれに対応して隣接ノードの重要度を算出したと判定するとS9に処理を移し、全ノードのそれぞれに対応して隣接ノードの重要度を算出していないと判定すると、S6に処理を移す。
【0046】
ノード特徴量変換部135は、取得したグラフ形式データが示す複数のノードの特徴量の線形変換を行うことにより、変換後特徴量を算出する(S9)。
更新部136は、未選択の1つのノードを選択する(S10)。更新部136は、選択したノードに接続される一以上の隣接ノードの変換後特徴量と、当該一以上の隣接ノードそれぞれの重要度とに基づいて、当該ノードの特徴量を更新する(S11)。
【0047】
更新部136は、全ノードの特徴量を更新したか否かを判定する(S12)。更新部136は、全ノードの特徴量を更新したと判定すると、S13に処理を移し、全ノードの特徴量を更新していないと判定すると、S10に処理を移す。
出力部137は、エッジ情報と、全ノードの特徴量が更新されたノード情報と含む更新後のグラフ形式データを出力する(S13)。
【0048】
[本実施形態における効果]
以上の通り、本実施形態に係る情報処理装置1は、複数のノードそれぞれに対し、ノードに接続される隣接ノードの特徴量と隣接ノードの数とに基づいて、隣接ノードの特徴量の分布を示す周辺特徴量分布を算出し、複数のノードそれぞれに対し、隣接ノードに対応する周辺特徴量分布に基づいて、ノードに対する隣接ノードそれぞれの重要度を算出し、複数のノードそれぞれに対し、隣接ノードの特徴量と、当該隣接ノードそれぞれの重要度とに基づいて、ノードの特徴量を更新する。このようにすることで、情報処理装置1は、ノードと隣接ノードとに一定の類似性がない場合、又はノードがグラフ全体のラベルや特徴量の分布と乖離した特徴量を有している場合であっても、特徴量を精度良く更新することができる。
【0049】
例えば、グラフ形式データが、SNSに参加しているメンバーの構成を示すものである場合、情報処理装置1は、メンバーの特徴を示す特徴量を、当該メンバーと関係がある他のメンバー(エッジ情報により接続関係にある他のメンバー)のうち、周辺特徴量分布が近い他のメンバーの特徴量が強く反映されたものに更新することができる。
【0050】
なお、本発明により、国連が主導する持続可能な開発目標(SDGs)の目標9「産業と技術革新の基盤をつくろう」に貢献することが可能となる。
【0051】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、上述の実施形態では、特徴量分布変換部133は、複数のノードそれぞれに対して算出された周辺特徴量分布に対し、第1の重みパラメータを乗算することにより第1特徴量分布を算出するとともに、第2の重みパラメータを乗算することにより第2特徴量分布を算出したが、これに限らない。特徴量分布変換部133は、第1特徴量分布と、第2特徴量分布とを同一のものとしてもよい。そして、重要度算出部134は、これらの第1特徴量分布と、第2特徴量分布とに基づいて、複数のノードそれぞれに対応する隣接ノードの重要度を算出してもよい。
【0052】
また、例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を併せ持つ。
【符号の説明】
【0053】
1 情報処理装置
11 通信部
12 記憶部
13 制御部
131 データ取得部
132 特徴量分布算出部
133 特徴量分布変換部
134 重要度算出部
135 ノード特徴量変換部
136 更新部
137 出力部