DEIM Forum 2017 B6-3

答えを先読みする文書検索手法の提案
大塚 淳史†

別所 克人†

西田 京介†

浅野 久子†

松尾義博†† 日本電信電話株式会社 NTT メディアインテリジェンス研究所 〒 239–0847 神奈川県横須賀市光の丘 1-1
E-mail: †{otsuka.atsushi,bessho.katsuji,nishida.kyosuke,asano.hisako,matsuo.yoshihiro}@lab.ntt.co.jp
あらまし マニュアルや FAQ 等の文書を検索する際，ユーザは解決したい事柄を質問として検索システムに入力する．
しかしながら，文書に記載されている解決方法は，必ずしも質問に対してキーワードの一致や意味的な類似性があるとは限らず，質問に対して満足のいく検索結果をシステムが提示できないという課題があった．本論文では，質問と回答の内容の関係性をあらかじめ学習し，質問に対する回答内容を先読みすることで，質問を解決するための最適な文書を検索する手法を提案する．質問に対する回答に含まれる可能性の高いキーワードを生成する Encoder-Decoder
モデルを学習することで，質問に対して，回答内容を予測するモデルを作成する．学習した Encoder-Decoder モデルが生成したキーワードを追加した拡張クエリによって回答を検索することで，答えを先読みした検索を実現する．実
験の結果，回答内容を学習した Encoder-Decoder モデルから生成した拡張クエリを用いることで，FAQ 検索の検索精度が有意に向上することを確認した．
キーワード

情報検索，FAQ，クエリ拡張，Encoder-Decoder モデル

1. は じ め に
自然文やキーワードによって所望の情報を入手する情報検索

意味的な類似性がほとんど存在していないため，問い合わせ内
容と Q の内容の類似性のみを考慮した FAQ 検索では対応できない．

システムは，Web 検索を始め，スマートフォンによる音声検応対時にある種の推論を必要とする問い合わせについては，

索，音声対話ロボット等様々な場面で活用されている．特に近オペレータの自身の判断が必要になるが，このような判断を行

年では，人工知能（AI) による業務支援の一つとして，FAQ 検

うためには，多くの経験を必要とする．そこで本論文では，問索によるコンタクトセンタのオペレータ支援が注目を集めていい合わせ内容に対して，回答内容を予測することで，回答内容

る [1]．コンタクトセンタでは，電話での問い合わせ内容（クエまで含めて，適切な応対 QA を提示する情報検索手法を提案すリ）と，応対マニュアルである FAQ 集とを照合し，応対内容

る．回答内容を予測するために，大量の質問と回答のペアからを決定している．コンタクトセンタにおける FAQ は数百〜数なる応対データを用いて，質問に対する回答に含まれる可能性

千の QA から構成されることが多く，膨大な QA 集の中から，の高いキーワードを生成するモデルを学習する．生成モデルか問い合わせ内容に対応する QA を発見すること，オペレータにら出力されたキーワードを追加した拡張クエリによって FAQ

とって非常にコストが大きい作業となる．そのため，問い合わを検索することで，応対時に推論を必要とするような QA 文

せ内容に近い QA を自動で発見する FAQ 検索技術の重要性は書の検索が実現できる．論文では，Encoder-Decoder モデルをますます高まっている．

ベースに，拡張クエリ生成に特化させたキーワード生成モデル

FAQ 検索では，QA の質問（Q) 部分に着目し，問い合わせと学習方法を提案する．拡張クエリ生成に特化させることで，内容と Q に記述されている内容が意味的に同一あるいは類似し

QA 文書の検索に有用なキーワードを効率的に生成できるようているかどうかを見ることで高い精度で検索できることが明らになり，学習時間についても，従来の Encoder-Decoder モデ

かとなっている [2]．しかしながら，問い合わせ内容の中には，

ルよりも高速な学習が可能となる．

Q との意味の類似性だけでは，関連性を判定できないものも評価実験では，応対ログとして Web の質問回答サイトから収多く存在する．例えば，インターネット接続サービスに関する集した質問と回答のペアによって，Encoder-Decoder モデルを「動画が急にカクカクするようになった」という問い合わせが学習する．評価用に作成した３つのドメイン (iphone，コスメ，あったときに，「動画を見すぎて帯域制限になってしまった可能恋愛相談) の FAQ に対する検索精度を測定する実験を行う．実性があります」という応対をしたい場合を考える．FAQ に「動験の結果，いずれのドメインにおいても Encoder-Decoder モ

画がカクカクになったら」のような個別の事象についての QA

デルのクエリ拡張を用いることで，FAQ 検索の検索精度が向が存在していることは稀である．オペレータは，動画が急にカ上することを示す．

クカクしだした原因として，帯域制限による速度低下が原因で本論文の貢献：本論文は，入力クエリに対して，クエリの答あると推測して，「帯域制限になった場合の対応方法」という記えとなる内容を予測することによる文書検索手法について以下

載の Q の応対方法（A) を参照して応対することになる．ここの貢献を果たした．

で，最終的に閲覧する「帯域制限になった場合の対応方法」と，問い合わせ内容の「動画が急にカクカクするようになった」は•Encoder-Decoder モデルをベースとした，高速に学習可

能な拡張キーワード生成モデルを提案した.

•

QA 文書に対して，Q と A をそれぞれ別のクエリで検索

スコアを算出するすることによる検索手法の提案，ならびに提入力クエリ

