JP7472587B2 - エンコーディングプログラム、情報処理装置およびエンコーディング方法 - Google Patents

エンコーディングプログラム、情報処理装置およびエンコーディング方法 Download PDF

Info

Publication number
JP7472587B2
JP7472587B2 JP2020056889A JP2020056889A JP7472587B2 JP 7472587 B2 JP7472587 B2 JP 7472587B2 JP 2020056889 A JP2020056889 A JP 2020056889A JP 2020056889 A JP2020056889 A JP 2020056889A JP 7472587 B2 JP7472587 B2 JP 7472587B2
Authority
JP
Japan
Prior art keywords
node
vector
sentence
encoding
phrase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020056889A
Other languages
English (en)
Other versions
JP2021157483A (ja
Inventor
一 森田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020056889A priority Critical patent/JP7472587B2/ja
Priority to US17/206,188 priority patent/US20210303802A1/en
Publication of JP2021157483A publication Critical patent/JP2021157483A/ja
Application granted granted Critical
Publication of JP7472587B2 publication Critical patent/JP7472587B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/47Machine-assisted translation, e.g. using translation memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H15/00ICT specially adapted for medical reports, e.g. generation or transmission thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、エンコーディング技術に関する。
自然言語処理では、文や文の中の単語(文節)をベクトル化してから処理することが多い。文や単語の特徴がうまく含まれるベクトルを生成することが重要になる。
文や単語(文節)は、例えば、LSTM(Long Short-Term Memory)ネットワークによりベクトル化することが知られている。LSTMネットワークは、経時的に単語の情報をベクトルとして保持し、保持した情報を用いて単語のベクトルを生成することができる再帰的ニューラルネットワークである。
また、文や単語は、例えば、木構造の(tree-structured)LSTMネットワークによりベクトル化することが知られている(例えば、非特許文献1参照)。木構造のLSTMネットワークは、チェーン構造のLSTMネットワークを木構造のネットワークトポロジに汎化したものである。図12は、LSTMネットワークを示す参考図である。図12上図には、チェーン構造のLSTMネットワークが表わされている。例えば、x1という単語を入力したLSTMは、入力した単語x1のベクトルy1を生成する。そして、x2という単語を入力したLSTMは、以前の単語x1のベクトルy1も用いて単語x2のベクトルy2を生成する。図12下図には、任意の分岐因子を含む木構造の(tree-structured)LSTMネットワークが表わされている。
文の中の単語間の係り受けを木構造のLSTMネットワーク(以降、LSTMネットワークを「LSTM」という)で表わした係り受け木を利用する技術が知られている。例えば、文に対する係り受け木の構造の全体の情報を利用して、文の中の単語間の関係を抽出する技術が知られている(例えば、非特許文献2参照)。例えば、「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」という文に対して、「薬A」と「病気B」との間の関係(「効果」)を抽出(判定)することができる。かかる技術では、文に対して、単語レベルの情報をLSTMでエンコードし、最短係り受け経路(Shortest Path:SP)のみの係り受け木レベルの情報を木構造のLSTMでエンコードし、関係を抽出する。ここでいうSPとは、関係を抽出したい単語と単語との間の係り受けの最短経路のことをいい、上記文では、「薬A」と「病気B」との間の経路のことをいう。また、関係の抽出に注目した実験では、文に対する全係り受け木を使った場合より、SPのみの係り受け木を使った方が、良い結果になった。
しかしながら、文に対して全体の係り受け木を使っても、最短係り受け経路(SP)のみの係り受け木を使っても、SP外の表現のエンコーディング時にSP内の情報を利用することが難しい。ここで、SP外の表現のエンコーディング時にSP内の情報を利用することが難しいことについて、図13を参照して説明する。図13は、SP外の表現のエンコーディングの参考例を示す図である。なお、上述した「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」という文に対して、「薬A」と「病気B」との間の関係(「効果」)を抽出(判定)する場合とする。
図13に示すように、左図は係り受け木全体を示す。それぞれの四角のボックスはLSTMである。SPは、「薬A」と「病気B」との間の経路である。中図の木構造は「薬A」に対するエンコーディングを計算する際に参照される範囲である。右図の木構造は関係を示す「効果」に対するエンコーディングを計算する際に参照される範囲である。
このような状況の下で、係り受け木全体では、文に対する全体の係り受け木の構造に沿ってエンコーディングするので、SP外すなわちSPと係り受け関係を持たない単語のエンコーディング時にSP内の単語の特徴を用いてエンコーディングすることが難しい。例えば、図13では、関係を示す「効果」は、SP外の表現である。SP外すなわち係り受け関係を持たない単語「効果」のエンコーディング時には、参照される範囲は「あった」だけであり、「あった」配下のSP内の単語「薬A」などの特徴を用いてエンコーディングできない。言い換えれば、係り受け木のSP外の表現の重要性を判定するのが難しい。
なお、SPのみの係り受け木を使った場合であっても、係り受け木全体を使った場合と同様に、SP外の表現のエンコーディング時にSP内の情報を利用することが難しいことには変わりがない。
この結果、関係を示す重要な表現がSPの外にある場合、SP内の単語間の関係を抽出することが難しい。したがって、係り受け木のSP外に基づいた、文のエンコーディングを行うことができないという問題がある。
本発明は、1つの側面では、係り受け木の最短係り受け経路(SP)外に基づいた、文のエンコーディングを行うことを目的とする。
1つの態様では、エンコーディングプログラムは、文に含まれる第1文節と第2文節とに対し、前記文から生成した係り受け木に含まれる2つのノードであって前記第1文節に対応する第1ノードと前記第2文節に対応する第2ノードとの共通の祖先ノードを特定し、前記係り受け木に含まれる葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングすることによって、前記共通の祖先ノードのベクトルを求め、前記共通の祖先ノードのベクトルに基づいて、前記共通の祖先ノードから前記葉ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングする、処理をコンピュータに実行させる。
1実施態様によれば、係り受け木の最短係り受け経路(SP)外に基づいた、文のエンコーディングを行うことができる。
図1は、実施例1に係る機械学習装置の構成を示す機能ブロック図である。 図2は、実施例1に係る予測装置の構成を示す機能ブロック図である。 図3は、文の係り受けの一例を示す図である。 図4は、実施例1に係る木構造エンコーディングの一例を示す図である。 図5は、実施例1に係る関係抽出学習処理のフローチャートの一例を示す図である。 図6は、実施例1に係る関係抽出学習処理の一例を示す図である。 図7は、実施例1に係る関係抽出予測処理のフローチャートの一例を示す図である。 図8は、実施例2に係る機械学習装置の構成を示す機能ブロック図である。 図9は、実施例2に係る予測装置の構成を示す機能ブロック図である。 図10は、実施例2に係る木構造エンコーディングの一例を示す図である。 図11は、エンコーディングプログラムを実行するコンピュータの一例を示す図である。 図12は、LSTMネットワークを示す参考図である。 図13は、SP外の表現のエンコーディングの参考例を示す図である。
以下に、本願の開示するエンコーディングプログラム、情報処理装置およびエンコーディング方法の実施例を図面に基づいて詳細に説明する。実施例では、情報処理装置として機械学習装置と予測装置とに分けて説明する。なお、本発明は、実施例により限定されるものではない。
[機械学習装置の構成]
図1は、実施例に係る機械学習装置の構成を示す機能ブロック図である。機械学習装置1は、文全体の係り受け木において、共通の祖先ノードに文全体の情報を集約して、集約した情報を用いて係り受け木の各ノードをエンコーディングする。機械学習装置1は、エンコーディングした結果を用いて、文に含まれる第1文節と第2文節の関係を学習する。ここでいう「係り受け木」とは、文の中の単語間の係り受けを木構造のLSTMネットワークで表わしたものである。なお、LSTMネットワークのことを、以降「LSTM」という。また、文節を単語という場合もある。
ここで、文の係り受けの一例を、図3を参照して説明する。図3は、文の係り受けの一例を示す図である。図3に示すように、文として「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」が示されている。かかる文では、「薬A」、「を」、「無作為」、「に」、「抽出」、「した」、「病気B」、「の」、「患者」、「に」、「投与」、「した」、「ところ」、「効果」、「が」、「あった」というように文節単位の列に分割される。
「薬A」の係り受けは、「投与」である。「無作為」の係り受けは、「抽出」である。「抽出」および「病気B」の係り受けは、「患者」である。「患者」の係り受けは、「投与」である。「投与」の係り受けは、「ところ」である。「ところ」および「効果」の係り受けは、「あった」である。
ここで、「薬A」と「病気B」との間の関係(「効果」)を抽出(判定)する場合には、「薬A」と「病気B」との間の経路が、最短係り受け経路(Shortest Path:SP)になる。ここでいうSPとは、関係を抽出したい単語「薬A」と単語「病気B」との間の係り受けの最短経路のことをいい、上記文では、「薬A」と「病気B」との間の経路のことをいう。関係を示す「効果」の単語は、かかる文の中のSPの外にある。
また、「投与」は、「薬A」と「病気B」との共通の祖先ノード(Lowest Common Ancestor:LCA)になる。
図1に戻って、機械学習装置1は、制御部10および記憶部20を有する。制御部10は、CPU(Central Processing Unit)などの電子回路により実現される。制御部10は、係り受け解析部11、木構造エンコーディング部12および関係抽出学習部13を有する。なお、木構造エンコーディング部12は、特定部、第1のエンコーディング部および第2のエンコーディング部の一例である。
記憶部20は、例えば、RAM、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどにより実現される。記憶部20は、パラメタ21、エンコード結果22およびパラメタ23を有する。
パラメタ21は、文の単語列のそれぞれの単語を木構造のLSTM(Tree LSTM)によりエンコーディングする際に各単語に対するLSTMが利用するパラメタの種類である。1つのLSTMは、1つの単語を、パラメタ21を用いてエンコーディングする。パラメタ21には、例えば、エンコーディングする方向が含まれる。エンコーディングする方向とは、ある単語をエンコーディングする場合に、直近の単語ベクトルの単語からある単語への方向を示す。エンコーディングする方向には、例えば、上や下が挙げられる。
エンコード結果22は、それぞれの単語のエンコード結果(ベクトル)および文のエンコード結果(ベクトル)を示す。エンコード結果22は、木構造エンコーディング部12によって計算される。
パラメタ23は、エンコード結果22を用いて単語間の関係を学習する際に用いられるパラメタである。なお、パラメタ23は、関係抽出学習部13によって用いられ、適宜修正される。
係り受け解析部11は、文の係り受けを解析する。例えば、係り受け解析部11は、文に対して、形態素解析を実行し、形態素(文節単位)の列に分割する。係り受け解析部11は、分割した列について、文節単位の係り受け解析を行う。なお、係り受け解析は、いかなる構文解析ツールを用いても良い。
木構造エンコーディング部12は、文節単位の係り受けからなる木構造に変換した木の木構造のLSTMを用いて、それぞれの文節をエンコーディングする。例えば、木構造エンコーディング部12は、係り受け解析部11によって解析された文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。木構造エンコーディング部12は、文に含まれる第1文節と第2文節とに対し、変換した係り受け木に含まれる2つのノードであって第1文節に対応する第1ノードと第2文節に対応する第2ノードとの共通の祖先ノード(LCA)を特定する。木構造エンコーディング部12は、パラメタ21を用いて、係り受け木に含まれる葉ノードのそれぞれからLCAに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングすることによって、LCAのエンコーディング結果のベクトルを求める。すなわち、木構造エンコーディング部12は、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約することによって、LCAのエンコーディング結果ベクトルを求める。そして、木構造エンコーディング部12は、LCAのエンコーディング結果ベクトルに基づいて、パラメタ21を用いて、LCAから葉ノードに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングする。つまり、木構造エンコーディング部12は、LCAに文全体の情報を集約した後に、集約した情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
また、木構造エンコーディング部12は、各ノードのエンコーディング結果のベクトルを用いて、文のベクトルを求める。
関係抽出学習部13は、文のベクトルとすでに分かっている関係ラベル(正解ラベル)を入力すると、文に含まれる第1文節と第2文節との関係に対応する関係ラベルが入力した関係ラベルと一致するように機械学習モデルを学習する。例えば、関係抽出学習部13は、文のベクトルを機械学習モデルに入力すると、パラメタ23を用いて文に含まれる第1文節と第2文節との関係を出力する。そして、関係抽出学習部13は、出力された関係に対応する関係ラベルが既にわかっている関係ラベル(正解ラベル)と一致していなければ、情報の誤差を木構造エンコーディング部12に逆伝播させる。そして、関係抽出学習部13は、誤差を修正した各ノードのベクトルおよび修正したパラメタ23を用いて、機械学習モデルを学習する。言い換えれば、関係抽出学習部13は、文のベクトルと文のベクトルに対応する正解ラベルとを入力し、入力に応じて機械学習モデルが出力する文に含まれる第1文節と第2文節との関係に対応する予測結果と正解ラベルとの差に基づいた機械学習によって機械学習モデルを更新する。
なお、機械学習モデルは、NN(Neural Network)やSVM(Support Vector Machine)が採用可能である。例えば、NNは、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)であっても良い。また、機械学習モデルは、例えば、CNNとRNNとを組み合わせた機械学習モデルなど、複数の機械学習モデルを組み合わせることで実現される機械学習モデルであっても良い。
[予測装置の構成]
図2は、実施例1に係る予測装置の構成を示す機能ブロック図である。予測装置3は、文全体の係り受け木において、共通の祖先ノードに文全体の情報を集約して、集約した情報を用いて係り受け木の各ノードをエンコーディングする。予測装置3は、エンコーディングした結果を用いて、文に含まれる第1文節と第2文節の関係を予測する。
図1に戻って、予測装置3は、制御部30および記憶部40を有する。制御部30は、CPU(Central Processing Unit)などの電子回路により実現される。制御部30は、係り受け解析部11、木構造エンコーディング部12および関係抽出予測部31を有する。なお、係り受け解析部11および木構造エンコーディング部12は、図1に示す機械学習装置1と同一の構成であるので、同一符号で示し、その重複する構成および動作の説明については省略する。また、木構造エンコーディング部12は、特定部、第1のエンコーディング部および第2のエンコーディング部の一例である。
記憶部40は、例えば、RAM、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどにより実現される。記憶部40は、パラメタ41、エンコード結果42およびパラメタ23を有する。
パラメタ41は、文の単語列のそれぞれの単語を木構造のLSTMによりエンコーディングする際に各単語に対するLSTMが利用するパラメタである。1つのLSTMは、1つの単語を、パラメタ41を用いてエンコーディングする。パラメタ41には、例えば、エンコーディングする方向が含まれる。エンコーディングする方向とは、ある単語をエンコーディングする場合に、使用される以前の単語ベクトルの単語からある単語への方向を示す。エンコーディングする方向には、例えば、上や下が挙げられる。なお、パラメタ41は、機械学習装置1のパラメタ21に対応する。
エンコード結果42は、それぞれの単語のエンコード結果(ベクトル)および文のエンコード結果(ベクトル)を示す。エンコード結果42は、木構造エンコーディング部12によって計算される。なお、エンコード結果42は、機械学習装置1のエンコード結果22に対応する。
パラメタ23は、エンコード結果42を用いて単語間の関係を予測する際に用いられるパラメタである。なお、パラメタ23には、機械学習装置1の機械学習によって最適化されたパラメタ23と同じパラメタが適用される。
関係抽出予測部31は、文のベクトルを学習済みの機械学習モデルに入力すると、文に含まれる第1文節と第2文節の関係を予測する。例えば、関係抽出予測部31は、文のベクトルを学習済みの機械学習モデルに入力すると、パラメタ23を用いて文に含まれる第1文節と第2文節の関係を予測する。そして、関係抽出予測部31は、予測した関係に対応する関係ラベルを出力する。なお、学習済みの機械学習モデルは、機械学習装置1の関係抽出学習部13によって学習されたものである。
[木構造エンコーディングの一例]
図4は、実施例1に係る木構造エンコーディングの一例を示す図である。なお、文が「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」である場合であって「薬A」と「病気B」との間の関係(「効果」)を抽出(判定)する場合であるとする。
図4左図には、文における木構造の係り受け木が示されている。かかる係り受け木は、木構造エンコーディング部12によって変換される。すなわち、木構造エンコーディング部12は、係り受け解析部11によって解析された文における文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。なお、図4におけるそれぞれの四角のボックスはLSTMである。
木構造エンコーディング部12は、文に含まれる「薬A」と「病気B」とに対し、変換した係り受け木に含まれる2つのノードであって「薬A」に対応するノードと「病気B」に対応するノードとの共通の祖先ノード(LCA)を特定する。特定されるLCAは、「投与」に対応するノードとなる。
木構造エンコーディング部12は、パラメタ21を用いて、係り受け木に含まれる葉ノードのそれぞれからLCAに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングすることによって、LCAのエンコーディング結果のベクトルを求める。すなわち、木構造エンコーディング部12は、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約する。左図では、「薬A」、「無作為」、「病気B」、「効果」に対応するノードが、葉ノードである。
ここでは、左図に示すように、木構造エンコーディング部12は、「薬A」をLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)を、パラメタが示す「上」に位置する「投与」(LCA)のLSTMに出力する。
また、木構造エンコーディング部12は、「無作為」をLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「上」に位置する「抽出」のLSTMに出力する。また、木構造エンコーディング部12は、「抽出」と、「無作為」からのベクトルをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「上」に位置する「患者」のLSTMに出力する。
また、木構造エンコーディング部12は、「病気B」をLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「上」に位置する「患者」のLSTMに出力する。また、木構造エンコーディング部12は、「患者」と、「抽出」および「病気B」からのそれぞれのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「上」に位置する「投与」(LCA)のLSTMに出力する。
一方、木構造エンコーディング部12は、「効果」をLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)を、パラメタが示す「上」に位置する「あった」のLSTMに出力する。また、木構造エンコーディング部12は、「あった」と、「効果」からのベクトルをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「下」に位置する「ところ」のLSTMに出力する。
また、木構造エンコーディング部12は、「ところ」と、「あった」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)をパラメタが示す「下」に位置する「投与」(LCA)のLSTMに出力する。
そして、木構造エンコーディング部12は、「投与」と、「薬A」、「患者」および「ところ」からのそれぞれのエンコード結果(ベクトル)とをLSTMに入力する。木構造エンコーディング部12は、エンコーディングされたエンコード結果(ベクトル)を求める。すなわち、木構造エンコーディング部12は、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約する。
この後、木構造エンコーディング部12は、LCAのエンコード結果(ベクトル)に基づいて、パラメタ21を用いて、LCAから葉ノードに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングする。つまり、木構造エンコーディング部12は、LCAに文全体の情報を集約した後に、集約した情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
ここでは、右図に示すように、LCAのエンコード結果(ベクトル)は、hLCAであるとする。木構造エンコーディング部12は、hLCAを、葉ノードに向かう、パラメタが示す「下」に位置する「薬A」および「患者」のLSTMに出力する。木構造エンコーディング部12は、hLCAを、葉ノードに向かう、パラメタが示す「上」に位置する「ところ」のLSTMに出力する。
木構造エンコーディング部12は、「薬A」と、hLCAとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh薬Aを出力する。
また、木構造エンコーディング部12は、「患者」と、hLCAとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh患者を出力する。木構造エンコーディング部12は、h患者を、葉ノードに向かう、パラメタが示す「下」に位置する「抽出」および「病気B」のLSTMに出力する。
また、木構造エンコーディング部12は、「病気B」と「患者」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh病気Bを出力する。また、木構造エンコーディング部12は、「抽出」と、「患者」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh抽出を出力する。木構造エンコーディング部12は、h抽出を、葉ノードに向かう、パラメタが示す「下」に位置する「無作為」のLSTMに出力する。
また、木構造エンコーディング部12は、「無作為」と、「抽出」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh無作為を出力する。
一方、木構造エンコーディング部12は、「ところ」と、hLCAとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてhところを出力する。木構造エンコーディング部12は、hところを、葉ノードに向かう、パラメタが示す「上」に位置する「あった」のLSTMに出力する。
また、木構造エンコーディング部12は、「あった」と、「ところ」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてhあったを出力する。木構造エンコーディング部12は、hあったを、葉ノードに向かう、パラメタが示す「下」に位置する「効果」のLSTMに出力する。
また、木構造エンコーディング部12は、「効果」と、「あった」からのベクトルとをLSTMに入力する。木構造エンコーディング部12は、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh効果を出力する。
そして、木構造エンコーディング部12は、各ノードのエンコード結果を示すベクトルを用いて文のベクトルを求める。ここでは、木構造エンコーディング部12は、以下のように、文のベクトルhを求めることができる。
=[h薬A;h無作為;h抽出;h病気B;h患者;h投与;hところ;h効果;hあった;]
これにより、木構造エンコーディング部12は、係り受け木における「薬A」および「病気B」のSP外に基づいた、文のエンコーディングを行なえる。すなわち、木構造エンコーディング部12は、係り受け木における「薬A」および「病気B」のSPのみならず、SP外に存在する関係を示す「効果」を含む各ノードの情報もLCAに集まるため、SP外に基づいた、文のエンコーディングを行なえる。この結果、関係抽出学習部13は、単語間の関係を抽出する場合に用いる精度の高い機械学習モデルを生成できる。加えて、関係抽出予測部31は、機械学習モデルを用いて単語間の関係を精度良く抽出することができる。
[関係抽出学習処理のフローチャート]
図5は、実施例1に係る関係抽出学習処理のフローチャートの一例を示す図である。なお、図6に示す実施例1に係る関係抽出学習処理の一例を、適宜参照しながら説明する。
木構造エンコーディング部12は、係り受け解析の解析済みの文s、固有表現対n、既にわかっている関係ラベルを受け付ける(ステップS11)。図6の符号a1に示すように、文sとして「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」、固有表現対として「薬A」および「病気B」が示されている。文sでは、単語間の係り受けが解析されている。固有表現対は、関係を学習するターゲットとなる単語の対である。それぞれの単語には、文の中でのインデックスの範囲が示されている。インデックスは単語が文の中で何個目かを示す情報である。インデックスは0から数える。「薬A」は、0から1の間にある。「病気B」は、6から7の間にある。なお、固有表現値nは、第1文節、第2文節に対応する。
そして、木構造エンコーディング部12は、固有表現対nに対応するLCA(共通祖先ノード)としてlcaを特定する(ステップS12)。図6の符号a2に示すように、共通祖先ノードのインデックスlcaは、「10」となる。すなわち、10個目の「投与」がLCAの単語となる。
そして、木構造エンコーディング部12は、lcaが根となる形に木構造のLSTMを接続する(ステップS13)。すなわち、木構造エンコーディング部12は、文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。
そして、木構造エンコーディング部12は、葉ノードの各単語からlcaに向けてLSTMを辿る(ステップS14)。図6の符号a3に示すように、例えば、薬Aのベクトルh薬A´と患者のベクトルh患者´と他の単語のベクトルとからLCAのエンコード結果ベクトルhLCA´が求められる。すなわち、木構造エンコーディング部12は、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約することによって、LCAのエンコーディング結果ベクトルを求める。
そして、木構造エンコーディング部12は、lcaから各単語に向けてLSTMを辿り、各単語位置にある単語wを表すベクトルhを生成する(ステップS15)。図6の符号a4に示すように、例えば、薬Aのベクトルh薬A、無作為のベクトルh無作為が生成される。すなわち、木構造エンコーディング部12は、LCAに文全体の情報を集約した後に、集約した情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
そして、木構造エンコーディング部12は、各単語のベクトルhを収集して結合し、文を表すベクトルhsiを生成する(ステップS16)。図6の符号a5に示すように、「薬A」のベクトルh薬A、「無作為」のベクトルh無作為、・・・を収集して、結合して文sのベクトルhsiが生成される。
そして、関係抽出学習部13は、文のベクトルhsiを機械学習モデルに入力して、関係ラベルlpを抽出する(ステップS17)。図6の符号a6に示すように、関係抽出学習部13は、関係ラベルlpiを抽出する。ここでは、関係無しであることを示す「0」、関係有りであるが効果ありであることを示す「1」、関係有りであるが効果無しであることを示す「2」のいずれかが抽出される。関係抽出学習部13は、関係ラベルlpが受け付けた関係ラベルと一致するか否かを判定する(ステップS18)。関係ラベルlpが受け付けた関係ラベルと一致しないと判定した場合には(ステップS18;No)、関係抽出学習部13は、パラメタ21およびパラメタ23を調整する(ステップS19)。そして、関係抽出学習部13は、さらに学習すべく、ステップS14に移行する。
一方、関係ラベルlpが受け付けた関係ラベルと一致すると判定した場合には(ステップS18;Yes)、関係抽出学習部13は、関係抽出学習処理を終了する。
[関係抽出予測処理のフローチャート]
図7は、実施例1に係る関係抽出予測処理のフローチャートの一例を示す図である。木構造エンコーディング部12は、係り受け解析の解析済み文s、固有表現対nを受け付ける(ステップS21)。そして、木構造エンコーディング部12は、固有表現対nに対応するLCA(共通祖先ノード)としてlcaを特定する(ステップS22)。
そして、木構造エンコーディング部12は、lcaが根となる形に木構造のLSTMを接続する(ステップS23)。すなわち、木構造エンコーディング部12は、文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。
そして、木構造エンコーディング部12は、葉ノードの各単語からlcaに向けてLSTMを辿る(ステップS24)。すなわち、木構造エンコーディング部12は、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約することによって、LCAのエンコーディング結果ベクトルを求める。
そして、木構造エンコーディング部12は、lcaから各単語に向けてLSTMを辿り、各単語位置にある単語wを表すベクトルhを生成する(ステップS25)。すなわち、木構造エンコーディング部12は、LCAに文全体の情報を集約した後に、集約した情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
そして、木構造エンコーディング部12は、各単語のベクトルhを収集して結合し、文を表すベクトルhsiを生成する(ステップS26)。そして、関係抽出予測部33は、文のベクトルhsiを学習済みの機械学習モデルに入力して、関係ラベルlpを抽出して、抽出した関係ラベルlpを出力する(ステップS27)。そして、関係抽出予測部33は、関係抽出予測処理を終了する。
[実施例1の効果]
上記実施例1によれば、機械学習装置1および予測装置3を含む情報処理装置は、以下の処理を行う。情報処理装置は、文に含まれる第1文節と第2文節とに対し、当該文から生成した係り受け木に含まれる2つのノードであって第1文節に対応する第1ノードと第2文節に対応する第2ノードとの共通の祖先ノードを特定する。情報処理装置は、係り受け木に含まれる葉ノードのそれぞれから共通の祖先ノードに向かう経路に応じて係り受け木に含まれる各ノードをエンコーディングすることによって、共通の祖先ノードのベクトルを求める。情報処理装置は、共通の祖先ノードのベクトルに基づいて、共通の祖先ノードから葉ノードに向かう経路に応じて係り受け木に含まれる各ノードをエンコーディングする。これにより、情報処理装置は、係り受け木における第1文節および第2文節の最短係り受け経路外に基づいた、文のエンコーディングを行なえる。
また、上記実施例1によれば、情報処理装置は、葉ノードのそれぞれから共通の祖先ノードに向かう経路に沿って各ノードの情報を共通の祖先ノードに集約することによって、共通の祖先ノードのベクトルを求める。これにより、情報処理装置は、係り受け木における第1文節および第2文節の最短係り受け経路のみならず、最短係り受け経路外にある関係を示す文節を含む各ノードの情報も共通の祖先ノードに集まるため、最短係り受け経路外に基づいた、文のエンコーディングを行なえる。言い換えれば、情報処理装置は、最短係り受け経路外の情報を適切に含むベクトルを生成することができるようになり、第1文節および第2文節の関係抽出の精度を向上できる。
また、上記実施例1によれば、機械学習装置1は、各ノードのエンコーディング結果を示すベクトルから文のベクトルを求める。機械学習装置1は、文のベクトルと文のベクトルに対応する正解ラベルとを入力する。機械学習装置1は、入力に応じて機械学習モデルが出力する文に含まれる第1文節と第2文節との関係に対応する予測結果と正解ラベルとの差に基づいた機械学習によって機械学習モデルを更新する。これにより、機械学習装置1は、第1文節および第2文節の関係抽出の精度の高い機械学習モデルを生成できる。
また、上記実施例1によれば、予測装置3は、他の文のベクトルを更新された機械学習モデルに入力し、他の文に含まれる第1文節と第2文節との関係に対応する予測結果を出力する。これにより、予測装置3は、第1文節および第2文節の関係を精度良く出力できる。
ところで、実施例1では、木構造エンコーディング部12が、単語をLSTMに入力し、LSTMがエンコーディングしたエンコード結果ベクトルを、パラメタが示す方向に位置する単語のLSTMに出力すると説明した。しかしながら、木構造エンコーディング部12は、これに限定されず、単語をLSTMに入力し、LSTMがエンコーディングしたエンコード結果ベクトルおよび当該単語の所定の位置ベクトル(PE:Position Encoding)を、パラメタが示す方向に位置する単語のLSTMに出力しても良い。ここでいう所定の位置ベクトル(PE)とは、文において関係を抽出したい第1文節と第2文節との係り受け距離のことをいう。所定の位置ベクトル(PE)の詳細は、後述する。
[実施例2に係る機械学習装置の構成]
図8は、実施例2に係る機械学習装置の構成を示す機能ブロック図である。なお、図1に示す機械学習装置1と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。実施例1と実施例2とが異なるところは、制御部10にPE付与部51を追加した点にある。また、実施例1と実施例2とが異なるところは、制御部10の木構造エンコーディング部12を木構造エンコーディング部12Aに変更した点にある。
PE付与部51は、文に含まれる文節ごとに、文に含まれる第1文節との位置関係および文に含まれる第2文節との位置関係を付与する。例えば、PE付与部51は、木構造の係り受け木を用いて、文節ごとに、第1文節と第2文節との係り受け距離を示すPEを求める。PEは、一例として、aを第1文節からの距離、bを第2文節からの距離とした場合には、(a,b)で表わされる。また、PEは、一例として、第1文節と第2文節との間でない場合には(Out)で表わされる。そして、PE付与部51は、文節ごとに、PEを付与する。
木構造エンコーディング部12Aは、文節単位の係り受けからなる木構造に変換した木の木構造のLSTMを用いて、それぞれの文節をエンコーディングする。例えば、木構造エンコーディング部12Aは、係り受け解析部11によって解析された文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。木構造エンコーディング部12Aは、文に含まれる第1文節と第2文節とに対し、変換した係り受け木に含まれる2つのノードであって第1文節に対応する第1ノードと第2文節に対応する第2ノードとの共通の祖先ノード(LCA)を特定する。木構造エンコーディング部12Aは、パラメタ21およびPEを用いて、係り受け木に含まれる葉ノードのそれぞれからLCAに向かう経路に沿って、係り受け木に含まれる各ノードをエンコーディングすることによって、LCAのエンコーディング結果のベクトルを求める。すなわち、木構造エンコーディング部12Aは、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードのPEを含む情報をLCAに集約することによって、LCAのエンコーディング結果ベクトルを求める。そして、木構造エンコーディング部12Aは、LCAのエンコーディング結果ベクトルに基づいて、パラメタ21およびPEを用いて、LCAから葉ノードに向かう経路に沿って、係り受け木に含まれる各ノードをエンコーディングする。つまり、木構造エンコーディング部12Aは、LCAに文全体のPEを含む情報を集約した後に、集約した情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
また、木構造エンコーディング部12Aは、各ノードのエンコーディング結果のベクトルを用いて文のベクトルを求める。
[実施例2に係る予測装置の構成]
図9は、実施例2に係る予測装置の構成を示す機能ブロック図である。なお、図2に示す予測装置3と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。実施例1と実施例2とが異なるところは、制御部10にPE付与部51を追加した点にある。また、実施例1と実施例2とが異なるところは、制御部10の木構造エンコーディング部12を木構造エンコーディング部12Aに変更した点にある。なお、PE付与部51および木構造エンコーディング部12Aは、図8に示す機械学習装置1と同一の構成であるので、同一符号で示し、その重複する構成および動作の説明については省略する。
[木構造エンコーディングの一例]
図10は、実施例2に係る木構造エンコーディングの一例を示す図である。なお、文が「薬Aを無作為に抽出した病気Bの患者に投与したところ、効果があった」である場であって「薬A」と「病気B」との間の関係(「効果」)を抽出(判定)する場合であるとする。
図10左図には、文における木構造の係り受け木が示されている。かかる係り受け木は、木構造エンコーディング部12Aによって変換される。すなわち、木構造エンコーディング部12Aは、係り受け解析部11によって解析された文における文節単位の係り受けを用いて、文節単位の係り受けからなる木構造の係り受け木に変換する。なお、図10におけるそれぞれの四角のボックスはLSTMである。
加えて、PE付与部51は、木構造の係り受け木を用いて、文節ごとに、「薬A」と「病気B」との係り受け距離を示すPEを求めて、求めたPEを付与する。それぞれのLSTMの右横に、PEが示されている。ここでは、「薬A」のPEは、(0,3)である。すなわち、「薬A」からの距離は、自身であるので、「0」である。「病気B」からの距離は、「病気B」を「0」として「患者」→「投与」→「薬A」の「3」となる。また、「患者」のPEは、(2,1)である。すなわち、「薬A」からの距離は、「薬A」を「0」として「投与」→「患者」の「2」となる。「病気B」からの距離は、「病気B」を「0」として「1」となる。また、「病気B」のPEは、(3,0)である。すなわち、「薬A」からの距離は、「薬A」を「0」として「投与」→「患者」→「病気B」の「3」となる。「病気B」からの距離は、自身であるので、「0」である。また、「抽出」および「無作為」のPEは、「薬A」と「病気B」との間にないので、「Out」となる。同様に、「ところ」、「あった」および「効果」のPEは、「薬A」と「病気B」との間にないので、「Out」となる。
木構造エンコーディング部12Aは、文に含まれる「薬A」と「病気B」とに対し、変換した係り受け木に含まれる2つのノードであって「薬A」に対応するノードと「病気B」に対応するノードとの共通の祖先ノード(LCA)を特定する。特定されるLCAは、「投与」に対応するノードとなる。
木構造エンコーディング部12Aは、パラメタ21およびPEを用いて、係り受け木に含まれる葉ノードのそれぞれからLCAに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングすることによって、LCAのエンコーディング結果のベクトルを求める。すなわち、木構造エンコーディング部12Aは、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードのPEを含む情報をLCAに集約する。左図では、葉ノードは、「薬A」、「無作為」、「病気B」、「効果」に対応するノードである。
ここでは、左図に示すように、木構造エンコーディング部12Aは、「薬A」をLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)とPE(0,3)とを結合したベクトルを、パラメタが示す「上」に位置する「投与」(LCA)のLSTMに出力する。
また、木構造エンコーディング部12Aは、「無作為」をLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)とPE(Out)とを結合したベクトルをパラメタが示す「上」に位置する「抽出」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「抽出」と、「無作為」からのベクトルをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)と、PE(Out)とを結合したベクトルをパラメタが示す「上」に位置する「患者」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「病気B」をLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)とPE(3,0)とを結合したベクトルをパラメタが示す「上」に位置する「患者」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「患者」と、「抽出」からのベクトルと、「病気B」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)とPE(2,1)とを結合したベクトルをパラメタが示す「上」に位置する「投与」(LCA)のLSTMに出力する。
一方、木構造エンコーディング部12Aは、「効果」をLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)とPE(Out)とを結合したベクトルをパラメタが示す「上」に位置する「あった」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「あった」と、「効果」からのベクトルをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)と、PE(Out)とを結合したベクトルをパラメタが示す「下」に位置する「ところ」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「ところ」と、「あった」からのベクトルをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)と、PE(Out)とを結合したベクトルをパラメタが示す「下」に位置する「投与」(LCA)のLSTMに出力する。
そして、木構造エンコーディング部12Aは、「投与」と、「ところ」からのベクトルと、「薬A」からのベクトルと、「患者」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)をLCAのエンコード結果(ベクトル)として求める。すなわち、木構造エンコーディング部12Aは、葉ノードのそれぞれからLCAに向かう経路に沿って各ノードの情報をLCAに集約する。
この後、木構造エンコーディング部12Aは、LCAのエンコード結果(ベクトル)に基づいて、パラメタ21およびPEを用いて、LCAから葉ノードに向かう経路に沿って係り受け木に含まれる各ノードをエンコーディングする。つまり、木構造エンコーディング部12Aは、LCAに文全体の情報を集約した後に、集約したPEを含む情報を逆向きに伝播させて、係り受け木の各ノードをエンコーディングする。
ここでは、右図に示すように、LCAのエンコード結果(ベクトル)は、hLCAであるとする。木構造エンコーディング部12Aは、hLCAを、葉ノードに向かう、パラメタが示す「下」に位置する「薬A」および「患者」のLSTMに出力する。木構造エンコーディング部12Aは、hLCAを、葉ノードに向かう、パラメタが示す「上」に位置する「ところ」のLSTMに出力する。
木構造エンコーディング部12Aは、「薬A」と、hLCAとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)h薬Aを出力する。
また、木構造エンコーディング部12Aは、「患者」と、hLCAとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh患者を出力する。木構造エンコーディング部12Aは、h患者とPE(2,1)とを結合したベクトルをパラメタが示す「下」に位置する「抽出」と「病気B」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「抽出」と、「患者」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh抽出を出力する。木構造エンコーディング部12Aは、h抽出とPE(Out)とを結合したベクトルをパラメタが示す「下」に位置する「無作為」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「無作為」と、「抽出」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh無作為を出力する。
また、木構造エンコーディング部12Aは、「病気B」と、「患者」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh病気Bを出力する。
一方、木構造エンコーディング部12は、「ところ」と、hLCAとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてhところを出力する。木構造エンコーディング部12Aは、hところとPE(Out)とを結合したベクトルをパラメタが示す「上」に位置する「あった」のLSTMに出力する。
また、木構造エンコーディング部12は、「あった」と、「ところ」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてhあったを出力する。木構造エンコーディング部12Aは、hあったとPE(Out)とを結合したベクトルをパラメタが示す「下」に位置する「効果」のLSTMに出力する。
また、木構造エンコーディング部12Aは、「効果」と、「あった」からのベクトルとをLSTMに入力する。木構造エンコーディング部12Aは、LSTMによってエンコーディングされたエンコード結果(ベクトル)としてh効果を出力する。
そして、木構造エンコーディング部12Aは、各ノードのエンコード結果を示すベクトルから文のベクトルを求める。ここでは、木構造エンコーディング部12Aは、以下のように、文のベクトルhを求めることができる。
=[h薬A;h無作為;h抽出;h病気B;h患者;h投与;hところ;h効果;hあった;]
これにより、木構造エンコーディング部12Aは、各単語を表すベクトルにターゲット(ここでは、「薬A」および「病気B」)との位置関係(PE)を加えて明示することで、重要なSP内の情報とそうでない情報との扱いを変えることができる。この結果、木構造エンコーディング部12Aは、ターゲットと関係ある単語であるのかどうかについて、精度良くエンコーディングすることが可能となる。この結果、木構造エンコーディング部12Aは、係り受け木における「薬A」および「病気B」のSP外に基づいた、文のエンコーディングを精度良く行なうことが可能となる。
[実施例2の効果]
上記実施例2によれば、木構造エンコーディング部12Aは、葉ノードのそれぞれから共通の祖先ノードに向かう経路に沿って各ノードにおける、第1ノードとの位置関係および第2ノードとの位置関係を含む情報を共通の祖先ノードに集約する処理を含む。これにより、木構造エンコーディング部12Aは、第1ノードおよび第2ノードに対して重要なノードと重要でないノードとの扱いを変えることができる。この結果、木構造エンコーディング部12Aは、第1ノードおよび第2ノードと関係があるノードであるのかどうかについて、精度良くエンコーディングすることが可能となる。
[その他]
なお、実施例1,2では、機械学習装置1および予測装置3を含む情報処理装置が、日本語に対する文に関し、以下の処理を行うことについて説明した。すなわち、情報処理装置は、日本語に対する文全体の係り受け木において、共通の祖先ノードに文全体の情報を集約して、集約した情報を用いて係り受け木の各ノードをエンコーディングすることについて説明した。しかしながら、情報処理装置は、これに限定されず、英語に対する文に関する場合であっても良い。すなわち、情報処理装置は、英語に対する文全体の係り受け木において、共通の祖先ノードに文全体の情報を集約して、集約した情報を用いて係り受け木の各ノードをエンコーディングする場合であっても良い。
また、図示した機械学習装置1や予測装置3の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、機械学習装置1や予測装置3の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、木構造エンコーディング部12を、各ノードの情報をLCAに集約する集約部と、LCAに集約した情報を逆向きに伝播させる逆向き伝播部とに分散しても良い。また、PE付与部51と、木構造エンコーディング部12とを1つの機能部として統合しても良い。また、記憶部20を機械学習装置1の外部装置としてネットワーク経由で接続するようにしても良い。また、記憶部40を予測装置3の外部装置としてネットワーク経由で接続するようにしても良い。
また、上記実施例では、機械学習装置1と予測装置3とに分離する構成として説明した。しかしながら、情報処理装置が、機械学習装置1の機械学習処理と予測装置3の予測処理とを含む構成としても良い。
また、上記実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図1に示した機械学習装置1や予測装置3と同様の機能を実現するエンコーディングプログラムを実行するコンピュータの一例を説明する。ここでは、機械学習装置1と同様の機能を実現するエンコーディングプログラムを一例として説明する。図11は、エンコーディングプログラムを実行するコンピュータの一例を示す図である。
図11に示すように、コンピュータ200は、各種演算処理を実行するCPU203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209を制御する表示制御部207とを有する。また、コンピュータ200は、記憶媒体からプログラムなどを読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD(Hard Disk Drive)205を有する。そして、メモリ201、CPU203、HDD205、表示制御部207、ドライブ装置213、入力装置215、通信制御部217は、バス219で接続されている。
ドライブ装置213は、例えばリムーバブルディスク210用の装置である。HDD205は、エンコーディングプログラム205aおよびエンコーディング処理関連情報205bを記憶する。
CPU203は、エンコーディングプログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは、機械学習装置1の各機能部に対応する。エンコーディング処理関連情報205bは、パラメタ21、エンコード結果22およびパラメタ23に対応する。そして、例えばリムーバブルディスク210が、エンコーディングプログラム205aなどの各情報を記憶する。
なお、エンコーディングプログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、光磁気ディスク、IC(Integrated Circuit)カードなどの「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらからエンコーディングプログラム205aを読み出して実行するようにしても良い。
1 機械学習装置
10,30 制御部
11 係り受け解析部
12,12A 木構造エンコーディング部
13 関係抽出学習部
20,40 記憶部
21 パラメタ
22,42 エンコード結果
23 パラメタ
3 予測装置
31 関係抽出予測部
51 PE付与部

