情報処理学会研究報告
IPSJ SIG Technical Report

与えた外部情報の再予測モデルを組み込んだニューラル文生成モデルの検討
隆辻 秀和1,a)

吉野 幸一郎1,b)

須藤 克仁1,c)

中村 哲1,d)

概要：言語生成は，与えられた外部情報のセットに対して，自然言語文をドメインに適当な形で生成するタスクである．近年，言語生成に用いられるニューラルネットワークを用いた手法は，より自然で柔軟な応答生成が実現できることが知られている．一方で，入力となる外部情報に対応する文生成を単語予測のモデルで行うため，モデルがどの情報を利用し文を生成したかを説明することが難しい．そこで本研究では，与えた外部情報を生成文に反映することを保証するため，与えた外部情報を再予測するモデルと再予測の結果に対する損失を利用した．アノテーション済みのコーパスを用いた実験を行い，生成された文の評価と，生成文に含まれる情報の精度評価を行った．

1. はじめに
言語生成は自然言語処理における重要なタスクの一つで反映すべき言語的特徴として個人性を取り扱う手法を提案している．この手法では，デコーダの各ステップで反映すべき特徴を表現したベクトルも入力として与えることで条ある．言語生成器は生成で考慮すべき外部情報を入力とし件付き生成を行う．また，Eric ら [6] は Seq2Seq モデルのて受け取り，ドメインや文脈に合わせて適切な文生成を行

エンコーダに，質問文と与えられている外部情報のスロッう．機械翻訳であれば，翻訳元の言語で記述された文が与トの値を入力し，注意機構やコピーメカニズムを利用してえられ，意味を損なわないように翻訳先の言語で記述した

外部情報を出力系列に反映する手法を提案している．

文を生成する．また，質問応答システムではユーザーから

これらのモデルは，生成する単語系列に対する予測誤り

投げかけられた質問文の他に，システムが保持している知を元に学習を行うため，追加で与えた情報が適切に考慮さ識などの追加情報も用いて回答を生成する．

れていることが保証されないという問題がある．この問題

言語生成の手法として，テンプレートを用いるものやルーは，特に，先述したような質問応答のシステムにおける応ルに基づく生成など複数の手法が考えられてきた [1], [2], [3]

答生成のように，クエリの他に与えられる外部情報が出力が，近年ではニューラルネットワークを用いた手法が一般に含まれることが期待される状況では大きな課題となる．

的になっている．ニューラルネットワークを用いた手法は，本研究では，モデルに入力文の他に与えた外部情報が生従来の手法に比べて柔軟かつ自然な文生成が行えること

成文に含まれることを保証するような言語生成のモデルをが，さまざまな研究結果より知られている．最もよく知ら提案する．具体的には出力となる単語系列の予測に加えて，れているモデルとして Sequence-to-Sequence (Seq2Seq)[4]与えた外部情報の再予測を行うモデルを用いることで，与がある．入力の単語系列と出力の単語系列が与えられた時

えた外部情報についても損失を計算する．これによってモにモデルが入出力間の対応関係を学習することで，学習時デルが生成する文が与えた外部情報を含むことを期待した．

に存在しない未知の系列に対しても従来手法に比べて自然提案するモデルの有効性を確認するために，先行研究 [6]な生成を可能にしている．

と同じコーパスを用いて実験を行い，結果を確認した．

入力として文以外の外部情報を考慮するような言語生成
モデルはさまざまに提案されている．Li ら [5] は出力文に

2. 関連研究
ニューラルネットワークを用いた言語生成において，入

1

a)
b)
c)
d)

奈良先端科学技術大学院大学
NARA Institute of Science and Technology
takatsuji.hidekazu.sx1@is.naist.jp
koichiro@is.naist.jp
sudoh@is.naist.jp
s-nakamura@is.naist.jp

c 1959 Information Processing Society of Japan⃝

力となる文以外の情報を考慮して生成を行うという研究は広く行われている．Seq2Seq によるモデルの他に，メモリ
ネットワークと呼ばれる Key-Value 構造を行列で表現したネットワークによって外部情報を考慮するモデルが広く

1

情報処理学会研究報告
IPSJ SIG Technical Report
Encoder

Frame Encoder(s1,v1)AB(s2,v2)

