\documentclass[japanese]{jnlp_3.5}
\usepackage{jnlpbbl_2.2}
\usepackage[dvipdfmx]{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{url}
\usepackage{hangcaption_jnlp}
\usepackage{array}
%%%%\usepackage{udline}
%%%%\setulminsep{1.2ex}{0.2ex}
%%%%\let\underline=\ul
\allowdisplaybreaks
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
\usepackage{booktabs}
%%%%\usepackage{amsmath,amsfonts,amssymb,mathtools}
\usepackage{threeparttable}
%%%%\usepackage{url}
%%%%\usepackage{here}
%%%%\usepackage{multicol}
%%%%\usepackage{longtable}
\usepackage{lscape}
%%%%\usepackage[dvipdfmx]{color}
% macros
%%%%\newcommand{\mathboldface}[1]{\mbox{\boldmath $#1$}}
%%%%\newcommand{\VEC}[1]{\mathboldface{#1}}
%%%%\newcommand{\bvec}[1]{\mbox{\boldmath $#1$}}
%%%%\newcommand*{\ky}[1]{\textcolor{orange}{KY: {\bf #1}}}
%%%%\newcommand{\argmax}{\mathop{\rm arg~max}\limits}
\newcommand{\argmin}{\mathop{\rm argmin}\limits}
%%%%\newcommand{\bettershortstack}[4][c]{%
%%%%  \renewcommand{\arraystretch}{#2}
%%%%  \begin{tabular}[b]{@{}#1@{}}
%%%%  #4
%%%%  \end{tabular}%
%%%%  \renewcommand{\arraystretch}{#3}
%%%%}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\Volume{29}
\Number{1}
\Month{March}
\Year{2022}
%%%%\Issuetitle{「　　　　」特集号}

\received{2021}{7}{1}
\revised{2021}{9}{30}
%%%%\rerevised{2006}{5}{6}
\accepted{2021}{10}{20}

\setcounter{page}{53}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{一般論文}
\jtitle{負例を厳選した対話応答選択による対話応答生成システムの評価}
\jauthor{佐藤　志貴\affiref{tohoku} \and 赤間　怜奈\affiref{tohoku}\affiref{riken} \and 大内　啓樹\affiref{riken}\affiref{tohoku}\affiref{naist} \and \\
	鈴木　　潤\affiref{tohoku}\affiref{riken} \and 乾　健太郎\affiref{tohoku}\affiref{riken}}
\jabstract{
雑談対話応答生成システムの日々の改良が望ましい方向に効いているか継続的に評価するといった用途として，システムを低コストで評価できる自動評価の枠組みの確立が求められている．しかし，BLEU など，応答生成の自動評価に広く用いられている既存の指標は人間との相関が低いことが報告されている．これは，一つの対話履歴に対し適切な応答が複数存在するという対話の性質に起因する．この性質の影響を受けにくいシステムの評価方法の一つに対話応答選択が考えられる．対話応答選択は，対話履歴に対し適切な応答を応答候補から選ぶタスクである．このタスクではシステムの応答が候補内の発話に限られるため，前述した対話の性質の影響を回避した評価が可能である．一般に対話応答選択では，対話履歴に対する本来の応答（正例）に加え，誤り候補（負例）を無関係な対話データから無作為抽出し応答候補を構成する．しかし，この方法では，正例とかけ離れすぎていて応答として不適切と容易に判別できる発話や，応答として誤りとはいえない発話が負例として候補に混入し，評価の有効性が低下する可能性がある．本論文では，負例を厳選することで不適切な負例の混入を抑制した対話応答選択テストセットの構築方法を提案する．構築したテストセットを用いた対話応答選択によるシステム評価が，BLEU など既存の広く用いられている自動評価指標と比べ人手評価と強く相関することを報告する．
}
\jkeywords{対話応答生成, 自動評価, 対話応答選択}

\etitle{Evaluating Dialogue Response Generation Systems via Response Selection with Well-chosen False Candidates}
\eauthor{Shiki Sato\affiref{tohoku} \and Reina Akama\affiref{tohoku}\affiref{riken} \and Hiroki Ouchi\affiref{riken}\affiref{tohoku}\affiref{naist} \and \\
	Jun Suzuki\affiref{tohoku}\affiref{riken} \and Kentaro Inui\affiref{tohoku}\affiref{riken}} 
\eabstract{
Developing an automatic evaluation framework for open-domain dialogue response generation systems that can validate the effects of daily system improvements at a low cost is necessary. However, existing metrics commonly used for automatic response generation evaluation, such as bilingual evaluation understudy (BLEU), correlate poorly with human evaluation. This poor correlation arises from the nature of dialogue, i.e., several acceptable responses to an input context. To address this issue, we focus on evaluating response generation systems via response selection. In this task, for a given context, systems select an appropriate response from a set of response candidates. Because the systems can only select specific candidates, evaluation via response selection can mitigate the effect of the above-mentioned nature of dialogue. Generally, false response candidates are randomly sampled from other unrelated dialogues, resulting in two issues: (a) unrelated false candidates and (b) acceptable utterances marked as false. General response selection test sets are unreliable owing to these issues. Thus, this paper proposes a method for constructing response selection test sets with well-chosen false candidates. Experiments demonstrate that evaluating systems via response selection with well-chosen false candidates correlates more strongly with human evaluation compared with commonly used automatic evaluation metrics such as BLEU.
}
\ekeywords{Dialogue Response Generation, Automatic Evaluation, Response Selection}

\headauthor{佐藤，赤間，大内，鈴木，乾}
\headtitle{負例を厳選した対話応答選択による対話応答生成システムの評価}

\affilabel{tohoku}{東北大学}{Tohoku University}
\affilabel{riken}{理化学研究所}{RIKEN}
\affilabel{naist}{出版時：奈良先端科学技術大学院大学}{Present affiliation: Nara Institute of Science and Techonology}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{はじめに}
\label{sec:introduction}

人間と日常会話などの雑談をおこなう雑談対話応答生成システムは，医療や教育をはじめとした様々な分野で注目され \cite{Litman2016:UsingConversations,Addlesee2019:CurrentChallenges}，研究開発が活発におこなわれている．
特に近年，深層学習技術の発展を背景に急速に研究が進行した深層学習ベースの雑談対話応答生成システムは，対話履歴に対して流暢な応答を生成できることが知られている \cite{Zhang2020:DIALOGPT,Adiwardana2020:Humanlike,Roller2021:Recipes}．
しかし，人間と自然な雑談が可能なシステムの実現に向けては，さらなる改良の余地がある．
たとえば，近年の雑談対話応答生成システムが生成する応答でさえ自身の直前の発話とは矛盾する主張をするなど，人間同士の会話では生じないような誤りを含むことがある \cite{Adiwardana2020:Humanlike,Roller2021:Recipes}．

システムの改良に取り組むうえで，その性能を費用や時間をかけず低コストで評価する指標の存在は大きい．
たとえば機械翻訳の研究では，システムが生成した翻訳文と参照訳の間の$n$-gramの一致を評価するBLEU \cite{Papineni2002:BLEU}という指標がシステム性能の自動評価に用いられる \cite{Sutskever2014:SequenceToSequence,Bahdanau2015:Jointly,Luong2015:Effective,Vaswani2017:Attention}．
機械翻訳の研究において，BLEUは人間による評価に代わるほどの信頼性を持つ評価指標ではない \cite{Stent2005:EvaluatingEvaluation,Callison2006:Reevaluating,Smith2016:Climbing}ものの，人手評価と一定の相関を持つ評価が可能であることが知られている\cite{Reiter2018:Structured}．
そこで機械翻訳の研究では，BLEUを用いて一定の精度でコストをかけず評価しながらシステムの改良を繰り返すという効率的な開発プロセスが分野に定着することで，技術が飛躍的に発展した．

一方，雑談対話応答生成の研究では，機械翻訳研究でのBLEUに相当するような分野全体に共有されている評価指標が存在しているとは現状言い難い．
たとえば，雑談対話応答生成システムの自動評価においてもBLEUはしばしば用いられる \cite{Sordoni2015:ContextSensitive,Wen2015:SemanticallyConditioned,Li2016:DiversityPromoting,Zhang2020:DIALOGPT}が，人手評価との間には相関がまったく認められないことが報告されている \cite{Liu2016:HowNotEvaluate}． 
この原因として，対話には一つの対話履歴に対し妥当な応答が複数存在するという性質が存在することが挙げられる．
この性質により，用意した有限個の参照応答との$n$-gramの一致を評価するBLEUでは，参照応答には類似しないが適切な応答が低く評価される可能性があり，信頼性の高い評価をおこなうことは難しい．
たとえば「好きな果物は？」という対話履歴に対しては「リンゴが好きです。」という応答も「メロンかな」という応答も妥当だが，参照応答が「リンゴが好きなんです。」だった場合，共通した$n$-gramを含まない後者の応答はスコア$0$として扱われる．
雑談対話応答生成システムの自動評価方法の設計にあたっては，この性質への対処が重要となる．

本論文では，この性質の影響を受けにくい雑談対話応答生成システムの自動評価方法として，対話応答選択と呼ばれる選択問題を用いた評価に着目する．
対話応答選択は，与えられた対話履歴に続く適切な応答（以下，正例と呼ぶ）を選択肢（以下，応答候補と呼ぶ）から選択するタスクである．
雑談対話応答生成システムは応答を生成するためのシステムだが，応答候補中の各発話の生成確率を計算し，最も生成確率が高い候補をシステムの選択とみなすことで選択問題を解くことができる．
対話応答選択を用いた評価は，次の二つの特長から，分野全体が共有する雑談対話応答生成システムの自動評価指標に適していると考えられる．
一つめは，適切な応答が複数存在するという対話の性質の影響を回避したシステム評価が可能となる点である．
対話応答選択ではシステムの選択する応答が候補内のものに限られるため，適切ではあるが正例と類似しない応答が出力され低く評価されるといった事態を回避できる．
二つめは，システムの性能を正解率という統一的な指標で測ることができる点である．
BLEUなどのシステム応答自体を評価する指標では，単語分割処理などの違いが評価結果に影響を与える可能性があるため，先行研究での報告値にもとづいたシステム間の比較が難しい場合がある．
一方で，対話応答選択による評価ではシステムの性能を正解率で測るため，先行研究の報告値をもとにシステム性能を比較することが容易である．
対話応答選択では，応答生成システムが実際に生成する応答の質自体を評価することはできないため，人手評価に代わる評価の枠組みとはなりえない．
しかし，少なくとも適切な応答を生成可能なシステムであれば適切な応答を選択することが可能であると仮定すると，システムが適切な応答を生成しうるかを確認することができるため，対話応答選択は日々のシステム改良の成果を確認するための継続的な評価への利用に適した枠組みといえる．

ただし，従来の対話応答選択の枠組みは負例の獲得方法において改善の余地がある．
一般的に，対話応答選択の応答候補のうち不正解となる候補（以下，負例と呼ぶ）には，対話履歴や正例とは無関係な対話データから無作為に抽出してきた発話を用いる \cite{Lowe2015:Ubuntu,Gunasekara2019:DSTC7Noetic}
．
このとき，無作為抽出により収集された負例には，(a) 正例とかけ離れすぎていて容易に負例と判別できる発話や，(b) 応答として誤りとはいえない発話が含まれる可能性がある．
まず (a) について，たとえば「好きな果物は？」という対話履歴に対し「体調が悪いです。」という発話が負例として抽出されたとする．
この発話は対話履歴中の「果物」という単語と明らかに無関係な「体調」という単語を含む．
そのため，単語を比較していくだけで対話履歴との関連性が低い候補であることがわかり，負例であると推測できてしまう．
このような負例の混入によって，システムが対話の内容を理解していなくとも正解できる選択問題が構築されうる．
次に (b) について，対話ではある発話が無数の対話履歴に対する応答として成立することもあるため，対話履歴や正例と無関係な対話データから負例として無作為抽出した発話が必ずしも応答として不適切であるとは限らない．
とりわけ「わかりません」など，さまざまな対話履歴に対して応答として成立し対話データセット中に頻出する発話が，負例として無作為抽出されることが考えられる．
このような発話が負例となっている問題については，妥当であるにも関わらず選択すると不正解と見なされる候補が存在することになり，システムの性能が不当に低く見積もられるという事態につながる可能性がある．
負例を無作為抽出で取得した場合，(a) や (b) のような発話により対話応答選択によるシステム評価の有効性は低下するおそれがある．

本論文では，雑談対話応答生成システムの自動評価の枠組みとして分野全体で共有される指標の実現に向け，前述した不適切な負例を応答候補から除いた対話応答選択による評価を考える．
具体的には，各問題の正例に類似する発話のうち応答として成立しないものだけを厳選して負例として用いることで，(a) や (b) のような応答候補の混入を抑制した対話応答選択テストセットの構築方法を提案する．
提案する構築方法に従って実際にテストセットを構築し，雑談対話応答生成システムを対話応答選択で評価したところ，既存の広く用いられている自動評価指標と比べて人手評価と強く相関することを実験により確認した．
本論文の主要な貢献は以下の三点である．
\begin{itemize}
    \item 雑談対話応答生成システムの評価に適した対話応答選択テストセットの構築方法を提案した．
    \item 提案する方法に従い，実際に対話応答選択テストセットを構築し公開した\footnote{\url{https://github.com/cl-tohoku/eval-via-selection}}．
    \item 提案する方法で構築したテストセットを用いた対話応答選択による雑談対話応答生成システムの評価結果が，既存の広く用いられている自動評価指標と比べて，人間による評価結果と強く相関することを実験により確認した．
\end{itemize}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{関連研究}
\label{sec:related-works}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{雑談対話応答生成システムの自動評価}

雑談対話応答生成システムは，医療や教育をはじめとした様々な分野で注目され \cite{Litman2016:UsingConversations,Addlesee2019:CurrentChallenges}，研究開発が活発におこなわれている．
これに伴い，雑談対話応答生成システムの自動評価の枠組みも多数提案されてきた．
雑談対話応答生成システムの自動評価は，システム応答自体の質を評価する方法と，適切な応答に高い生成確率を付与可能か測定する方法が主流である．

システム応答自体の質を評価する方法は，システム応答と参照応答の類似度を評価する指標 \cite{Papineni2002:BLEU,Banerjee2005:METEOR,Lin2004:ROUGE,Rus2012:ComparisonGreedy,Forgues2014:Bootstrapping}や，学習したニューラル評価モデルで応答を評価する指標 \cite{Lowe2017:AutomaticTuring,Tao2018:RUBER,Mehri2020:USR}が提案されてきた．
前者については，対話では一つの対話履歴に対して妥当な応答が複数存在しうるため，適切だが参照応答と類似しない応答が不当に低い評価を受ける場合があり，人間による評価結果との相関が認められないということが報告されている \cite{Liu2016:HowNotEvaluate}．
後者については，前者と比較すると人手評価と相関する評価が可能であることが知られているが，評価結果の解釈可能性が低いことや，指標によっては敵対的な入力に対して誤った評価をする \cite{Sai2019:ReevaluatingADEM}ことなどが課題となっている．
以上のような背景から，どの指標も分野全体に共有される自動評価指標となるには至らず，現時点では，人手評価との相関が認められないものの計算コストが低く先行研究でも報告されてきた \cite{Sordoni2015:ContextSensitive,Wen2015:SemanticallyConditioned,Li2016:DiversityPromoting}BLEUが自動評価の参考値として広く用いられている \cite{Zhang2020:DIALOGPT,Cai2020:DataManipulation,Zhang2020:DialogueDistillation}．

適切な応答に高い生成確率を付与可能か測定する方法は，参照応答に対する雑談対話応答生成システムのperplexityを計算する方法が広く用いられる \cite{Serban2016:BuildingEndtoend,Parthasarathi2018:Extending,Ghandeharioun2019:Approximating}．
システム応答を評価するのではなく，応答として適切であることがわかっている参照応答がシステムにより生成されやすいかどうかを評価するため，対話履歴に対し妥当な応答が複数存在するという対話の性質の影響を受けにくい評価が可能となる．
一方で，perplexityの計算はシステムの語彙数などに依存するため，異なるシステム同士で値を比較することが難しく，分野で共有する自動評価指標としては適さない．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{対話応答選択}

対話応答選択は，与えられた対話履歴に続く適切な応答（正例）を応答候補から選択するタスクである．
たとえば「好きな果物は？」という対話履歴に対し「リンゴが好きです。」と「体調が悪いです。」という二つの応答候補が与えられた場合，応答として適切な前者を選択すると正解となる．
システムの性能は，同様の選択問題を複数問解かせたときの正解率によって評価する．
対話応答選択は従来，検索型対話システムの性能評価のためのタスクとして用いられてきた \cite{Zhou2016:MultiviewResponseSelection,Wu2017:SequentialMatching,Zhou2018:MultiTurnResponseSelection}．
検索型対話システムは，応答を生成するのではなく，事前に収集しておいた発話の集合のなかから応答として適切な発話を選択するシステムである．
そのため対話応答選択は，検索型対話システムが実際に応答をするときと同様の問題設定であり，検索型対話システムの評価に適したタスクといえる．

本論文では，対話応答選択を，検索型対話システムではなく応答生成システムの評価に応用することを考える．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{対話応答選択テストセット}

対話応答選択テストセットの負例には，対話履歴や正例と無関係な対話データから無作為抽出してきた発話を用いることが一般的である \cite{Lowe2015:Ubuntu,Gunasekara2019:DSTC7Noetic}．
しかしながら\ref{sec:introduction}節で述べたように，無作為抽出された負例は，正例とかけ離れすぎていて容易に負例と判別できる発話や，応答として誤りとはいえない発話である可能性があり，評価の有効性を低下させうる．

無作為抽出以外の方法で負例を収集した対話応答選択データセットとしては，検索型対話システムの性能評価のために構築されたDouban Conversation Corpus \cite{Wu2017:SequentialMatching}が挙げられる．
Douban Conversation Corpusは，検索型対話システムの運用を想定したかたちで負例を収集している．
具体的には，テストセットの各問題の対話履歴をクエリとして，対話履歴を取り出したものとは異なる対話データから検索により集めた発話を応答候補とする．
たとえば，ある問題の対話履歴が「好きな果物は？」であり，対話履歴をクエリとして「好きな果物はリンゴです。」という発話が検索された場合，これを応答候補に採用する．
この方法は，自身の保持する発話集合のなかから対話履歴との類似度によって応答候補を絞り込む実際の検索型対話システムの応答選択過程と類似しており，これらのシステムの評価に適したテストセットとなっている．

本論文で提案するテストセットの構築方法でも，対話履歴や正例を取り出したものとは異なる対話データから検索により応答候補を収集するが，Douban Conversation Corpusとは目的や検索方法が異なる．
本論文で構築するテストセットは応答生成システムの性能評価への利用を前提とするため，Douban Conversation Corpusのように検索型対話システムの応答選択過程と同様の方法で応答候補を収集する必要がない．
そこで，本論文では，対話応答選択の問題を構成する正例を直接クエリとして応答候補を収集することで，より確実に適切な応答からかけ離れた発話が候補に含まれないようにするとともに，\ref{subsubsec:error-interpret}節で述べるようにシステムの分析にも有用なテストセットを構築する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{提案する対話応答選択テストセットの構築方法}
\label{sec:proposal-method}

対話履歴$c$と正例$r^\mathrm{true}$に対し，発話集合であるリポジトリ $ \mathcal{U}$から負例$r^\mathrm{false} \in \mathcal{R}^\mathrm{false}$を抽出する．
図~\ref{fig:method-summary}に，提案するテストセットの構築方法の概要を示す．
本論文では，次の二つの段階を踏むことで$\mathcal{R}^\mathrm{false}$を構成し，(a) 正例とかけ離れすぎていて容易に負例と判別できる発話と，(b) 応答として誤りとはいえない発話が負例として混入することを抑制したテストセットを構築することを提案する．
\begin{enumerate}
    \item 正例に類似する$M$個の発話$\{u_{1},...,u_{M}\}$を$\mathcal{U}$から検索することで負例に用いる発話の候補（以下，負例候補と呼ぶ）を収集する．
    \item $M$個の負例候補$\{u_{1},...,u_{M}\}$から応答として成立する発話を人手評価により除いたものを$\mathcal{R}^\mathrm{false}$とする．
\end{enumerate}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[b]
\begin{center}
\includegraphics{29-1ia3f1.pdf}
\end{center}
\hangcaption{テストセット構築方法の概要．(1) 正例に類似する発話をリポジトリから検索することで負例候補を収集し，(2) 応答として成立する発話を人手評価により除くことで負例を厳選する．}
\label{fig:method-summary}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{(1) 類似発話の検索による負例候補の収集．}
まず，正例との類似度にもとづき正例と類似する発話をリポジトリ $ \mathcal{U}$から$M$個ずつ検索することで，表層的な手がかりを用いるだけではなく，対話の内容を理解しなければ応答として誤りであると判別できない負例候補を集める．
たとえば「好きな果物は？」という対話履歴の正例が「リンゴが好きです。」だとすると，これに類似する「果物が好きです。」という負例は正例と共通して「好き」という単語を含んでおり，単語の比較だけでは誤りであると識別しにくい．
このような負例で応答候補を構成することで，雑談対話応答生成システムが対話履歴や候補の意味を捉えることができるかを評価可能なテストセットを構築する．
実際にテストセットを構築した際に用いた正例との類似度については\ref{subsubsec:testset-construction-retrieval}節で述べる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{(2) 応答として成立する発話の人手評価による除去．}
(1) で検索した負例候補のうち，応答として成立するものを除去し$\mathcal{R}^\mathrm{false}$を構成する．
発話が与えられた対話履歴に対する応答として適切かを高精度で自動評価することは難しいため，除去には人手評価を用いる．
各負例候補について$5$人のアノテータに，発話が対話履歴に対する応答として適切かどうかを示すスコアを付与させる．
スコアは$1$から$5$までの$5$段階とする．
スコア$5$は発話が与えられた対話履歴に対する応答として明らかに適切であることを示し，スコア$1$は応答として明らかに不適切であることを示す．
また，明らかな文法誤りを含むような発話に対しては，$1$から$5$までの$5$段階スコアのかわりにスコア$0$を付与させる．
$5$人中$3$人以上のアノテータにより$3$以上のスコアが付与された，すなわち過半数の評価者によって「応答として適切」または「判別できない」と判断された負例候補は，正例となりうる可能性が一定程度あるものと見なし除去する．
また，本論文ではシステムが文法的に適切な応答を選択可能かどうかを評価することは意図していないため，$3$人以上（過半数）のアノテータによりスコア$0$が付与された負例候補は，文法誤りを含む可能性が高いと見なして除去する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{提案法を用いたテストセットの構築}
\label{sec:testset-construction}

\ref{sec:proposal-method}節で提案した構築方法をもとに実際に対話応答選択テストセットを構築した．
本節では，テストセット構築時の詳細な設定について述べたうえで，構築したテストセットの概要を説明する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{テストセット構築時の詳細設定}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{対話履歴および正例の収集とリポジトリの構成}
\label{subsubsec:testset-construction-dataset}

対話履歴と正例の収集には，DailyDialog \cite{Li2017:DailyDialog}を用いた．
DailyDialogは，英語学習者向けの英会話例を収集した対話データセットであり，幅広いトピックを取り扱っていることに加え，誤字や文法誤りといったノイズが少ないという特徴を持つ．
DailyDialogの各対話の冒頭の$4$発話を冒頭対話として取り出したうえで，冒頭対話のうち最初の$3$発話を対話履歴，$4$発話目をそれぞれの対話履歴に対する応答の正例として収集した%
\footnote{対話履歴が長すぎる場合，人手で適切な発話を$\mathcal{R}^\mathrm{false}$から除去するコストが高くなるため，対話履歴を$3$発話で固定した．}．
DailyDialogには，一部の単語を除き完全一致するなど極端に類似する対話データ同士が含まれているため，Jaccard係数により各冒頭対話同士の類似度を計算し，類似する冒頭対話のうち一方を除去した．
Jaccard係数は二つの文書の表層的な類似度を測る指標であり，文書$a$と文書$b$の類似度は次式で計算される．
\begin{equation}
    J(a, b) = \frac{|\mathrm{set}(a)\cap \mathrm{set}(b)|}{|\mathrm{set}(a)\cup \mathrm{set}(b)|}
\end{equation}
ここで，$\mathrm{set}(a)$は文書$a$に含まれる単語からなる集合である．
各冒頭対話に対しJaccard係数が$0.5$以上の冒頭対話が他に存在した場合，両対話は類似しているとして一方を除去した．
さらに，単語数が$4$以下もしくは$31$以上であるような発話を含む冒頭対話を除去し%
\footnote{各発話をNLTK \cite{Bird2004:NLTK}で単語分割したうえで単語数を数えた．
}
，$7,393$個の対話履歴および正例が得られた．
$1,000$問程度の対話応答選択問題からなるテストセットを構築することを目標とし，ここから$1,006$個の対話履歴および正例を無作為抽出した．

負例候補の検索に用いるリポジトリ$ \mathcal{U}$の構成にはOpenSubtitles2018 \cite{Lison2018:OpenSubtitles}
を用いた．
OpenSubtitles2018は映画の字幕を収集したデータセットであり，多様な発話が大量に収集可能である．
データセットに含まれる発話のうち，単語数が$5$以上かつ$30$以下のものを収集した%
\footnote{各発話をNLTK \cite{Bird2004:NLTK}で単語分割したうえで単語数を数えた．}．
重複を除き，最終的に約$0.85$億個の発話からなる$ \mathcal{U}$が得られた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{表層と分散表現にもとづく負例候補の検索}
\label{subsubsec:testset-construction-retrieval}

\ref{subsubsec:testset-construction-dataset}節で抽出した$1,006$個の対話履歴に対し，多様な負例候補を収集するため，表層にもとづく検索と分散表現にもとづく検索の二つの方法を用いて発話を検索した．
各検索方法で$5$発話ずつ検索することで，対話履歴一つあたり合計$10$発話の負例候補を収集した．

表層にもとづく検索では，クエリである正例に含まれている単語とどれだけ同じ単語を含むかにより，正例に表層的に類似する負例候補を収集した．
検索には全文検索エンジンであるLucene%
\footnote{\url{https://lucene.apache.org/}}を用いた．
$ \mathcal{U}$に含まれる発話のインデックスを作成したうえで，正例をクエリとして与えたときにLuceneにより計算されるスコアが高い上位$5$発話を$ \mathcal{U}$から取り出した．

分散表現にもとづく検索では，正例との文ベクトルの類似度により，正例に意味的に類似する負例候補を収集した．
文ベクトルの計算は，少ない計算量で高品質な文ベクトルが算出可能なAroraらの方法 \cite{Arora2016:SimpleTough}を参考にした．
具体的には，各発話に含まれる単語全てについて単語ベクトルを計算し，これら単語ベクトルの重み付き平均を文ベクトルとした．
単語$w$の重み$\alpha(w)$は以下の式により計算した．
\begin{equation}
  \alpha(w) = \frac{a}{a+f(w)/N}
\end{equation}
ここで，$f(w)/N$は単語$w$の出現確率であり，本論文では$f(w)$を$ \mathcal{U}$中に単語$w$が出現する回数，$N$を$ \mathcal{U}$に含まれる全単語の数として計算した．
$a$は定数であり，本論文では$a=10^{-3}$とした．
文ベクトルの計算に必要となる単語ベクトルにはELMo \cite{Peters2018:DeepContextualized}を用いた%
\footnote{The Allen Institute for Artificial Intelligence による実装 (\url{https://github.com/allenai/bilm-tf}) を用いた．}
．
正例および$ \mathcal{U}$中の各発話の文ベクトルを計算したうえで，正例の文ベクトルとコサイン類似度が高い文ベクトルを持つ上位$5$発話をリポジトリから取り出した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{人手評価による負例候補除去の実施}

\label{subsubsec:testset-construction-filter}
$1,006$個の対話履歴に対して収集した負例候補から，応答として成立するものを除去するために，クラウドソーシングサービスAmazon Mechanical Turk\footnote{\url{https://www.mturk.com/}}を用いた人手評価を実施した．

図~\ref{fig:amt-inst}に，実際にアノテータへ見せたスコア付与方法の説明画面を示す．
また，図~\ref{fig:amt-ex}にスコア付与の作業画面を示す．
アノテータが解くタスクは$7$問 (Q1 $\sim$ Q7) からなり，各問が一つの対話応答選択の問題に相当する．
アノテータには，一問あたり$11$個の発話それぞれに対し，\ref{sec:proposal-method}節で述べた応答の適切性に関するスコアを付与させた%
\footnote{また，テストセット構築のための実際の処理には参照しなかったが，アノテータ自身がつけた各スコアに対する$5$段階の確信度も同時に入力するよう指示した．}．
スコアを付与する$11$個の発話は，正例と，その正例との類似度にもとづき収集された$10$個の負例候補からなる．
そのため，アノテータは一問あたり$1$個，タスクあたり合計$7$個の正例にスコアを付与することになる．
正例に対して低いスコアばかりを付与するアノテータは信頼度が低いとして，タスクに含まれる$7$個の正例のうち$4$個以上にスコア$3$以下のスコアを付与した場合はそのタスクを不採用とした．
また，信頼性の高い評価を効率的におこなうために，botや不誠実な作業者がタスクに参加することを防ぐ目的で，Amazon Mechanical Turk上で過去に解いてきたタスクの不採用率が$5\%$未満であり，かつ過去に$1,000$回以上タスクを採用されたアノテータのみがタスクに参加できるよう設定した．

表\ref{tab:filter-result}に，人手評価による負例候補除去の結果を示す．
本論文では表層にもとづく検索と分散表現にもとづく検索の二つの方法を用いて負例候補を検索したが，分散表現にもとづく検索では，表層にもとづく検索と比べ，負例にあたる発話や文法誤りを含む可能性のある発話の割合が低く，正例の可能性がある発話の割合が高かった．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[p]
\begin{center}
\includegraphics{29-1ia3f2.pdf}
\end{center}
\caption{スコア付与方法の説明図．}
\label{fig:amt-inst}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{テストセットに用いる問題の選定}
\label{subsubsec:testset-construction-finalize}

人手評価による負例候補除去の結果を踏まえ，テストセットに用いる問題を選定した．
最初に対話応答選択一問あたりの負例数を決定したうえで，決定した負例数以上の負例候補が人手評価を経て残っている問題をテストセットに採用した．

\ref{subsubsec:testset-construction-filter}節で述べた人手評価の実施後，$1,006$問のうち$876$問については$3$個以上の負例候補が除去されずに残った．
そこでまず負例数を$3$で固定したうえで，$876$問については除去されなかった負例候補から$3$個を無作為抽出することで$\mathcal{R}^\mathrm{false}$を構成し，テストセットに採用した．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 3
\begin{figure}[t]
\begin{center}
\includegraphics{29-1ia3f3.pdf}
\end{center}
\caption{スコア付与の作業画面．}
\label{fig:amt-ex}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[t]
\input{03table01.tex}
\caption{人手評価による負例候補除去の結果．}
\label{tab:filter-result}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{テストセットのかさ増し}

\label{subsubsec:testset-construction-augment}
\ref{subsubsec:testset-construction-finalize}節でテストセットに採用した問題のうち，$6$個以上の負例候補が除去されず残り，かつ別の正例が用意可能なものについては，正例$1$個と負例$3$個からなる応答候補集合を二つ作成できる．
そこで，これらから対話履歴を共有するが応答候補が異なる二つの対話応答選択問題を作成することで，テストセットをかさ増しした．

具体的には，負例候補のうち人手評価において$5$人全員のアノテータにより$4$以上のスコアを付与されたものは，適切な応答である可能性が高いため，二つ目の正例とした．
二つ目の正例を有する問題のうち，除去されず残った負例候補がもともと$6$個以上ある場合，一つ目の問題では負例に利用しなかった残りの負例候補のうち$3$個により$\mathcal{R}^\mathrm{false}$を構成した．
以上の方法により，$876$問から二つ目の対話応答選択問題を合計$143$問構築し，最終的に$1,019$個の対話応答選択問題からなるテストセットを構築した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{構築したテストセットの概要}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{テストセットの統計情報}

表~\ref{tab:statistics}に構築したテストセットの統計量を示す．
また同表に，人手評価による負例候補除去の信頼性を確認するために計算した，アノテータ間でのスコア付与の一致率を示す．
アノテータによるスコア付与を$0$から$5$までの$6$クラス分類と考えたとき，Fleiss' kappaは$0.22$となった．
また，スコア付与をDouban Conversation Corpus \cite{Wu2017:SequentialMatching}で実施した人手評価と同様に$2$クラス分類と考えると\footnote{Douban Conversation Corpusでは，収集した応答候補に対して応答として適切かどうかの$2$値を人手評価している．これに合わせるため，スコア$4$以上を適切な応答とみなし，スコア$3$以下を適切ではない応答とみなした．}，Fleiss' kappaは$0.63$であり，Doucan Conversation Corpusの$0.41$を上回る結果となった．
これらのことから，発話除去に用いる人手評価の信頼性は十分に高いと考えられる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 2
\begin{table}[b]
\input{03table02.tex}
\caption{構築したテストセットの基本統計量およびアノテーションの一致率．}
\label{tab:statistics}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 3
\begin{table}[b]
\input{03table03.tex}
\caption{構築したテストセットの例．各負例が正例同様に対話履歴に関連する単語``focus''を含む．}
\label{tab:example}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{構築したテストセットの例}

\label{subsubsec:testset-example}
表~\ref{tab:example}に，テストセットに含まれる問題の例を示す．
表中の三つの負例は応答として不適切である一方で，対話履歴の``camera'' という単語に関連する``focus'' という単語を正例同様に含んでいる．
この問題のように，対話履歴に関連する単語が負例に含まれている場合，各候補に含まれる単語のみから対話履歴との関連性を推測し正例を識別することは困難であると考えられる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{予備実験：TF-IDFモデルによる本テストの正解率}
\label{subsubsec:pre-experiments}

構築したテストセットが，対話履歴や応答候補の意味を考慮せず応答を選択するシステムにとって，実際に正解しにくいものになっているかを確認した．

対話履歴や応答候補の意味を考慮せず応答を選択するシステムとして，TF-IDFモデル \cite{Lowe2015:Ubuntu}を用意した．
TF-IDFモデルは，対話履歴と各候補それぞれに対してTF-IDFベクトルを計算し，対話履歴のTF-IDFベクトルとのコサイン類似度が最も高くなる候補を選択する．
TF-IDFベクトルは次元数が語彙数と等しく，各次元が語彙に含まれる一単語に対応するような文書（発話）のベクトル表現である．
文書$d$のベクトルにおいて単語$w$にあたる次元の値は次式で計算される．
\begin{equation}
\mathrm{tf\mathchar`-idf}(w,d,D)=f(w,d)\log \frac{|D|}{|\{d'\in D:w\in d'\}|}
\end{equation}
ここで，$D$はTF-IDFモデルのモデリングに用いる文書集合\footnote{本実験では，\ref{subsubsec:system-train}節で述べる，OpenSubtitles2018を用いて構築した対話ペアデータに含まれる発話を用いた．}
，$f(w,d)$は文書$d$に単語$w$が出現する回数である．
TF-IDFモデルは，$D$上で出現頻度の低い単語が対話履歴と候補の両方に多数含まれる場合に高いスコアを算出する．
そのため，TF-IDFモデルで正解率が高い対話応答選択のテストセットは，対話履歴や各候補の意味を捉えなくとも単語の重複情報だけで負例が識別できてしまう問題が多いことを意味する．

構築したテストセットにおいて，TF-IDFモデルの対話応答選択の正解率は$0.46$となった．
比較のために，構築したテストセットの負例をリポジトリ$ \mathcal{U}$から無作為抽出した発話に置き換えたところ，正解率は$0.67$となった．
従来のテストセットの構築方法と同様に負例を無作為抽出で収集した場合に比べ，本テストセットにおけるTF-IDFモデルの正解率が大きく低下していることから，構築したテストセットの負例は単語の重複情報を考慮するだけでは識別することが難しいといえる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{評価実験}
\label{sec:experiment}

\ref{sec:introduction}節で言及したように，適切な応答が生成可能な雑談対話応答生成システムであれば適切な応答が選択可能であると仮定すると，対話応答選択はシステムが適切な応答を生成しうるかの目安として日々のシステム改良に有用な自動評価の枠組みとなる．
\pagebreak
しかし，この仮定の妥当性は自明なものではなく，システムが適切な応答を生成可能であるかということと対話応答選択でのシステム評価の結果が相関するとは限らない．
本節では，構築したテストセットを用いた対話応答選択による雑談対話応答生成システムの自動評価結果が，人間によるシステム応答の評価結果と相関するかどうかを確認するためにおこなった実験について示す．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{実験設定}
\label{subsec:experimental-procedure}

雑談対話応答生成システムの自動評価は，システムが生成した応答一つ一つにスコアを付与するという方法が一般的である \cite{Liu2016:HowNotEvaluate,Lowe2017:AutomaticTuring,Tao2018:RUBER}．
そのため，自動評価と人手評価の結果の相関を確かめる際には，システム応答一つ一つに付与される自動評価指標のスコアと人手評価の相関を調べるという方法が取られる \cite{Liu2016:HowNotEvaluate,Lowe2017:AutomaticTuring,Tao2018:RUBER}．
一方，本論文では，対話応答選択における正解率によってシステムを評価することを考えるため，システムの応答ではなくシステム自体に対し一つのスコアを付与することになり，同様の方法が適用できない．

本実験では，システムに対し一つのスコアを付与する自動評価指標と人手評価の相関を確かめる方法として，複数用意したシステムを性能順に並び替える順位付け問題を考える．
順位付け問題では，自動評価指標によってシステムを性能順で並び替えたとき，どれだけ人手評価をもとに作成するシステムの順位表（以下，参照順位表と呼ぶ）に近いものを作成できるかによって，自動評価指標と人手評価の相関を確かめる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{並び替えの対象となる雑談対話応答生成システム}
\label{subsubsec:system-train}

順位付け問題において並び替えの対象となる雑談対話応答生成システムを$20$個用意した．
システムのアーキテクチャは，GRU \cite{Cho2014:LearningPhrase}，LSTM \cite{Sutskever2014:SequenceToSequence}，ConvS2S \cite{Gehring2017:Convolutional}，Transformer \cite{Vaswani2017:Attention}，DialoGPT \cite{Zhang2020:DIALOGPT}の$5$種類を用いた．
表~\ref{tab:models}に，用意した$20$個のシステムの学習データやハイパーパラメータ等を示す．

システムの学習データには，OpenSubtitles2018を用いて構築した対話ペアデータ
と，Self-dialogue Corpus \cite{Krause2017:Edina,Fainberg2018:TalkingMyself}を用いて構築した対話ペアデータ
の$2$種類を用意した．
OpenSubtitles2018について，\ref{subsubsec:testset-construction-dataset}節でリポジトリの構成に使わなかった字幕データから連続する$4$発話を収集したうえで，冒頭$3$発話を対話履歴，$4$発話目を応答とした対話履歴と応答のペアを構築した．
最終的に$500$万ペアの学習データ，$5$万ペアの検証データを得た．
Self-dialogue Corpusについても同様にコーパス中の対話の連続する$4$発話を収集したうえで，対話履歴と応答のペアを構築し，$270,582$ペアの学習データ，$29,874$ペアの検証データを得た．

モデルアーキテクチャがGRU，LSTM，ConvS2S，Transformerであるシステムについてはfairseq \cite{Ott2019:Fairseq}の実装を用いた．
DialoGPTについては\citeA{Zhang2020:DIALOGPT}らの実装\footnote{\url{https://github.com/microsoft/DialoGPT}}を用いた．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 4
\begin{table}[t]
\input{03table04.tex}
\caption{並び替えの対象となる雑談対話応答生成システムの学習データとハイパーパラメータ．}
\label{tab:models}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{評価実験で比較するシステムの順位表}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{人手評価によるシステムの順位表（参照順位表）．}
対話履歴$c$に対し$20$個のシステムそれぞれが生成した応答$r^\mathrm{gen}$について，アノテータにスコアを付与させ，このスコアをもとに参照順位表を作成した．
具体的には，まず$r^\mathrm{gen}$それぞれに対し$5$人のアノテータに，$1$から$5$までの$5$段階のスコアを付与させた．
スコア$5$は$r^\mathrm{gen}$が$c$に対する応答として明らかに適切であることを意味し，スコア$1$は応答として明らかに不適切であることを意味する．
各$r^\mathrm{gen}$に対し$5$人のスコア${s_{1},s_{2},...,s_{5}}$が得られるため，この平均値$s^\mathrm{mean}=\mathrm{mean}(s_{1},s_{2},...,s_{5})$を$r^\mathrm{gen}$の最終的なスコアとした．
$c$を$N$個用意した場合，各システムについて$s^\mathrm{mean}$が$N$個得られるため，これらの平均値$s^\mathrm{final}$をシステムの最終的な評価スコアとした．
$s^\mathrm{final}$をもとに$20$個のシステムを並び替えて順位表を作成した．
人手評価は高コストであるため，$N=56$とし，構築した対話応答選択テストセットの$1,019$個の対話履歴から$56$個をサンプリングした．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{対話応答選択正解率によるシステムの順位表．}
構築したテストセットを用いた対話応答選択の正解率を$20$個のシステムそれぞれについて計算し，正解率をもとに順位表 (\texttt{Well-Chosen}) を作成した．
具体的には，まず学習したシステムが各応答候補$r \in \mathcal{R}$を対話履歴$c$に対する応答として生成するときのcross-entropy loss $\ell_{r}$を計算した．
その後，$\ell_{r}$が最も低い候補$\hat{r} = \argmin_{r \in \mathcal{R}} \ell_r$をシステムが選択した候補とみなすことで，システムごとの対話応答選択の正解率を計算した．
負例を厳選する効果を検証するために，テストセットの負例を\ref{subsubsec:testset-construction-dataset}節のリポジトリから無作為抽出によって取得した発話に置き換えたうえで同様に順位表 (\texttt{Random}) を作成した．
\texttt{Well-Chosen}と\texttt{Random}の作成には，構築した対話応答選択テストセットに含まれる$1,019$問全てを用いた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{既存の自動評価指標によるシステムの順位表．}
比較のために，既存の自動評価指標のうち広く用いられているBLEU, METEOR \cite{Banerjee2005:METEOR}, ROUGE-L \cite{Lin2004:ROUGE}によるシステムの順位表を作成した．
BLEUについては，brevity penaltyを適用しない場合についても順位表 ($\mathrm{BLEU}^\mathrm{w/o\,BP}$) を作成した．
これらの評価指標は，参照応答とシステム応答の間の単語や$n$-gramの一致を評価することでシステムごとにスコアを算出する．
本実験では，構築した対話応答選択テストセットの各問題の正例を対話履歴に対する参照応答と見なしてスコアを算出し，スコアをもとにシステムの順位表を作成した．
各評価指標とも，構築した対話応答選択テストセットの$876$問を用いた%
\footnote{\ref{subsubsec:testset-construction-augment}節で述べたように，構築したテストセットに含まれる$1,019$問のうち$143$問は他の問題と対話履歴を共有しているため，これらを除き評価を実施した．}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{実験結果}
\label{subsec:results}

自動評価指標により作成したシステムの順位表がどれだけ参照順位表に近いかを測るために，両順位表のSpearmanの順位相関係数を計算した．
結果を表~\ref{tab:result}に示す．

最初に，人手評価同士の相関 (Human) を調べた．
具体的には，参照順位表の作成のために$5$人のアノテータに付与させた各システム応答のスコア${s_{1},s_{2},...,s_{5}}$を無作為に$2$つのグループに分割していくことで，異なるアノテータが付与したスコアにもとづくシステムの順位表を$2$つ作成し，両順位表の順位相関係数を計算した．
順位相関係数は$0.94$と高く，少なくとも人間にとっては本実験の設定で合意の取れるシステムの順位表が作成可能であるといえる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 5
\begin{table}[t]
\input{03table05.tex}
\caption{参照順位表と自動評価により作成した順位表の相関．}
\label{tab:result}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

既存の自動評価指標であるBLEU，METEORについては，順位相関係数において弱い相関が認められるとされる \cite{Akoglu2018:UserGuide} $0.20$を下回る結果となった．
また，ROUGE-Lとbrevity penaltyを適用しないBLEUは，順位相関係数においてある程度の相関が認められるとされる$0.40$を超えるものの，強い相関が認められるとされる$0.70$を下回る結果となった．
一方で\texttt{Well-Chosen}の参照順位表との順位相関係数はこれらの自動評価指標に比べて高く，強い相関が認められる$0.70$を上回った．
この結果から，負例を厳選したテストセットを用いた対話応答選択による雑談対話応答生成システムの評価結果は，既存の広く用いられている評価指標に比べて人手評価と強く相関するということが確かめられた．

また，\texttt{Well-Chosen}の参照順位表との順位相関係数が\texttt{Random}に比べて高いことから，負例の厳選によって対話応答選択によるシステムの評価がより強く人手評価と相関するものになったことが確かめられた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{議論}
\label{subsec:discussion}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{エラー分析における解釈可能性}
\label{subsubsec:error-interpret}

\ref{subsec:results}節より，対話応答選択による雑談対話応答生成システムの評価で負例を厳選することで，負例を無作為抽出した場合に比べてより人手評価と強い相関を持つ自動評価が可能となることを確認した．
このような評価の有効性の向上に加え，負例を厳選したテストセットを用いて自動評価をおこなうことの利点として，エラー分析の解釈可能性の向上が挙げられる．

表~\ref{tab:interpretable-example}に，構築したテストセットの例を示す．
無作為抽出によって得られた負例（無作為）は対話履歴や正例と関連性の無い発話であり，正例と比較して具体的にどのような点で応答として不適切か指摘することが難しい．
そのため，システムがこの発話を誤って応答として選択したとしても，解消すべきシステムの具体的な問題点について分析することができない．
一方で，同表中の厳選した負例（厳選）は正例に類似しているが，正例と比較すると主語が``I''ではなく``You'' となっている点で違いがあり，この点が応答として不適切な発話である原因となっている．
もし評価対象となるシステムがこの負例を選択した場合，システムが対話履歴を踏まえて応答の主語を適切に考慮することが出来なかったと考えられる．
さらに，システムが不適切な主語を含む同様の負例を他の選択問題でも選択する傾向にある場合，システムは発話の主語の考慮という点において脆弱性があると考えることができる．
このように，提案法で厳選した負例が正例に類似する発話であることから，正例と比較してどのような点が不適切かを明確に指摘することが比較的容易であり，雑談対話応答生成システムの傾向や脆弱性についての詳細な分析に活用できる可能性がある．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 6
\begin{table}[b]
\vspace{-0.5\Cvs}
\input{03table06.tex}
\caption{無作為抽出した負例（無作為）と厳選した負例（厳選）の例．}
\label{tab:interpretable-example}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 7
\begin{table}[b]
\input{03table07.tex}
\caption{テストセットの負例$50$発話のうち各誤りラベルが付与された発話の数．}
\label{tab:breakdown}
\vspace{-0.5\Cvs}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 8
\begin{table}[p]
\input{03table08.tex}
\caption{ラベルを付与できた負例の例．}
\label{tab:other-interpretable-example}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

本論文で構築したテストセットに，不適切な箇所を具体的に指摘可能な負例がどの程度含まれているかを調べた．
具体的には，構築したテストセットから無作為に取り出した負例$50$発話について，具体的な誤りが指摘可能な発話の数と，どのような誤りが含まれているかを調査した．
調査の結果，負例$50$発話のうち$22$発話と，高い割合で発話に対して具体的な誤りを指摘可能であることが確認された．
また，誤りの種類として (1) 対話履歴の内容と矛盾を含む，(2) 対話履歴に対して返すべき情報が不足，(3) 主語が不適切，(4) 時制が不適切，の$4$種類が確認された．
表\ref{tab:breakdown}に，各誤りを含む負例の数を示す%
\footnote{複数の誤りを含む発話については，その発話を対話応答選択で選んだシステムがどの誤りについて脆弱であるか特定できないため，ここではラベルが付与できない発話として扱った．}
．
また，表\ref{tab:other-interpretable-example}に各誤りを含む負例の例を示す．



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{負例を厳選した対話応答選択を用いた評価手法の制限}
\label{subsubsec:limitation}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{評価可能な観点}
本評価方法はシステムが生成する応答の適切性に関する評価を想定している．
そのため，適切性以外の観点，たとえば応答の多様性などについては，本方法論によって評価することを想定していないことに留意されたい．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\paragraph{評価可能なシステム}
本評価方法は負例を厳選した対話応答選択テストセットを用いた評価である．
そのため，用意したテストセットとドメイン等が合致しないシステムについては，本方法論によって評価することを想定していないことに留意されたい．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{おわりに}
\label{sec:conclusion}

本論文では，雑談対話応答生成システムの自動評価の枠組みとして分野全体で共有される指標の実現に向け，不適切な負例の混入を抑制したテストセットを用いた対話応答選択による評価を検討した．

具体的には，まず，正例に類似するが応答として成立しない発話のみを負例として厳選する対話応答選択テストセットの構築方法を提案した（\ref{sec:proposal-method}節）．
応答生成システムを対話応答選択で評価することの利点には，適切な応答が複数存在するという対話の性質の影響を回避可能であること，正解率という統一的な指標でシステム性能を定量化可能であることが挙げられる．
対話応答選択ではシステムが生成する応答の質自体は評価しないため，人手評価に代わる評価の枠組みとはなりえないが，適切な応答を生成可能なシステムであれば適切な応答を選択することが可能であると仮定すると，システムが適切な応答を生成しうるかを確認することができるため，日々のシステム改良の成果を確認するための評価に適した枠組みといえる．
ただし，従来のように対話応答選択の負例を無作為抽出する場合，正例とかけ離れすぎていて容易に負例と判別できる発話や，応答として誤りとはいえない発話が負例として応答候補に混入し，システム評価の有効性が低下するおそれがある．
本論文で提案した方法によって，これらの不適切な負例の混入を抑制した対話応答選択テストセットが構築可能であることを，定性的（\ref{subsubsec:testset-example}節），定量的（\ref{subsubsec:pre-experiments}節）に確認した．

また，提案した方法に従って実際に公開可能な対話応答選択テストセットを構築したうえで（\ref{sec:testset-construction}節），構築したテストセットを用いた対話応答選択によるシステム評価が，人間によるシステム応答の評価と相関するかどうかを実験により確認した（\ref{sec:experiment}節）．
実験結果から，負例を厳選したテストセットを用いた対話応答選択による雑談対話応答生成システムの評価結果は，BLEUなど既存の広く用いられている評価指標に比べて人手評価と強く相関するということが確かめられた（\ref{subsec:results}節）．
加えて，本論文で提案する方法により厳選した負例は，正例と類似するという性質を持つため正例と比べて具体的にどのような誤りを含むか指摘しやすく，厳選した負例を選択したシステムの傾向や脆弱性について詳細な分析ができる可能性があることについて議論した（\ref{subsubsec:error-interpret}節）．

本論文で提案したテストセットの構築方法や公開したテストセットが，雑談対話応答生成システムの自動評価の枠組みの一つとして分野全体に共有されることで，対話応答選択でコストをかけず評価しながらシステム改良を繰り返す効率的な開発プロセスが利用可能となり，雑談対話応答生成研究がさらに発展することを期待する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\acknowledgment

本研究の一部はJSPS科研費JP19H04162，JP19K20351，JP21J22383およびJST CREST（課題番号：JPMJCR20D2）の支援を受けて行いました．
本論文の執筆にあたり，有益なコメントを頂きました査読者，担当編集委員の皆様に感謝申し上げます．
なお，本研究の内容の一部は，The 58th Annual Meeting of the Association for Computational Linguistics (ACL 2020)で発表されたものです\cite{Sato2020:EvalVia}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibliographystyle{jnlpbbl_1.6}
\begingroup
\addtolength{\baselineskip}{-0.5pt}
\bibliography{03refs.bib}
\endgroup


\clearpage
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\appendix

\section{構築したテストセットの例}

表\ref{tab:testset-example-appendix}に，本研究で構築したテストセットの例を示す．
同表には，\ref{sec:experiment}節の実験で\texttt{Random}作成時に用いた，負例を無作為抽出した応答候補も示す．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 9
\renewcommand{\baselinestretch}{0.8}
\begin{table}[b]
\input{03table09-1.tex}
\caption{厳選した負例と，\texttt{Random}作成時に用いた無作為抽出した負例の例．}
\label{tab:testset-example-appendix}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 9 continued
\addtocounter{table}{-1}
\begin{table}[p]
\input{03table09-2.tex}
\caption{厳選した負例と，\texttt{Random}作成時に用いた無作為抽出した負例の例（続き）．}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\baselinestretch}{1.0}

\clearpage
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{評価実験結果の詳細}

表\ref{tab:result-allscores}に，\ref{sec:experiment}節で述べた評価実験における各評価指標でのシステムのスコアおよび順位を示す．
また図\ref{fig:scatter}に，各自動評価指標でのシステムのスコアと人手評価スコアの散布図を示す．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 4
\begin{figure}[h]
\begin{center}
\includegraphics{29-1ia3f4.pdf}
\end{center}
\hangcaption{評価実験における各自動評価指標でのシステムのスコアと人手評価スコアの散布図．図中の各自動評価指標でのスコアは順位が$1$位だったシステムのスコアで除算している．}
\label{fig:scatter}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\clearpage
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 10
\begin{table}[p]
\begin{center}
\rotatebox{90}{%
\begin{minipage}{571pt}
\input{03table10.tex}
\caption{評価実験における各評価指標でのシステムスコアおよび順位．}
\label{tab:result-allscores}
\end{minipage}}
\end{center}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\clearpage


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}

\bioauthor{佐藤　志貴}{2019年東北大学工学部卒業．2021年東北大学大学院情報科学研究科博士前期課程修了．現在，東北大学情報科学研究科博士課程取得に向け研究を進めている．2021年度より日本学術振興会特別研究員 (DC1)．}

\bioauthor{赤間　怜奈}{2017年東北大学工学部卒業．2018年東北大学大学院情報科学研究科博士前期課程修了，2021年同博士課程修了．2021年より東北大学データ駆動科学・AI教育研究センター助教，理化学研究所AIPセンター客員研究員．}

\bioauthor{大内　啓樹}{2015年奈良先端科学技術大学院大学情報科学研究科博士前期課程修了．2018年同博士後期課程修了．2018年から2021年まで理化学研究所AIPセンター特別研究員．2021年より奈良先端科学技術大学院大学先端科学技術研究科助教，理化学研究所AIPセンター客員研究員．}

\bioauthor{鈴木　　潤}{2001年から2018年まで日本電信電話株式会社コミュニケーション科学基礎研究所研究員（主任研究員／特別研究員）．2005年に奈良先端科学技術大学院大学情報科学研究科博士後期課程修了．現在，東北大学データ駆動科学・AI教育研究センター教授．}

\bioauthor{乾　健太郎}{東北大学大学院情報科学研究科教授．1995年東京工業大学大学院情報理工学研究科博士課程修了．同大学助手，九州工業大学助教授，奈良先端科学技術大学院大学助教授を経て，2010年より現職．2016年より理化学研究所AIPセンター自然言語理解チームリーダー兼任．}

\end{biography}


\biodate


\clearpage












\clearpage




























\end{document}