案した検索手法が従来の QA 文書検索手法よりも統計的有意に適合文書を検索できることを明らかにした.
本論文の構成は以下の通りである．まず 2. で関連研究につい回答検索用クエリ拡張て述べる．3. では，本論文での定義とタスク設定を示す．次に4. で提案手法について説明する．5. では評価実験について，実験方法と結果について説明し，6. で考察を行う．最後に 7. で本

Q

Q
＋
A

質問スコア算出

回答生成
モデル

回答スコア算出

論文のまとめを述べる．

2. 関 連 研 究

統合スコア算出

FAQ のような文書に対して，答えの部分に着目して関連する文書を検索する技術は，質問応答技術の一領域であるとい

QA検索スコアえる．質問応答では，QA を含む大規模テキストを知識源とし

図1

回答を考慮した FAQ 検索スコアの算出て，ユーザが入力された質問に対して，回答自動で生成して出力する．近年では，質問応答に DeepLearning の技術を用い

3. 1 FAQ・学習コーパス・入力クエリるものが多く提案されている．Weston ら [3] はニューラルネッ

本研究で扱うテキストである FAQ，学習コーパス，入力ク

トワークで構成されたメモリセルにテキストの知識を蓄積す

エリについての定義を以下に示す．

る Memory Networks を提案している．Graves ら [4] は，メモ

[定義 1] FAQ は自然文で記述された QA 文書の集合 F AQ =リ部分に加えて，メモリの Read/Write を制御するコントロー{QA0 , QA1 , ..., QAi , ..., QA|M |−1 } で あ る ．本 論 文 に お い てラまで全てをリカレントニューラルネットワークで構成された

FAQ は，FAQ 検索タスクにおける検索対象文書集合を指すもDiﬀerentiable Neural Computers（DNC) と呼ばれる手法によのとする．ここで，|M | は FAQ の全 QA 文書数である．

る質問応答技術を提案している．DNC では，資源言語の他にも[定義 2] QA 文書は，質問が記載されている文書 qi と回答がグラフ情報なども扱えるという特徴がある．Feng ら [5] は，QA記載されている文書 ai の組となる文書 QAi = (qi , ai ) である．

文書を知識源として使用し，Convolutional Neural Network

一つの質問（Q) には，必ず一つの回答（A) が存在するものと（CNN) によって，Q と A の内容をそれぞれ意味ベクトル化すする．

ることによる質問応答技術を提案している．

[定義 3] 学習コーパスは，FAQ に関連する話題に関して収集し質問応答において知識源を QA 文書に限定した場合には，検た文書集合である．回答生成モデルの学習は，学習コーパスを

索におけるクエリ拡張の手法によって，答えとなる文書を検索用いて行うものとする．学習コーパスは [定義 2] と同様の QAする技術についても多くの手法が提案されている．Riezer ら [6]文書の形式であるとする．

は，統計的機械翻訳（SMT) を用いて，Q と A の関係性を学習[定義 4] 入力クエリは自然文または m 個 の単語の集合で表現させたクエリ拡張手法を提案している．Komiya ら [7] は，Webされる．入力が自然文の場合は入力を形態素解析した後，内容上の質問回答サイトを用いた質問応答システムを提案しており，語のみを抽出したものを使用する．

同システム上でクエリ拡張を用いた回答の検索手法についても

3. 2 回答生成モデル

提案している．質問中の２単語と共起する単語によって回答を

本論文では，Encoder-Decoder モデルにより，入力クエリに検索することで，質問内容に沿った回答が発見できるとしてい追加するキーワードを生成する．キーワードを生成する回答生

る．Yu [8] らは，“長さ” や “頻度” などの質問のタイプによっ成モデルは以下の通り定義する．

て，回答部分に出現しやすい語が有ることを特定し，それを用[定義 5] 回答生成モデルは，入力クエリを入力した時，0〜Nいることで回答部分をより高精度に検索できることを報告して個の単語の列を出力する変換器である．学習では，入力クエリ

いる．

に対して最適な追加キーワードを得るための変換関数 f を学習

本研究では，DeepLearning を用いて，End-to-End で質問と回答の関係性を学習したクエリ拡張による文書検索手法を提案する．従来手法のように単語同時のアライメントを取得した
り，質問タイプの推定が不要であり，また，入力・出力の単語数に依存しない柔軟性の高いモデルを提案する．

3. 問 題 設 定

する．

3. 3 FAQ 検索タスク
本論文で提案手法を評価する FAQ 検索タスクは以下の通り設定する．

[問 題 1] 自 然 文 の 入 力 ク エ リ を 入 力 し た 時 ，F AQ ={QA0 , QA1 , ..., QAi , ..., QA|M |−1 } を，入力クエリに関連する
順番に並び替え，上位 k 件の QA 文書を出力する．

本節では，本論文で対象とする FAQ ならびに学習コーパス，
入力クエリの形式について定義する．また，提案手法である回答生成モデル，FAQ 検索のタスクについての定義も行う．

換行列 We ∈ Rn×|V | を用いた以下の式により計算される．

et = We xt
outputoutput(1)n 次元で表現された単語ベクトルの順列 e = {e0 , e1 , ..., em }
LSTM

LSTM

LSTM

LSTM

LSTM

embeddedembeddedembeddedembeddedembedded

one-hot

one-hot

one-hot

one-hot

one-hot