Decoder(s3,v3)

Frame Decoder

X

Y

Z

<EOS>

<SOS>

X

Y

Z

(s1,v1)(s2,v2)(s3,v3)<End><Start> (s1,v1)(s2,v2)(s3,v3)C

図 1

提案モデルの概要

Fig. 1 A blueprint of proposed model

知られている．Sukhbaatar ら [7] は外部情報を Key-Value

Seq2Seq における枠組みと同様にクエリ q を受け取り，からなる辞書オブジェクトとみなし，入力として与えられ応答文 r を生成する．提案モデルでは，外部情報 F を与えるクエリとの間の内積注意を計算することで，外部情報をるためにフレームエンコーダを導入し，これをクエリに対参照した応答生成を行うモデルを提案している．このモデするエンコーダの後段に接続する．また，与えた外部情報

ルでは回答が一つの単語に定まるような質問応答タスクにが文 r に含まれることを保証するために，学習時のみ与えおいて有効性が確認されている．また，Madotto ら [8] はた外部情報 F を再予測するフレームデコーダを通常のデ

Sukhbaatar らのモデルの拡張を行い，入力として与えらコーダの後段に接続する．これらの改良によって，与えたれるクエリもまたメモリに入力することで，出力として単

外部情報が出力に含まれることを保証することを目的とし語の系列を予測するモデルを提案している．

ている．

Seq2Seq の枠組みの上で，生成文の中にあらかじめ定められた辞書オブジェクトの値を埋め込むという研究とし

3.1 エンコーダて，Qian ら [9] によるものが知られている．この研究で応答生成におけるコンテキストの一つであるクエリ q =は，システムに与えられた辞書オブジェクトの値を利用す{q1 , q2 , . . . , qN } を一般的な Seq2Seq モデルと同様に Re-

るかどうか決定する予測器を用意し，予測期の出力に応じ

current Neural Network (RNN) を用いて単一のベクトルてデコード方法を変化させるという手法を取っている．本

表現に変換する．RNN のユニットには LSTM[11] を利用研究における手法と異なり，この手法では与えられた辞書

し，双方向 RNN を利用した．

オブジェクトのある Key-Value の組しか考慮できないという問題があるが，一方で辞書オブジェクト内の値が必ず出力されるようにデコードを実行しているため，出力にKey-Value の値を反映することを従来モデルに比べてより良い形で保証することができる．
これらの先行研究に対して提案モデルでは，目的の異なる複数のモデルを同時に学習させることで，生成タスクの精度を向上させることを意図している．このような学習はマルチタスク学習と呼ばれ，系列モデルに対してマルチタ
スク学習を適用する手法は既に Luong ら [10] によって研究されている．Luong らの研究ではエンコーダとデコーダに対して 1 対多や多対多のモデルについて取り上げており，
これらのケースでは個々のエンコーダあるいはデコーダについては並列の関係となっている．一方で，本研究では複数のエンコーダ及びデコーダを直列に取り扱っており，この点において先行研究と異なる．

3. 条件付き応答生成モデル
本研究で提案するニューラル文生成モデルについて図 1に提案モデルの概要を示す．

c 1959 Information Processing Society of Japan
⃝

−
→enc
−
→
h t = RNN(qt , h enc
t−1 )
←
−enc
←
−enc
h t = RNN(qt , h t+1 )

(1)
(2)

3.2 フレームエンコーダ
生成時に外部情報 F = {(s1 , v1 ), (s2 , v2 ), . . . , (sK , vK )}によって生成文を制約するために，外部情報 F をエンコー
ダによって得られるベクトル表現と同様のベクトル表現に変換する．外部情報はスロット s とスロットに紐づく値 vからなる組のセットとして表現されるが，これを任意の順序を持つ (s, v) の組の系列とみなして単方向 RNN を用いてエンコードする．フレームエンコーダは通常のエンコー
ダの後段に接続する形で利用するため，隠れ状態の初期状
態はエンコーダの最終ステップにおける隠れ状態となる．
スロットと値の組み合わせ (s, v) をエンコードする手法はいくつか考えられるが，提案モデルでは (s, v) の組をひとつのトークンとしてエンコードする．

2

情報処理学会研究報告
IPSJ SIG Technical Report

