\documentclass[japanese,other]{jnlp_3.3}
\usepackage{jnlpbbl_2.2}
\usepackage[dvipdfmx]{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{url}
\usepackage{hangcaption_jnlp}
%%%%\usepackage{udline}
%%%%\setulminsep{1.2ex}{0.2ex}
%%%%\let\underline=\ul
\allowdisplaybreaks


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
\usepackage{xcolor}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\Volume{28}
\Number{4}
\Month{December}
\Year{2021}
%%%%\Issuetitle{「　　　　」特集号}

\setcounter{page}{1325}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{学会記事}
\jtitle{文脈化単語埋め込みを利用した動詞の意味フレーム推定}
\jauthor{山田　康輔\affiref{Author_1}}
\etitle{Semantic Frame Induction of Verbs using Contexutualized Word Representations}
\eauthor{Kosuke Yamada\affiref{Author_1}} 

\headauthor{山田}
\headtitle{文脈化単語埋め込みを利用した動詞の意味フレーム推定}

\affilabel{Author_1}{名古屋大学}{Nagoya University}



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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{はじめに}

本稿では，ACL-IJCNLP 2021 Findingsに採択された論文``Verb Sense Clustering using Contextualized Word Representations for Semantic Frame Induction'' \cite{yamada2021a} （以下，論文1），およびACL-IJCNLP 2021の本会議に採択された論文``Semantic Frame Induction using Masked Word Embeddings and Two-Step Clustering'' \cite{yamada2021b} （以下，論文2）について解説する．
これらは共にフレーム知識の自動構築の第一段階となる動詞の意味フレーム推定タスクに関する論文である．
論文1では，同一フレームを喚起する動詞の用例クラスタリングにおける文脈化単語埋め込みの有用性の検証を行い，論文2では，動詞横断的な意味フレーム推定タスクを高精度で解く手法を提案している．
以降では，本研究の動機を述べた後，論文1と2の研究概要とその研究過程について紹介する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{研究動機}

人は言葉を理解するとき，これまでの経験から得た単語の背景知識を利用している．
たとえば，「シェフが料理を振る舞う」と言われれば「誰かが誰かに何かを提供している」という状況を想像し，「紳士のように振る舞う」と言われれば「誰かがある特定の様子で行動している」という状況を想像する．
「振る舞う」という同じ単語に対してその前後の文脈に応じて単語の意味の違いを理解し，さらに「誰かに提供している」や「誰かが行動している」のような状況を理解するのに必要とされる事柄を補完し，その言葉を理解している．
フレーム知識とは，このような状況などを示す言葉を理解するための単語の背景知識をフレームとして定義し，フレームを喚起する述語とフレームの要素となる項をまとめている．
このような知識は，計算機がテキストを理解する際にも有用であるだろう．
実際，述語構造解析や共参照解析，談話構造解析などの主にテキストを文単位で理解する意味解析に有用であり，さらに，単語間の知識や状況間の知識などと組み合わせることで強力な知識リソースを構築できると考えられる．

これまでに構築されてきたフレーム知識は大きく2種類存在する．
1つは人手で整備されている意味役割付きのもので，FrameNet \cite{baker2014}などが挙げられる．
FrameNetは述語横断的にフレームをまとめ，深層格に基づき項の意味役割を定義しているが，アノテートコストがかかるため，カバレッジに限界がある．
もう1つは大規模コーパスから自動構築されたもので，京大格フレーム \cite{kawahara2005}などが挙げられる．
京大格フレームは主語を示すガ格など表層格に基づき述語単位でフレームをまとめ，大規模でカバレッジが高いが，述語ごとに独立であり，意味役割が付与されておらず，述語の意味的な同義性や項構造の解析に必要な情報が十分とは言えない．
そこで，述語横断的かつ深層格ベースの意味役割を含む，より豊かなフレーム知識を大規模コーパスから自動構築することが求められている．

最近では，BERT \cite{devlin2019}などの文脈化単語埋め込みが登場し，質問応答や自然言語推論など多くのNLPタスクを高精度に解けるようになってきている．
文脈化単語埋め込みは，1つの単語に対して1つの埋め込みではなく，同じ単語であっても文脈に応じて異なる埋め込みを獲得できる．
このため，テキスト中の単語の意味の違い，すなわち動詞が喚起するフレームの違いや項の意味役割の違いを的確に捉えられているのではないかと考えた．
これらの背景から文脈化単語埋め込みを利用し，大規模コーパスから意味フレームを自動構築する研究に取り組んでいる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{論文1: 文脈化単語埋め込みの有用性の検証}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{研究概要}

本研究では，数多く提案されている文脈化単語埋め込みが述語の文脈に応じて喚起しうる意味フレームをどれほど識別できるかを検証した．
具体的には，フレーム知識リソースの各用例内の動詞の文脈化埋め込みを獲得し，その埋め込みに基づき，動詞ごとでクラスタリングを行った．
そのクラスタリング結果を用いて，同一動詞の用例内の動詞のフレーム識別性能，および動詞が喚起しうるフレーム数推定性能を評価した．

フレーム識別実験では，双方向のTransformerベースのモデル (BERT，RoBERTa，XLNet，ALBERT)が高い性能を示し，動詞が喚起する意味フレームの違いをかなり識別できることを確認した．
一方で，双方向のLSTMベースのモデル (ELMo)や一方向のTransfomerベースのモデル (GPT-2)はあまり意味フレームの違いを捉えられていないことを確認した．
また，上記の結果を分析し，フレームの間に関係があるもの，すなわち類似したフレームを識別しにくいことを実験的に示した．

フレーム数推定実験では，ベイズ情報量規準 (BIC)の調整版であるadjusted-BICを用いて検証した．
人手でアノテートされたフレーム数に対する推定されたフレーム数を評価したところ，50\%から60\%の正解率で，0.2から0.5程度の弱い相関が確認された．
得られた結果から，ある程度は推定できるが文脈化単語埋め込みの利用方法やクラスタリング方法などをさらに検討する必要があるという結論に至った．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{研究過程}

本研究は，BERTが用例内の動詞が喚起するフレームの違いを識別できるかの検証から始まった．
最初は簡単な検証として，FrameNetの用例を動詞ごとでまとめ，BERTを用いてその動詞の文脈化埋め込みを獲得し，可視化を行った．
幸運にも，この可視化結果が想像以上に同義性や多義性を良好に識別していることがわかった（論文内の動詞``support''の例）．
その後，他の文脈化単語埋め込みがどれくらいフレームの識別ができるかが気になり，検証した．
この結果も，BERT派生モデルはせいぜいBERTと同じくらい，ELMoやGPT-2はあまりうまくいかないだろうという想定通りの結果が得られた．

ここまでは順調に進んだが，識別結果をどう定量的に示すかという問題にぶつかった．
特に，各動詞で識別候補のフレーム数，すなわちクラスタ数の決定が難しかった．
なぜなら，実験は複数のフレームに定義される動詞のみを対象にしていたが，実際には特定のフレームしか喚起しない動詞も存在しており，どのような評価方法を採用すべきか悩んだ．
最終的には，フレーム識別とフレーム数推定を別タスクとし，検証することでまとまった．
そして，フレーム識別実験はアノテートされたフレーム数を与えるようにし，解釈しやすい実験設定にすることができた．
実際，このタスク分けは査読者に好印象を与えることに成功した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{論文2: 動詞横断的な意味フレーム推定}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{研究概要}

本研究では，動詞横断的な意味フレーム推定タスクを高精度に解く手法を提案した．
このタスクを扱う従来手法 \cite{qasemizadeh2019}では，動詞の文脈化埋め込みを用いて動詞横断的に一度にクラスタリングを行っていた．
しかし，このような手法は2つの問題点がある．

1つは動詞の文脈化埋め込みが動詞の表層的な情報に大きく影響されていることである．
図\ref{fig:visualization}の左側は，FrameNetから``get''と``acquire''の用例を抽出し，各動詞のBERTの埋め込みを2次元圧縮して可視化したものである．
図\ref{fig:visualization}から分かるように，\textsc{Getting}フレームを喚起する``get''の埋め込みは，同じ\textsc{Getting}フレームを喚起する``acquire''の埋め込みの近くに分布する傾向が見られるが，各動詞が喚起するフレーム間よりも表層的な動詞間の差の方が大きいことが確認できる．
これを改善するために，BERTの事前学習時に使用する[MASK]トークンの埋め込みであるマスクされた単語埋め込みを用いる方法を提案した．
図\ref{fig:visualization}の右側がマスクされた単語埋め込みの可視化結果である．
マスクを用いることで動詞の表層的な情報を隠すことができ，同じフレームを喚起する埋め込みが近い位置に分布していることが確認できる．
提案法では動詞の文脈化埋め込みとマスクされた単語埋め込みを線形補間した埋め込みを利用している．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[tb]
\begin{center}
\includegraphics{28-4ia25f1.pdf}
\end{center}
\hangcaption{%
FrameNetの``get''と``acquire''の用例と各動詞が喚起するフレーム（上），動詞（左）とマスクされた動詞（右）のBERTによる埋め込みの2次元マッピング．$\blacksquare$と$+$は用例中の``get''と``acquire''の埋め込み，各色は動詞が喚起するフレーム{\color[HTML]{f4a800} \textsc{Arriving}}，{\color[HTML]{00ac78} \textsc{Transition\_to\_state}}，{\color[HTML]{4cc0fc} \textsc{Getting}}フレームを示す．}
\label{fig:visualization}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[tb]
\begin{center}
\includegraphics{28-4ia25f2.pdf}
\end{center}
\hangcaption{2段階クラスタリングの概要．``get'' （左上）と``acquire'' （左下）の用例を対象とした1段階目のクラスタリング，2段階目の動詞横断的なクラスタリング（右）を示す．$\blacksquare$と$+$は用例中の``get''と``acquire''の埋め込みを表す．}
\label{fig:method}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

もう1つは動詞横断的に一度にクラスタリングを行うことによって，同じフレームを喚起する動詞の用例が多くの異なるクラスタに分けられてしまうことである．
たとえば，ある動詞で獲得した埋め込みの中に外れ値となる埋め込みがある場合，その動詞が喚起する可能性のないフレームのクラスタに属してしまう．
これを解決するために，2段階クラスタリングを用いた手法を提案した．
具体的には，同じ動詞の用例をその意味に応じてクラスタリングを行い，その後，動詞横断的にクラスタリングを行う．
図\ref{fig:method}がその手法の概要である．
FrameNetを用いた実験で提案手法が有用であることが確認された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{研究過程}

本研究は，論文1をまとめた後，特定の動詞の文脈に応じたフレームの識別ではなく，動詞横断的に意味フレームを推定することを目標に開始した．
このタスクはSemEval 2019のタスク2で取り組まれており，ELMoやBERTの埋め込みでクラスタリングしたものがスコアの高い手法となっていた．
これを踏まえて，ひとまずBERTの動詞の文脈化埋め込みを用いた手法をベースラインとして，そのスコアを超える手法を考えることにした．

当初，動詞の文脈化埋め込みは，動詞の表層情報を持つ埋め込みと，フレームを識別する情報を持つ埋め込みを混ぜ合わせたような埋め込みであると考えていた．
このため，動詞の文脈化埋め込みと動詞の表層情報のみの埋め込みの差分を取ることで，フレームを識別する情報のみを持つ埋め込みを生成する方法を検討していた．
たとえば，あらゆる動詞の用例を``get''に置き換えて，その``get''の埋め込みを平均し，``get''の表層情報のみの埋め込みを獲得しようとした．
しかし，これは狙い通りの埋め込みにはならず，無作為な埋め込みとなり失敗した．

その後，動詞の表層情報をなくしたいと考えながら，BERTの論文を読み返したとき，事前学習時に用いられる[MASK]が周囲の文脈のみを考慮していることに気づいた．
ここからマスクされた単語埋め込みを用いることを思いついた．
そのときに得られた結果がまさに図\ref{fig:visualization}の右側の結果であり，マスクされた単語埋め込みを用いたクラスタリングを行えば，ベースラインを超えられる気がしていた．
しかし，見事に失敗した．
なぜなら，マスクされた単語埋め込みは全体的に類似するためクラスタリングが難しく，とりあえず動詞ごとでまとまる方が意味フレームごとでまとまるからである．

ここからマスクされた単語埋め込みを生かすクラスタリング方法を検討し直した．
しばらく考えていたとき，先行研究の1つが2段階でクラスタリングしていることをヒントに，論文1の動詞の識別実験とマスクされた単語埋め込みをある程度集約して使用したいという考えが合わさった．
その結果，動詞ごとで用例のクラスタリングをした後，動詞横断的にクラスタリングをする2段階クラスタリング手法を思いつき，先行研究および手法の有効性を示すベースラインを超える手法であることを示すことに成功した．
最終的に，マスクされた単語埋め込みに加え，動詞の文脈化埋め込みも考慮した埋め込みを利用し，更なる性能が向上を確認した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{おわりに}

本稿で解説した論文内では，動詞の意味フレーム推定タスクにおける文脈化単語埋め込みの利用方法やクラスタリング方法を検討および提案している．
マスクされた埋め込みも考慮した動詞の文脈化埋め込みはパラメータを調整することで文脈の影響と語の影響を調整できる．
また，2段階クラスタリング手法は階層的なクラスタリングの設定で，クラスタ数の検討のみで利用できる．
これらは本タスクに限らず汎用的な手法であるため，何かの参考になれば嬉しい．

現在，著者はフレーム知識自動構築に向けて，次の段階であるフレーム内の意味役割推定と項の意味役割の推定に取り組んでいる．
最終的には生コーパスからフレーム知識を教師なし手法による自動構築を目標としている．
また，英語をベースに研究を進めているが，日本語のフレーム知識を自動構築しようと考えている．
このフレーム知識自動構築プロジェクトに興味をいただけたら幸いである．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibliographystyle{jnlpbbl_1.6}
\bibliography{25refs}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}
\bioauthor{山田　康輔}{
2019年名古屋大学工学部電気電子情報工学科卒業．2021年同大学院情報学研究科博士前期課程修了．現在，同博士後期課程に在籍．
}
\end{biography}


\end{document}