をエンコード用のニューラルネットワークである Long Short-Term Memory (LSTM) に入力する．LSTM とは，系列データを扱うためのリカレントニューラルネットワークの一種であり，内部にメモリセルや忘却ゲートといった内部状態を設定するこ<EOS>とによって，系列長の長いデータにも対応できるようにしたも

EncodeDecode
図 2 Seq2SeqModel の構成のである．LSTM において，ユニットの隠れ層 ht は以下の式で定義される．

ft = σ(Wf xt + Uf ht−1 + bf )4. 提 案 手 法

it = σ(Wi xt + Ui ht−1 + bi )本節では，QA 文書を対象に，答えを先読みする検索を実現

ot = σ(Wf xt + Uf ht−1 + bf )するための提案手法について述べる．本論文での QA 文書の検

ct = ft ⊙ ct−1 + it ⊙ tanh(Wc x + Uc ht−1 + bc )索スコア算出までの流れを図 1 に示す．QA 文書に対して，Q

ht = ot ⊙ tanh(ct )(2)のみを使った質問スコアを算出と，Q と A どちらも使用した
回答スコアを別々に算出し，最後に統合スコアを計算する．こここで，ft ，it ，ot は忘却ゲート，入力ゲート，出力ゲートであこで質問スコアは，先行研究である入力クエリと Q の意味同一

り，ct はメモリセルを示している．パラメータは重み行列 Wf ，に基づく手法 [2] を使用し，統合スコアは質問スコアと回答ス

Wi ，Wo ，Uf ，Ui ，Uo ∈ Rn×n ，およびバイアス項 bf ，bi ，bo ，コアの線形和によって算出する．本論文では，回答スコアの算

bc ∈ Rn×1 である．σ はシグモイド関数，tanh はハイパボリッ

出とそのための回答検索用クエリ拡張について提案する．

クタンジェントを表している．⊙ は行列の要素積である．

ま ず 4. 1 で ，回 答 生 成 モ デ ル の ベ ー ス と な る Encoder-

Decoder モデルについて述べる．次に，4. 2 で質問・回答の関係性を学習する回答生成モデルについて詳述し，最後に 4. 3で拡張クエリを用いた回答スコアの算出について説明する．

4. 1 Encoder-Decoder モデル
Encoder-Decoder モデルとは，ニューラルネットワークを用いて，系列データから異なる系列データを得るためのモデル

Seq2SeqMoldel のデコードにおいても，LSTM を用いるがこのとき，LSTM の隠れ層 ht−1 と内部セル ct−1 をエンコー
ド用の LSTM から引き継ぐことでエンコードの情報を利用する．デコード時に j 番目に生成される単語 yj の出現確率

P (yj |y0 , y1 , ...yj−1 , x) は，出力層において LSTM の隠れ層 hjより，以下の式で表わされる．

P (yj |y0 , y1 , ...yj−1 , x) = g(Wd hj + bd )(3)である．入力の系列データをエンコード用のニューラルネット
ワークに順次入力し，1 つの入力ベクトルを作成する．そして，

ここで，重み行列 Wd ∈ R|V |×n およびバイアス項 bd ∈ R|V |×1

エンコードによって作成したベクトルをデコード用のニューラ

は学習パラメータである．g は活性関数を示しており，ここにルネットワークに入力し，出力結果を得ることで，系列データ

ソフトマックス関数を用いることで，出力ベクトルを確率分布の変換を行っている．

で表現する．yj で最も値が大きい要素のインデックスに対応す

4. 1. 1 Seq2Seq Model
自然言語処理における，Encoder-Decoder モデルとしては機る単語がデコーダーの出力単語となる．

4. 1. 2 Attention 機構

械翻訳 [9] や対話処理 [10] で用いられている Seq2SeqMoldel がSeq2SeqMoldel の性能を向上可能な手法として attention 機

ある．Seq2SeqModel では，単語などの言語表現を全てベクト構がある [11]．Seq2SeqModel のエンコーダーでは，全ての単ルに変換することによって，Encode-Decode モデルへの適用を

語ベクトルが集約されて１つの文脈ベクトルとして表現される．

可能としている．Seq2SeqModel の構成を図 2 に示す．ここで，入力単語長が長くなると，文脈ベクトルにおいて入力した単語

w0 , w1 , w2 は入力の単語列，w0′ , w1′ は出力の単語列を示していそれぞれの影響が弱まってしまうという問題があった．

る．以降は Seq2SeqModel のそれぞれの層について説明する．

Attention 機構では，エンコード時に LSTM の隠れ層の情報単語を表現する最も基本的なベクトルは one-hot ベクトルでを別途保持しておき，デコード時に文脈ベクトルと同様に使用ある．one-hot ベクトルとは，ベクトル中で任意の１要素の値する．この方法により，入力の各単語の情報を影響を弱めるこが 1, その他の要素が 0 となるベクトルである．Seq2SeqModelとなく使用できるようになる．機械翻訳では，attention 機構の embedded 層では，語彙数 |V | の次元数を持つ one-hot ベク

は翻訳元と翻訳先の単語の対応関係（アライメント）を学習す

トルを，n 次元の連続値ベクトルに変換する．ある単語を表現る機能として導入され，通常の Seq2SeqModel よりも高精度のした one-hot ベクトル xt の連続値ベクトル et への変換は，変翻訳が実現できることが明らかになっている．

p =

∑

ei

(4)

hE = tanh(We p + be )(5)iattentionembedded

one-hot

projection

hiddenembeddedembedded

one-hot

outputoutput

LSTM

LSTM

embeddedembedded

