# 傾聴の応答で繰り返される語句の検出性能の向上

川本稔己長谷川駿上垣外英剛船越孝太郎奥村 学
東京工業大学
kawamoto@lr.pi.titech.ac.jp

## 1 はじめに

対話において相手の話を聞いているという意思表示を行うことは円滑なコミュニケーションを行う上で重要である。その手段として, ジェスチャや発話をすることが挙げられる. ジェスチャの具体例は領くことや首をかしげることであり，発話だと相槌を打つことが代表的である. 相棺以外にも相手の発話に賛同を示すために話し手が使用した語句を反復し発話をする時がある．以下に例を示す。

話し手: 僕はやっぱり野球は無理だなと思いましてね.

聞き手: 野球は無理でしたか.

この例では，話し手の発話に含まれる「野球は無理」が応答で反復され，賛同を示している. このような応答を繰り返し応答という。人が傾聴するときと同様に，対話システムに傾聴をさせる際にも相槌だけではなく繰り返し応答も行うことで会話をより円滑に進める事が出来る．その生成を行うにはどの語句を反復するかを決めることが必要である. よって，本稿では話し手の発話の中から繰り返し応答に用いられる文節を検出する研究に取り組む.

伊藤ら [1] は個々の文節に関する素性を主に用いてSVM で検出する手法を示しているが，発話における文節間の関係を十分に考慮していない。この問題を解決するために，本稿では文節間の関係を捉えることが可能な BERT [2]を使用する。 さらに，発話をまたぐ文脈を考慮する目的で直前の話し手の発話も入力として用いる。

一般に繰り返し応答に対するデータを大量に準備することは難しい，その理由としては，賛同を示す発話の一種類である繰り返し応答が対話時に多用されるものではないという点が挙げられる. そのため，本稿では傾聴対話コーパス [3] の話し手の発話を用いて，その発話に対して取りうる繰り返し応答のバリエーションを人手でクラウドソーシング表 1 先行研究で使用された素性一覧文節の主辞の品詞文節の主辞の品詞細分類

文節の主辞の活用形

文節の機能語の品詞

文節の機能語の品詞細分類

文節の機能語の活用形

文節の形態素数が以下の 4 分類のいずれであるか (1, 2, 3-6, 7 以上)

文節が属する節境界単位の種類

節境界単位内で先頭から何番目の文節か

文節が固有名詞を含むか否か

文節が数詞を含むか否か

文節が固有表現を構成する形態素を含むか否か IREX の分類について，文節がその固有表現を構成する形態素を含むか否か文節内に内容語が存在し，文節の重要度 $I$ が全形態素の中央値 13.56 より大きいか否か直前の文節の最後の形態素がフィラーか否か

サービスを用いて作成することによりデータを用意する。

作成したデータを対象とした評価実験の結果，提案手法はベースラインである SVM を用いた手法より 24 ポイント高い $\mathrm{F}$ 值を達成した. それにより文脈を考慮した提案手法の有効性を確認できた。

## 2 先行研究

伊藤らは，文節ごとに与えられる素性を元に各文節が繰り返し語句を含む文節であるかを，分類器を用いて分類している。その際に用いられている素性を表 1 に示す.

先行研究から, 特に固有表現・フィラーの後の語句，重要度が高い語句は繰り返しの対象になりやすいことが分かっている. 固有表現の抽出および IREX タグの付与には CaboCha[4] が用いられている. フィラーの直後の語句は話し手が言いよどみした後に発言したものであり，比較的重要な意味を持つと考えられる。語句の重要度は以下の指標で計られている。

$
I\left(w_{i}\right)=\log _{2} \frac{\sum_{j} F\left(w_{j}\right)}{F\left(w_{i}\right)+1}
$

ここで， $w_{i}$ は形態素， $F\left(w_{i}\right)$ は『日本語話し言葉コーパス』短単位語彙表 ver $\left.1.0^{1}\right)$ における $w_{i}$ の出現頻度である. 語の異なり総数は 42,545 , 語の総頻度 $\sum_{j} F\left(w_{j}\right)$ は 7,479, 773 である. 素性 14 の文節の重要度 $I$ は, 文節に属する内容語の重要度 $I$ のうち最大のものとした.

## 3 提案手法

本節では文節間の関係を捉え，発話をまたぐ文脈を考慮し，繰り返し文節を検出する手法を提案する. 図 1 に提案モデルの概要を示す.

提案手法では, 事前学習された，日本語を対象とした Bidirectional Encoder Representations from Transformers (BERT)2)をエンコーダとして使用する. BERT を使うことで文節間の関係を捉えることが可能となる．入力には，発話をまたぐ文脈を考慮するために, 話し手の対象発話 $W=\left(W_{1,1}, \ldots\right)$ と対象発話の直前の話し手の発話 $W^{*}=\left(W_{1,1}^{*}, \ldots\right)$ を用いる. 以後話し手の対象発話を SP, 対象発話の直前の, 同じ話し手の発話を PreSP と呼ぶ (例は 4.1 節を参照).入力順序は時系列に沿い, PreSP の後 SP とする. 発話の前後には発話の開始記号として<CLS>, 発話の終端記号としてくSEP>を挿入する。なお，BERT は特徴量抽出のみに利用し, fine-tuning は行っていない.