−
→
←
−enc
hf0 enc = concat( h enc
N , hN )(3)

enc
hfk enc = RNN((sk , vk ), hfk−1)(4)

4.1 共通設定
実験では生成文が含むべき外部情報についてアノテー
ションが行われたコーパスとして，DSTC2[12] において配布されたデータセットを利用した．コーパスはレストラ

3.3 デコーダ
エンコードされたクエリおよび外部情報を元にして応答文の単語列 r = {r1 , r2 , . . . , rM } を予測する．生成には単方向の RNN を用いて系列の予測を行う．
各ステップで直前の予測単語 rt′ 1 と隠れ状態 hdec
t−1 から
現在の隠れ状態を計算し，単語予測を行う．学習時には′Teacher Forcing を行うため入力単語は直前の予測単語 rt−1

ではなく正解系列における単語 rt−1 を用いる．

ン情報案内についての対話を収録しており，情報を案内するシステムとシステム利用者の発話が収録されている．各
発話には対話状態として対話行為及び発話文が参照するフレームがアノテートされている．コーパス全体で 16,551 件の発話ペアが含まれており，そのうち 15,723 件の発話ペアを学習用に，残りの発話ペアを評価のために利用した．

DSTC2 コーパスには 255 種類の異なるフレームが含まれており，これらを外部情報として利用した．実験では，シ
ステムの発話をクエリとして，システム利用者の各発話に′
hdec= RNN(rt−1, hdectt−1 )decrt′ = softmax(W deco ht )(5)

アノテートされた対話状態のフレームを外部情報として取り扱い，システム利用者の発話を予測した．

(6)

DSTC2 におけるコーパスは含まれる発話ペアの数が少な
く，自然な応答を学習するためには不足していると考えられ

3.4 フレームデコーダ
入力として与えた外部情報 F をデコーダが生成する単語列 r′ に対する制約とすることが，本研究における目的である．しかし，既存のデコーダでは単語予測誤りのみに基づいて損失を計算するため，与えた外部情報について陽に保証する仕組みが存在していない．提案モデルでは，与えた外部情報がデコーダが生成する単語列に考慮されていることを保証するために，与えた外部情報そのものを再予測するフレームデコーダを導入する．フレームデコーダはデ
コーダと同様に単方向の RNN を用いて与えた外部情報の再予測を行う．この時，フレームデコーダが再予測する外部情報の順序はフレームエンコーダに外部情報が与えられた際の順序と同一となるように学習を行う．

dec′
hft dec = RNN((s′t−1 , vt−1), hft−1)(s′t , vt′ ) = softmax(W fo dec hft dec )る．そのため，モデルの事前学習を行うために Reddit*1 より収集した発話ペア，約 50 万件を利用した．
それぞれのコーパスに対する前処理として Sentence-

Piece[13] を用いたトークナイズを行った．トークナイザの学習には Reddit より収集したコーパスを利用し，単語
サイズは 16,000 とした．また，学習時には最適化手法は

Adam[14] を利用した．
4.2 提案モデルの有効性検証
提案モデルの有効性を確認するために，ベースライン
モデルとしてフレームデコーダを含まないモデルを用いて，結果の比較を行った．この実験では，損失関数の重み

α = 1.0 に固定した．
4.3 損失関数の重みによる差異(7)

提案モデルでは単語の予測誤りに基づく損失と外部情報(8)の再予測誤りに基づく損失の二つの損失を考慮している．
学習において，外部情報の再予測誤りに基づく損失をより

3.5 損失関数重視することが，生成文に対して与えた外部情報が反映さ提案モデルは，単語の予測誤りに基づく損失と外部情報れるという保証をより強く与えるものとなるかについて比の予測誤りに基づく損失の二つを学習に用いる．単語予測較を行った．具体的には損失関数の重み α を変更とした時についての交差エントロピー損失 Lw および外部情報予測に，生成文に含まれる外部情報に変化が発生するのかにつについての交差エントロピー損失 Lf r の重みつき線形和

いて実験を行う．実験では α = {2.0, 5.0, 10.0} の場合につL = Lw + αLf r を損失関数として利用する．

いて生成結果の比較を行った．

4. 実験設定

5. 実験結果