one-hot

one-hot

学習パラメータである．
デコードは 4. 1. 1 で説明した Seq2SeqModel の構成を使用
する．１回目のデコードでは式 (2) において，ht−1 = hE とす

one-hot

ることで，エンコード時に計算した hidden 層の出力をデコー
ダーの LSTM に引き渡している．

<EOS>

Encode

ここで，重み行列 We ∈ Rn×n およびバイアス項 bd ∈ Rn×1 はDecode

図 3 クエリ拡張用 Encoder-Decoder モデル

4. 2. 2 クエリ拡張用学習コーパス
Seq2SeqModel では，変換元と変換先のペアとなる文コーパ
スをそのまま入力することに特徴がある．日本語では，各文を形態素解析した結果をそのまま入力することになる．例えば，

4. 2 回答生成モデル
本節では，応対ログ等の質問と回答がペアになっている文書
を学習用コーパスとして，入力クエリからの回答内容を予測するモデルについて説明する．ベースとなるのは 4. 1 で説明した

Seq2SeqModel である．本論文では，Seq2SeqModel を文書検索でのクエリ拡張として使用することを目的とした変更を加える．
クエリ拡張モデルでは，ニューラルネットワークの構成と学習で用いる入出力コーパスの点から Seq2SeqModel に変更を加
える．以降はそれぞれについて詳述する．

4. 2. 1 クエリ拡張用ニューラルネットワーク構成
機械翻訳や対話処理で用いられる Seq2SeqModel は，自然文で記述された入力に対して，自然文での出力を得る End-to-Endの学習モデルである．このモデルでは，入出力の関係を単語の並びまで含めて学習を行うため，文法規則を別途学習する必要がないという利点がある．
しかしながら，検索においては，入力時に自然文形式で入力する場合もあれば，キーワードの集合を入力する場合もある．
自然文形式の入力においても，形態素解析等の処理を行い，ク
エリからキーワードを抽出した上で検索を行うことになるが，このとき，キーワードの並びは自然文形式で入力されたときと，初めからキーワードで入力された場合では異なることが多い．
そのため，Encoder-Decoder モデルによって，クエリの内容をエンコードする際，入力する単語の順番によって，デコード時の出力結果が変わってしまうのはあまり望ましいとはいえない．
本論文が提案するモデルでは，Encoder-Decoder モデルのエンコード部分を，入力の順番が影響する LSTM から，入力の順番が影響しない MLP（MultiLayer Perceptron）に変更す

変換前が「動画がカクカクして見られない」，変換後が「私も前に同じ症状になりましたが帯域制限が原因でした」という文を学習するとき， 動画-カクカク-見る-ない ， 私-も-前-同じ症状-に-なる-帯域制限-が-原因-で-したのような単語集合のペアをモデルに入力することになる．しかし，Seq2SeqModelの用途を検索でのクエリ拡張としたとき，これら全ての情報を学習させるのは適切ではないといえる．そこで本論文では，並び替え と 削除 という操作をコーパスに行うことによって，検索にとって有用なキーワードが生成されるようにする．以降
はこれらそれぞれの操作について説明する．

• 重要単語の並べ替え
本論文では，Encoder-Decoder モデルが出力した結果を FAQ
を始めとする文書検索の拡張クエリとして用いることを目的としている．拡張クエリとして利用することを想定したとき，Encoder-Decoder モデルから出力される単語は，検索にとって有用な単語であることが望ましい．先に述べた例では， 帯域
制限 といった単語はできるだけ早く生成されて欲しい語ということになる．しかしながら，Seq2SeqModel の学習では，出力単語は学習コーパスと同様の順番で学習される. 先に述べた
例では,Seq2SeqModel が最初に出力する語は 私 となる．所
望する

帯域制限

のような語は LSTM によって数回デコードした後にしか出力されない．このような問題を回避するために，単語を重み付けによって，変換後の語順を並び替える操作を行う．単語の重み付けには tf idf を用いる．

tf idf とは，情報検索において用いられる単語の重み付け手法であり，検索において，文書の特定性を高める語については高い重みが付与される．ある文書 d 中の単語 w の tf idf は以下の式によって計算される．

る．本論文が提案する Encoder-Decoder モデルのネットワー
ク構成を図 3 に示す．エンコード部分は単語ベクトルを出力す

tf (d, w) = f req(d, w)

る embedded 層，単語ベクトルを集約して文脈ベクトルとしてidf (w) = log射影する projection 層と，デコーダーへ情報を受け渡すための

hidden 層，attention 機構から構成される．embedded 層での|D|+1
df (w)

tf idf (d, w) = tf (d, w) × idf (w)(6)

one-hot ベクトルから連続値ベクトルへの変換は式 (1) と同様

ここで，f req(d, w) は文書 d 中に，単語 w が出現頻度であり，に計算する．projection 層の出力 p と，hidden 層の出力 hE は

df (w) はコーパス D 中の単語 w が出現する文書頻度である．

次式によって計算する．

|D| はコーパス D の全文書数を示している．
Encoder-Decoder モデルの学習コーパスに対して，tf idf 単語の重み付けを行う．変換先の文書集合に対しては，各文書で

表1

データセット QA 文書数

tf idf スコアの降順に単語を並び替える．変換元の文書集合に

カテゴリ 検索対象 QA 数

ついては，並び替えは行わないが，入力単語数の制限のために

iphone150843

442,181

コスメ

100

100

67,737

恋愛

100

100

71,591