次に，予め分割しておいた文節ごとに，文節が表現しているべクトルを得る。そのために BERT でエンコードした検出対象発話の単語単位のベクトルを，文節ごとに self-attentive span extractor[5]を利用して文節単位のベクトルに変換した. そうして得たベクトル $h_{i}^{s}$ に表 1 に示す素性を結合し, MLP (multi-layer perceptron)の入力とした. MLP は最終層に sigmoid 関数を使用しているので，出力は $[0,1]$ の連続値になる。その値に対する閾値を使用して二值に分類する. 閾値は開発データを用いて最適化した.

## 4 データ

本節では人手で繰り返し応答を作成し，繰り返し対象語句を含む文節のタグ付けを行う手順について説明する。

繰り返し応答は傾聴時に多く出現することから，話し手の発話についてはデータとして高齢者と介護


士による傾聴対話 [3] を用いた。この対話は，話し手となる高齢者と聞き手となる介護士が情報案内および傾聴を行うコーパスである。本コーパスの発話の総数は 9716 である.

## 4.1 繰り返し応答データの作成

繰り返し応答のデータをある程度の量用意するためにクラウドソーシングを利用して繰り返し応答を人手で作成した. ${ }^{3}$ クラウドソーシングには Lancers")を使用した. 具体的な手段としては，デー タの話し手の発話で, 内容語 (名詞, 動詞, 形容詞,副詞のいずれか)を含む文に対して以下のような設問を提示した. 内容語を特定するために必要な形態素解析器には $\mathrm{MeCab}^{5}$ を用いた. 作成してもらう際には，50 個の設問を 1 つのパートとし，合計 36 個のパートをそれぞれ 3 名に依頼した。したがって作成者はのべ 108 名である. 以下が作成作業時に提示された設問と発話の例である. 以後，聞き手の発話をLIと呼ぶ.

Q: 下線が引いてある $\mathrm{SP}$ の語句を使い応答文を作成してください，それ以前の対話は文脈理解に使用してください.

PreSP: はい私の名前が.

LI: 何が出るんです？釣った大きさ？

SP: 大きさとかね，そういう何匹釣ったとか， そんなん.

以上の設問に対する 3 名からの回答が以下である.

A-1: 何匹釣ったとかということが出ているのですね.

A-2： 釣った魚の大きさとか数の情報がでるのですね.

A-3: 大きさと何匹釣ったかとかですか.

これらの例では下線の話し手の文で使われている内容語「大き」・「何」・「匹」・「釣っ」を一つ以上含む繰り返し応答が作成できていることがわかる.

そして，提示した話し手の文と，人手で作成された，上のような 3 文のうち 1 文をランダムに選択し，それらを文対とする。以降，本稿においてLIとは作成した応答とする。


図 1 提案手法で使用するニューラルネットワークの構造. BERTには時系列順に話し手の対象発話 (SP) とその直前の話し手の発話 (PreSP)を入力する．MLPの入力には，文節ごとに SpanExtractor を使用したべクトルに表 1 の素性を追加している.

その結果 1760 の文対が得られた。

## 4.2 繰り返し対象語句を含む文節のタグ 付け

4.1 節で得られた文対に対して, 繰り返し対象となっている語句を含む SP の文節を以下の手続きで同定しアノテーションした. 文節の分割には CaboCha を用いた.
- LI 中と一致している内容語を含む SP の文節を繰り返し対象となる文節とする。

$\cdot$同じ内容語に対して複数の文節がある場合は,他の繰り返し対象となる文節に最も近いものを選択する。他の繰り返し対象文節が存在しない場合は，最初に出現したものを選択する。

以下にタグ付けの例を示す. 下線の箇所が繰り返し対象となる語句を含む文節である。なお，スラッシュは文節間の区切りを表す。

SP: それまではねね，/ちょっと/今儿ばらく终眠中です.佟眠さしても/うてます.

LI: 冬眠明けが/楽しみです.

## 5 実験

先行研究では，SPを節単位に分割し，繰り返し対象文節を 1 つも持っていない節は実験対象から除外
している.しかし，対話システムやチャットボットで実際に繰り返し応答を生成する際には，節よりも文が理解の単位として重要であり，また，繰り返し文節が存在しない文も対象として実験を行うことが望ましい. そこで本稿では, 先行研究の再現という目的で，参考として先行研究と同じ節単位での実験も行うが，文単位で実験を行う。

## 5.1 節単位での実験

先行研究の実験設定に沿うように，SPを節境界で分割し, 繰り返し対象文節を 1 つも持っていない節は実験の対象から除外した.このため実験対象の節には必ず 1 つ以上の繰り返し対象文節が含まれる. 節境界の検出には節境界解析ツール CBAP[6] を用いた.