Claims (8)

  1. 文に含まれる複数の文節のうちの第1文節と第2文節との関係性の判定に用いる前記複数の文節それぞれのベクトルを求める場合に、前記文から生成した係り受け木に含まれる2つのノードを示す前記第1文節に対応する第1ノードと前記第2文節に対応する第2ノードとの最短係り受け経路に含まれるノードであって、前記係り受け木における前記第1ノードと前記第2ノードとの共通の祖先ノードを特定し、
    前記係り受け木に含まれる葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングすることによって、前記共通の祖先ノードのベクトルを求め、
    前記共通の祖先ノードのベクトルに基づいて、前記共通の祖先ノードから前記葉ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングする、
    処理をコンピュータに実行させることを特徴とするエンコーディングプログラム。
  2. 前記共通の祖先ノードのベクトルを求める処理は、葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に沿って各ノードの情報を前記共通の祖先ノードに集約することによって、前記共通の祖先ノードのベクトルを求める処理を含む、
    ことを特徴とする請求項1に記載のエンコーディングプログラム。
  3. 前記集約する処理は、葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に沿って各ノードにおける、前記第1ノードとの位置関係および前記第2ノードとの位置関係を含む情報を前記共通の祖先ノードに集約する処理を含む、
    ことを特徴とする請求項2に記載のエンコーディングプログラム。
  4. 各ノードのエンコーディング結果を示すベクトルから前記文のベクトルを求め、
    前記文のベクトルと前記文のベクトルに対応する正解ラベルとを入力し、前記入力に応じて機械学習モデルが出力する前記文に含まれる第1文節と第2文節との関係に対応する予測結果と前記正解ラベルとの差に基づいた機械学習によって前記機械学習モデルを更新する、
    ことを特徴とする請求項1に記載のエンコーディングプログラム。
  5. 他の文のベクトルを前記更新された機械学習モデルに入力し、前記他の文に含まれる第1文節と第2文節との関係に対応する予測結果を出力する、
    ことを特徴とする請求項4に記載のエンコーディングプログラム。
  6. 前記係り受け木における根に対応するノード以外のノードが、前記共通の祖先ノードとして特定されうる、
    ことを特徴とする請求項1に記載のエンコーディングプログラム。
  7. 文に含まれる複数の文節のうちの第1文節と第2文節との関係性の判定に用いる前記複数の文節それぞれのベクトルを求める場合に、前記文から生成した係り受け木に含まれる2つのノードを示す前記第1文節に対応する第1ノードと前記第2文節に対応する第2ノードとの最短係り受け経路に含まれるノードであって、前記係り受け木における前記第1ノードと前記第2ノードとの共通の祖先ノードを特定する特定部と、
    前記係り受け木に含まれる葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングすることによって前記共通の祖先ノードのベクトルを生成する第1のエンコーディング部と、
    前記共通の祖先ノードのベクトルに基づいて、前記共通の祖先ノードから前記葉ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングする第2のエンコーディング部と、
    を有することを特徴とする情報処理装置。
  8. 文に含まれる複数の文節のうちの第1文節と第2文節との関係性の判定に用いる前記複数の文節それぞれのベクトルを求める場合に、前記文から生成した係り受け木に含まれる2つのノードを示す前記第1文節に対応する第1ノードと前記第2文節に対応する第2ノードとの最短係り受け経路に含まれるノードであって、前記係り受け木における前記第1ノードと前記第2ノードとの共通の祖先ノードを特定し、
    前記係り受け木に含まれる葉ノードのそれぞれから前記共通の祖先ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングすることによって、前記共通の祖先ノードのベクトルを求め、
    前記共通の祖先ノードのベクトルに基づいて、前記共通の祖先ノードから前記葉ノードに向かう経路に応じて前記係り受け木に含まれる各ノードをエンコーディングする、
    処理をコンピュータが実行することを特徴とするエンコーディング方法。