tf idf のスコア上位 l 個の単語のみ抽出するという操作を行う．
• 不要単語の削除

テストクエリ数 学習用 QA 数

機械翻訳等のタスクおいて，自然文を生成することを目的としているため，機能語等の全ての単語を生成できるように

Encoder-Decoder モデルを学習するためのコーパスを表 1 に

Encoder-Decoder モデルの学習を行う．しかしながら，検索の示す．以降は，検索対象 FAQ と学習用コーパスについて詳述

クエリ拡張用途での使用を前提とすると機能語等の単語は不要

する．

である．そのため，学習コーパスの事前処理として形態素解析
後の各単語について，内容語以外の単語を全て削除する操作を行う．

• 検索対象 FAQ
評価実験用のコーパスとして，「iphone」，「コスメ」，「恋愛相談」に関する FAQ を人手で作成した．これら３つの話題に関

内容語についても，検索精度や学習速度の向上を目的に，不する FAQ で実験を行う理由として，Kim ら [12]，栗山ら [13]

要な単語の削除を行う．ここで不要な語とは，検索対象としての先行研究がある．先行研究では，Web の質問回答サイトを想定している文書群で出現しない単語である．クエリ拡張に

対象に，質問と回答のタイプについて調査している．
「iphone」

よって新たな単語がクエリに追加されたとしても，応対マニュのようなパソコン・情報機器に関する話題では，事実や手段をアルなどの検索対象文書群に出現しない語は検索結果に寄与し

聞く情報検索型の質問が多くなされ，回答もその解決方法などない．そのため，クエリ拡張の Encoder-Decoder モデルの学が求められることが多い．一方で「恋愛相談」では意見や経験

習時点で単語を削除する．Encoder-Decoder モデルでは，単語を聞く社会調査型の質問が多く，回答内容も感情的な側面からの語彙数は embedded 層や出力層でのパラメータ数に影響するのものが多いとされている．そして，「コスメ」を始めとする健ので，単語数を制限することでパラメータ数を削減でき，モデ康・美容関連の話題では，上記で示した質問と回答のタイプがルの軽量化，学習の高速化をすることが可能になる．

混在しているとしている．つまり，「iphone」，「コスメ」，「恋愛

検索対象文書群を用いた不要単語の削除を行うのは，学習相談」の３つの話題の FAQ で実験することで，様々なタイプ

コーパスの A（Decode 側）に対してのみである．Q（Encodeの質問，回答についても対応できるかを評価することができる．

側）は，Encoder-Decoder モデルにおいてユーザが入力するク• Encoder-Decoder モデル学習

エリに対応する. 入力ではユーザはあらゆる単語を使用するこEncoder-Decoder モデルの学習用コーパスとして，Web かとが想定される. そのため, 入力はなるべく多くの語彙に対応しら収集した質問回答サイトの QA 文書を用いる．質問回答サていることが望ましい. 以上の理由により，Encoder-Decoder

イトでは，質問と回答が自然文で記述されている．また，質問モデルの学習において，Q の学習は内容語抽出のみを行い，検に対して回答は複数投稿されるが，その中から最も質問に役に

索対象文書群の単語による削除は行わない．

立った回答がベストアンサーとして選ばれる．本論文では，ベ

4. 3 回答スコア算出

ストアンサーを質問の回答として QA のペア文書としている．

回答スコアの算出には，単語重みを付与したベクトル空間モ

収集には，各話題について，検索対象 FAQ で使用されている

デルを用いる．入力クエリから検索で使用するキーワードを抽出し，そこに回答生成モデルから生成したキーワードを追加した拡張クエリを作成する．

単語が含まれる QA を質問回答サイトから収集している．

5. 2 実 験 設 定
評価実験では，5. 1 で説明したデータセットを用いて，FAQ

QA 文書については，Q と A に出現する単語について，Okapi-の検索精度を評価する．実験で使用する Encoder-Decoder モ

BM25 によって重み付けした文書ベクトルを作成する．QA 文

デルのユニット数は，embedded 層を 200，LSTM は各ユニッ

書の文書ベクトルと拡張クエリのベクトルとの類似度を計算しトで 200 としている．また，モデル学習と実験には Intel Xeon

回答スコアとする．

E5-2640 CPU，メモリ 64GB，NVIDIA Tesla K40 GPU を搭載した計算機を使用する．

5. 評 価 実 験
本節では，評価実験について説明する．まず，5. 1 で実験に評価用の問い合わせ（クエリ）として，実験用 FAQ とは別に作成した自然文のクエリを作成する．作成した各クエリに対使用するデータセットについて説明する．次に，5. 2 で実験のして，「コスメ」，「恋愛相談」に関しては１個，「iphone」に関し内容について述べ，5. 3 で実験結果を示す．

ては１個以上の正解 QA のラベルを付与している．

5. 1 データセット

FAQ 検索は，クエリと QA 文書の質問（Q) との意味の類似

本論文では，コールセンターの応対支援のための文書検索性を測ることで精度よく検索できることが明らかになっていを目的としている．応対マニュアルは，質問とその回答のペる [2]．本論文では，クエリと質問の意味の類似性による検索精アによって１つの文書が構成される FAQ 形式となっているも度をベースラインとして，回答を用いたことによる検索結果ののが多い．そのため本論文においても FAQ コーパスを対象

精度精向上を評価する．回答部分を含めた検索での比較手法は，に検索の評価実験を行う．実験でしようする検索対象 FAQ と