提案モデルについて二種類の実験を行った．一つは，提それぞれの実験における結果を判断するために複数の案モデルの有効性に関する実験．もう一つは損失関数がも評価尺度による結果と生成例を示す．評価尺度として，たらす影響についての実験である．はじめに，二つの実験

BLEU[15]，パープレキシティ，Entity. F1, および提案モに共通する設定について述べ，その後に個々の実験で用いた設定について述べる．

c 1959 Information Processing Society of Japan⃝*1

https://reddit.com

3情報処理学会研究報告
IPSJ SIG Technical Report
表 1 生成例の比較

Table 1 A comparison of generation example
query

Hello, welcome to the Cambridge restaurant system? You can ask for restaurants by area, price range or foodtype. How may I help you?

response

restaurant in the south part of town that serves indian foodframe{(food, indian) (area, south)}baseline

im looking for a restaurant in the south part of town that serves indian food

proposed

im looking for a restaurant in the south part of town that serves indian foodquery

I’m sorry but there is no restaurant serving kosher food

response

im looking for a restaurant in the north part of town serving french type of foodframe{(food, french),(area, north)}baseline

i want a restaurant in the north part of town that serves french food

proposed

im looking for a restaurant in the north part of town that serves korean food

表 2

ベースラインと提案モデルの評価尺度による比較

Table 2 A comparison of metric evaluation result between
baseline and proposed model

表 4 再予測に関する損失の重みを変更した際の評価結果

Table 4 A metric evaluation result changing coeﬃcient that
mulplies frame prediction loss

Model

BLEU

Ppl.

Ent.F1

Accuracy

weight

BLEU

ppl.

Ent.F1

Accuracybaseline

55.42

2.189069.15-

α = 2.0

53.71

2.170268.39

0.1162

proposed

56.06

2.192267.67

0.1181

α = 5.0

55.76

2.196568.26

0.1124

α = 10.0

54.79

2.307866.50

0.1272

デルのみを対象として外部情報の再予測精度を用いた．

BLEU は主に機械翻訳における翻訳の評価を行うために

表 1 を見れば，一つめの生成例ではベースラインと提案モ用いられるが，複数の先行研究 [5], [6] においてモデルが生

デルでまったく同じ文が生成されており，どちらの生成結成した応答を評価する手法として用いられている．モデル

果も外部情報として与えられる情報を過不足なく含んでいが生成した文ごとに BLEU スコアの計算を行い，その平均る．一方，二つめの生成例ではベースラインでは正しく与値をモデルの BLEU として利用した．

えられた外部情報を生成文に含んでいるが，提案モデルでEntity. F1 は先行研究 [6] においてモデルが与えた外部は与えられた情報とは異なる内容についての文を生成して情報を考慮しているか確認するために用いられた指標であいる．文中斜体とした単語では，ベースラインは正しく与る．テストデータには正解となる外部情報が与えられていえられた外部情報を反映して french と生成できているが，るため，これを利用してモデルが生成した応答内に正解と提案モデルは与えられた情報ではなく korean を生成してなる外部情報が含まれているかマイクロ平均した F1 スコ

いる．他の生成例においても，ベースラインの生成結果にアを使って評価する．

比べて提案モデルが与えられた外部情報をよりよく含んでいるような生成例は発見できなかった．

5.1 提案モデルの有効性検証
表 1 にベースラインと提案モデルにおける生成結果の比5.2 損失関数の重みによる差異

較を，表 2 に各評価尺度における評価結果を示す．まず，損失関数の重みを変更した時に，生成される文に対して定量的な評価に着目すると，表 2 より BLEU およびパーどのように影響が発生するかについて，評価尺度および生

プレキシティを用いた評価では，ベースラインと提案モデ成例を用いて確認した．表 3 は表 1 と同様の入力を与えルの間に大きな違いは見られなかった．Entity. F1 に着目たときの α = 2.0, 5.0, 10.0 における生成結果を示す表であすると，提案モデルはベースラインに比べて 1.5 ポイント

り，表 4 は α を変更した際のそれぞれの評価尺度を用い

程度低いスコアとなった．また，提案モデルにおける外部

た評価結果を示す表である．まず，定量的評価において比