上述したように，節には必ず少なくとも 1 つ繰り返し文節が含まれるという設定であるので, 繰り返し対象となる文節を検出する際，繰り返し対象文節と判定される文節が $1 \supset もない$ 節については, 二值分類する際のスコアが最大の文節を繰り返し対象文節とする。

## 5.2 文単位での実験

本設定では文を一つの単位とみなす。また，傾聴において繰り返し応答をしない場合も存在する方が自然である. よって，一つも繰り返し対象文節と判定されるものがない場合も，節単位での実験のように，後処理は行わないこととする。これにより，先行研究より自然な実験設定になる.

## 5.3 実験概要

実験には 4 節で作成したデータを用いた. データのサイズを表 2 に示す. 実験では訓練データ: 開発データ: テストデータ $=3: 1: 1$ として 5 分割交差検証をモデルの初期値を変更して 3 回ずつ実験し，計 15 回の平均を実験結果とした.

繰り返し対象文節を正解とし，正解に対する再現率・適合率・F 値により評価した. 再現率・適合率・ F 値はそれぞれ，

$
\begin{aligned}
& \text { 再現率 }=\frac{\text { 正しく検出できた繰り返し対象文節数 }}{\text { 正解の絽り返し対象文節数 }} \\
& \text { 適合率 }=\frac{\text { 焉しく検出できた繰り返し対象文節数 }}{\text { 数返対象として検出された文糗数 }} \\
& F \text { 值 }=\frac{2 * \text { 再現率 } * \text { 適合率 }}{\text { 再現率 }+ \text { 適合率 }}
\end{aligned}
$

のように計算される.

ベースラインには Support Vector Machine (SVM) による先行研究を用いた. 表 1 の素性に基づいた先行研究の再現を可能な限り行った. SVM は scikit-learn ライブラリ6)の SVMを，初期設定されたハイパー パラメータに基づいて使用した. 節単位での実験は, 先行研究からの本手法による改善を確認するために行うので， ベースラインであるSVM と提案手法の 2 種類のモデルで比較を行う.

文単位の実験においてはその 2 種類に加えて, ablation study として提案手法の入力にPreSP を組み込まない w/o PreSP，提案手法の MLP の入力に表 1 の素性を追加しない w/o 素性, そのどちらも組み込まない w/o PreSP and 素性の 3 種類の設定下でも実験を行った.

6) https://scikit-learn.org/stable/表 3 実験結果（節単位）（\%）

表 4 実験結果（文単位）（\%）

## 5.4 実験結果

節単位での実験結果を表 3，文単位での実験結果を表 4 にそれぞれ示す。

節単位では，ベースラインのSVM の F 値が $57.59 \%$ であったのに対し提案手法の $\mathrm{F}$ 值が $68.39 \%$ となり, 約 11 ポイントの向上を確認した. これは先行研究と同様の設定において提案手法が有効であることを示している.

文単位では，ベースラインの SVM の F 值が $32.01 \%$ であったのに対し提案手法の $\mathrm{F}$ 値が $56.21 \%$ となり，約 24 ポイントと大幅に向上したことが確認された. その上で, 提案手法と提案手法 w/o PreSP を比較すると, PreSPを入力に加えることで発話をまたぐ文脈を考慮することが出来ていることがわかる. また，提案手法と提案手法 $\mathrm{w} / \mathrm{o}$ 素性を比較すると，素性を入れた手法がより高い $\mathrm{F}$ 值を得ていることから, 先行研究の素性はSVM だけでなく提案手法においても効果的であることが分かる.

## 6 おわりに

本稿では，文節間と発話間の文脈を考慮することで傾聴の応答で繰り返される語句の検出性能を向上させる手法を提案した。提案手法は従来の手法とは異なり，BERTを用いることで文節間の関係を考慮している。その上で直前の話し手の文（PreSP）を加えることで発話をまたぐ文脈を考慮することが可能であり，また，MLPの入力に先行研究の素性を結合することによりさらなるスコアの向上も実現している. 実験の結果, $\mathrm{F}$ 値の大幅な向上が確認された.今後は本手法で検出した繰り返しとなる語句を用いて，傾聴における応答の生成を目指したい.

## 参考文献

[1]伊藤, 村田, 大野, 松原. 傾聴を示す応答で繰り返される語りの語句の検出. 言語処理学会, 2019.

[2]Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018.

[3]Yoshino, Tanaka, Sugiyama, Kondo, and Nakamura. Japanese dialogue corpus of information navigation and attentive listening annotated with extended iso-24617-2 dialogue act tags. In Proceedings of the Eleventh International Conference on Language Resources and Evaluation (LREC 2018), 2018.

[4]工藤拓, 松本裕治. チャンキングの段階適用による日本語係り受け解析. 情報処理学会論文誌, Vol. 43, No. 6, pp. 1834-1842, 2002.

[5]Kenton Lee, Luheng He, Mike Lewis, and Luke Zettlemoyer. End-to-end neural coreference resolution. arXiv preprint arXiv:1707.07045, 2017.

[6]丸岡, 柏岡, 熊野, 田中. 節境界自動検出ルールの作成と評価. 言語処理学会, 2004.