Word2vec [14] の類似度を用いたクエリ拡張手法 [15] を用いる．

表 2 iphone データセットでの nDCG
0.8

提案手法

Word2vecクエリ拡張

0.7

0.657
0.599
0.579

0.6

ベースライン Word2vec 提案手法

類似度のみ）

ベースライン（Q0.682 0.676
0.648

0.641
0.61

0.7190.713
0.69

nDCG@5

0.377

0.449

表 4 Encoder-Decoder モデルでの追加キーワード数

0.539

0.5

0.408

iphone コスメ 恋愛相談

0.470.456
0.438

追加キーワード数（平均）

0.4
0.3

4.49

3.09

2.56

表 5 「iphone」データにおける学習時間比較

0.2
0.1
0
１位

２位

３位

４位

単語除去あり単語除去なし

出力語彙数

2,507

12,926

計算時間 (1epoch)[sec]1620.24540.9５位

図 4 iphone に関する FAQ 検索正解含有率

１位〜５位までの正解含有率を示している．iphone の FAQ は，本論文で最もサイズの大きい学習・テストセットを用いた結果，
提案手法

1
0.9

Word2vecクエリ拡張

0.86
0.820.83

0.82

0.8

0.72
0.67
0.63

0.7

１位〜５位いずれにおいても，提案手法が最も良い精度となっ類似度のみ）

ベースライン（Q

0.88
0.87
0.85

0.9

0.88

0.9

ている．コスメに関しても同様の傾向を示しており，いずれの順位においても提案手法が優位となっている．恋愛相談に関す

0.760.76

る FAQ 検索は，ベースラインからの改善が他の話題よりも小さくなっている．特に１位の結果では，提案手法よりも比較手

0.6
0.5

法である Word2vec の類似度に基づくクエリ拡張の方が僅かな

0.4

がら優位となっている．

0.3
0.2

正解含意率の１位の結果に対して，“正解”，“不正解” に関0.1

する McNemar 検定を実施した．ベースラインの結果に対し

0
１位

２位

３位

４位

５位

図 5 コスメに関する FAQ 検索正解含有率て，提案手法の結果の p 値 は，
「iphone」では p = 0.0384(<0.05)，「コスメ」では p = 0.0538(> 0.05)，「恋愛相談」では
p = 0.355(> 0.05) となり，
「iphone」データにおいて提案手法
による精度改善が有意に示された．

1

提案手法

類似度のみ）

Word2vecクエリ拡張

0.9

0.86
0.79

0.8

0.77

「iphone」に関して，検索結果の nDCG@5 を計算した結果

ベースライン（Q0.81 0.82

0.87 0.86

0.89
0.84

0.87 0.88

クエリ拡張を適用した検索結果がベースライン，Word2vec に

0.73

0.7
0.6

0.6 0.61

を表 2 に示す．nDCG@5 の評価においても，提案手法によるよるクエリ拡張手法よりも優位な結果となっている．

0.57• 回答生成モデル出力結果

0.5
0.4

本実験によって，拡張されたクエリの例を表 3 に示す．表中

0.3の “Word2vec” は Word2vec によって生成された拡張クエリで0.2ある．入力クエリの単語の合成ベクトルに類似する上位 5 個の0.1

単語を抽出している．“提案手法” は本論文で提案したクエリ

0
１位

２位

３位

４位

５位

図 6 恋愛に関する FAQ 検索正解含有率

拡張手法によって生成された拡張クエリである．提案手法の拡
張クエリは Encoder-Decoder モデルによって生成されるため，出力されるキーワード数が可変であるという特徴がある．また，検索実験の評価尺度については，正解含有率を用いる．正解
含有率とは，検索結果の上位 k 位までに正解となる QA が一つでも含まれていたテストクエリの割合を示すものである．また，「iphone」のデータについては，１つのクエリに複数の QA が正解となるため，nDCG による評価も行う．

5. 3 実 験 結 果
本節では，実験結果を示す．まず，5. 2 で説明した FAQ 検
索実験の結果を示し，次に，本論文で提案した回答生成のEncoder-Decoder モデルの出力結果と学習時間を示す．

クエリを入力したときに Encoder-Decoder モデルが出力した
追加キーワード数の比較を表 4 に示す．
「iphone」では，拡張の際に平均 4.49 個のキーワードが追加されているが，「恋愛相談」
での追加キーワード数は 2.56 個となっており，話題によって追加キーワード数に差が出ていることが分かる．

Encoder-Decoder モデルの学習について，最も学習データ多かった「iphone」データでの計算時間を表 5 に示す．ここでは，4. 2. 2 で説明した，不要単語の除去作業を行ったときと，行っていないときの学習時間を比較している．出力語彙数は，• FAQ 検索精度実験結果

Encoder-Decoder モデルが出力する単語の語彙数であり，計算実験結果を図 4，5，6 に示す．各図はそれぞれ検索結果上位

時間は学習データ全てを１回学習した時にかかった時間の平均

表3
カテゴリ

iphoneクエリ
音量の上げ方は

拡張クエリ例

Word2vec

提案手法

下げる ボリューム 調節 低音 上げ下げ

サイレント 音量 スピーカー サウンド 横
調節

画面が割れたら？

バキバキ ひび割れ 浮き 割れ ヒビ

交換 修理 アップル

海外旅行で通信料金高額にならな 多額 パケ パケット 莫大 現地

オフ ホテル ローミング オン 機内 モード

