(57)【要約】  入力部２１０が、入力フレーズと、接続表現又は関係ラベルとの少なくとも一方とからなる２つ組を受け付ける。フレーズ生成部２２１が、予め学習されたエンコーダを用いて、入力フレーズをベクトルに変換し、予め学習されたデコーダを用いて、変換されたベクトルと、入力された接続表現又は関係ラベルとから、入力フレーズに対して接続表現又は関係ラベルが表す関係性を有するフレーズを生成する。
2019167835.tif 000002
【特許請求の範囲】
【請求項１】
フレーズの組み合わせと、フレーズ間の関係性を表わす接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる３つ組を学習データとして用いて、フレーズと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる２つ組から、フレーズをベクトルに変換するエンコーダ、及び前記変換されたベクトルと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルとから、前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習する学習部
を含むフレーズ生成モデル学習装置。
【請求項２】
入力テキストに対するテキスト解析結果に基づいて、フレーズ間の関係性を表わす予め定められた接続表現が含まれる文節と所定の関係にあるフレーズの組み合わせを抽出し、前記抽出されたフレーズの組み合わせと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる３つ組を作成する学習データ生成部を更に含み、
前記学習部は、前記学習データ生成部によって作成された前記３つ組を学習データとして用いて、前記フレーズ生成モデルを学習する請求項１記載のフレーズ生成モデル学習装置。
【請求項３】
入力フレーズと、フレーズ間の関係性を表わす接続表現又は関係ラベルとの少なくとも一方とからなる２つ組を入力とし、
予め学習されたフレーズ生成モデルに基づき、前記入力フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するフレーズ生成部
を含むフレーズ生成装置。
【請求項４】
学習部が、フレーズの組み合わせと、フレーズ間の関係性を表わす接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる３つ組を学習データとして用いて、フレーズと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる２つ組から、フレーズをベクトルに変換するエンコーダ、及び前記変換されたベクトルと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルとから、前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習する
フレーズ生成モデル学習方法。
【請求項５】
フレーズ生成部が、入力フレーズと、フレーズ間の関係性を表わす接続表現又は関係ラベルとの少なくとも一方とからなる２つ組を入力とし、
予め学習されたフレーズ生成モデルに基づき、前記入力フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成する
フレーズ生成方法。
【請求項６】
コンピュータを、請求項１又は２記載のフレーズ生成モデル学習装置又は請求項３記載のフレーズ生成装置を構成する各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレーズ生成モデル学習装置、フレーズ生成装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
２つのテキスト（以降、フレーズともいう）とその間の関係性を表す関係ラベル（以降、単にラベルともいう）からなる３つ組｛フレーズ１、フレーズ２、ラベル｝が入力として与えられた際に、３つの組み合わせの信頼度スコア（以下関係スコア）を出力する、関係性推定技術がある。関係スコアとは、入力として与えた３つ組｛フレーズ１、フレーズ２、ラベル｝の組み合わせが正しいか否かを数値化したものである。【０００３】
非特許文献１は、コーパスを入力とし、述語項構造の共起情報と節間関係の分布を用いて、前記３つ組を事態間関係知識として獲得するものである。【０００４】
非特許文献２は、人手により作成された大量の３つ組データを使って、ニューラルネットワークの学習を行い、関係スコアを推定するものである。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】大友謙一、柴田知秀、黒橋禎夫、「述語項構造の共起情報と節間関係の分布を用いた事態間関係知識の獲得」、言語処理学会 第17 回年次大会 発表論文集 (2011 年3 月)
【非特許文献２】Xiang Li, Aynaz Taheri, Lifu Tu, Kevin Gimpel," Commonsense Knowledge Base Completion ", Proc. of ACL, 2016.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来技術では、関係性推定において３つ組｛フレーズ１、フレーズ２、ラベル｝を入力とし、関係スコアを出力するためのモデルを学習している。そのため｛フレーズ１、ラベル｝を入力としてフレーズ２を予測したいような場合には、フレーズ２を用意し｛フレーズ１、フレーズ２、ラベル｝という組み合わせを作成してから関係スコアを計算する必要があり、｛フレーズ１、ラベル｝を入力として、フレーズ１と、ラベルにより定義される関係性を持つ、任意のフレーズ２を生成することはできないという課題がある。【０００７】
本発明は、上記課題を解決するために成されたものであり、入力フレーズに対して関係性を有するフレーズを生成することができるフレーズ生成モデルを学習することができるフレーズ生成モデル学習装置、方法、及びプログラムを提供することを目的とする。【０００８】
また、入力フレーズに対して関係性を有するフレーズを生成することができるフレーズ生成装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明に係るフレーズ生成モデル学習装置は、フレーズの組み合わせと、フレーズ間の関係性を表わす接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる３つ組を学習データとして用いて、フレーズと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる２つ組から、フレーズをベクトルに変換するエンコーダ、及び前記変換されたベクトルと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルとから、前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習する学習部を含んで構成されている。【００１０】
本発明に係るフレーズ生成モデル学習方法は、学習部が、フレーズの組み合わせと、フレーズ間の関係性を表わす接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる３つ組を学習データとして用いて、フレーズと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる２つ組から、フレーズをベクトルに変換するエンコーダ、及び前記変換されたベクトルと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルとから、前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習する。【００１１】
また、本発明に係るフレーズ生成装置は、入力フレーズと、フレーズ間の関係性を表わす接続表現又は関係ラベルとの少なくとも一方とからなる２つ組を入力とし、予め学習されたフレーズ生成モデルに基づき、前記入力フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するフレーズ生成部を含んで構成されている。【００１２】
本発明に係るフレーズ生成方法は、フレーズ生成部が、入力フレーズと、フレーズ間の関係性を表わす接続表現又は関係ラベルとの少なくとも一方とからなる２つ組を入力とし、予め学習されたフレーズ生成モデルに基づき、前記入力フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成する。【００１３】
本発明に係るプログラムは、コンピュータを、上記発明に係るフレーズ生成モデル学習装置又はフレーズ生成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１４】
本発明のフレーズ生成モデル学習装置、方法、及びプログラムによれば、フレーズをベクトルに変換するエンコーダ、及び前記変換されたベクトルと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルとから、前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習することにより、入力フレーズに対して関係性を有するフレーズを生成することができるフレーズ生成モデルを学習することができる、という効果が得られる。【００１５】
本発明のフレーズ生成装置、方法、及びプログラムによれば、フレーズと、前記接続表現又は前記接続表現が表す関係性を示す関係ラベルの少なくとも一方とからなる２つ組から、フレーズ生成モデルに基づき、入力フレーズに対して関係性を有するフレーズを生成することができる、という効果が得られる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施の形態に係る関係性推定装置の構成を示すブロック図である。
【図２】関係スコアの計算方法を説明するための図である。
【図３】関係スコアの計算方法を説明するための図である。
【図４】本発明の第１の実施の形態に係る関係性推定モデル学習装置の構成を示すブロック図である。
【図５】本発明の第１の実施の形態に係る関係性推定モデル学習装置の学習データ生成部の構成を示すブロック図である。
【図６】入力テキストの一例を示す図である。
【図７】係り受け解析結果の一例を示す図である。
【図８】接続表現データベースの一例を示す図である。
【図９】本発明の第１の実施の形態に係る関係性推定モデル学習装置における関係性推定モデル学習処理ルーチンを示すフローチャートである。
【図１０】本発明の第１の実施の形態に係る関係性推定装置における関係性推定処理ルーチンを示すフローチャートである。
【図１１】フレーズ生成モデルの一例を示す図である。
【図１２】本発明の第２の実施の形態に係るフレーズ生成装置の構成を示すブロック図である。
【図１３】本発明の第２の実施の形態に係るフレーズ生成装置におけるフレーズ生成処理ルーチンを示すフローチャートである。
【図１４】関係性推定モデル及びフレーズ生成モデルの一例を示す図である。
【図１５】本発明の第３の実施の形態に係るフレーズ生成装置の構成を示すブロック図である。
【図１６】本発明の第３の実施の形態に係るフレーズ生成装置におけるフレーズ生成処理ルーチンを示すフローチャートである。
【図１７】コンピュータのハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１８】
［第１の実施の形態］
＜本発明の第１の実施の形態の概要＞
関係性推定では、２つのテキストとその間の関係性を表す接続表現又は関係ラベルであるラベルからなる３つ組｛フレーズ１、フレーズ２、ラベル｝が入力として与えられた際に、３つの組み合わせの信頼度スコア（以下関係スコア）を出力する。
【００１９】
ここで、接続表現とは、「ので」など、文中における、関係を表す表現そのものであり、関係ラベルとは、「理由」「結果」など、関係を表すラベルであり、接続表現の持つ意味を抽象化したものである。ラベルとは、接続表現や、関係ラベルを含む上位概念であり、「ので」「理由」などのラベルデータのことである。
【００２０】
例えば、入力となる３つ組が、｛テキスト１：雨が降る，テキスト２：地面が濡れる，ラベル：結果｝であり、出力が関係スコアとなる。
【００２１】
本実施の形態では、２つのテキストの関係として、ラベルが正しいか否かを推定する方法について説明する。
【００２２】
また、本発明の実施の形態では接続表現を起点として、係り受け構造を用いてフレーズとその間をつなぐ接続表現の３つ組を抽出する。そして、抽出した３つ組を用いて、関係性を推定するニューラルネットワークモデルである関係性推定モデルを学習する。
【００２３】
＜本発明の第１の実施の形態に係る関係性推定装置の構成＞
【００２４】
次に、本発明の第１の実施の形態に係る関係性推定装置の構成について説明する。図１に示すように、本発明の第１の実施の形態に係る関係性推定装置１００は、ＣＰＵと、ＲＡＭと、後述する関係性推定処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この関係性推定装置１００は、機能的には図１に示すように入力部１０と、演算部２０と、出力部４０とを備えている。
【００２５】
入力部１０は、２つのフレーズ（テキスト）と、その間の関係性を表す接続表現であるラベルからなる３つ組｛フレーズ１、フレーズ２、ラベル｝を受け付ける。
【００２６】
なお、本実施の形態では、３つ組に含まれる、２つのテキスト間の関係性を表すラベルとして、接続表現そのものを用いる場合を例に説明する。
【００２７】
演算部２０は、推定部２１と、記憶部２２とを備える。
【００２８】
記憶部２２には、後述する関係性推定モデル学習装置１５０により学習された、関係性推定モデルが記憶される。
【００２９】
関係性推定モデルにはニューラルネットワークを用いることとし、学習方法については関係性推定モデル学習装置１５０において説明する。ニューラルネットワークであればどのようなものでもよい。また、別の機械学習でもよいが、ニューラルネットワークの方が効果は高い。
【００３０】
推定部２１は、記憶部２２に記憶されている関係性推定モデルを用いて、入力された３つ組に対する関係スコアを推定し、出力部４０により出力する。
【００３１】
関係スコアとは、入力として与えた３つ組の２つのフレーズ間にラベルが示す関係性があるか否かを数値化したものである。例えば、０〜１の値を取り、１に近い程、関係があることを示すものとする。
【００３２】
推定部２１の処理について以下に説明する。
【００３３】
まず入力｛フレーズ１、フレーズ２、ラベル｝の３つをそれぞれベクトルに変換する。
【００３４】
変換したフレーズ１のベクトルをh、フレーズ２のベクトルをt、接続表現のベクトルをrとする。変換方法は、フレーズや単語をベクトル化する手法であれば何でもよい。本実施の形態では参考文献１の手法を利用する。
【００３５】
［参考文献１］Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado, and Jeffrey Dean. Distributed Representations of Words and Phrases and their Compositionality. In Proceedings of NIPS, 2013.
【００３６】
関係スコア計算方法には、以下の２つの方法が考えられる。
【００３７】
（スコア計算方法１）
図２に示すように、h、t、rを連結し、多層パーセプトロンなどを用いて、１次元の出力値である関係スコアscore(h, t, r)を出力する。
【００３８】
（スコア計算方法２）
図３に示すように、hとrを連結し、多層パーセプトロンなどを用いて、r次元のベクトルE_hrを出力し、tから、多層パーセプトロンなどを用いて、r次元のベクトルE_tを出力し、E_hrとE_tの近さで関係スコアを計算する。両ベクトルの近さは、例えばコサイン類似度等を用いればよい。
【００３９】
例えば、推定部２１は、３つ組｛フレーズ１：雨が降る，フレーズ２：地面が濡れる，ラベル：ので｝に対して、関係スコア0.87を出力する。
【００４０】
また、推定部２１は、出力された関係スコアを所定の閾値で判定し、フレーズ１とフレーズ２には「ので」が示す「結果」という関係性があるか否かを推定する。例えば、関係スコアの値が0.6、閾値が0.4の場合は、0.6>0.4なので関係性がある、と推定する。ただし、閾値判定は知識獲得や0/1にスコアを落とし込む必要がある場合なので、用途によっては閾値判定を行わずに、関係スコアの値をそのまま出力してもよい。
【００４１】
＜本発明の第１の実施の形態に係る関係性推定モデル学習装置の構成＞
次に、本発明の第１の実施の形態に係る関係性推定モデル学習装置の構成について説明する。図４に示すように、本発明の実施の形態に係る関係性推定モデル学習装置１５０は、ＣＰＵと、ＲＡＭと、後述する関係性推定モデル学習処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この関係性推定モデル学習装置１５０は、機能的には図４に示すように入力部５０と、演算部６０と、出力部９０とを備えている。
【００４２】
入力部５０は、入力テキストを受け付ける。
【００４３】
演算部６０は、学習データ生成部６２と、学習部６３とを備えている。
【００４４】
学習データ生成部６２は、図５に示すように、基本解析部７１と、フレーズ抽出部７２と、接続表現データベース７３とを備えている。
【００４５】
基本解析部７１は、入力テキストに対して係り受け解析を行う。
【００４６】
図６に、入力テキストの例を示し、図７に、係り受け解析結果の例を示す。係り受け解析は任意のものを用いればよく、例えば、既知の形態素解析器であるCaboChaを利用する。
【００４７】
フレーズ抽出部７２は、係り受け解析結果からフレーズを抽出する。本実施の形態では、フレーズとは、係り受け関係にある主語と述語を最小単位として，その他形容詞節を最大n個（nは任意の自然数）まで考慮するものとする。
【００４８】
上記図７を係り受け解析結果の例とすると、下記のようなフレーズが抽出される。フレーズを抽出する際には、解析結果の原型（ただし、必ずしも原型にしなくてもよい）を利用し、「壊れたので」→「壊れる」、「買い換えました」→「買い換える」のように変換したものを抽出する。
【００４９】
携帯電話が壊れる
買い換える
ｘｘｘ7に買い換える
ｘｘｘ5を換える
【００５０】
なお、フレーズを抽出する際には、基本的に主語＋動詞の組み合わせを基本単位とするが、サ変名詞動詞は単独でもよいものとする。
【００５１】
また、係り受け関係を考慮せずに、接続表現の前後の文字列それぞれを、フレーズとして抽出してもよい。例えば、「ａａａａ［接続表現］ｂｂｂｂ」という文が存在する場合に、「ａａａａ」と「ｂｂｂｂ」とをそれぞれフレーズとして抽出してもよい。この場合、［接続表現］が接続表現を含む文節を表し、「ａａａａ」と「ｂｂｂｂ」が接続表現を含む前記文節を挟んで、前及び後の位置関係にあるフレーズを表している。
【００５２】
そして、フレーズ抽出部７２は、上記フレーズの組み合わせのうち、接続表現が含まれる文節と係り受け関係にあるフレーズを抽出し、｛フレーズ１、フレーズ２、接続表現｝からなる３つ組を作成する。
【００５３】
本実施の形態においてラベルとして用いる接続表現とは、フレーズ間の関係性を表す表現であらかじめ定められたものとする。例えば、「なので」「ので」「ために」「と」「たら」「場合」「とき」「時」「ば」「から」「が」などの接続詞は接続表現として用いることが可能である。本実施の形態では、図８（Ａ）に示すように、接続表現データベース７３に接続表現が予め登録されているものとする。
【００５４】
上記図７の係り受け解析結果の例では、以下の３つ組が作成される。
【００５５】
｛携帯電話が壊れる、買い換える、ので｝
｛携帯電話が壊れる、ｘｘｘ7に買い換える、ので｝
｛携帯電話が壊れる、ｘｘｘ5を買い換える、ので｝
【００５６】
接続表現の種類をＮ通りとすると、最終的な３つ組に含まれるラベルの種類はＮ通りとなる。
【００５７】
また、フレーズ抽出部７２の別の実施例として、上記のように３つ組を抽出してそのまま出力する方法（抽出方法１とする）以外に、抽出後に次の３通りの処理を行う方法がある。
【００５８】
（抽出方法２）
図８（Ｂ）に示すように、接続表現データベース７３に、接続表現と接続表現が表す関係性を示す関係ラベルが予め登録されているものとする。
【００５９】
接続表現データベース７３を用いて、接続表現を関係ラベルに変換して｛フレーズ１、フレーズ２、関係ラベル｝を出力する。
【００６０】
上記図７の係り受け解析結果の例では、以下の３つ組が作成される。
【００６１】
｛携帯電話が壊れる、買い換える、原因｝
｛携帯電話が壊れる、ｘｘｘ7に買い換える、原因｝
｛携帯電話が壊れる、ｘｘｘ5を買い換える、原因｝
【００６２】
関係ラベルの種類をＭ通りとすると、最終的に出力されるラベルの種類はＭ通りとなる。
【００６３】
上記抽出方法２を用いる場合には、関係性推定装置１００の入力となる３つ組は、｛フレーズ１、フレーズ２、関係ラベル｝となる。
【００６４】
（抽出方法３）
人手により、接続表現を関係ラベルに変換したもの｛フレーズ１、フレーズ２、関係ラベル｝、抽出方法２の｛フレーズ１、フレーズ２、関係ラベル｝を合わせて出力する。最終的に出力されるラベルの種類はＭ通りとなる。
【００６５】
上記抽出方法３を用いる場合には、関係性推定装置１００の入力となる３つ組は、｛フレーズ１、フレーズ２、関係ラベル｝となる。
【００６６】
（抽出方法４）
人手により、接続表現を関係ラベルに変換したもの｛フレーズ１、フレーズ２、関係ラベル｝と、抽出方法１の｛フレーズ１、フレーズ２、接続表現｝を合わせて出力する。最終的に出力されるラベルの種類はＮ＋Ｍ通りとなる。
【００６７】
上記抽出方法４を用いる場合には、関係性推定装置１００の入力となる３つ組は、｛フレーズ１、フレーズ２、接続表現｝又は｛フレーズ１、フレーズ２、関係ラベル｝となる。
【００６８】
なお、上記の抽出方法１〜抽出方法４では日本語の文書の係り受け解析結果を用いて３つ組｛フレーズ１、フレーズ２、関係ラベル｝を抽出したが、例えば、英語の場合は参考文献２に記載されている方法により３つ組を抽出すればよい。
【００６９】
［参考文献２］
Zhiyi Luo, Yuchen Sha, Kenny Q. Zhu, Seung-won Hwang, and Zhongyuan Wang. 2016. Commonsense causal reasoning between short texts. In Proceedings of the Fifteenth International Conference on Principles of Knowledge Representation and Reasoning, KR'16, pages 421-430. AAAI Press.
【００７０】
ただし、必ずしも日本語の文書や英語の文書から３つ組が抽出される必要はなく、本発明の各実施形態は任意の言語の文書から抽出された３つ組を用いることが可能である。
【００７１】
学習部６３は、学習データ生成部６２で抽出した３つ組｛フレーズ１、フレーズ２、ラベル｝を学習における正解データとして用い、関係性推定モデルの学習を行う。
【００７２】
関係性推定モデルは前述したように、多層パーセプトロン等のニューラルネットワーク（以下ＮＮ）を用い、下記の方法で損失計算を行い、ＮＮのパラメータの更新を行うこととする。
【００７３】
なお、学習に用いるデータは、負例を足して用いる事とし、正例の３つ組の一つの要素をランダムに置き換えたものを負例とする。
【００７４】
（損失計算方法１）
上記の関係スコア計算方法１に対応して、以下の式で損失計算を行う。
【００７５】
【数１】
2019167835.tif 000003
【００７６】
ただし、score(h', t', r')は、負例のスコアを表す。Lossの計算は，hinge loss, sigmoid loss, softmax lossなどが利用可能である。
【００７７】
（損失計算方法２）
上記の関係スコア計算方法２に対応して、以下の式で損失計算を行う。
【００７８】
【数２】
2019167835.tif 000004
【００７９】
ただし、E_h'r'−E_t'は、負例のスコアを表す。Lossの計算は，hinge loss, sigmoid loss, softmax lossなどが利用可能である。
【００８０】
＜本発明の第１の実施の形態に係る関係性推定モデル学習装置の作用＞
次に、本発明の第１の実施の形態に係る関係性推定モデル学習装置１５０の作用について説明する。入力部５０において入力テキストを受け付けると、関係性推定モデル学習装置１５０は、図９に示す関係性推定モデル学習処理ルーチンを実行する。
【００８１】
まず、ステップＳ１００で、入力テキストに対して係り受け解析を行う。
【００８２】
そして、ステップＳ１０２で、入力テキストに対する係り受け解析結果に基づいて、フレーズを抽出する。
【００８３】
ステップＳ１０４では、上記ステップＳ１０２で抽出されたフレーズの組み合わせのうち、接続表現が含まれる文節と係り受け関係にあるフレーズを抽出し、｛フレーズ１、フレーズ２、ラベル｝からなる３つ組を作成する。
【００８４】
ステップＳ１０６では、上記ステップＳ１０４で作成された３つ組に含まれるフレーズ１、フレーズ２、及びラベルの各々をベクトルに変換する。
【００８５】
そして、ステップＳ１０８では、３つ組｛フレーズ１、フレーズ２、ラベル｝をベクトルに変換した結果を、学習における正解データとして用い、関係性推定モデルの学習を行い、関係性推定モデル学習処理ルーチンを終了する。
【００８６】
＜本発明の第１の実施の形態に係る関係性推定装置の作用＞
次に、本発明の第１の実施の形態に係る関係性推定装置１００の作用について説明する。関係性推定モデル学習装置１５０によって予め学習された関係性推定モデルが関係性推定装置１００に入力されると、関係性推定装置１００は、関係性推定モデルを記憶部２２へ格納する。そして、入力部１０が、推定対象の３つ組｛フレーズ１、フレーズ２、ラベル｝を受け付けると、関係性推定装置１００は、図１０に示す関係性推定処理ルーチンを実行する。
【００８７】
ステップＳ１２０で、入力部１０により受け付けた３つ組に含まれるフレーズ１、フレーズ２、及びラベルの各々をベクトルに変換する。
【００８８】
ステップＳ１２２では、上記ステップＳ１２０で３つ組｛フレーズ１、フレーズ２、ラベル｝をベクトルに変換した結果と、関係性推定モデルとに基づいて、関係スコアを算出する。
【００８９】
ステップＳ１２４では、上記ステップＳ１２２で算出された関係スコアが所定の閾値以上であるか否かを判定することにより、フレーズ１とフレーズ２にはラベルが示す関係性があるか否かを判定し、判定結果を出力部４０により出力して、関係性推定処理ルーチンを終了する。
【００９０】
以上説明したように、本発明の第１の実施の形態に係る関係性推定モデル学習装置によれば、入力テキストに対する係り受け解析結果に基づいて、フレーズ間の関係性を表わす接続表現が含まれる文節と係り受け関係にあるフレーズの組み合わせを抽出し、フレーズの組み合わせと接続表現又は関係ラベルとからなる３つ組を作成することにより、学習データの作成コストをかけることなく、フレーズ間の関係性を精度良く推定することができる関係性推定モデルを学習することができる。
【００９１】
また、上記抽出方法１または２を用いる場合には、入力テキストから接続表現を用いて抽出した３つ組のデータを学習データとして、フレーズのニューラル関係知識推定モデルを構築することにより、人手データなしに、接続表現に基づくニューラル関係性のモデル化が可能となる。また、人手の正解なしで，あらかじめ定めた関係ラベルと任意のフレーズの３つ組みに対する関係スコアを求めるモデルを構築することができる。
【００９２】
上記抽出方法２を用いる場合には、「ので」のような接続表現そのものではなく、「原因」のように抽象化した関係性の推定ができる。
【００９３】
また、上記抽出方法３を用いる場合には、接続表現と関係ラベルが一対一に対応しない場合（例えば、接続表現「ため」と関係ラベル「原因」「目的」）でも、人手で与えられたデータを元に間違いを訂正して学習できる。
【００９４】
また、上記抽出方法４を用いる場合には、「ので」のような接続表現そのものと、「原因」のように抽象化した関係の両方が推定ができる。また、抽出方法３の効果も得られる。人手対応づけラベルと、接続表現を混ぜるパタンでは、人手変換きる確実なラベルとそうでない場合を同時に考慮するモデルを作ることができる。
【００９５】
また、本発明の第１の実施の形態に係る関係性推定装置によれば、フレーズ間の関係性を精度良く推定することができる。
【００９６】
［第２の実施の形態］
＜本発明の第２の実施の形態の原理＞
まず、入力フレーズに対して関係性を有するフレーズを生成するモデルについて説明する。本実施の形態では、フレーズを生成するためにニューラルネットワークにおけるアテンションベースのEncoder-decoderモデルを、フレーズ生成モデルとして用いる（図１１参照）。さらに、従来のアテンションベースのEncoder-decoderモデルに加えて関係ラベルの情報を考慮する点が従来のモデルと異なる。Encoder-decoderモデルは、テキストに対応する情報を中間状態（ベクトルの系列。以降、中間出力ともいう。）に変換する機能を担うニューラルネットワーク（これを「エンコーダ」という）と、中間出力をテキストに変換する機能を担うニューラルネットワーク（これを「デコーダ」という）とから構成されるニューラルネットワークである。デコーダでは、ラベルrを各時刻の入力として用いている。
【００９７】
本実施の形態ではフレーズの単語列に加えて、ラベルrの情報が存在するため、関係ラベルを考慮したEncoder-decoderモデルを構築する。ここで、入力フレーズの単語ベクトル系列をX=(x1, x2, …, xJ)、出力フレーズの単語ベクトル系列をY=(y1, y2, …, yT)とすると、Yの出力確率は下記のように定式化できる。
【００９８】
【数３】
2019167835.tif 000005
【００９９】
ここで、xj, ytは入力/出力フレーズに含まれる単語を所定次元のベクトルに変換したものである。単語の所定次元のベクトルへの変換方法は、ニューラルネットワークに単語を入力する際の、一般的な変換方法を用いればよい。入力/出力フレーズは、単語ベクトル系列となる。
【０１００】
vrはラベルに対応する所定次元のベクトルである。ラベルは、例えば以下のようにベクトルに変換する。
【０１０１】
1. ラベルの種類をMとし、各ラベルに1からMまでの番号を割り当てる。
【０１０２】
2. ベクトルvrは、当該ラベルに割り当てられた番号の要素が1で、それ以外の要素が0となるM次元のone-hotベクトルrに対し、ニューラルネットワークのパラメータ行列を用いて重みづけを行ったものとなる。
【０１０３】
上記のように、単語やラベルをニューラルネットワーク内で用いるベクトル表現に変換する際のニューラルネットワークのパラメータを、以降embeddingと呼ぶ。
【０１０４】
ctはattentionで重みづけられた入力側のコンテキストベクトル、stはLSTMの隠れ層の中間出力を表す。上記に示すように、デコーダの入力としてvrを結合して用いている。このような方法でデコーダ側に追加情報としてラベルを入力する方法については参考文献３などでも類似の手法が提案されているが、フレーズを生成するために本構成のようなモデルを提案している既存手法は存在しない。パラメータθはニューラルネットワークの学習可能なパラメータの集合を表し、学習によって求められる。
【０１０５】
［参考文献３］
Jiwei Li, Michel Galley, Chris Brockett, Georgios Spithourakis, Jianfeng Gao, and Bill Dolan. A persona-based neural conversation model. In Proceedings of the 54th Annual Meeting of the ACL, pp. 994-1003, 2016.
【０１０６】
本実施の形態では、フレーズ生成装置２００のEncoder-decoderモデルのパラメータは、予め学習しておく必要がある。その際の学習データとして３つ組データを用いる。３つ組データの場合、どちらのフレーズを入力としても問題ないため、１組の｛フレーズ１、フレーズ２、ラベル｝を用いて、｛フレーズ１、ラベル：r｝を入力として｛フレーズ２｝を推定する場合と、｛フレーズ２、ラベル：r′｝を入力として｛フレーズ１｝を推定する場合のように、入力と出力を入れ替えたデータについても学習を行う。この際、ラベルが表す関係性には方向があるため、新たに逆向きのラベルr′を導入する。従って、Encoder-decoderモデルにおいては、関係ラベルの語彙数は元のラベルの語彙数の2倍になる。
【０１０７】
また、Encoder-decoderの損失関数Lencdecについては、通常のEncoder-decoderモデルと同様にcross entropy関数を用いて次のように表す。
【０１０８】
【数４】
2019167835.tif 000006
【０１０９】
ここで、Nはデータ数、Lは出力側のフレーズYの単語数、ctは入力側のコンテキストベクトル、rはラベルを表す。
【０１１０】
＜本発明の第２の実施の形態に係るフレーズ生成装置の構成＞
次に、本発明の第２の実施の形態に係るフレーズ生成装置の構成について説明する。図１２に示すように、本発明の第２の実施の形態に係るフレーズ生成装置２００は、ＣＰＵと、ＲＡＭと、後述するフレーズ生成処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このフレーズ生成装置２００は、機能的には図１２に示すように入力部２１０と、演算部２２０と、出力部２４０とを備えている。
【０１１１】
入力部２１０は、入力フレーズ（テキスト）と、フレーズ間の関係性を表すラベルとからなる２つ組を受け付ける。
【０１１２】
演算部２２０は、フレーズ生成部２２１と、記憶部２２２とを備える。
【０１１３】
記憶部２２２には、後述するフレーズ生成モデル学習装置により学習された、フレーズ生成モデルが記憶される。
【０１１４】
フレーズ生成モデルには上述したようにアテンションベースのEncoder-decoderモデル（上記図１１参照）を用いることとし、学習方法についてはフレーズ生成モデル学習装置において説明する。
【０１１５】
フレーズ生成部２２１は、記憶部２２２に記憶されているフレーズ生成モデルを用いて、入力された２つ組の入力フレーズに対してラベルが表す関係性を有するフレーズを生成し、出力部２４０により出力する。
【０１１６】
具体的には、まず、エンコーダのLSTMにより、入力フレーズをベクトルに変換し、アテンションベースのデコーダを用いて、変換されたベクトルと、入力されたラベルを表すベクトルとから、フレーズを生成し、入力フレーズに対してラベルが表す関係性を有するフレーズとして出力する。
【０１１７】
＜本発明の第２の実施の形態に係るフレーズ生成モデル学習装置の構成＞
次に、本発明の第２の実施の形態に係るフレーズ生成モデル学習装置の構成について説明する。なお、フレーズ生成モデル学習装置の構成は、第１の実施の形態に係る関係性推定モデル学習装置１５０と同様の構成であるため、同一符号を付して説明を省略する。
【０１１８】
本発明の第２の実施の形態に係るフレーズ生成モデル学習装置は、入力部５０と、演算部６０と、出力部９０とを備えている。
【０１１９】
演算部６０の学習部６３は、学習データ生成部６２で抽出した３つ組｛フレーズ１、フレーズ２、ラベル｝を学習データとして用いて、フレーズ生成モデルの学習を行う。
【０１２０】
フレーズ生成モデルは前述したように、アテンションベースのEncoder-decoderモデルを用い、上記（４）式に示す損失関数の計算を行い、エンコーダ及びデコーダのパラメータの更新を行うこととする。
【０１２１】
また、３つ組｛フレーズ１、フレーズ２、ラベル｝があるとき、２つ組｛フレーズ１、ラベル｝からフレーズ２の生成、２つ組｛フレーズ２、ラベル｝からフレーズ１の生成を一つのフレーズ生成モデルで学習する。
【０１２２】
両方向の関係を１つのフレーズ生成モデルで扱うため、逆方向のラベルを定義し、ラベルの空間を２倍にしてモデル学習を行う。
【０１２３】
元の３つ組の接続表現のラベルr=rkのとき、逆向きのラベルを新しいラベルrk'として扱う。
【０１２４】
例えば、３つ組｛フレーズ１=テストを受ける、フレーズ２＝勉強する、ラベル＝ために｝があるとき、下記のように２つ生成し、学習データとして用いる。
【０１２５】
２つ組｛テストを受ける、ために｝→勉強する
２つ組｛勉強する、ために'｝→テストを受ける
【０１２６】
＜本発明の第２の実施の形態に係るフレーズ生成モデル学習装置の作用＞
次に、本発明の第２の実施の形態に係るフレーズ生成モデル学習装置の作用について説明する。入力部５０において入力テキストを受け付けると、フレーズ生成モデル学習装置は、上記図９に示す関係性推定モデル学習処理ルーチンと同様の処理ルーチンを実行し、生成された３つ組｛フレーズ１、フレーズ２、ラベル｝から得られる、２つ組｛フレーズ１、ラベル｝→フレーズ２、２つ組｛フレーズ２、ラベル'｝→フレーズ１を、学習における正解データとして用い、フレーズ生成モデルの学習を行う。
【０１２７】
＜本発明の第２の実施の形態に係るフレーズ生成装置の作用＞
次に、本発明の第２の実施の形態に係るフレーズ生成装置２００の作用について説明する。フレーズ生成モデル学習装置によって予め学習されたフレーズ生成モデルがフレーズ生成装置２００に入力されると、フレーズ生成装置２００は、フレーズ生成モデルを記憶部２２２へ格納する。そして、入力部２１０が、推定対象の２つ組｛フレーズ１、ラベル｝を受け付けると、フレーズ生成装置２００は、図１３に示すフレーズ生成処理ルーチンを実行する。
【０１２８】
ステップＳ２２０で、入力部２１０により受け付けた２つ組に含まれるフレーズ１を、フレーズ生成モデルのエンコーダのLSTMによりベクトルに変換する。
【０１２９】
ステップＳ２２２では、フレーズ生成モデルのアテンションベースのデコーダを用いて、上記ステップＳ２２０で変換されたベクトルと、２つ組に含まれるラベルを表すベクトルとから、フレーズを生成し、フレーズ１に対してラベルが表す関係性を有するフレーズ２として出力部２４０により出力して、フレーズ生成処理ルーチンを終了する。
【０１３０】
以上説明したように、本発明の第２の実施の形態に係るフレーズ生成モデル学習装置によれば、フレーズをベクトルに変換するエンコーダ、及び変換されたベクトルと、接続表現又は関係ラベルとから、フレーズに対して接続表現又は関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを学習することにより、入力フレーズに対して関係性を有するフレーズを生成することができるフレーズ生成モデルを学習することができる。
【０１３１】
また、これまでは関係性を有するフレーズ候補をあらかじめ用意する必要があったが、事前に候補を用意することなく関係性を有するフレーズが生成可能となるフレーズ生成モデルを学習することができる。
【０１３２】
また、本発明の第２の実施の形態に係るフレーズ生成装置によれば、フレーズと、接続表現又は関係ラベルとからなる２つ組から、フレーズをベクトルに変換するエンコーダ、及び変換されたベクトルと、接続表現又は関係ラベルとから、フレーズに対して接続表現又は関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを用いることにより、入力フレーズに対して関係性を有するフレーズを生成することができる。
【０１３３】
また、ラベルを、Encoder-decoderモデルの追加入力として扱うことにより、ラベルによって異なるフレーズ生成が可能となる。
【０１３４】
［第３の実施の形態］
＜本発明の第３の実施の形態の原理＞
本発明の第３の実施の形態では、図１４に示すような関係性推定モデルとフレーズ生成モデルを同時に学習する。具体的には、入力フレーズを単語ベクトル系列に、ラベルをベクトルに変換するためのembeddingと、単語ベクトル系列からフレーズのベクトルに変換するためのLSTMとを、関係性推定モデルとフレーズ生成モデルとで共有する。それぞれの具体的な構成を下記に示す。
【０１３５】
＜関係性推定モデル＞
まず、第３の実施の形態における関係性推定モデルについて説明する。
【０１３６】
モデルの基本的な構造は上記非特許文献２と類似したモデルを使用するが、入力となるベクトルの生成方法が異なっている。以下具体的に説明するため、まず上記非特許文献２で提案したモデルについて説明する。
【０１３７】
上記非特許文献２では、任意の３つ組｛t1, t2, r｝が与えられた時、３つ組の関係スコアscore(t1, r, t2) を推定するモデルを、ニューラルネットワークを用いて次のように定義している。
【０１３８】
【数５】
2019167835.tif 000007
【０１３９】
ここで、
【０１４０】
【数６】
2019167835.tif 000008
はt1、t2を結合した単語列のベクトル表現、
【０１４１】
【数７】
2019167835.tif 000009
はラベルrのベクトル表現を表す。gは非線形関数を表し、上記非特許文献２ではReLUを用いる。最終層のスコアは1次元の出力とする。これらは、任意の３つ組が与えられた時その３つ組が正しい組み合わせか否かを判別するモデルと考えることができる。
【０１４２】
本実施の形態の関係性推定モデルも上記と同様の定式化を用いて関係性推定モデルを定義するが、vinのモデル化が上記非特許文献２と異なる。上記非特許文献２では、フレーズのベクトル表現として、単語ベクトルの平均、LSTMのmaxpoolingの二種類とシンプルなモデル化を行っている。一方、本実施の形態の関係性推定モデルでは各フレーズのベクトルをLSTMのattention poolingを用いて下記のように定義する。ここで、xij, hijはそれぞれフレーズtiのj番目単語のembedding とLSTMの隠れ層ベクトルを表す。
【０１４３】
【数８】
2019167835.tif 000010
【０１４４】
vinは、batch normalizationとdropoutを行った上で上位の層に受け渡す。各フレーズをベクトル化するためのLSTM、単語・ラベルのembeddingは、上記第２の実施の形態で説明したフレーズ生成モデルと共有する。
【０１４５】
＜学習＞
＜損失関数＞
本実施の形態では、関係性推定モデル及びフレーズ生成モデルの損失関数を同時に考慮しながら学習を行う。具体的には、下記の式に示す損失関数を用いて学習を行う。
【０１４６】
【数９】
2019167835.tif 000011
【０１４７】
ここで、θはモデルパラメータであり、Ltripleは関係性推定モデルに関する損失関数、Lencdecはフレーズ生成モデルに関する損失関数を表す。関係性推定モデルの損失関数LtripleについてはLiら上記非特許文献２の結果から最も精度が良かったbinary cross entropy を用いて下記の式で表す。
【０１４８】
【数１０】
2019167835.tif 000012
【０１４９】
ここで、τは三つ組を表す変数、lは正例に対して1、負例に対して0となるバイナリ変数、σはシグモイド関数である。上記の定式化は、任意の３つ組τ=｛t1, t2, r｝に対して正例のスコアが1、負例のスコアが0に近くなるように学習を行う。
【０１５０】
フレーズ生成モデルのエンコーダ及びデコーダの損失関数については、上記第２の実施の形態と同様である。
【０１５１】
＜負例サンプリング＞
Binary cross entropyを用いて２値分類モデルの学習を行う場合、負例を用意する必要がある。本実施の形態では、上記非特許文献２の研究で最も精度が良かったランダムサンプリングを用いて負例の生成を行う。具体的には、それぞれの正例３つ組データτ=｛t1, t2, r｝に対して、t1、t2、rを1つずつランダムに置き換えたデータτneg1=｛t1', t2, r｝、τneg2=｛t1, t2, r'｝、τneg3=｛t1, t2', r｝を生成する。ランダムにサンプリングされるt'，t2'はそれぞれ学習時に出現した候補からサンプリングされ、r'は全ラベル候補の中からサンプリングされる。従って、学習中は、正例1つにつき3個の負例をサンプリングしながら学習を行う。ただし、負例は関係性推定モデルのみに用いる。フレーズ生成モデルは正しい３つ組から学習を行いたいため、正例の３つ組のみから学習を行う。
【０１５２】
＜本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置の構成＞
次に、本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置の構成について説明する。なお、フレーズ生成関係性推定モデル学習装置の構成は、第１の実施の形態に係る関係性推定モデル学習装置と同様の構成であるため、同一符号を付して説明を省略する。
【０１５３】
本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置は、入力部５０と、演算部６０と、出力部９０とを備えている。
【０１５４】
演算部６０の学習部６３は、学習データ生成部６２で抽出した３つ組｛フレーズ１、フレーズ２、ラベル｝と、当該３つ組｛フレーズ１、フレーズ２、ラベル｝から得られる、２つ組｛フレーズ１、ラベル｝→フレーズ２、２つ組｛フレーズ２、ラベル'｝→フレーズ１とを、学習における正解データとして用い、当該３つ組｛フレーズ１、フレーズ２、ラベル｝から得られる負例を更に用いて、フレーズをベクトルに変換するエンコーダ、及び変換されたベクトルと、ラベルとに基づいて、フレーズに対して当該ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデル、並びに、共通するエンコーダを用いて変換される、フレーズの組み合わせに含まれる各フレーズを表すベクトルと、ラベルを表すベクトルとから、関係スコアを出力するニューラルネットワークである関係性推定モデルを同時に学習する。
【０１５５】
具体的には、上記（１１）式の損失関数を最小化するように、フレーズ生成モデル及び関係性推定モデルのパラメータの更新を行う。
【０１５６】
＜本発明の第３の実施の形態に係るフレーズ生成装置の構成＞
次に、本発明の第３の実施の形態に係るフレーズ生成装置の構成について説明する。なお、第２の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【０１５７】
図１５に示すように、本発明の第３の実施の形態に係るフレーズ生成装置３００は、ＣＰＵと、ＲＡＭと、後述するフレーズ生成処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このフレーズ生成装置３００は、機能的には図１５に示すように入力部３１０と、演算部３２０と、出力部３４０とを備えている。
【０１５８】
入力部３１０は、入力フレーズ（テキスト）と、フレーズ間の関係性を表すラベルとからなる２つ組を受け付ける。
【０１５９】
演算部３２０は、フレーズ生成部２２１と、記憶部３２２と、推定部３２３とを備える。
【０１６０】
記憶部３２２には、フレーズ生成関係性推定モデル学習装置により学習された、関係性推定モデル及びフレーズ生成モデルが記憶される。
【０１６１】
上記図１４に示すように、フレーズ生成モデルには上述したようにアテンションベースのEncoder-decoderモデルを用いることとし、関係性推定モデルについては、上述したように各フレーズのベクトルをLSTMのattention poolingを用いて変換するニューラルネットワークモデルを用いることとする。
【０１６２】
フレーズ生成部２２１は、記憶部３２２に記憶されているフレーズ生成モデルを用いて、入力された２つ組の入力フレーズに対してラベルが表す関係性を有するフレーズを生成し、推定部３２３に出力する。
【０１６３】
推定部３２３は、記憶部３２２に記憶されている関係性推定モデルを用いて、入力された２つ組と、フレーズ生成部２２１により生成されたフレーズとからなる３つ組に対する関係スコアを推定し、出力部３４０により出力する。
【０１６４】
このとき、関係性推定モデルにおいて、フレーズ生成モデルのエンコーダと共通のニューラルネットワークを用いて、各フレーズをベクトルに変換し、各フレーズを表すベクトルと、ラベルを表すベクトルから、関係スコアを推定する。
【０１６５】
＜本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置の作用＞
次に、本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置の作用について説明する。入力部３１０において入力テキストを受け付けると、フレーズ生成関係性推定モデル学習装置は、上記図９に示す関係性推定モデル学習処理ルーチンと同様の処理ルーチンを実行し、生成した３つ組｛フレーズ１、フレーズ２、ラベル｝と、当該３つ組｛フレーズ１、フレーズ２、ラベル｝から得られる、２つ組｛フレーズ１、ラベル｝→フレーズ２、２つ組｛フレーズ２、ラベル'｝→フレーズ１とを、学習における正解データとして用い、当該３つ組｛フレーズ１、フレーズ２、ラベル｝から得られる負例を更に用いて、関係性推定モデルとフレーズ生成モデルとの同時学習を行う。
【０１６６】
＜本発明の第３の実施の形態に係るフレーズ生成装置の作用＞
次に、本発明の第３の実施の形態に係るフレーズ生成装置３００の作用について説明する。フレーズ生成関係性推定モデル学習装置によって予め学習された関係性推定モデル及びフレーズ生成モデルがフレーズ生成装置３００に入力されると、フレーズ生成装置３００は、関係性推定モデル及びフレーズ生成モデルを記憶部３２２へ格納する。そして、入力部３１０が、推定対象の２つ組｛フレーズ１、ラベル｝を受け付けると、フレーズ生成装置３００は、図１６に示すフレーズ生成処理ルーチンを実行する。
【０１６７】
ステップＳ３２０で、入力部３１０により受け付けた２つ組に含まれるフレーズ１を、フレーズ生成モデルのエンコーダのLSTMによりベクトルに変換する。
【０１６８】
ステップＳ３２２では、フレーズ生成モデルのアテンションベースのデコーダを用いて、上記ステップＳ３２０で変換されたベクトルと、２つ組に含まれるラベルを表すベクトルとから、フレーズを生成し、フレーズ１に対してラベルが表す関係性を有するフレーズ２とする。
【０１６９】
ステップＳ３２４では、入力部３１０により受け付けた２つ組と、上記ステップＳ３２２で生成されたフレーズとからなる３つ組と、関係性推定モデルとに基づいて、関係スコアを算出し、算出した関係スコアと共に、当該３つ組を出力部３４０により出力して、フレーズ生成処理ルーチンを終了する。
【０１７０】
以上説明したように、本発明の第３の実施の形態に係るフレーズ生成関係性推定モデル学習装置によれば、フレーズをベクトルに変換するエンコーダ、及び前記フレーズに対して前記接続表現又は前記関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデル、並びに、前記エンコーダを用いて変換される、フレーズの組み合わせに含まれる各フレーズを表すベクトルと、前記接続表現又は前記関係ラベルを表すベクトルを入力として、関係スコアを出力する関係性推定モデルを学習することにより、フレーズ間の関係性を精度良く推定することができる関係性推定モデルと、入力フレーズに対して関係性を有するフレーズを生成することができるフレーズ生成モデルとを同時に学習することができる。また、一部のニューラルネットワークを共通としたフレーズ生成モデルと関係性推定モデルとの同時学習を用いることで，３つ組の関係性推定モデルの精度が向上する。
【０１７１】
また、本発明の第３の実施の形態に係るフレーズ生成装置によれば、フレーズをベクトルに変換するエンコーダ、及びフレーズに対して接続表現又は関係ラベルが表す関係性を有するフレーズを生成するデコーダを含むフレーズ生成モデルを用いて、入力フレーズに対して関係性を有するフレーズを生成し、関係スコアを出力する関係性推定モデルを用いて、関係スコアを推定することにより、関係スコア付きで、入力フレーズに対して関係性を有するフレーズを生成することができる。
【０１７２】
＜実験＞
＜実験データ＞
実験データは、上記非特許文献２が公開しているConceptNet（英語）のデータと、発明者らが独自にアノテーションした日本語のオープンドメインデータを用いる。表１にそれぞれのデータの概要を示す。
【０１７３】
【表１】
2019167835.tif 000013
【０１７４】
ConceptNetの方が、ラベル数が多い。語彙数はいずれも2万程度だが、フレーズの平均単語長は日本語データがConceptNetの倍程度と長くなっている。日本語データに関しては、クラウドソーシングを用いてweb上からクロールした頻出単語に関連する３つ組｛t1, t2, r｝を作成した。ノイズとなるデータを除去するため、ある作成者が作成した３つ組｛t1, t2, r｝について、rを隠した状態で別の3 名のワーカーに適切なrを選択するタスクを行ってもらい、2人以上が同じラベルを選択したデータのみを使用した。また、testデータとvalidationデータに関しては、全員の選択したrが一致したデータからランダムに選択し、それ以外を学習データとした。日本語のtest, validationデータは、ConceptNet データと同様に正例と負例が1:1となるようにデータを作成した。
【０１７５】
具体的には、まず正例をサンプリングした後、各正例の3つ組の要素1つをランダムに選択しテストデータ中の別の要素と置換して作成した。
【０１７６】
＜評価方法と比較手法＞
関係性推定モデルのベースラインとして、上記非特許文献２の手法(DNN AVG, DNN LSTM)を用いる。これらは、入力ベクトルvinがそれぞれ単語ベクトルの平均、LSTMのmaxpoolingをとったものである。ただし、LSTMのモデルでは、t1とt2を別々にベクトル化して連結した。
【０１７７】
本実施の形態の提案手法に関しては、関係性推定モデルを単独で用いた場合（proposed w/o EncDec）と双方を同時に学習した場合（proposed w/ EncDec）の精度評価を行った。評価指標は2値判別の正解率を用いた。また、ConceptNetの実験に関しては上記非特許文献２と同様に、trainデータで学習を行い、validation 1 データでハイパーパラメータの調整、評価をvalidation 2, test データで行った。日本語データも同様にtrain, validation 1, 2でパラメータを決定しtestで評価をした。
【０１７８】
フレーズ生成モデルのベースラインとして、関係ラベルを用いないEncoder-decoder 単独モデル（EncDec w/o relation single）を用いた。また、関係ラベルを考慮した単独モデル（EncDec w/relation single）と、関係性推定モデルとの同時学習（EncDec w/relation Multi）を比較した。評価は、単語レベルの正解率で評価を行った。
【０１７９】
＜実験設定＞
本実験例で用いたパラメータについて説明する。LSTMの隠れ層、単語・ラベルのembedding は200 次元、関係性推定モデルの中間層の次元を10001、学習時のバッチサイズは128、ドロップアウトは0.2、weight decayは0.00001 に設定した。また、フレーズ生成モデルのエンコーダには1層の双方向LSTM、デコーダには1層のLSTMを用いた。最適化法はSGDを用い，初期学習率は1.0に設定し減衰率を0.5としてスケジューリングを行った。
【０１８０】
損失関数のlは1.0に固定した。単語、ラベルのembedding初期値は、３つ組の学習データとWikipedia（Ｒ）を結合したテキストファイルを基にfastText（参考文献４参照）を用いて事前に計算したベクトルを用いた。
【０１８１】
［参考文献４］
Piotr Bojanowski, Edouard Grave, Armand Joulin, and Tomas Mikolov. Enriching word vectors with subword information. arXiv preprint arXiv:1607.04606, 2016.
【０１８２】
＜実験結果＞
＜関係性の推定＞
表２に関係性の推定（2値分類）の評価結果を示す。
【０１８３】
【表２】
2019167835.tif 000014
【０１８４】
下層の行には、上記非特許文献２が論文中で報告している中で最も良い精度を示している。ここで+dataという行は、学習データを100kから300kに増やした場合の評価である。表２の結果より、本発明の実施の形態の提案手法は既存手法に比べて精度が向上しており、ConceptNetのデータでは従来研究の最高値を超える結果が得られた。特に、データを増やした条件では2%以上の精度向上が見られ、人間による上限(〜0.95)にも近づいている。単独モデル(proposed w/o EncDec)と同時学習モデル(proposed w/EncDec)の比較により、ConceptNet、Japanese データともに、同時学習によって単独モデルよりも良い精度が得られていることがわかる。これは、関係性推定問題にとってはフレーズ生成問題の損失関数が制約として働き、より良いフレーズベクトルが得られたためと考えられる。
【０１８５】
＜フレーズ生成＞
表３に、フレーズ生成モデルの精度を示す。
【０１８６】
【表３】
2019167835.tif 000015
【０１８７】
結果から、ベースラインと関係を考慮したEncoder-decoderモデルで大きな精度差が見られ、関係ラベルを考慮することにより生成の精度が大幅に向上していることがわかる。マルチタスク学習にしたことによるフレーズ生成モデル側の精度向上はあまり見られないが、教師なしデータを追加することによりフレーズ生成モデルの精度も向上させることができる。
【０１８８】
最後に、本発明の各実施の形態に係る関係性推定モデル学習装置、関係性推定装置、フレーズ生成装置、フレーズ生成モデル学習装置、及びフレーズ生成関係性推定モデル学習装置を実現するコンピュータのハードウェア構成について説明する。図１７に示すように、コンピュータ５００は、ハードウェアとして、例えば、入力装置５０１と、表示装置５０２と、外部Ｉ／Ｆ５０３と、ＲＡＭ５０４と、ＲＯＭ５０５と、プロセッサ５０６と、通信Ｉ／Ｆ５０７と、補助記憶装置５０８とを備えている。また、これら各ハードウェアは、それぞれがバス５０９を介して通信可能に接続されている。
【０１８９】
入力装置５０１は、例えばキーボードやマウス、タッチパネル等である。表示装置５０２は、例えばディスプレイ等である。なお、コンピュータ５００は、入力装置５０１及び表示装置５０２の少なくとも一方を有していなくてもよい。
【０１９０】
外部Ｉ／Ｆ５０３は、記録媒体５０３ａ等の外部記録媒体とのインタフェースである。記録媒体５０３ａとしては、例えば、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリカード等が挙げられる。
【０１９１】
ＲＡＭ５０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＲＯＭ５０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。
【０１９２】
プロセッサ５０６は、例えばＣＰＵやＧＰＵ等である。通信Ｉ／Ｆ５０７は、コンピュータ５００を通信ネットワークに接続するためのインタフェースである。補助記憶装置５０８は、例えばＨＤＤやＳＳＤ等である。
【０１９３】
なお、関係性推定モデル学習装置、関係性推定装置、フレーズ生成装置、フレーズ生成モデル学習装置、及びフレーズ生成関係性推定モデル学習装置は、１台のコンピュータ５００で実現されていてもよいし、複数台のコンピュータ５００で実現されていてもよい。また、コンピュータ５００は、複数のプロセッサ５０６や複数のメモリ（ＲＡＭ５０４やＲＯＭ５０５、補助記憶装置５０８等）を備えていてもよい。
【０１９４】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１９５】
例えば、上述した実施の形態では、関係性推定装置１００と関係性推定モデル学習装置１５０とを別々の装置として構成する場合を例に説明したが、関係性推定装置１００と関係性推定モデル学習装置１５０とを１つの装置として構成してもよい。また、フレーズ生成装置２００、３００とフレーズ生成モデル学習装置、フレーズ生成関係性推定モデル学習装置とを別々の装置として構成する場合を例に説明したが、フレーズ生成装置２００、３００とフレーズ生成モデル学習装置とを１つの装置として構成してもよい。
【０１９６】
上述の関係性推定モデル学習装置、関係性推定装置、フレーズ生成装置、フレーズ生成モデル学習装置、フレーズ生成関係性推定モデル学習装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【０１９７】
本願は、日本国に２０１８年３月２日に出願された基礎出願２０１８−０３８０５４号に基づくものであり、その全内容はここに参照をもって援用される。
【符号の説明】
【０１９８】
１０、５０、２１０、３１０  入力部
２０、６０、２２０、３２０  演算部
２１、３２３  推定部
２２、２２２、３２２  記憶部
４０、９０、２４０、３４０  出力部
６２  学習データ生成部
６３  学習部
７１  基本解析部
７２  フレーズ抽出部
７３  接続表現データベース
１００  関係性推定装置
１５０  関係性推定モデル学習装置
２００、３００  フレーズ生成装置
２２１  フレーズ生成部
【図１】
2019167835.tif 000016
【図２】
2019167835.tif 000017
【図３】
2019167835.tif 000018
【図４】
2019167835.tif 000019
【図５】
2019167835.tif 000020
【図６】
2019167835.tif 000021
【図７】
2019167835.tif 000022
【図８】
2019167835.tif 000023
【図９】
2019167835.tif 000024
【図１０】
2019167835.tif 000025
【図１１】
2019167835.tif 000026
【図１２】
2019167835.tif 000027
【図１３】
2019167835.tif 000028
【図１４】
2019167835.tif 000029
【図１５】
2019167835.tif 000030
【図１６】
2019167835.tif 000031
【図１７】
2019167835.tif 000032
【国際調査報告】
2019167835.tif 000033
2019167835.tif 000034