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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
\usepackage{booktabs}
\usepackage{bm}
%%%%\usepackage{url}
\usepackage{arydshln}
\usepackage{multirow}
%%%%\usepackage{amssymb}
%%%%\usepackage{color}
%%%%\usepackage{adjustbox}
%%%%\newcommand{\argmin}{\mathop{\rm arg~min}\limits}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



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


\received{2020}{8}{29}
\revised{2020}{12}{16}
%%%%\rerevised{2006}{5}{6}
\accepted{2020}{12}{29}

\setcounter{page}{235}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{一般論文}
\jtitle{大域的な類似度に基づく単語分散表現の圧縮}
\jauthor{大橋　　空\affiref{ist} \and 五十川真生\affiref{ist} \and 梶原　智之\affiref{ids} \and 荒瀬　由紀\affiref{ist}}
\jabstract{
本研究では，学習済み単語分散表現の品質を保持しつつモデルサイズを削減する．先行研究では，部分文字列の分散表現から単語の分散表現を構成し，学習済み単語分散表現を模倣してきた．これにより語彙サイズを削減できるが，品質を保持したまま著しくモデルサイズを削減することは困難であった．本研究では，似た意味を持つ単語同士が似たベクトルを持つという単語分散表現の特性を考慮して，対象単語の学習済み単語分散表現を模倣する通常の訓練に加えて，対象単語と他の単語たちとの類似度分布を模倣する訓練も行うマルチタスク学習を提案する．単語類似度推定の実験では，提案手法は部分文字列から単語分散表現を構成する既存手法の性能を改善し，同等の品質を保持してモデルサイズを$30$分の$1$に削減できた．テキスト分類の実験では，$90$\%の品質を保持してモデルサイズを$200$分の$1$に削減できた．
}
\jkeywords{単語分散表現，単語類似度推定，テキスト分類}

\etitle{Compact Word Embeddings Based on Global Similarity}
\eauthor{Sora Ohashi\affiref{ist} \and Mao Isogawa\affiref{ist} \and Tomoyuki Kajiwara\affiref{ids} \and Yuki Arase\affiref{ist}}
\eabstract{
We reduce the model size of word embeddings while preserving its quality. Previous studies composed word embeddings from those of subwords and mimicked the pre-trained word embeddings. Although these methods can reduce the vocabulary size, it is difficult to extremely reduce the model size while preserving its quality. Inspired by the observation of words with similar meanings having similar embeddings, we propose a multitask learning that mimicks not only the pre-trained word embeddings but also the similarity distribution between words. Experimental results on word similarity estimation tasks show that the proposed method improves the performance of existing methods and reduces the model size by a factor of $30$ while preserving the quality of the original word embeddings. In addition, experimental results on text classification tasks show that we reduce the model size by a factor of $200$ while preserving $90$\% of the quality of the original word embeddings.
\footnote[0]{本論文の内容の一部は，言語処理学会第$25$回年次大会 \cite{isogawa-2019}およびThe $28$th International Conference on Computational Linguistics \cite{ohashi-2020}で報告したものである．}
}
\ekeywords{Word Embeddings, Word Similarity Estimation, Text Classification}

\headauthor{大橋，五十川，梶原，荒瀬}
\headtitle{大域的な類似度に基づく単語分散表現の圧縮}
\affilabel{ist}{大阪大学大学院情報科学研究科}{Graduate School of Information Science and Technology, Osaka University}
\affilabel{ids}{愛媛大学大学院理工学研究科}{Graduate School of Science and Engineering, Ehime University}



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


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