いようにするには?
コスメ

化粧品を使い切らないといけない 継続 年数 捨てる １か月 開封

１年 製造 開封 保管 期限 大丈夫

期限ってありますか
夏のスキンケアのポイントは何？ 用品 時短 クレンジングクリーム お出か

日焼け止め 紫外線 しみ

け 外出
冬のスキンケアのポイントは何？ 用品 スクラブ クレンジングクリーム ファ ケア パック 保湿 クリームンケル シート
新社会人のメイク方法を知りたい 高校生

無知

中学生

応急処置

入学

式
恋愛

色 メイク ファンデーション ナチュラル
薄い

社会人のデート代って高いのかな 高額 費用 超え 教育費 貯める

表わす スマート 割り勘

振られちゃったんですけど、元気

失恋 忘れる

スッパリ 未練 忘れる 勇気 サヤになる方法は？
片思いに悩む女性ですが、どう伝 片想い 付き合う 既婚 思う 振られる アプ 告白
えたらいいでしょう？

ローチ

値である．FAQ に出現しない不要単語を除去することで，モは社会調査的な内容の質問が多い．このような質問は，特定のデルが学習する語彙数が約 80% 削減され，学習時間について正解が存在しているとは限らず，同じ質問であっても回答の内も約 65% 高速になっていることがわかる．

容が異なることが多い．Encoder-Decoder モデルの学習では，

6. 考

察

本節では，実験結果に関する考察を行う．まず，6. 1 で，FAQ
検索実験の結果について考察し，6. 2 では，学習した Encoder-

Decoder モデルについての考察を行う．

質問と回答が１対１で対応していることが前提となるため，回
答内容にバリエーションを持つ「恋愛相談」のような話題に関しては，検索精度を向上するための十分なキーワード生成が行えなかったのではないかと考えられる．
今回の実験では，作成した FAQ データとは無関係に作成さ

6. 1 FAQ 検索での精度向上に関する考察

れた，質問回答サイトの QA を Encoder-Decoder モデルの学

正解含有率による実験結果である図 4，5，6 に示すとおり，

習に用いていたが，FAQ 検索結果を向上させる有用な知識を入力クエリの内容から，回答に出てくる内容を予測することに学習することができた．コールセンタ等の利用では，応対ログ

よる検索は有効に機能しているといえる．
「iphone」データを用といった，より検索対象 FAQ と関連性の高い学習データを使いた nDCG の評価においても，提案手法が最も高い値となっ用することでより最適な回答内容を生成出来るのではないかとているため，提案手法によって，クエリに対して正解である可考えている．

能性の高い QA が上位に出現しやすくなっているといえる．

6. 2 回答生成 Encoder-Decoder モデルに関する考察

検索結果１位について，「iphone」のデータセットに関しては

表 3 に示した提案手法による拡張クエリのキーワードは，単McNemar 検定において有意差が認められたが，「コスメ」、「恋純な単語同士の意味の類似性では生成できないものも含まれて愛相談」では有意差が認められなかった．
「コスメ」に関してはいる．例えば，“音量の上げ方は” というクエリを入力したとき

p 値 が 0.0538 であり有意傾向ありであるといえる．
「iphone」に，Encoder-Decoder モデルが出力する結果として “横” といと同様に，学習データやテストクエリを拡充することで有意差うキーワードがあるが，これは，“音量”，“上げる” といった単が認められる可能性が高いのではないかと考えられる．

語とは一見無関係である．しかしながら，iphone では音量は端「恋愛相談」に関しては，「コスメ」よりも学習データが多い

末 “横” のボタンを押すことによって調節することが一般的でにも関わらず，提案手法の優位性が示されなかった．これは，ある．これは，提案手法がこのような個別の具体的な事象に対「恋愛相談」では質問に対する妥当な回答が学習できなかった

しても，回答内容を正確に学習できることを示唆しているといためであると考えられる．表 4 に示した Encoder-Decoder モ

える．

デルの追加キーワード数では，「恋愛相談」は他の話題と比べて提案手法が生成する拡張クエリの特徴的な点として，入力の追加キーワード数が少ない．また追加されたキーワードも “告単語ベクトルの意味の学習がある．表 3 のコスメに関するクエ

白”，“失恋” といった「恋愛相談」においては一般的な語が多リ “夏のスキンケアのポイントは何？” と，‘冬のスキンケアのく出力されている．このように，「恋愛相談」においては，回答

ポイントは何？” は，単語 “夏” と “冬” 以外は同じ文である．

を検索するための追加キーワードが十分に生成出来ていないこ

しかしながら，提案手法の拡張クエリは夏は日焼け関連，冬はとが分かる．先行研究 [12] でも述べられいる通り，「恋愛相談」

保湿関連と全く違った内容を出力している．一般的にトピックモデルや Word2vec に代表される共起ベースで生成された単語
ベクトルは，近い文脈で使用されやすい語の分離が難しいとされる．実際に，Word2vec ベースのクエリ拡張では，“ 用品”
や “クレンジングクリーム” など，同じ単語が出力されている．
これは，ほとんどの単語が同じと言うことに加えて，“夏” と“冬” が Word2vec 上では近いベクトルであることを意味している．一方で，提案手法の Encoder-Decoder モデルでは，出[5]