JP2020056889A 2020-03-26 2020-03-26 エンコーディングプログラム、情報処理装置およびエンコーディング方法 Active JP7472587B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020056889A JP7472587B2 (ja) 2020-03-26 2020-03-26 エンコーディングプログラム、情報処理装置およびエンコーディング方法
US17/206,188 US20210303802A1 (en) 2020-03-26 2021-03-19 Program storage medium, information processing apparatus and method for encoding sentence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020056889A JP7472587B2 (ja) 2020-03-26 2020-03-26 エンコーディングプログラム、情報処理装置およびエンコーディング方法

Publications (2)

Publication Number Publication Date
JP2021157483A JP2021157483A (ja) 2021-10-07
JP7472587B2 true JP7472587B2 (ja) 2024-04-23

Family

ID=77856332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020056889A Active JP7472587B2 (ja) 2020-03-26 2020-03-26 エンコーディングプログラム、情報処理装置およびエンコーディング方法

Country Status (2)

Country Link
US (1) US20210303802A1 (ja)
JP (1) JP7472587B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113807091B (zh) * 2021-08-12 2022-07-22 北京百度网讯科技有限公司 词语挖掘方法、装置、电子设备和可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017076281A (ja) 2015-10-15 2017-04-20 日本電信電話株式会社 単語埋込学習装置、テキスト評価装置、方法、及びプログラム
US20180300314A1 (en) 2017-04-12 2018-10-18 Petuum Inc. Constituent Centric Architecture for Reading Comprehension

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610191B2 (en) * 2004-10-06 2009-10-27 Nuance Communications, Inc. Method for fast semi-automatic semantic annotation
US7970600B2 (en) * 2004-11-03 2011-06-28 Microsoft Corporation Using a first natural language parser to train a second parser
US20080221870A1 (en) * 2007-03-08 2008-09-11 Yahoo! Inc. System and method for revising natural language parse trees
US20140297264A1 (en) * 2012-11-19 2014-10-02 University of Washington through it Center for Commercialization Open language learning for information extraction
US10339223B2 (en) * 2014-09-05 2019-07-02 Nec Corporation Text processing system, text processing method and storage medium storing computer program
WO2016141187A1 (en) * 2015-03-04 2016-09-09 The Allen Institute For Artificial Intelligence System and methods for generating treebanks for natural language processing by modifying parser operation through introduction of constraints on parse tree structure
CN108388561B (zh) * 2017-02-03 2022-02-25 百度在线网络技术(北京)有限公司 神经网络机器翻译方法和装置
US20180232443A1 (en) * 2017-02-16 2018-08-16 Globality, Inc. Intelligent matching system with ontology-aided relation extraction
CA3006826A1 (en) * 2018-05-31 2019-11-30 Applied Brain Research Inc. Methods and systems for generating and traversing discourse graphs using artificial neural networks
US20200074321A1 (en) * 2018-09-04 2020-03-05 Rovi Guides, Inc. Methods and systems for using machine-learning extracts and semantic graphs to create structured data to drive search, recommendation, and discovery
US20200159863A1 (en) * 2018-11-20 2020-05-21 Sap Se Memory networks for fine-grain opinion mining
US11222143B2 (en) * 2018-12-11 2022-01-11 International Business Machines Corporation Certified information verification services
US11500841B2 (en) * 2019-01-04 2022-11-15 International Business Machines Corporation Encoding and decoding tree data structures as vector data structures
US11610683B2 (en) * 2019-08-05 2023-03-21 Kpn Innovations, Llc. Methods and systems for generating a vibrant compatibility plan using artificial intelligence
US11615240B2 (en) * 2019-08-15 2023-03-28 Salesforce.Com, Inc Systems and methods for a transformer network with tree-based attention for natural language processing
US11687826B2 (en) * 2019-08-29 2023-06-27 Accenture Global Solutions Limited Artificial intelligence (AI) based innovation data processing system
US11676067B2 (en) * 2020-02-14 2023-06-13 Nice Ltd. System and method for creating data to train a conversational bot

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017076281A (ja) 2015-10-15 2017-04-20 日本電信電話株式会社 単語埋込学習装置、テキスト評価装置、方法、及びプログラム
US20180300314A1 (en) 2017-04-12 2018-10-18 Petuum Inc. Constituent Centric Architecture for Reading Comprehension

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Zhiyang Teng 他1名,Head-Lexicalized Bidirectional Tree LSTMs,ACL Anthology,2017年,[2023年10月23日検索],インターネット<URL:https://aclanthology.org/Q17-1012.pdf>
辻村有輝 他2名,係り受け木上の不要な情報にマスクを行う関係分類,言語処理学会第25回年次大会 発表論文集,日本,言語処理学会,2019年03月04日,73-76頁

