(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023132065
(43)【公開日】2023-09-22
(54)【発明の名称】情報処理プログラム,情報処理方法及び情報処理装置
(51)【国際特許分類】
G06F 40/56 20200101AFI20230914BHJP
【FI】
G06F40/56
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022037171
(22)【出願日】2022-03-10
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100092978
【弁理士】
【氏名又は名称】真田 有
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】瀧下 祥
(72)【発明者】
【氏名】森田 一
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091CA21
5B091EA01
(57)【要約】 (修正有)
【課題】それぞれに重みが付与された複数のノードの関係性をエッジとして規定したグラフノードデータに基づき、重みが反映された自然文を生成可能な情報処理プログラム、情報処理方法及び情報処理装置を提供する。
【解決手段】情報処理プログラムは、それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータ11aに基づき、複数の第1ノードの関係性を複数の第2ノードとし、複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータ26を生成し、第2グラフノードデータ26の複数の第2ノードから取得した第1グラフベクトルと、第2グラフノードデータ26の複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する処理をコンピュータに実行させる。
【選択図】
図8
【特許請求の範囲】
【請求項1】
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
処理をコンピュータに実行させる、情報処理プログラム。
【請求項2】
前記第2グラフベクトルは、前記第2グラフノードデータの複数の第2ノードに基づくノードベクトルに前記重みを乗算して得られる、
請求項1に記載の情報処理プログラム。
【請求項3】
前記単語生成を実行する処理は、前記第1グラフベクトルを、前記単語生成を行なう機械学習モデルの第1注意機構に入力して得られる第1ベクトルと、前記第2グラフベクトルを、前記機械学習モデルの第2注意機構に入力して得られる第2ベクトルと、に基づいて、前記単語生成を実行する処理を含む、
請求項1又は請求項2に記載の情報処理プログラム。
【請求項4】
前記単語生成を実行する処理は、前記第1ベクトルと前記第2ベクトルとを結合した結合ベクトルと、前記第1グラフノードデータの入力後からこれまでに実行された前記単語生成によって生成された文脈ベクトルとに基づき、前記単語生成を実行する処理を含む、
請求項3に記載の情報処理プログラム。
【請求項5】
前記コンピュータに、
訓練用の第2グラフノードデータの複数の第2ノードから取得した訓練用の第1グラフベクトルを用いて、前記第1注意機構のパラメータを更新し、
前記訓練用の第2グラフノードデータの前記複数の第2ノードと重みが規定されたエッジとから取得した訓練用の第2グラフベクトルを用いて、前記第2注意機構のパラメータを更新する、
処理を実行させる、請求項3又は請求項4に記載の情報処理プログラム。
【請求項6】
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
処理をコンピュータが実行する、情報処理方法。
【請求項7】
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
制御部を備える、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム,情報処理方法及び情報処理装置に関する。
【背景技術】
【0002】
複数のノードの関係性をエッジとして規定したグラフノードデータに基づき、グラフノードデータの内容に関する複数の単語、例えば自然文の生成を実行するAI(Artificial Intelligence)タスクが知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2019/146084号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述したAIタスクでは、複数のノードのそれぞれに重みが付与された重み付きグラフノードデータを処理対象とすることは想定されていない。
【0005】
例えば、上述したAIタスクにおいて重み付きグラフノードデータに基づき自然文が生成される場合、各ノードの重みが無視又は削除されるため、自然文に各ノードの重みが反映されたものとならない場合がある。
【0006】
1つの側面では、本発明は、それぞれに重みが付与された複数のノードの関係性をエッジとして規定したグラフノードデータに基づき、重みが反映された自然文を生成することを目的の1つとする。
【課題を解決するための手段】
【0007】
1つの側面では、情報処理プログラムは、コンピュータに以下の処理を実行させてよい。前記処理は、それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成する処理を含んでよい。また、前記処理は、前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する処理を含んでよい。
【発明の効果】
【0008】
1つの側面では、本発明は、それぞれに重みが付与された複数のノードの関係性をエッジとして規定したグラフノードデータに基づき、重みが反映された自然文を生成することができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る生成装置の機能を実現するコンピュータのハードウェア(HW)構成例を示すブロック図である。
【
図2】一実施形態に係る生成装置のソフトウェア構成例を示すブロック図である。
【
図3】関係グラフと自然文との関係の一例を説明するための図である。
【
図4】一実施形態に係る生成装置による機械学習処理の動作例を説明するためのフローチャートである。
【
図5】生成装置による機械学習処理の動作例を簡単に説明するための図である。
【
図6】一実施形態に係る生成装置による推論処理の動作例を説明するためのフローチャートである。
【
図7】生成装置による推論処理の動作例を簡単に説明するための図である。
【
図8】グラフ変換処理の一例を説明するための図である。
【
図9】グラフ変換処理の他の例を説明するための図である。
【
図10】ベクトル生成処理の一例を説明するための図である。
【
図11】重み考慮ベクトル生成処理の一例を説明するための図である。
【
図12】単語生成部による単語生成処理の一例を説明するための図である。
【
図13】関係グラフに基づく単語生成の処理結果の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形又は技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の説明で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【0011】
〔A〕構成例
以下、一実施形態に係る生成装置1(
図2参照)の構成例を説明する。
【0012】
〔A-1〕ハードウェア構成例
一実施形態に係る生成装置1を実現する装置は、仮想サーバ(VM;Virtual Machine)であってもよいし、物理サーバであってもよい。また、生成装置1の機能は、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、生成装置1の機能のうちの少なくとも一部は、クラウド環境により提供されるHWリソース及びネットワーク(NW)リソースを用いて実現されてもよい。
【0013】
図1は、一実施形態に係る生成装置1の機能を実現するコンピュータ10のHW構成例を示すブロック図である。生成装置1の機能を実現するHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが
図1に例示するHW構成を備えてよい。
【0014】
図1に示すように、コンピュータ10は、HW構成として、例示的に、プロセッサ10a、メモリ10b、記憶部10c、IF(Interface)部10d、I/O(Input / Output)部10e、及び読取部10fを備えてよい。
【0015】
プロセッサ10aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ10aは、コンピュータ10内の各ブロックとバス10iで相互に通信可能に接続されてよい。なお、プロセッサ10aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
【0016】
プロセッサ10aとしては、例えば、CPU、MPU、GPU、APU、DSP、ASIC、FPGA等の集積回路(IC;Integrated Circuit)が挙げられる。なお、プロセッサ10aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。MPUはMicro Processing Unitの略称である。GPUはGraphics Processing Unitの略称であり、APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
【0017】
例えば、プロセッサ10aは、生成装置1における種々の制御を実行するCPU等の処理装置と、生成装置1における機械学習処理を実行するアクセラレータとの組み合わせであってもよい。アクセラレータとしては、例えば、上述したGPU、APU、DSP、ASIC又はFPGA等が挙げられる。
【0018】
メモリ10bは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ10bとしては、例えばDRAM等の揮発性メモリ、並びに、NVDIMM、PM(Persistent Memory)等の不揮発性メモリ、の一方又は双方が挙げられる。
【0019】
記憶部10cは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部10cとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
【0020】
また、記憶部10cは、コンピュータ10の各種機能の全部若しくは一部を実現するプログラム10g(情報処理プログラム)を格納してよい。例えば、プロセッサ10aは、記憶部10cに格納されたプログラム10gをメモリ10bに展開して実行することにより、後述する生成装置1(例えば制御部17)としての機能を実現できる。
【0021】
IF部10dは、ネットワークの一方又は双方との間の接続及び通信の制御等を行なう通信IFの一例である。例えば、IF部10dは、イーサネット(登録商標)等のLAN(Local Area Network)、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線及び有線の一方又は双方の通信方式に対応してよい。例えば、生成装置1は、IF部10d及び図示しないネットワークを介して、他の装置、例えば生成装置1に関係グラフ及び自然文を提供する装置、生成装置1から推論処理の処理結果を受信する装置等と相互に通信可能に接続されてよい。また、例えば、プログラム10gは、当該通信IFを介して、ネットワークからコンピュータ10にダウンロードされ、記憶部10cに格納されてもよい。
【0022】
I/O部10eは、入力装置、及び、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等が挙げられる。
【0023】
読取部10fは、記録媒体10hに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部10fは、記録媒体10hを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部10fとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体10hにはプログラム10gが格納されてもよく、読取部10fが記録媒体10hからプログラム10gを読み出して記憶部10cに格納してもよい。
【0024】
記録媒体10hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
【0025】
上述したコンピュータ10のHW構成は例示である。従って、コンピュータ10内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。例えば、I/O部10e及び読取部10fの少なくとも一方は、省略されてもよい。
【0026】
〔A-2〕ソフトウェア構成例
図2は、一実施形態に係る生成装置1のソフトウェア構成例を示すブロック図である。生成装置1は、情報処理装置の一例であり、重み付きの関係グラフに基づき自然文を生成する生成処理を実行する。
【0027】
図2に示すように、生成装置1は、ソフトウェア(機能)構成として、例示的に、メモリ部11、取得部12、グラフ変換部13、ベクトル生成部14、単語生成部15、及び、出力部16を備えてよい。取得部12、グラフ変換部13、ベクトル生成部14、単語生成部15、及び、出力部16は、制御部17の一例である。
【0028】
メモリ部11は、記憶領域の一例であり、生成装置1が利用する種々のデータを記憶する。
図2に示すように、メモリ部11は、例示的に、関係グラフ11a、自然文11b、及び、単語11cを記憶可能であってよい。なお、メモリ部11は、後述する生成装置1による処理の過程で生成される種々の情報、例えばグラフ、ベクトル、機械学習モデルのモデルデータ、パラメータ等を記憶可能であってよい。
【0029】
取得部12は、関係グラフ11a及び自然文11bを取得し、メモリ部11に格納する。例えば、取得部12は、関係グラフ11a及び自然文11bの一方又は双方を、生成装置1で生成してもよいし、図示しないネットワークを介して生成装置1の外部のコンピュータから受信してもよい。
【0030】
関係グラフ11aは、それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータの一例である。
【0031】
自然文11bは、関係グラフ11aに含まれるノードの内容に関する複数の単語の一例であり、関係グラフ11aに含まれる複数のノードのそれぞれに付与された重みが反映された文である。
【0032】
例えば、取得部12は、機械学習フェーズにおいて、関係グラフ11a及び自然文11bを訓練データ(教師データ)として取得してよい。また、取得部12は、推論フェーズにおいて、推論処理の対象となる関係グラフ11aを取得してよい。
【0033】
図3は、関係グラフ11aと自然文11bとの関係の一例を説明するための図である。
図3の符号A1は、入力グラフとなる関係グラフ11aを示し、符号A2は、関係グラフ11aに基づき重みを反映して生成された出力文(正解ラベル)となる自然文11bを示す。
図3の例では、関係グラフ11aが遺伝子情報グラフである場合を示す。
【0034】
関係グラフ11aは、符号A11~A15で示す複数のノードを含み、ノード間の関係性をエッジによって接続したグラフである。また、関係グラフ11aは、ノードに付与された重み(四角枠内の数字参照)を含む。重みは、ノード及びエッジに対応付けられる情報であり、一例として、或るターゲットのノード(ノードA11)に対する他のノード(ノードA12~A15)の重要度を示す。
【0035】
図3の例では、ノードA12「変異タイプB」が、エッジ「変異タイプ」でノードA11「変異A」(ターゲット)に接続されている。また、重み(重要度)「0.5」が、ノードA12「変異タイプB」及びそのエッジ「変異タイプ」に付与されている。この場合、関係グラフ11aにおけるノードA11~A12は、「変異Aは変異タイプBの変異である」(重要度:「0.5」)ことを示す。なお、ターゲットとなるノードA11に多段に接続されたノード(例えばノードA15;A11←A14←A15)の重みには、ターゲットに至るまでの各ノード(例えばノードA14)の重みが乗算等により加重されてよい。
【0036】
自然文11bは、
図3の符号A2に示すように、関係グラフ11a内の重みの大きい関係性ほど文の先頭に位置するように記載された、複数のノードの内容に関する文である。
【0037】
生成装置1は、機械学習フェーズにおける後述する処理により、関係グラフ11aを入力とした場合の出力(複数の単語)が自然文11bに近づくように、機械学習モデルの訓練を実行する。
【0038】
また、生成装置1は、推論フェーズにおける後述する処理により、関係グラフ11aを訓練済みの機械学習モデルの入力とした場合の出力である複数の単語11cを出力する。
【0039】
図2の説明に戻り、グラフ変換部13は、入力される重み付きの有向グラフである関係グラフ11aを、機械学習モデルに入力するための重み付きの関係グラフに変換する。
【0040】
ベクトル生成部14は、グラフ変換部13による変換後の関係グラフに基づき、重みを考慮しないグラフベクトルと、重みを考慮した重み考慮グラフベクトルとを生成する。ベクトル生成部14は、例えば、機械学習フェーズにおいて、これらのベクトルを生成するための機械学習モデルの機械学習を実行してよい。ベクトルを生成するための機械学習モデルとしては、例えば、GCN-LSTM(Graph Convolutional Networks - Long Short Term Memory)等のニューラルネットワークが挙げられる。
【0041】
単語生成部15は、グラフベクトルと、重み考慮グラフベクトルとに基づき、単語11cの生成処理を実行する。単語生成部15は、例えば、機械学習フェーズにおいて、複数の単語(例えば自然文)を生成するための機械学習モデルの機械学習を実行する。複数の単語(例えば自然文)を生成するための機械学習モデルとしては、例えば、Att(注意機構;Attenuation Mechanism)を含むLSTM等のニューラルネットワークが挙げられる。注意機構は、機械学習により、グラフエッジ等の重要部に重み付けを行なう機構であり、一実施形態では、入力側の隠れ層を重み付けして、重要な単語を考慮しながら単語生成を行なう。
【0042】
例えば、単語生成部15は、グラフベクトルと、重み考慮グラフベクトルとのそれぞれを別々の注意機構に入力することで、エッジの重みを考慮した隠れ層を通常の隠れ層と並列に使用する。これにより、単語生成部15は、注意機構から得られるグラフベクトルの重要部分に加えて、関係グラフ11aに付加された重みを、単語生成に考慮することが可能になる。
【0043】
出力部16は、推論フェーズにおいて、単語生成部15から出力される複数の単語11cを推論結果として出力する。
【0044】
〔B〕動作例
次に、一実施形態に係る生成装置1の動作例を説明する。
【0045】
(機械学習フェーズ)
図4は、一実施形態に係る生成装置1による機械学習処理の動作例を説明するためのフローチャートであり、
図5は、生成装置1による機械学習処理の動作例を簡単に説明するための図である。
【0046】
図4に示すように、生成装置1の取得部12は、機械学習フェーズにおいて、教師データとして関係グラフ11a及び自然文11bの組を取得する(ステップS1)。
【0047】
図5に示すように、生成装置1は、教師データをエンコーダ部2に入力する(
図5の処理P1)。エンコーダ部2は、グラフ変換部13及びベクトル生成部14による、グラフの変換及びグラフのベクトル化を実行する機能である。
【0048】
エンコーダ部2のグラフ変換部13は、関係グラフ11aをベクトル処理用のグラフに変換する(ステップS2)。
【0049】
エンコーダ部2のベクトル生成部14は、変換後のグラフに基づき、ノードのノードベクトル21を生成する(ステップS3;
図5の処理P21)。ノードベクトル21は、重み22の情報を保持するノードベクトルである。
【0050】
また、ベクトル生成部14は、ノードベクトル21に重み22(
図5参照)を数値的に乗算することで、重み22を考慮した重み考慮ベクトル23を生成する(ステップS4;処理P22)。
【0051】
ベクトル生成部14は、ノードベクトル21及び重み考慮ベクトル23からそれぞれのグラフベクトルを生成する(ステップS5)。
【0052】
例えば、ベクトル生成部14は、ノードベクトル21からエンティティ及び関係ノードを含むグラフベクトル24を生成する(処理P23)。
【0053】
また、ベクトル生成部14は、重み考慮ベクトル23からエンティティ及び関係ノードを含む重み考慮グラフベクトル25を生成する(処理P24)。
【0054】
エンコーダ部2は、グラフベクトル24と、重み考慮グラフベクトル25とをデコーダ部3に入力する。デコーダ部3は、単語生成部15による、グラフベクトル24と、重み考慮グラフベクトル25とを使用した単語生成処理を実行する機能である。
【0055】
デコーダ部3の単語生成部15は、グラフベクトル24とAttのノードベクトル用のAW(Attenuation Weight)31とに基づき、グラフベクトル(Att)を生成する(ステップS6;処理P31)。
【0056】
また、単語生成部15は、重み考慮グラフベクトル25とAttの重み考慮ベクトル用のAW32とに基づき、重み考慮グラフベクトル(Att)を生成する(ステップS7;処理P32)。
【0057】
単語生成部15は、処理P31及びP32で生成したグラフベクトル(Att)と重み考慮グラフベクトル(Att)とを結合した結合グラフベクトルを生成する(ステップS8;処理P33)。
【0058】
単語生成部15は、これまでに生成した文脈ベクトルと、ステップS8(処理P33)で生成した結合グラフベクトルとに基づき、新たな文脈ベクトルを生成する(ステップS9;処理P34)。
【0059】
単語生成部15は、生成した文脈ベクトルから、確率に基づき単語11cを予測する(ステップS10;処理P35)。
【0060】
単語生成部15は、ステップS10(処理P35)に基づき、複数の単語(例えば自然文)を生成するための機械学習モデルのパラメータを更新する(ステップS11)。例えば、単語生成部15は、新たな文脈ベクトルを生成し、単語11cを予測する処理のパラメータ、並びに、グラフベクトル(Att)及び重み考慮グラフベクトル(Att)を生成する処理のパラメータを更新してよい。
【0061】
単語生成部15は、機械学習処理を終了するか否かを判定し(ステップS12)、機械学習処理を終了する場合(ステップS12でYES)、処理が終了する。
【0062】
機械学習処理を終了しない場合(ステップS12でNO)、処理がステップS6に移行する。例えば、単語生成部15は、処理P35で予測した単語11cを、処理P31、P32及び処理P34にそれぞれ入力する。
【0063】
このように、単語生成部15は、処理P31~P35の処理を単語ごとに繰り返し、生成される複数の単語が自然文11bに近づくように、機械学習モデルのパラメータを更新することで、機械学習処理を実行する。
【0064】
(推論フェーズ)
図6は、一実施形態に係る生成装置1による推論処理の動作例を説明するためのフローチャートであり、
図7は、生成装置1による推論処理の動作例を簡単に説明するための図である。
【0065】
図6に示すように、生成装置1の取得部12は、推論フェーズにおいて、推論処理の入力データ(関係グラフ11a)を取得する(ステップS21)。
【0066】
図7に示すように、生成装置1は、入力データをエンコーダ部2に入力する(
図5の処理P41)。
【0067】
ステップS2~S5(処理P21~P24)では、エンコーダ部2は、訓練済みの機械学習モデルによって、関係グラフ11aからグラフベクトル24及び重み考慮グラフベクトル25を取得する。なお、推論フェーズで使用される関係グラフ11aは、機械学習フェーズで使用される関係グラフ11aとは内容が異なってもよい。
【0068】
ステップS6~S10(処理P31~P35)では、デコーダ部3は、訓練済みの機械学習モデル及びAW31及び32によって、グラフベクトル24及び重み考慮グラフベクトル25から複数の単語11cを取得する。
【0069】
ステップS10の後、単語生成部15は、推論処理を終了するか否かを判定する(ステップS22)。推論処理を終了する場合(ステップS22でYES)、生成装置1(出力部16)は、生成した複数の単語11cを推論結果として出力し(ステップS23;処理P42)、処理が終了する。
【0070】
推論処理を終了しない場合(ステップS22でNO)、処理がステップS6に移行する。例えば、単語生成部15は、処理P35で予測した単語11cを、処理P31、P32及び処理P34にそれぞれ入力する。
【0071】
〔C〕各処理の説明
次に、
図4及び
図6に示す各処理の一例を説明する。
【0072】
〔C-1〕グラフ変換処理
図8は、グラフ変換処理(
図4及び
図6のステップS2)の一例を説明するための図である。
図8に示すように、グラフ変換部13は、関係グラフ11a(符号B1参照)のエッジをノードに変換(
図5及び
図7の重み22の情報は維持)することで、ノード間の関係をノードに変換した、重み付き関係グラフ26(符号B2参照)を生成する。
【0073】
重み付き関係グラフ26は、関係グラフ11aの複数の第1ノードの関係性を複数の第2ノードとし、複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータの一例である。
【0074】
例えば、関係グラフ11aのターゲットのノードB11から1ホップ(1-hop)の範囲におけるエッジ(関係エッジ)は、(B11,B12)[0.5],(B11,B13)[0.2],(B11,B14)[0.1]となる。なお、()内はエッジの両端のノードの符号を示し、[]内は重みを示す。
【0075】
これに対し、重み付き関係グラフ26のターゲットのノードB21から1ホップ(1-hop)の範囲におけるエッジは、(B21,B26)[0.5],(B21,B27)[0.2],(B21,B28)[0.1]となる。このように、重み付き関係グラフ26では、エッジが少なくとも重みを有するように規定される。
【0076】
グラフ変換部13は、グラフ変換処理において、関係グラフ11aの複数のノードに共通項(
図8の例ではノードB21)が存在する場合、当該共通項を1つに統合することで、
図8に符号B2に示す重み付き関係グラフ26を生成してよい。
【0077】
このように、グラフ変換処理により、エッジをノードに変換することで、後述するベクトルの生成処理においてノード間の重みを含む関係を考慮することが可能となる。
【0078】
なお、グラフ変換部13は、グラフ変換処理において、関係グラフ11aを、グラフモデルに代えてテキストモデルに変換してもよい。
【0079】
図9は、グラフ変換処理の他の例を説明するための図である。グラフモデルとテキストモデルとの関係を符号B3に示す。符号B3に示すように、例えば、ノードB31及びB32と、ノードB32からノードB31へのエッジとを含むグラフモデルは、ノードB31を<H>(Head)、ノードB32を<T>(Tail)、エッジを<R>(Relation)として、線形形式に変換可能である。
【0080】
図9に符号B4で示すように、グラフ変換部13は、関係グラフ11aを、符号B3に示す関係に従い、テキストモデル26aに変換してもよい。一例として、グラフ変換部13は、関係グラフ11aにおけるターゲットのノードB11とノードB12との間のエッジが、「<H>変異A<R>変異タイプ<T>変異タイプB」となるようにテキストモデル26aを生成する。
【0081】
以降の説明では、生成装置1は、関係グラフ11aをグラフモデルの重み付き関係グラフ26(
図8参照)に変換する場合の処理を例に挙げるが、テキストモデル26a(
図9参照)に変換する場合においても同様の処理が実行されてよい。
【0082】
〔C-2〕ベクトル生成処理
図10は、ベクトル生成処理(
図4及び
図6のステップS3)の一例を説明するための図である。
図8で生成された重み付き関係グラフ26を符号C1に示し、ベクトル生成処理により生成されるノードベクトル21を符号C2に示す。
【0083】
図10に示すように、ベクトル生成部14は、重み付き関係グラフ26(符号C1参照)の各ノード(ノードC11~C19)から、周辺ノードを考慮したノードベクトル21(符号C2参照)を生成する。ノードベクトル21は、要素ノード及び関係ノードを含むとともに、重み22を保持する。
【0084】
例えば、ベクトル生成部14は、周辺ノード(一例として2ホップまでの周辺ノード)を考慮するGCNの機械学習を実行してよい。
【0085】
図10の符号C2に示すように、「変異A」のノードC11は、[0.1, 0.43, 0.9, ...]の要素ベクトルC21に変換され、「変異タイプ」のノードC16は、[0.2, 0.13, 0.3, ...]の関係ベクトルC22に変換される。また、「変異タイプB」のノードC12は、[0.03, 0.9, 0.1, ...]の要素ベクトルC23に変換される。このとき、ノードC22及びC23には、重み22である「0.5」が保持される。ノードベクトル21の次元数Dは、例えば、要素ノードは1*d
n、関係ノードは1*d
rと表されてよい。
【0086】
なお、ベクトル生成部14は、テキストモデル26aに対しても同様の処理によって、重み22を保持した状態で、テキストモデル26aからノードベクトル21を生成する。
【0087】
また、ベクトル生成部14は、生成したノードベクトル21に重み22を数値的に反映(例えば乗算)した重み考慮ベクトル23を生成する。
【0088】
図11は、重み考慮ベクトル生成処理(
図4及び
図6のステップS4)の一例を説明するための図である。
図10で生成されたノードベクトル21を符号D1に示し、重み考慮ベクトル生成処理により生成される重み考慮ベクトル23を符号D3に示し、重み考慮ベクトル23の算出例を符号D5に示す。
【0089】
図11に示すように、ベクトル生成部14は、ノードベクトル21(符号D1参照)(以下、「ベクトルhi」と表記する場合がある)に重み22を乗算することで、重み考慮ベクトル23(符号D2参照)(以下、「ベクトルri」と表記する場合がある)を生成する。
【0090】
図11の符号D2及びD5に示すように、「変異タイプ」の関係ベクトルD22は、重み22である「0.5」が各要素に数値的に乗算されることで、[0.1, 0.065, 0.15, ...]の関係ベクトルD42に変換される。また、「変異タイプB」のノードD22は、重み22である「0.5」が各要素に数値的に乗算されることで、[0.015, 0.45, 0.05, ...]の要素ベクトルD43に変換される。ベクトルhi及びri間で次元数Dは変わらない。
【0091】
ベクトル生成部14は、
図4及び
図6のステップS5の処理として、ノードベクトル21及び重み考慮ベクトル23のそれぞれを、グラフベクトル24及び重み考慮グラフベクトル25に変換する。
【0092】
例えば、ベクトル生成部14は、LSTM等の機械学習モデルに、ノードベクトル21及び重み考慮ベクトル23のそれぞれをエッジ重みが大きい順に入力することで、ノードベクトル21からグラフベクトル24を生成し、重み考慮ベクトル23から重み考慮グラフベクトル25を生成してよい。
【0093】
このように、ベクトル生成部14は、重み考慮ベクトル23を生成し、LSTM等により、重み考慮をしないノードベクトル21と、重み考慮をする重み考慮ベクトル23とからグラフベクトル24と重み考慮グラフベクトル25とを生成してよい。
【0094】
グラフベクトル24は、重み付き関係グラフ26の複数の第2ノードから取得した第1グラフベクトルの一例である。また、重み考慮グラフベクトル25は、重み付き関係グラフ26の複数の第2ノードと重み22が規定されたエッジとから取得した第2グラフベクトルの一例である。
【0095】
以上により、ベクトル生成部14は、入力される関係グラフ11aを変換し、エッジの重みを考慮した隠れ層の生成を行なう。
【0096】
このように、ベクトル生成部14は、グラフの重み22を用いて、外部的にベクトルの数値を変更する。重み22が変数的である場合も含めて、関係グラフ11aのモデル中では、同一単語も別の単語として扱われる可能性がある。例えば、同じ「変異B」であっても、重み22が「0.2」の場合と「0.5」の場合とでは、それぞれベクトルは異なる。
【0097】
このため、ベクトル生成部14は、単語の重要度をモデルに考慮させる(反映させる)ための重み考慮グラフベクトル25(重み考慮ベクトル23)を生成するのである。また、ベクトル生成部14は、元の単語情報を確保するために、重み考慮グラフベクトル25(重み考慮ベクトル23)とは別に、元の単語を生成可能なグラフベクトル24(ノードベクトル21)を生成するのである。
【0098】
〔C-3〕単語生成処理
単語生成部15は、エッジ重みを考慮した隠れ層を通常の隠れ層と並列に使用することで、単語の重要度だけでなく、重みを考慮した単語生成を実行する。
【0099】
図12は、単語生成部15による単語生成処理(符号E参照;
図4のステップS6~S12、
図6のステップS6~S10及びS22)の一例を説明するための図である。
【0100】
単語生成部15は、グラフベクトル24とAttの通常のベクトル用のAW31とに基づき、グラフベクトル(Att)33を生成する(符号E1)。また、単語生成部15は、重み考慮グラフベクトル25とAttの重み考慮ベクトル用のAW32とに基づき、重み考慮グラフベクトル(Att)34を生成する(符号E2)。グラフベクトル(Att)33は、グラフベクトル24を、単語生成を行なう機械学習モデルの第1注意機構に入力して得られる第1ベクトルの一例である。重み考慮グラフベクトル(Att)34は、重み考慮グラフベクトル25を、単語生成を行なう機械学習モデルの第2注意機構に入力して得られる第2ベクトルの一例である。
【0101】
ここで、重み考慮グラフベクトル25内の重み考慮ベクトル23をri(iは変数)とし、グラフベクトル24内のノードベクトル21をhj(jは変数)とする。重み考慮グラフベクトル(Att)34を生成するためのAttのAW32をαとし、グラフベクトル(Att)33を生成するためのAttのAW31をβとすると、α及びβは、下記式(1)及び(2)により算出されてよい。αは、第2注意機構のパラメータの一例であり、βは、第1注意機構のパラメータの一例である。
【数1】
【0102】
上記式(1)及び(2)により、それぞれ異なるベクトルを対象として、重要度の計算が行なわれる。αの算出は、
図12の符号E2の一例であり、βの算出は、
図12の符号E1の一例である。
【0103】
単語生成部15は、下記式(3)に示すように、α
tiとベクトルr
iとをノードiごとに乗算したものを加算することで重み考慮グラフベクトル(Att)34であるc
uを算出する。また、単語生成部15は、β
tjとベクトルh
jとをノードjごとに乗算したものを加算することでグラフベクトル(Att)33であるc
vを算出する。
【数2】
【0104】
そして、単語生成部15は、下記式(4)に示すように、c
u及びc
vを結合(CONCAT; concatenate)した結合ベクトルc
tを算出する(
図12の符号E3)。
【数3】
【0105】
単語生成部15は、下記式(5)に示すように、結合ベクトルc
tとこれまでの文脈ベクトルs
tとに基づき、入力ベクトルs
t~(下記式(5)中では“s
t”の上に“~”)を生成する(
図12の符号E4)。入力ベクトルs
t~は、結合ベクトルc
tと、これまでの文脈ベクトルs
tとを結合し、重みW
cを乗算して得られる文脈ベクトルである。W
cは、コンテキストベクトルを考慮したウェイトである。これまでの文脈ベクトルs
tは、関係グラフ11aの入力後からこれまでに実行された単語生成によって生成された文脈ベクトルである。
【数4】
【0106】
単語生成部15は、下記式(6)に示すように、確率計算を行ない、単語y
tを予測する(
図12の符号E5)。
【数5】
【0107】
上記式(6)において、y
tはt(今回)における単語を示し、Pは、y
1~y
t-1(これまでの単語)に関する文脈ベクトルs
t~に基づき、最も高い確率で予測されるy
tを求める(
図12の符号E6参照)。softmaxは、y
tの1つ前の文章(y
1~y
t-1)の次の単語として、最も確率の高い単語を求める確率関数である。W
vは、入力ベクトルs
t~に適用するウェイトであり、どの単語が文脈に適するかという単語予測に用いられる。一例として、教師データが“I have a pen”である場合、上記式(6)の処理は、y
2の“am”を予測するためにy
1の“I”を利用し、y
3の“a”を予測するためにy
1~2の“I am”を利用する。
【0108】
単語生成部15は、予測(生成)した単語を入力(これまでの文脈ベクトルs
t)として、上記式(1)~式(6)の処理を繰り返す(
図12の符号E7)。
【0109】
単語生成部15は、機械学習フェーズにおいて、自然文11b(教師データ)と、上記式(6)の結果とに基づき、AW31及び32を含む機械学習モデルの訓練を実行する。
【0110】
例えば、単語生成部15は、下記式(7)に示す損失関数L
Gを小さくするように機械学習モデルの訓練を実行する。
【数6】
【0111】
単語生成部15は、上述した機械学習モデルの訓練により、パラメータα、β、Wc、Wvのそれぞれを更新する。
【0112】
このように、単語生成部15は、グラフベクトル24及び重み考慮グラフベクトル25のそれぞれを利用して文脈ベクトルst~を生成し、文脈ベクトルst~に基づき単語11cを予測し、注意機構のAW31及び32のそれぞれを独立して訓練する。また、単語生成部15は、生成した単語11cに基づき、注意機構を利用して継続的に単語11cを生成することで、複数の単語11c(自然文)を生成する。
【0113】
〔C-4〕出力処理
出力部16は、推論フェーズにおいて単語生成部15により生成された複数の単語11c(自然文)に基づく出力データを出力する。出力データとしては、例えば、複数の単語11cそのものを含んでよい。また、出力部16は、単語生成部15により訓練されたパラメータα、β、Wc、Wvの少なくとも1つを出力データに含めてもよい。
【0114】
出力部16は、出力データの出力において、例えば、出力データを図示しない他のコンピュータに送信(提供)してもよいし、出力データをメモリ部11に蓄積して生成装置1又は他のコンピュータから取得可能に管理してもよい。或いは、生成装置1は、出力データの出力において、出力データを示す情報を生成装置1等の出力装置に画面出力してもよく、その他の種々の態様により出力データを出力してよい。
【0115】
〔D〕一実施形態の効果
以上のように、一実施形態に係る生成装置1は、それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した関係グラフ11aに基づき、複数の第1ノードの関係性を複数の第2ノードとし、複数の第1ノードのそれぞれに付与された重みをエッジとして規定した重み付き関係グラフ26を生成する。そして、生成装置1は、重み付き関係グラフ26の複数の第2ノードから取得したグラフベクトル24と、重み付き関係グラフ26の複数の第2ノードと重み22が規定されたエッジとから取得した重み考慮グラフベクトル25と、に基づいて、単語生成を実行する。
【0116】
これにより、生成装置1は、グラフベクトル24(ノードベクトルhj)に基づく重要部分だけでなく、重み考慮グラフベクトル25(重み考慮ベクトルri)に基づく、グラフに付与された重み22を単語生成に考慮することが可能になる。従って、生成装置1によれば、それぞれに重み22が付与された複数のノードの関係性をエッジとして規定したグラフノードデータに基づき、重み22が反映された自然文を生成することができる。
【0117】
また、生成装置1は、グラフの重み22を考慮したベクトルを単語生成に組み込む、例えば、隠れ層にグラフの重み22を数値的に考慮することで、重み22をベクトルに反映することができる。これにより、生成装置1は、重要なノードと重要でないノードとを明確に区別でき、生成される自然文、例えば説明文等の質を向上させることができる。
【0118】
さらに、生成装置1は、デコーダ部3による単語生成処理の注意機構にグラフの重み付き隠れ層を考慮するように機械学習を実行する。これにより、例えば、大規模な関係グラフ11aが入力される場合であっても、グラフの重み22が小さい情報の隠れ層が小さくなるため、自然文の冗長さを低減できる。例えば、生成装置1は、重み付き隠れ層を考慮しない場合に、自然文の生成に組み込まれる「重要でない部分」を、自然文に含めないようにする、或いは、重要でない情報として自然文の末尾に近い位置に配置できる。
【0119】
図13は、関係グラフF1に基づく単語生成(符号F2)の処理結果の一例を示す図である。
図13において、重みを考慮しない手法により生成された自然文を符号F3に示し、一実施形態に係る重みを考慮する手法により生成された自然文を符号F4に示す。
【0120】
符号F3に示すように、重みを考慮しない場合、関係グラフF1に含まれる情報を全て組み入れた自然文F3が生成される。例えば、関係グラフF1が大規模になるほど、自然文F3には、情報が詰め込まれ、重要部分に文を絞ることが困難となり、可読性が低くなることがある。
【0121】
これに対し、符号F4に示すように、重みを考慮する場合、重みを用いて重要部分に注目した自然文F4が生成される。自然文F4は、重みを考慮することにより、文の並び等も重みに応じた文、例えば、重みが大きいほど文の先頭に来るように配置された文となり、可読性が高くなる。また、重みを考慮する単語生成処理では、重要でない情報の除外も許容されるため、自然文F4は、重要でない情報を含まない簡潔な文となる。
【0122】
〔E〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
【0123】
例えば、
図2に示す生成装置1が備える取得部12、グラフ変換部13、ベクトル生成部14、単語生成部15及び出力部16は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。
【0124】
また、
図2に示す生成装置1は、複数の装置がネットワークを介して互いに連携することにより、各処理機能を実現する構成(システム)であってもよい。一例として、メモリ部11はDBサーバ、取得部12及び出力部16はWebサーバ又はアプリケーションサーバ、グラフ変換部13、ベクトル生成部14及び単語生成部15はアプリケーションサーバ等であってもよい。この場合、DBサーバ、アプリケーションサーバ及びwebサーバが、ネットワークを介して互いに連携することにより、生成装置1としての各処理機能を実現してもよい。
【0125】
さらに、一実施形態では、生成装置1に入力されるデータが関係グラフ11aである場合を例に挙げたが、これに限定されるものではない。例えば、グラフの変換及びカテゴリ参照表の参照を介することで、入力データが重み付き有向グラフである場合にも、一実施形態に係る手法を適用可能である。
【0126】
また、一実施形態では、教師あり学習を行なう場合を例に挙げたが、これに限定されるものではない。例えば、一実施形態に係る手法は、教師なし学習、又は、自己教師あり学習にも適応可能である。
【0127】
〔F〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【0128】
(付記1)
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
処理をコンピュータに実行させる、情報処理プログラム。
【0129】
(付記2)
前記第2グラフベクトルは、前記第2グラフノードデータの複数の第2ノードに基づくノードベクトルに前記重みを乗算して得られる、
付記1に記載の情報処理プログラム。
【0130】
(付記3)
前記単語生成を実行する処理は、前記第1グラフベクトルを、前記単語生成を行なう機械学習モデルの第1注意機構に入力して得られる第1ベクトルと、前記第2グラフベクトルを、前記機械学習モデルの第2注意機構に入力して得られる第2ベクトルと、に基づいて、前記単語生成を実行する処理を含む、
付記1又は付記2に記載の情報処理プログラム。
【0131】
(付記4)
前記単語生成を実行する処理は、前記第1ベクトルと前記第2ベクトルとを結合した結合ベクトルと、前記第1グラフノードデータの入力後からこれまでに実行された前記単語生成によって生成された文脈ベクトルとに基づき、前記単語生成を実行する処理を含む、
付記3に記載の情報処理プログラム。
【0132】
(付記5)
前記コンピュータに、
訓練用の第2グラフノードデータの複数の第2ノードから取得した訓練用の第1グラフベクトルを用いて、前記第1注意機構のパラメータを更新し、
前記訓練用の第2グラフノードデータの前記複数の第2ノードと重みが規定されたエッジとから取得した訓練用の第2グラフベクトルを用いて、前記第2注意機構のパラメータを更新する、
処理を実行させる、付記3又は付記4に記載の情報処理プログラム。
【0133】
(付記6)
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
処理をコンピュータが実行する、情報処理方法。
【0134】
(付記7)
前記第2グラフベクトルは、前記第2グラフノードデータの複数の第2ノードに基づくノードベクトルに前記重みを乗算して得られる、
付記6に記載の情報処理方法。
【0135】
(付記8)
前記単語生成を実行する処理は、前記第1グラフベクトルを、前記単語生成を行なう機械学習モデルの第1注意機構に入力して得られる第1ベクトルと、前記第2グラフベクトルを、前記機械学習モデルの第2注意機構に入力して得られる第2ベクトルと、に基づいて、前記単語生成を実行する処理を含む、
付記6又は付記7に記載の情報処理方法。
【0136】
(付記9)
前記単語生成を実行する処理は、前記第1ベクトルと前記第2ベクトルとを結合した結合ベクトルと、前記第1グラフノードデータの入力後からこれまでに実行された前記単語生成によって生成された文脈ベクトルとに基づき、前記単語生成を実行する処理を含む、
付記8に記載の情報処理方法。
【0137】
(付記10)
前記コンピュータが、
訓練用の第2グラフノードデータの複数の第2ノードから取得した訓練用の第1グラフベクトルを用いて、前記第1注意機構のパラメータを更新し、
前記訓練用の第2グラフノードデータの前記複数の第2ノードと重みが規定されたエッジとから取得した訓練用の第2グラフベクトルを用いて、前記第2注意機構のパラメータを更新する、
処理を実行する、付記8又は付記9に記載の情報処理方法。
【0138】
(付記11)
それぞれに重みが付与された複数の第1ノードの関係性をエッジとして規定した第1グラフノードデータに基づき、前記複数の第1ノードの関係性を複数の第2ノードとし、前記複数の第1ノードのそれぞれに付与された重みをエッジとして規定した第2グラフノードデータを生成し、
前記第2グラフノードデータの複数の第2ノードから取得した第1グラフベクトルと、前記第2グラフノードデータの複数の第2ノードと前記重みが規定されたエッジとから取得した第2グラフベクトルと、に基づいて、単語生成を実行する、
制御部を備える、情報処理装置。
【0139】
(付記12)
前記第2グラフベクトルは、前記第2グラフノードデータの複数の第2ノードに基づくノードベクトルに前記重みを乗算して得られる、
付記11に記載の情報処理装置。
【0140】
(付記13)
前記制御部は、前記単語生成を実行する処理において、前記第1グラフベクトルを、前記単語生成を行なう機械学習モデルの第1注意機構に入力して得られる第1ベクトルと、前記第2グラフベクトルを、前記機械学習モデルの第2注意機構に入力して得られる第2ベクトルと、に基づいて、前記単語生成を実行する、
付記11又は付記12に記載の情報処理装置。
【0141】
(付記14)
前記制御部は、前記単語生成を実行する処理において、前記第1ベクトルと前記第2ベクトルとを結合した結合ベクトルと、前記第1グラフノードデータの入力後からこれまでに実行された前記単語生成によって生成された文脈ベクトルとに基づき、前記単語生成を実行する、
付記13に記載の情報処理装置。
【0142】
(付記15)
前記制御部は、
訓練用の第2グラフノードデータの複数の第2ノードから取得した訓練用の第1グラフベクトルを用いて、前記第1注意機構のパラメータを更新し、
前記訓練用の第2グラフノードデータの前記複数の第2ノードと重みが規定されたエッジとから取得した訓練用の第2グラフベクトルを用いて、前記第2注意機構のパラメータを更新する、
付記13又は付記14に記載の情報処理装置。
【符号の説明】
【0143】
1 生成装置
11 メモリ部
11a 関係グラフ
11b 自然文
11c 単語
12 取得部
13 グラフ変換部
14 ベクトル生成部
15 単語生成部
16 出力部
17 制御部
21 ノードベクトル
22 重み
23 重み考慮ベクトル
24 グラフベクトル
25 重み考慮グラフベクトル
26 重み付き関係グラフ
31、32 AW
33 グラフベクトル(Att)
34 重み考慮グラフベクトル(Att)