テキスト分類 \cite{shen-2018}や機械翻訳 \cite{qi-2018}など，多くの自然言語処理タスクにおいて単語分散表現は基盤となる言語資源である．
しかし，広く利用されているGloVe \cite{pennington-2014}やfastText \cite{bojanowski-2017}などの単語分散表現はモデルサイズが非常に大きく，モバイル機器などメモリ容量が制限された環境での自然言語処理アプリケーションの開発において，大きな問題となっている．
例えば，$200$万単語にそれぞれ$300$次元のベクトルを割り当てるfastText\footnote{\url{https://fasttext.cc/docs/en/english-vectors.html}}は，約$2$GBの記憶領域を必要とする．
語彙サイズを限定することで単語分散表現のモデルサイズを削減できるが，これはシステムが処理できない未知語を増大させるため，アプリケーションの性能を著しく悪化させてしまう．

未知語の発生を避けつつ単語分散表現のモデルサイズを削減するために，文字 \cite{pinter-2017,kim-2018}や文字N-gram \cite{zhao-2018,sasaki-2019}の情報から単語分散表現を推定する研究が行われてきた．
単語のタイプ数に比べて文字や文字N-gramのタイプ数は著しく少ないため，これらの部分文字列\footnote{本研究では，文字や文字N-gramのことを部分文字列と呼ぶ．}から単語分散表現を高精度に推定できれば，アプリケーションの性能を保持したままモデルサイズを削減できる．
これらの先行研究では，図~\ref{fig:reconstruction}に示すように，部分文字列の分散表現から単語の分散表現を構成し，学習済みの単語分散表現を模倣する．
これらの手法では，学習済み単語分散表現および部分文字列という対象単語から得られる局所的な情報のみを扱ってきた．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1 and 2
\begin{figure}[b]
\noindent
\begin{minipage}[b]{202pt}
\includegraphics{28-1ia10f1.pdf}
\caption{部分文字列に基づく単語分散表現の模倣}\label{fig:reconstruction}
\end{minipage}
\hfill
\begin{minipage}[b]{202pt}
\includegraphics{28-1ia10f2.pdf}
\caption{提案手法における損失計算}\label{fig:loss}
\end{minipage}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

本研究では，図~\ref{fig:loss}に示すように，対象単語以外の単語も手がかりとして利用する大域的な訓練によって，単語分散表現の模倣性能を改善する．
似た意味を持つ単語同士が似たベクトルを持つという単語分散表現の特性を考慮して，対象単語の学習済み単語分散表現を模倣する通常の訓練に加えて，対象単語と他の単語との類似度分布を模倣する訓練も行うマルチタスク学習を実施する．
我々の提案手法は，部分文字列の単位や模倣モデルの構造に依存せず，部分文字列から単語分散表現を模倣する全ての既存手法に容易に適用できる．

単語間の意味的類似度推定タスク \cite{faruqui-2014}における評価実験の結果，本手法の適用によって全ての先行研究における単語分散表現の模倣性能が改善した．
特に，文字N-gramから単語分散表現を模倣する自己注意機構 \cite{sasaki-2019}に本手法を適用することによって，fastTextの$97$\%の品質を保持しつつモデルサイズを$74$MB（$30$分の$1$）に削減できた．
また，モデルサイズを$12$MB（$200$分の$1$）に削減した状態でも，元のfastTextの$87$\%の品質を保つことができた．
さらに，テキスト分類タスク \cite{conneau-2018}の評価においても，$12$MBの設定で元のfastTextの$90$\%程度の品質を保持できることを確認した．



% ==================================================
\section{関連研究}\label{sec:related_work}
% ==================================================

% ==============================
\subsection{単語分散表現に関する研究}\label{ssec:word_embedding}
% ==============================

単語の分散表現を獲得するために，対象単語とその周辺単語を用いる教師なし学習によってニューラルネットワークを訓練する研究が盛んに行われている．
周辺単語から対象単語を推定するContinuous Bag-of-Words \cite{mikolov-2013a}や対象単語から周辺単語を推定するSkip-gram \cite{mikolov-2013b}をはじめとして，単語間の共起を考慮するGloVe \cite{pennington-2014}や係り受け関係を考慮する手法 \cite{levy-2014}， 部分文字列を考慮するfastText \cite{bojanowski-2017}などが代表的な手法として知られている．

単語分散表現は，テキスト分類 \cite{shen-2018}や機械翻訳 \cite{qi-2018}など，機械学習に基づく多くの自然言語処理タスクにおいて有用である．
しかし，数GBのメモリ容量を必要とする単語分散表現は，組み込みシステムやモバイル機器などのメモリ容量が制限された環境への実装が困難である．
例えば，組み込みシステム開発においてよく用いられるRasberry Pi $3$のメモリ容量は$4$GBであり，fastText（約2.2GB）の単語分散表現を読み込むと半分以上のメモリ容量を消費してしまう．
OSなど，その他のプログラムでもメモリを利用することを考えると，これは深刻な問題である．
そこで本研究では，品質を保持したまま単語分散表現のモデルサイズを削減する方法について検討する．



% ==============================
\subsection{単語分散表現の模倣に関する研究}\label{ssec:mimick}
% ==============================

図~\ref{fig:reconstruction}に示すように，単語を構成する部分文字列から単語の分散表現を推定する研究が近年活発に行われている．
これらの研究では，部分文字列の分散表現から単語の分散表現を構成し，学習済み単語分散表現を模倣する．
単語のタイプ数に比べて文字や文字N-gramなどの部分文字列のタイプ数は著しく少ないため，このアプローチでモデルサイズを削減できる．

部分文字列としては，文字を用いる手法 \cite{pinter-2017,kim-2018}と文字N-gramを用いる手法 \cite{zhao-2018,sasaki-2019}が提案されている．
模倣モデル（図~\ref{fig:reconstruction}のReconstruction Network）としては，文字ベースの手法においてはニューラルネットワークに基づく手法 \cite{pinter-2017,kim-2018}が，文字N-gramベースの手法においては各部分文字列の分散表現を（重み付きで）平均する手法 \cite{zhao-2018,sasaki-2019}が採用されている．

これらの先行研究においては，対象単語を構成する部分文字列と対象単語の学習済み単語分散表現のみを用いて模倣モデルを訓練する．
本研究では，対象単語以外の単語の情報も利用して単語間の関係を学習することによって，より高品質な模倣モデルを得ることを目指す．
これにより，最終的には，高い品質を保持しつつモデルサイズの更なる小規模化を実現する．



% ==============================
\subsection{単語分散表現の圧縮に関する研究}\label{ssec:compact}
% ==============================

単語分散表現を圧縮するために，\ref{ssec:mimick}節の模倣アプローチの他にも，多くの研究が行われている．
例えば，各単語の分散表現を任意の基底ベクトルの組み合わせとして学習する手法 \cite{suzuki-2016}や，コードと呼ばれる整数の組み合わせとして単語を表現する手法 \cite{shu-2018,chen-2018}， 低次元の分散表現を用いて高次元の分散表現を生成する手法 \cite{mehta-2020}などが存在する．
また，単語分散表現の他にも，行列分解を用いてモデルのパラメータを削減する手法 \cite{lan-2020}も提案されている．

これらの先行研究においても高い圧縮性能が報告されているが，これらは訓練時に使用した既知語の分散表現しか扱えないという副次的な問題を持つ．
一方で，\ref{ssec:mimick}節の模倣アプローチでは，未知語の分散表現についても部分文字列の分散表現から構成できる．
そこで本研究では，模倣アプローチを用いて単語分散表現の圧縮を行う．






% ==================================================
\section{提案手法}\label{sec:method}
% ==================================================

単語$w \in W$の学習済み分散表現を$\bm{e}_w$, 部分文字列$s \in S$の無作為に初期化された分散表現を$\bm{v}_s$と表す．
本研究では，先行研究 \cite{pinter-2017,kim-2018,zhao-2018,sasaki-2019}と同じく，ある単語$w$に関する部分文字列の集合$\phi(w)$から単語分散表現$\bm{\hat{e}}_w=f(\phi(w))$を構成する問題を次の損失関数の最小化問題として定式化する．
\begin{equation}
L_{\rm local} = \frac{1}{d_w}||\bm{\hat{e}}_w - \bm{e}_w||^2_2
\label{eq:local}
\end{equation}
ここで，$d_w$は単語分散表現の次元数である．
また，$f(\cdot)$は部分文字列の集合から単語分散表現$\bm{\hat{e}}_w$を構成する関数であり，図~\ref{fig:reconstruction}のReconstruction Networkに対応する．
この構成関数として，先行研究では再帰型ニューラルネットワーク (RNN: recurrent neural network) \cite{pinter-2017}や，畳み込みニューラルネットワーク (CNN: convolutional neural network) \cite{kim-2018}, 自己注意機構 (SAM: self-attention mechanism) \cite{sasaki-2019}が利用されている．

本研究では，対象単語$w$の局所的な情報のみに依存する式~(\ref{eq:local})の損失関数に加えて，対象単語以外の大域的な情報に基づく損失関数を用いることで，単語分散表現の模倣性能を改善する．
つまり，図~\ref{fig:loss}に示すように，対象単語についての模倣した分散表現と学習済み分散表現の間の関係だけでなく，対象単語の模倣した分散表現と他の単語の学習済み分散表現の間の関係も考慮する．
大域的な損失関数は，単語間の余弦類似度\footnote{大域的な損失関数として平均二乗誤差も検討したが，余弦類似度に基づく損失関数がより高い性能を発揮した．}を用いて次のように定義する．
\begin{equation}
L_{\rm global} = \frac{1}{n}\sum_{g \in W} \left(\cos(\bm{\hat{e}}_w, \bm{e}_g) - \cos(\bm{e}_w, \bm{e}_g)\right)^2
\label{eq:global}
\end{equation}
ただし，計算量の削減のために，訓練バッチごとに$n$個の単語$g \in W$をサンプリングして使用する．
ここで，これらの単語$g$を無作為に選択すると，対象単語$w$と無関係な単語ばかりが選ばれる可能性があり，効率が悪い．
そこで，$n/2$語は対象単語$w$との余弦類似度が高い順に選択し，残りは無作為に選択する．
最終的に，式~(\ref{eq:local})および式~(\ref{eq:global})を足し合わせ，以下の損失関数を最小化する．
\begin{equation}
L = L_{\rm local} + L_{\rm global}
\label{eq:loss}
\end{equation}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[b]
\vspace{-0.25\Cvs}
\input{10table01.tex}
\caption{データセットの統計情報}
\label{tab:stats}
\vspace{-0.5\Cvs}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


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

単語分散表現の代表的なベンチマークである単語類似度タスク\footnote{\url{https://github.com/mfaruqui/eval-word-vectors/}} \cite{faruqui-2014}を用いて提案手法の有効性を検証する．
本研究では，Rubenstein-Goodenough (RG) \cite{rubenstein-1965}, Miller-Charles (MC) \cite{miller-1991}, WordSim-$353$ (WS) \cite{finkelstein-2002}, MEN test collection (MEN) \cite{bruni-2012}，Stanford Rare Word Similarity (RW) \cite{luong-2013}，Stanford's Contextual Word Similarities (SCWS) \cite{huang-2012}, SimLex-999 (SL) \cite{hill-2015}，MTurk-771 (MTurk) \cite{radinsky-2011}の$8$つのデータセットを用いて実験する．
データセットの統計情報を表\ref{tab:stats}に示す．
各手法の性能は，単語分散表現間の余弦類似度と人手で付与された単語間の意味的類似度とのスピアマンの順位相関係数で評価する．


% ==============================
\subsection{実験設定}\label{ssec:setup}
% ==============================

模倣元の単語分散表現には$300$次元の学習済みfastText (crawl-$300$d-$2$M-subword) \cite{bojanowski-2017}を用いた．
このうち高頻度な$10$万単語を用いて模倣モデルを訓練した．
なお，単語の出現頻度は fastText の訓練コーパスを用いて計算した．
ただし，記号や数字を含む単語は除外し，小文字ラテンアルファベットの$26$種類の文字のみで構成される単語を対象にした．

大域的な損失計算のために，$n=10$単語をサンプリングした．
式~(\ref{eq:loss})の最適化には，Adam \cite{kingma-2015}を$\alpha=0.001,~\beta_1 = 0.9,~\beta_2 = 0.999,~\epsilon = 10^{-8}$の設定で使用した．
バッチサイズは$50$単語とし，$5$エポックのearly stoppingで訓練を終了した．


% ==============================
\subsection{ベースラインモデル}\label{ssec:baseline}
% ==============================

部分文字列から単語分散表現を模倣する以下の$4$手法に対して，大域的な損失に基づくマルチタスク学習を適用する．

\paragraph{Character RNN} \cite{pinter-2017}：部分文字列として文字を用いる．
模倣モデルは，$32$次元の埋め込み層および$512$次元の隠れ層を持つ双方向LSTMである．

\paragraph{Character CNN} \cite{kim-2018}：部分文字列として文字を用いる．
模倣モデルは，フィルタサイズ$[1, 2, ..., 7]$, スライド幅$3$，フィルタ数$\max(200, 50 \times フィルタサイズ)$のCNNである．

\paragraph{Bag of N-gram} \cite{zhao-2018}：部分文字列として文字N-gramを用いる．
模倣モデルは，各文字N-gramの$300$次元の分散表現を要素ごとに平均する．

\paragraph{N-gram SAM} \cite{sasaki-2019}：部分文字列として文字N-gramを用いる．
模倣モデルは，$300$次元の分散表現を重み付きで平均する自己注意機構である．

文字N-gramに基づく手法は，扱うN-gramの長さ\footnote{\citeA{zhao-2018}および\citeA{sasaki-2019}に従い，語の先頭と末尾を示す特殊記号を加えてN-gramを数える．}を変更しつつ$3$つの設定で実験する．
\begin{itemize}
\item Small: $N=3$のみ
\item Medium: $N=3$および$N=4$
\item Large: $N=3$から$N=5$まで
\end{itemize}


また，他の単語分散表現の圧縮手法との比較のために，以下の手法との比較を行う．

\paragraph{Quantization} \cite{shu-2018}：コードの組み合わせとして単語を表現する単語分散表現の圧縮手法．
最も高い性能が報告されているパラメータに従い，圧縮後の単語分散表現の次元数を$64$，コード数を$64$とする．


N-gram SAM\footnote{\url{https://github.com/losyer/compact_reconstruction}}およびQuantization\footnote{\url{https://github.com/zomux/neuralcompressor}}については，著者による実装を用いた．
その他はTensorflow\footnote{\url{https://www.tensorflow.org/}} ($1.14.0$)を用いて再実装した．
全ての実験は$1$枚のGeForce RTX$2080$ Tiを用いて行なった．


% ==============================
\subsection{実験結果}\label{ssec:result}
% ==============================

実験結果を表\ref{tab:wordsim}に示す．
全ての設定において，提案手法が単語類似度の推定性能を改善した．
特に，N-gram SAM \cite{sasaki-2019}におけるSmallの設定では，提案手法によって$0.467$から$0.592$に向上した．
これらの結果から，単語間の大域的な関係を考慮する提案手法の有効性を確認できた．
N-gram SAMにおけるMediumの設定では，元のfastTextの性能を$98\%$保持しつつ，モデルサイズを約$30$分の$1$である$74$MBに削減できた．
同様に，Smallの設定では，元のfastTextの性能を$87\%$保持しつつ，モデルサイズを約$200$分の$1$である$12$MBに削減できた．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 2
\begin{table}[b]
\input{10table02.tex}
\caption{スピアマン相関係数のマイクロ平均およびモデルサイズ (MB) fastText: $\rho = 0.684$ ($2,230$MB)}
\label{tab:wordsim}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 3
\begin{table}[b]
\input{10table03.tex}
\caption{データセットごとのスピアマン相関係数}
\label{tab:wordsim_detail}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

文字に基づく手法 \cite{pinter-2017,kim-2018}に対しても提案手法は有効であったが，文字N-gramに基づく手法 \cite{zhao-2018,sasaki-2019}ほどの改善は見られなかった．
文字よりも文字N-gramの方が豊富な情報を持てるため，提案手法によって訓練の手がかりが増えたときに，文字N-gramに基づく手法の方がより大きく性能を改善できたと考えられる．

データセットごとの性能の内訳\footnote{文字N-gramに基づくモデルはSmallの設定での実験結果を載せているが，他の設定でも結論は変わらない．}を表~\ref{tab:wordsim_detail}に示す．
RNNやCNNを用いて複雑な構成を行うベースラインに対しては，提案手法は常に有効なわけではない．
一方で，Bag of N-gram や N-gram SAMといった文字N-gramの分散表現の（重み付き）和で構成を行うシンプルなベースラインに対しては，提案手法が一貫して有効である．
これらの結果から，本手法はシンプルな構成手法に対して，より有効であると言える．

また，低頻度語に焦点を当てて構築されたRWデータセットにおいては，提案手法が常に性能改善に貢献している．
単語類似度の推定が特に難しい SL データセットにおいても，N-gram SAMにおける提案手法が元の fastText の性能を$87\%$保持している．
これは Small の設定におけるマイクロ平均の性能の維持率と同等である．
これらの結果から，提案手法によってモデルサイズを圧縮しつつ高品質な単語分散表現を得られることがわかる．

他の圧縮アプローチであるQuantization \cite{shu-2018}は$6.4$MBと高い圧縮性能を持つが，単語類似度の推定性能ではN-gram SAM + Global Lossが常に上回る．
また，低頻度語に焦点を当てて構築されたRWデータセットにおいて，Quantizationでは$2,034$単語対のうち$389$単語対が未知語を含むために評価できなかった．
これらの結果から，メモリ容量を抑えつつ高品質な単語分散表現が求められる状況や，未知語に対処したい状況では，模倣アプローチによる単語分散表現の圧縮が適していると言える．


% ==================================================
\section{分析}\label{sec:analysis}
% ==================================================

% ==============================
\subsection{サンプル数に関する分析}\label{ssec:sample}
% ==============================

表~\ref{tab:wordsim}および表~\ref{tab:wordsim_detail}の実験では，大域的な損失計算のために$n=10$単語をサンプリングした．
本節では，単語のサンプル数が単語類似度推定の性能に与える影響を調査する．
サンプル数を$n=10$，$n=20$，$n=50$，と変化させた場合の単語類似度推定の性能（スピアマン相関係数のマイクロ平均）を表~\ref{tab:wordsim_n}に示す．
なお，$n=0$は大域的な損失計算を行わないベースラインであり，文字N-gramに基づくモデルはSmallの設定で実験した．

表~\ref{tab:wordsim_n}より，大域的な損失計算のための単語のサンプル数は多いほど良いわけではないことがわかる．
全体に，$n=10$よりも$n=20$の方が高い性能を発揮するが，$n=20$以上に増やしても大きな改善は見られない．
ただし，提案手法は$n$のサンプル数に関係なく，一貫して$n=0$のベースラインよりも高い性能を発揮することがわかる．



% ==============================
\subsection{単語のサンプリング方法に関する分析}\label{ssec:global-knn}
% ==============================
本節では，大域的な損失関数の計算に用いる単語のサンプリング方法において，単語の選択条件が性能に与える影響について調査する．
\ref{sec:method}節では，$n/2$単語を対象単語との余弦類似度が高い順に選択し，残りは無作為に選択すると説明した．
本節の分析では，前者を近傍単語と呼ぶことにし，近傍単語の割合を$0\%, 20\%, 40\%, 60\%, 80\%, 100\%$と変化させ，単語類似度の推定性能（スピアマン相関係数のマイクロ平均）への影響を調査する．
サンプル数は$n=100$で固定し，モデルにはSmall設定の N-gram SAM を用いた．

結果を図\ref{fig:plot_nn}に示す．
近傍単語の割合が$20$\%の時に提案手法の効果は最大となり，その後近傍単語の数が増加するにつれ性能が悪化している．
近傍単語の割合が多い場合，大域的な損失関数は模倣対象の単語に近い単語のみを考慮し，局所的な情報のみを考慮してしまうためだと考えられる．
近傍単語の割合が$100$\%のときの性能が，近傍単語の数が$0$のとき（全て無作為に選択）と比べて低いのも同様の理由であると考えられる．
近傍単語の割合が$20$\%から$80$\%の範囲で，$0$\%や$100$\%の場合よりも高い性能を持つことから，対象単語に類似したサンプルと類似していないサンプルの両方を考慮することが有効であると言える．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 4 and 5
\begin{table}[b]
\begin{minipage}[t]{.49\textwidth}
\input{10table04.tex}
\caption{損失計算におけるサンプルサイズ$n$の影響}
\label{tab:wordsim_n}
\end{minipage}
\hfill
\begin{minipage}[t]{.49\textwidth}
\input{10table05.tex}
\caption{類似単語検索におけるPrecision@$5$}
\label{tab:wordsim_k}
\end{minipage}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 3 and 4
\begin{figure}[b]
\noindent
\begin{minipage}[b]{207pt}
\begin{center}
\includegraphics{28-1ia10f3.pdf}
\end{center}
\caption{近傍単語のサンプル数を変化させた時の性能}
\label{fig:plot_nn}
\end{minipage}
\hfill
\begin{minipage}[b]{180pt}
\begin{center}
\includegraphics{28-1ia10f4.pdf}
\end{center}
\caption{損失関数の重みを変化させた時の性能}
\label{fig:plot_weights}
\end{minipage}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% ==============================
\subsection{大域的な損失関数の重みに関する分析}\label{ssec:weight-global}
% ==============================

本節では，式~(\ref{eq:loss}) に重み$\beta$を導入した場合の性能を評価し，大域的な損失関数の影響を調査する．
$\beta$を導入したとき，損失関数は次のようになる．
\begin{equation}
L = (1 - \beta)L_{\rm local} + \beta L_{\rm global}
\label{eq:loss_weight}
\end{equation}
つまり，$\beta$が大きいほど大域的な損失関数の影響が増す．
なお，$\beta$は$0.01, 0.1, 0.2, 0.4, 0.6, 0.8, 1.0$の間で変化させた．

結果を図\ref{fig:plot_weights}に示す．
$\beta$が大きいほど単語類似度の推定性能が向上しており，大域的な損失関数の重要性を確認できた．
なお，$\beta = 0.1$の周辺で性能は収束し始めており，$\beta$を$0.2$以上に増加しても大きな性能の変化は見られない．
以上より，大域的な損失関数を小さすぎない重みで考慮することにより，単語類似度の推定性能を改善できる．



% ==============================
\subsection{類似単語に関する分析}\label{ssec:knn}
% ==============================

模倣した分散表現を分析するために，fastTextにおける高頻度な$10$万単語を用いて，類似単語を調査する．
表~\ref{tab:wordsim_k}は，類似単語検索の適合率を評価した結果である．
正解の類似単語には，模倣元のfastTextを用いて各単語との余弦類似度の上位$5$単語を収集した．
なお，提案手法のサンプルサイズは$n=10$であり，文字N-gramに基づくモデルはSmallの設定で実験した．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 6
\begin{table}[t]
\input{10table06.tex}
\caption{単語``london''（上段）および単語``flu''（下段）に関する類似単語検索の例}
\label{tab:knn}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

表~\ref{tab:wordsim_k}より，提案手法によって類似単語検索の性能が常に改善されることがわかる．
表~\ref{tab:knn}に，単語``london''および``flu''に関する類似単語検索の結果を示す．
上段の``london''の例において，模倣元のfastTextでは``glasgow''や``birmingham''など，``london''と同じくイギリスの大都市が並んでいる．
一方でSmall設定のN-gram SAM ($n=0$)では，``lon''や``lond''など，表層的には類似するものの意味的には無関係な単語を上位に集めてしまっている．
単語間の関係を考慮して訓練する提案手法を適用することで，N-gram SAM ($n=10$)では，``glasgow''や``edinburgh''などの意味的に近い単語が``london''と似た分散表現の獲得に成功している．
下段の``flu''の例では，ベースラインは全く無関係な単語を集めているが，提案手法では``influenza''や``pneumonia''などの意味的に近い単語を得ることができた．





% ==================================================
\section{応用タスクにおける検証}\label{sec:application}
% ==================================================

模倣した単語分散表現の応用タスクにおける有効性を検証するために，表~\ref{tab:sent_dataset}および表~\ref{tab:pair_dataset}に示す$12$種類のテキスト分類タスク \cite{conneau-2018}に取り組む．
本実験では，多くのタスクにおいて有効性が示されているSWEM-{\it aver} \cite{shen-2018}に基づき，単語分散表現から文の分散表現を構成する．
SWEM-{\it aver}（以降, 単にSWEMと表記）は，単語分散表現を要素ごとに平均して文の分散表現を得る手法であり，単語分散表現の品質が文の分散表現の品質を直接左右するという点でも本実験に適した手法である．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 7 and 8
\begin{table}[t]
\begin{minipage}[b]{.39\textwidth}
\input{10table07.tex}
\caption{文分類タスクのデータセット}
\label{tab:sent_dataset}
\end{minipage}
\hfill
\begin{minipage}[b]{.6\textwidth}
\input{10table08.tex}
\caption{文対モデリングタスクのデータセット}
\label{tab:pair_dataset}
\end{minipage}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

他のテキスト分類モデルとして，RNN \cite{yang-2016}やCNN\cite{zhang-2015}，自己注意機構を用いたモデル \cite{raheja-2019}も考えられるが，これらのモデルでは単語分散表現の品質以外の要件も分類性能に大きく影響するため，本実験では SWEM に基づいて文の分散表現を構成する．
SWEM についても，SWEM-{\it aver}の他に，要素ごとの最大値をとる SWEM-{\it max}や，両者の演算結果を連結する SWEM-{\it concat} が提案されている．
SWEM-{\it max}では最大値以外の情報を無視するため，個々の単語分散表現の品質がより大きく分類性能に影響する SWEM-{\it aver} を用いて実験を行う．


% ==============================
\subsection{実験設定}\label{ssec:setup-senteval}
% ==============================

文の分散表現の代表的なベンチマークのひとつであるSentEval \cite{conneau-2018}を用いて提案手法の有効性を検証する．
文分類タスクには，MR \cite{pang-2005}，CR \cite{hu-2004}，SUBJ \cite{pang-2004}，MPQA \cite{wiebe-2005}, SST \cite{socher-2013}，TREC \cite{voorhees-2000}の$6$つのデータセットを用いて実験する．
ただし，SSTの感情分類については，$2$値分類と$5$値分類の両方の設定で実験する．
文対モデリングタスクには，MRPC \cite{dolan-2004}，SNLI \cite{bowman-2015}，SICK \cite{marelli-2014}，STS-B \cite{cer-2017}の$4$つのデータセットを用いて実験する．
ただし，SICKについては分類タスク (SICK-E) と回帰タスク (SICK-R) の両方の設定で実験する．
各手法の性能は，SICK-RおよびSTS-Bの回帰タスクはピアソンの相関係数，その他の分類タスクは正解率によって評価する．

SWEMのベースとなる単語分散表現には，\ref{sec:experiment}節と同じく，fastText \cite{bojanowski-2017}を模倣したN-gram SAM \cite{sasaki-2019}を用いた．
提案手法は，$n=10$で適用した．

分類および回帰のために，SWEMによって構成した特徴ベクトルを入力とするロジスティック回帰モデルを訓練した．
文分類タスクでは$5$分割交差検証を実施し，検証用データを用いて最適な$C \in \{10^{-5}, 10^{-4}, 10^{-3}, 10^{-2}\}$を選択した．
最適化には，Adam \cite{kingma-2015}を$\alpha=0.01,~\beta_1 = 0.9,~\beta_2 = 0.999,~\epsilon = 10^{-8}$の設定で使用した．
バッチサイズは$64$文とし，$5$エポックのearly stoppingで訓練を終了した．

実験には1枚のGeForce RTX 2080 Tiを使用し，SentEval\footnote{\url{https://github.com/facebookresearch/SentEval}}の公式実装を用いた．
ライブラリとそのバージョンは，PyTorch\footnote{\url{https://pytorch.org/}} (1.2.0)， scikit-learn\footnote{\url{https://scikit-learn.org/}} (0.22.1)を用いた．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 9
\begin{table}[b]
\input{10table09.tex}
\caption{文分類タスクにおける評価（正解率）}
\label{tab:result-sent}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 10
\begin{table}[b]
\input{10table10.tex}
\caption{文対モデリングタスクにおける評価}
\label{tab:result-pair}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


% ==============================
\subsection{実験結果}\label{ssec:result-senteval}
% ==============================

表~\ref{tab:result-sent}に文分類タスクにおける実験結果を，表~\ref{tab:result-pair}に文対モデリングタスクにおける実験結果を，それぞれ示す．
多くの設定（MRPCの言い換え認識におけるMediumの設定以外）において，提案手法がテキスト分類の性能を改善した．
また，\ref{sec:experiment}節の単語類似度推定とは異なり，文分類タスクにおいて Large は元の fastText の90.2\%の性能を保持しているのに対し，Small では90.0\%保持しており Large と同等の性能を保持できた．

特に，SST-$2$などの$2$値分類タスクでは，Smallの設定においても元のfastTextの$9$割以上の性能を保持できた．
この結果から，応用タスクであるテキスト分類においても，提案手法は単語分散表現の品質を保持しつつモデルサイズを約$200$分の$1$に削減
できることを確認できた．


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

本研究では，単語分散表現のモデルサイズの削減に取り組んだ．
部分文字列の分散表現から単語の分散表現を構成して学習済み単語分散表現を模倣するアプローチにおいて，単語間の関係を学習するための大域的な損失を提案した．
単語類似度推定による評価の結果，従来の局所的な損失計算と提案手法である大域的な損失計算のマルチタスク学習によって，部分文字列に基づく全ての既存手法の性能が改善することを示した．
また，テキスト分類による評価の結果，特に$2$値分類タスクにおいては，モデルサイズを$200$分の$1$に削減する設定でも$9$割の性能を保持できることを確認した．
これにより，$2$GBのfastTextの場合，提案手法によって性能を保ちつつ$12$MBまでモデルサイズを削減できる．
本研究の成果は，モバイル機器などメモリ容量が制限された環境での自然言語処理アプリケーションの開発を助けると期待できる．


% ==================================================
\acknowledgment
% ==================================================

本研究の一部はJSPS科研費20H04484の助成を受けたものです．


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


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

\bioauthor{大橋　　空}{%
2019年大阪大学工学部電子情報工学科卒業，同年同大学大学院情報科学研究科マルチメディア工学専攻に進学，現在に至る．自然言語処理の研究に従事．}

\bioauthor{五十川真生}{%
2017年大阪大学工学部電子情報工学科卒業，2019年同大学大学院情報科学研究科マルチメディア工学専攻修了．修士（情報科学）．同年ヤフー株式会社に入社，現在に至る．}

\bioauthor{梶原　智之}{%
愛媛大学大学院理工学研究科助教．2013年長岡技術科学大学工学部電気電子情報工学課程卒業．2015年同大学大学院工学研究科修士課程修了．2018年首都大学東京大学院システムデザイン研究科博士後期課程修了．博士（工学）．大阪大学データビリティフロンティア機構の特任助教を経て，2021年より現職．情報処理学会，人工知能学会，言語処理学会，ACL各会員．}

\bioauthor{荒瀬　由紀}{%
2006年大阪大学工学部電子情報エネルギー工学科卒業．
2007年同大学院情報科学研究科博士前期課程，2010年同博士後期課程修了．博士（情報科学）．同年，北京の Microsoft
Research Asia に入社，自然言語処理に関する研究開発に従事．
2014年より大阪大学大学院情報科学研究科マルチメディア工学専攻准教授，現在に至る．
言い換え表現認識と生成，機械翻訳技術，対話システムに興味を持つ．}

\end{biography}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\biodate







\end{document}