Also Published As

Publication number Publication date
US20210303802A1 (en) 2021-09-30
JP2021157483A (ja) 2021-10-07

Similar Documents

Publication Publication Date Title
Tan et al. Neural machine translation: A review of methods, resources, and tools
Chen et al. Distraction-Based Neural Networks for Modeling Document.
Haidar et al. Textkd-gan: Text generation using knowledge distillation and generative adversarial networks
Bikel Intricacies of Collins' parsing model
US10719668B2 (en) System for machine translation
US8849665B2 (en) System and method of providing machine translation from a source language to a target language
Chen et al. Distraction-based neural networks for document summarization
CN110264991A (zh) 语音合成模型的训练方法、语音合成方法、装置、设备及存储介质
JP5071373B2 (ja) 言語処理装置、言語処理方法および言語処理用プログラム
JP2021152963A (ja) 語義特徴の生成方法、モデルトレーニング方法、装置、機器、媒体及びプログラム
Çöltekin A set of open source tools for Turkish natural language processing.
WO2019208070A1 (ja) 質問応答装置、質問応答方法及びプログラム
JP7337770B2 (ja) 文書レベルの自然言語処理モデルを訓練させる方法およびシステム
Sadredini et al. A scalable solution for rule-based part-of-speech tagging on novel hardware accelerators
Peng et al. Sequence-to-sequence models for cache transition systems
Matteson et al. Rich character-level information for Korean morphological analysis and part-of-speech tagging
KR20160133349A (ko) 구 표 생성 방법 및 구 표를 이용한 기계 번역 방법
CN115860006A (zh) 一种基于语义句法的方面级情感预测方法及装置
KR20200132619A (ko) 구어에서 수어로의 주의 기반 인공신경망 기계 번역 방법 및 그 장치
Breiner et al. UserLibri: A dataset for ASR personalization using only text
JP7472587B2 (ja) エンコーディングプログラム、情報処理装置およびエンコーディング方法
KR101860472B1 (ko) 오픈 디렉터리 프로젝트 기반의 텍스트 분류기, 및 텍스트 분류기의 생성 및 분류 방법
JP2013054607A (ja) 並べ替え規則学習装置、方法、及びプログラム、並びに翻訳装置、方法、及びプログラム
Kaljahi et al. Detecting opinion polarities using kernel methods
WO2020250279A1 (ja) モデル学習装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240325

R150 Certificate of patent or registration of utility model

Ref document number: 7472587

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150