情報再予測の精度は 11.8 % にとどまった．テストコーパ

較すると，表 2 から α = 5.0 の条件において，ベースライスにおける外部情報再予測のチャンスレートは 12.7 % でンから BLEU がわずかに向上しているが，差としては非あるため，提案モデルは外部情報を適切に予測できていな

常に小さいものであり，ほぼ誤差と言える．Entity. F1 にいことが示されている．

ついて比較すると，α = 10.0 の場合が最も低いスコアと評価尺度を用いた比較ではベースラインと提案モデルになっており，α = 2.0 および 5.0 ではベースラインより低おいて大きな違いが見られなかったが，生成結果による定く，しかし提案モデルよりは高いスコアを示している．こ性的な比較ではどのような差異が見られるのかを確認する．

の結果より，α を変更したことによって生成結果に外部情c 1959 Information Processing Society of Japan⃝4

情報処理学会研究報告
IPSJ SIG Technical Report
表 3 α を変化したときの生成文の変化

Table 3 Diﬀerence of generated sentence when alpha increases
weightsentenceframe{(food, indian) (area, south)}α = 2.0

im looking for a restaurant in the south part of town that serves indian foodα = 5.0

im looking for a restaurant in the south part of town that serves indian foodα = 10.0

im looking for a restaurant in the south part of town that serves

frame{(food, french),(area, north)}

α = 2.0

im looking for a restaurant in the north part of town serving spanish foodα = 5.0

i want a restaurant in the north part of town that serves french foodα = 10.0

i want a restaurant in the north part of town that serves korean food報が反映されやすくなったわけではないということがわかる．また，再予測精度は α = 5.0 の時が最も小さく，α を変更した際の再予測精度の上昇幅に関しては微々たるもの示されている．
今後は再予測によらない方法で外部情報を反映することを保証する方法を検討する必要がある．

で，α = 1.0 と α = 10.0 を比較しても精度は 1 % 向上したのみにとどまっている．このことから，α の大きさと再予

参考文献

測精度の関係はおおむね誤差の範囲に収まるとものと考え[1]

られる．また，重みを変更してもなお，再予測精度がチャ
ンスレートを上回らないことから，提案モデルが再予測を行えるものでないことが裏付けられている．
次に α を変更した際の生成文の変化について比較する．
表 3 より，一つめの生成例では α = 10.0 を除く全ての生[2]

成結果において同じ文章が生成されている．したがって，どの α においても与えた外部情報を過不足なく含んだ生[3]

成結果となっていることがわかる．一方，二つめの生成例
では，α を変化した時に生成される文章はどれも細部が異なっており，具体的には表内斜体で示した単語がどの生成結果でも変化している．α = 5.0 における生成例では，与えられた外部情報 (food, french) を正しく反映した生成結[4]果となっているが，それ以外の事例ではそれぞれ spanish,korea とコーパス内に登場する同一スロットを持つ与えられていない値を生成してしまっている．この結果より，今回提案したアーキテクチャが外部情報を保証するには不十[5]分であるということがわかった．

6. おわりに本研究では，ニューラルネットワークを用いた応答生成[6]において，生成された応答に外部情報が含まれることを保証するために新しいモデルを提案した．提案モデルでは，与えた外部情報を再予測するモデルを応答生成後に行うことで，与えた外部情報が正しく再予測されることを応答に対する制約として機能することを期待した．しかし，実験[7]の結果より，提案モデルは期待に反し，与えた外部情報が生成結果に含まれることを保証するには不十分であるということがわかった．Entity. F1 を用いた評価結果においてスコアが下がっていることからも，生成結果に対して与えた外部情報を含むことを保証する形になっていないことがc 1959 Information Processing Society of Japan⃝[8]