力が大きく異ることから，モデル内部で保持されている “夏”
ベクトルと “冬” ベクトルは大きく異るベクトルであることを表しているといえる．
本モデルがこれらのベクトルを区別できている理由は，質問[6]と回答という，全く性質の異なる文書の共起に基づいてベクトルの学習を行っているからであると考えられる．同一文や文書内の共起では，中で書かている単語が１つ変化しても，内容全[7]

体は見ればあまり変化しない場合が多い．しかし，質問と回答
では，質問中の単語が少しでも違えば，回答内容は大きく変化
する．そのため，Word2vec のような手法では，近い意味となっ[8]てしまう単語も違う意味として学習出来たのではないかと考えられる．

Encoder-Decoder モデルの学習では，モデルが出力する単語を検索対象の FAQ に出現する単語に限定することで，学習の[9]効率化を図った．表 5 に示した通り，不要な単語を除去することで学習速度が約 65% 向上することが確認できた．不要単語を除去した場合においても図 4 や表 2 に示した通り，検索精度[10]が有意に向上することが確認できるため，不要単語を除去は，クエリ拡張のための Encoder-Decoder モデルの学習において[11]

非常に効果的であるといえる．

7. お わ り に[12]

本論文では，質問と回答のペア（QA）の関係性を学習する
ことで，クエリに対して，クエリを満足させる答えの情報を先
読みし，先読みした結果を用いて文書を検索する手法を提案し[13]た．回答内容を先読みするための質問と回答の関係性の学習には Encoder-Decoder モデルを用いて，質問が入ったとき，そ[14]の質問の回答に含まれているべきキーワードを生成するモデルを学習した．生成したキーワードを拡張クエリとして文書検索に活用することで，質問に対する回答内容を考慮した文書を検索できるようにした．
今後は，Encoder-Decoder モデルの改良による学習の精度向上および，ニューラルネットワークを用いた End-to-End 型の文書検索についても研究を進めていく予定である．

文

献[1] 菊地勝由（編）. BUSINESS COMMUNICATION 2016 年 2月号. ビジネスコミュニケーション社, 2016.
[2] 大塚淳史, 別所克人, 平野徹, 東中竜一郎, 浅野久子, 松尾義博.
文構造を考慮した発話理解に基づく自然文検索. 第 30 回人工知能学会全国大会論文集（JSAI2016), 2016.
[3] Jason Weston, Sumit Chopra, and Antoine Bordes. Memory networks. Proc of the 5th International Conference on
Learning Representations(ICLR2015), 2015.
[4] Alex Graves, Greg Wayne, Malcolm Reynolds, Tim Harley,[15]

Ivo Danihelka, Agnieszka Grabska-Barwińska, Sergio G.
Colmenarejo, Edward Grefenstette, Tiago Ramalho, John
Agapiou, Adrià P. Badia, Karl M. Hermann, Yori Zwols,
Georg Ostrovski, Adam Cain, Helen King, Christopher
Summerfield, Phil Blunsom, Koray Kavukcuoglu, andDemis Hassabis. Hybrid computing using a neural networkwith dynamic external memory. Nature, Vol. 538, pp. 471–
475, 2016.
Feng Minwei, Xiang Bing, Glass Michael, Wang Lidan, andZhou Bowen. Applying Deep Learning to Answer Selection:
A Study and An Open Task. Proc of The 2015 IEEE Automatic Speech Recognition and Understanding Workshop(ASRU2015), 2015.
Stefan Riezler, Alexander Vasserman, Ioannis Tsochantaridis, Vibhu Mittal, and Yi Liu. Statistical machine translation for query expansion in answer retrieval. Proc of the
45th Annual Meeting of the Association for Computational
Linguistics (ACL2007), pp. 464–471, 2007.
Kanako Komiya, Yuji Abe, Hajime Morita, and Yoshiyuki
Kotani. Question answering system using Q & A site
corpus Query expansion and answer candidate evaluation.
Springerplus, Vol. 2, No. 396, pp. 1–11, 2013.
Zheng-Tao Yu, Zhi-Yun Zheng, and Shi-Ping Tang ; JianYi Guo. Query expansion for answer document retrieval inchinese question answering system. Proc of 2005 International Conference on Machine Learning and Cybernetics,
pp. 72–77, 2005.
Ilya Sutskever, Oriol Vinyals, and Quoc V. Le. Sequence tosequence learning with neural networks. Proc of the 27th
International Conference on Neural Information Processing Systems(NIPS2014), pp. 3104–3112, 2014.
Oriol Vinyals and Quoc V. Le. A neural conversationalmodel. Proc of the ICML Deep Learning Workshop 2015,
2015.
Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio.
Neural machine translation by jointly learning to align andtranslate. Proc of the 5th International Conference on
Learning Representations(ICLR2015), 2015.
Soojung Kim and Sanghee Oh. Users’ relevance criteria forevaluating answers in a social Q&A site. Journal of theAmerican Society for Information Science and Technology,
Vol. 60, No. 4, pp. 716–727, 2009.
栗山和子, 神門典子. Q&A サイトにおける質問と回答の分析. 研
究報告データベースシステム（DBS）, Vol. 2009, No. 19, pp.
1–8, 2009.
Tomas Mikolov, Kai Chen, Greg Corrado, and Jeﬀrey Dean.
Eﬃcient Estimation of Word Representations in Vector
Space. CoRR, Vol. abs/1301.3781, , 2013.
Saar Kuzi, Anna Shtok, and Oren Kurland. Query expansion using word embeddings. Proc of the 25th ACM International on Conference on Information and Knowledge
Management(CIKM2016), pp. 1929–1932, 2016.