Dale, R., Geldof, S. and Prost, J.-P.: CORAL: Using Natural Language Generation for Navigational Assistance, Proceedings of the 26th Australasian Computer Science Conference - Volume 16, ACSC ’03, Darlinghurst, Australia, Australia, Australian Computer Society, Inc., pp. 35–44 (2003).
山崎 健史，吉野 幸一郎，前田 浩邦，笹田 鉄郎，橋本 敦
史，舩冨卓哉，山肩 洋子，森信介： フローグラフからの手順書の生成，情報処理学会論文誌， Vol. 57, No. 3, pp.
849–862 (2016).
Kondadadi, R., Howald, B. and Schilder, F.: A Statistical NLG Framework for Aggregated Planning and Realization, Proceedings of the 51st Annual Meeting of the
Association for Computational Linguistics (Volume 1:
Long Papers), Sofia, Bulgaria, Association for Computational Linguistics, pp. 1406–1415 (2013).
Sutskever, I., Vinyals, O. and Le, Q. V.: Sequence toSequence Learning with Neural Networks, Advances in
Neural Information Processing Systems 27 (Ghahramani, Z., Welling, M., Cortes, C., Lawrence, N. D. andWeinberger, K. Q., eds.), Curran Associates, Inc., pp.
3104–3112 (2014).
Li, J., Galley, M., Brockett, C., Spithourakis, G., Gao,J. and Dolan, B.: A Persona-Based Neural Conversation
Model, Proceedings of the 54th Annual Meeting of the
Association for Computational Linguistics (Volume 1:
Long Papers), Berlin, Germany, Association for Computational Linguistics, pp. 994–1003 (2016).
Eric, M. and Manning, C.: A Copy-Augmented
Sequence-to-Sequence Architecture Gives Good Performance on Task-Oriented Dialogue, Proceedings of the
15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 2, Short
Papers, Valencia, Spain, Association for Computational
Linguistics, pp. 468–473 (2017).
Sukhbaatar, S., szlam, a., Weston, J. and Fergus, R.:
End-To-End Memory Networks, Advances in Neural Information Processing Systems 28 (Cortes, C., Lawrence,
N. D., Lee, D. D., Sugiyama, M. and Garnett, R., eds.),
Curran Associates, Inc., pp. 2440–2448 (2015).
Madotto, A., Wu, C.-S. and Fung, P.: Mem2Seq: Eﬀectively Incorporating Knowledge Bases into End-to-End
Task-Oriented Dialog Systems, Proceedings of the 56th

5

情報処理学会研究報告
IPSJ SIG Technical Report

[9]

[10]

[11]
[12]

[13]

[14]

[15]

Annual Meeting of the Association for Computational
Linguistics (Volume 1: Long Papers), Melbourne, Australia, Association for Computational Linguistics, pp.
1468–1478 (2018).
Qian, Q., Huang, M., Zhao, H., Xu, J. and Zhu, X.:
Assigning Personality/Profile to a Chatting Machine for
Coherent Conversation Generation, Proceedings of theTwenty-Seventh International Joint Conference on Artificial Intelligence, Stockholm, Sweden, International
Joint Conferences on Artificial Intelligence Organization,
pp. 4279–4285 (2018).
Luong, M.-T., Le, Q. V., Sutskever, I., Vinyals, O. andKaiser, L.: Multi-task Sequence to Sequence Learning,the 4th International Conference on Learning Representations (ICLR) (2016).
Gers, F.: Long short-term memory in recurrent neuralnetworks, PhD Thesis (2001).
Henderson, M., Thomson, B. and Williams, J. D.: The
Second Dialog State Tracking Challenge, Proceedings ofthe 15th Annual Meeting of the Special Interest Groupon Discourse and Dialogue (SIGDIAL), Philadelphia,
PA, U.S.A., Association for Computational Linguistics,
pp. 263–272 (2014).
Kudo, T. and Richardson, J.: SentencePiece: A simple and language independent subword tokenizer anddetokenizer for Neural Text Processing, Proceedings ofthe 2018 Conference on Empirical Methods in Natural
Language Processing: System Demonstrations, Brussels, Belgium, Association for Computational Linguistics, pp. 66–71 (2018).
Kingma, D. P. and Ba, J.: Adam: A Method for Stochastic Optimization, the 3rd International Conference on
Learning Representations (ICLR) (2015).
Papineni, K., Roukos, S., Ward, T. and Zhu, W.-J.:
BLEU: A Method for Automatic Evaluation of MachineTranslation, Proceedings of the 40th Annual Meeting on
Association for Computational Linguistics, ACL ’02,
Stroudsburg, PA, USA, Association for Computational
Linguistics, pp. 311–318 (2002).

c 1959 Information Processing Society of Japan⃝

6