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

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
%%%%\usepackage{array,multirow}
%%%%\usepackage{graphicx}
%%%%\usepackage{bm}
%%%%\usepackage{url}
%%%%\usepackage{algorithmic, algorithm}
%%%%\usepackage{comment}
%%%%\usepackage{pxCJKutf8,CJKspace,CJKpunct}
%%%%\usepackage{amsmath}
%%%%\usepackage{amssymb}
%%%%\usepackage{amsfonts}
%%%%\usepackage{subfig}
%%%%\usepackage[format=plain,font=small]{caption}
\newcommand{\mulcol}{\multicolumn}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

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

\received{2020}{10}{1}
\revised{2021}{1}{5}
%%%%\rerevised{2006}{5}{6}
\accepted{2021}{2}{9}

\setcounter{page}{479}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{一般論文}
\jtitle{テキストベクトルの重みづけを用いた\\
	タスクに対する単語分割の最適化}
\jauthor{平岡　達也\affiref{titech} \and 高瀬　　翔\affiref{titech} \and 内海　　慶\affiref{denso} \and 欅　　惇志\affiref{denso} \and 岡崎　直観\affiref{titech}}
\jabstract{%
これまでの自然言語処理において単語分割は，後段タスクに依存しない前処理として行われてきた．そのため，単語分割済みのデータを用いて後段タスクを学習し，後段モデル性能を評価するまで単語分割が適切であったかはわからない．この問題を解決するため本稿は後段タスクに応じて適切な単語分割を行うための新たな手法を提案する．本稿で提案する手法 (OpTok = \textbf{Op}timizing \textbf{Tok}enization) は後段タスクの学習損失値に基づいて，適切な単語分割の確率が高くなるように更新される．OpTok は文書分類のように文ベクトルを計算に用いるタスクに使用することが可能であり，実験結果より提案手法は感情分析や Textual Entailment などの文書分類の性能向上に寄与し，中国語，日本語，英語の三言語に適用可能であることを確認した．さらに，近年注目を集めている BERT に対して提案手法を適用することで，さらなる性能の向上が得られることを確認した．
}
\jkeywords{単語分割，文書分類}

\etitle{Optimizing Word Segmentation for Downstream Tasks \\
	by Weighting Text Vector}
\eauthor{Tatsuya Hiraoka\affiref{titech} \and Sho Takase\affiref{titech} \and Kei Uchiumi\affiref{denso} \and Atsushi Keyaki\affiref{denso} \and \\
	Naoaki Okazaki\affiref{titech}}
\eabstract{%
In traditional NLP, we tokenize a sentence as a preprocessing, and thus the tokenization is unrelated to a downstream task. To address this issue, we propose a novel method to explore an appropriate tokenization for the downstream task. Our proposed method, \textbf{Op}timizing \textbf{Tok}enization (OpTok), is trained to assign a high probability to such appropriate tokenization based on the downstream task loss. OpTok can be used for any downstream task which uses a sentence vector representation such as text classification. Experimental results demonstrate that OpTok improves the performance of sentiment analysis, genre prediction, rating prediction, and textual entailment. The results also show that the proposed method is applicable to Chinese, Japanese, and English. In addition, we introduce OpTok into BERT, the state-of-the-art contextualized embeddings, and report a positive effect on the performance.
}
\ekeywords{Word Segmentation, Tokenization, Text Classification}

\headauthor{平岡，高瀬，内海，欅，岡崎}
\headtitle{テキストベクトルの重みづけを用いたタスクに対する単語分割の最適化}

\affilabel{titech}{東京工業大学}{Tokyo Institute of Technology}
\affilabel{denso}{デンソーアイティーラボラトリ}{Denso IT Laboratory, Inc.}



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


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

入力文を単語の系列へと変換する単語分割は自然言語処理における重要な処理である．
中国語や日本語のように単語境界をスペースなどで明示しない言語を処理する場合は，一般的に入力となる自然文を単語列へと分割する必要がある．
また英語のようにスペースで単語区切りを明示する言語であっても，単語よりも小さい適切な単位に再分割を行うことがタスクを解く上で重要である\cite{peng2015named,peng2016improving,sennrich2016neural,he2017f,pranav20202kenize,bollegala2020language}．

従来の自然言語処理において単語分割は，モデルの学習の前に行い，学習を通して変更されることがない不可逆的な前処理として行われてきた．
%%%%図\ref{fgr:core_idea}\subref{fgr:core_idea_a}に示すように，
    図\ref{fgr:core_idea}(a)に示すように，
学習済みの単語分割モデルを用いて入力文を単語列へと変換し，これを後段タスクを解くためのモデル（後段モデル）へと入力するという処理過程が一般的である．
この単語分割では，学習済みの単語分割モデルに基づいて入力文を尤もらしい単語列へと分割する．
しかし，そのようにして得られた単語分割が後段タスクを解く上で有効であるかは不明であり，実際にその単語分割を用いて学習した後段モデルの性能を比較してみなければ単語分割の評価はできない．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[b]
\begin{center}
\includegraphics{28-2ia7f1.pdf}
\end{center}
%%%%\label{fgr:core_idea_a}
%%%%\label{fgr:core_idea_b}
\hangcaption{自然言語処理における(a)従来の不可逆な単語分割と，(b)本稿で提案する後段タスクに対して単語分割を最適化する手法の概要．提案手法は後段タスクの学習損失値を用いて，後段タスクの性能が向上するような単語分割が得られるように単語分割モデルを直接最適化する．}
\label{fgr:core_idea}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

近年の研究では，単語分割をサンプリングし，様々な単語分割を用いて後段タスクを学習することで，後段モデルの性能が向上することが示されている\cite{kudo2018subword,hiraoka2019stochastic,provilkov2019bpe}．
このような方策は未知語や表記揺れに頑健な後段モデルを作成するという点において優れているが，後段タスクそのものに単語分割を最適化するという点については考慮されていない．
後段タスクに適した単語分割が獲得できれば，後段モデルの性能のさらなる向上が得られると期待される．

また，複数の単語分割の候補を同時に使用することで，単語分割に起因する後段タスクの性能低下を防ぐ方法も提案されている \cite{chen2017dag,zhang2018chinese,yang2018subword}．
この方法では，LSTM \cite{hochreiter1997long}をベースとした機構を用いて，入力文について可能なあらゆる単語分割を考慮しながら文ベクトルを計算する．
この方法は単語分割の失敗が後段タスクへ伝搬することを防ぐことができるが，可能なあらゆる単語分割について毎回計算を行う必要があるため計算コストが大きい．

これまでのアプローチとは異なり，本研究では後段タスクを学習するために適切な単語分割を，後段タスクの学習と同時に自動で獲得することを目的とする．
%%%%本稿では図\ref{fgr:core_idea}\subref{fgr:core_idea_b}に示すように，
    本稿では図\ref{fgr:core_idea}(b)に示すように，
後段タスクとそれを学習する後段モデルに基づいて単語分割モデルを最適化する新たな手法を提案する．
提案手法は，入力文の複数の単語分割候補を用いて文ベクトルを作成し，後段モデルへと入力する．
後段モデルの学習損失値が下がるように単語分割モデルを更新することで，単語分割モデルは後段タスクを解くために有用な単語分割候補を出力するように学習される．

提案手法は，入力文を文ベクトルへと変換して利用する様々なタスクに利用することが可能である．
本稿では中国語，日本語，英語における文書分類の複数タスクで実験を行い，提案手法の有効性を確認した．
さらに，提案手法は大規模コーパスで事前学習を行ったエンコーダーに対しても適用可能であることを示す．
様々なタスクで性能の向上が報告されている事前学習済みエンコーダーであるBERT \cite{devlin2018bert}に対して提案手法を適用し，その性能が向上することを実験により示す．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{提案手法: OpTok}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{手法概要}

本稿では，後段タスクに対して単語分割を最適化する新たな手法 (OpTok: \textbf{Op}timizing \linebreak
\textbf{Tok}enization) を提案する．
提案手法は後段タスクを学習する上で適切な単語分割，すなわち後段タスクの性能が向上するような単語分割を学習する．
形式的には，提案手法は入力文$s$を語彙に含まれる単語$w \in V$の系列$s' = w_1 ... w_i ... w_I$へと変換する．
ここで$I$は文に含まれる単語の個数である．
また，$q(\cdot)$を後段タスクの評価関数，$z$を後段タスクの正解データ，$f(\cdot)$をニューラルネットワークを用いた後段モデルとしたとき，本研究の目的は後段タスクのスコアが最大となるような$s'$，すなわち${\rm argmax}_{s'}(q(z,f(s')))$を求めることである．


OpTokを後段タスクのスコア$(q(z,f(s')))$に基づいて学習することで，${\rm argmax}_{s'}(q(z,f(s')))$を満たすような単語分割$s'$を獲得する．
すなわち，単語分割を前処理として行ってから後段モデルを学習するという従来のパイプライン式の学習とは異なり，本研究では単語分割モデルである提案手法と後段モデルを同時に最適化する．
ある文に対して，OpTokは複数の単語分割の候補を出力し，候補のうち後段タスクのスコアが高くなるような単語分割に高い確率を割り当てるように学習を行う．
評価時にはその時点のOpTokのパラメータに基づき，最も確率の高い単語分割を出力し，後段モデルへと入力することで計算コストを削減する．


図\ref{fgr:proposed_model}は提案手法であるOpTokによる学習時の計算の概要を示している．
OpTokはニューラル言語モデルを持ち，そのパラメータに基づいて$N$-bestの単語分割を求める．
各単語分割候補はニューラルエンコーダーで文ベクトルへと変換され，さらに文ベクトルは単語分割候補の確率に基づいて重み付けされる．
各単語分割候補の文ベクトルの重み付き和を，通常の文ベクトルと同様に後段モデルへと入力する．
後段モデルの学習損失値に対して誤差逆伝搬法を用いることで，OpTokは後段タスクの性能が向上するような単語分割に対して高い確率を付与するように学習される．
かくして提案手法は，後段モデルの学習と同時に${\rm argmax}_{s'}(q(z,f(s')))$を満たすような$s'$を求める．
本章では，これらの処理を順に説明する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[t]
\begin{center}
\includegraphics{28-2ia7f2.pdf}
\end{center}
\hangcaption{%
提案手法による，$3$-best分割を用いた文ベクトル$\boldsymbol{h}_s$の計算の概要（学習時）．評価時は従来と同様，$1$-best分割を用いた文ベクトルの計算を行う．実線による矢印は誤差逆伝播法によって微分可能な処理を表す．Embeddingのパラメータは更新可能だが，本稿での実験では更新を行わない．Encoderはニューラルネットワークを用いたエンコーダーで，分割済みの単語列を文ベクトルへと変換する様々なモジュールを使用することができる．また，Downstream Modelは後段タスクを解くためのニューラルネットワークであり，文書分類の場合はMLPなどを用いる．}
\label{fgr:proposed_model}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ニューラルユニグラム言語モデル}
\label{sec:nulm}

OpTokは単語の確率$p(w)$をニューラルユニグラム言語モデルを用いて次のように計算する．
\begin{gather}
d_w = \mathrm{MLP}(\boldsymbol{v}_w)  \label{eq:mlp_in_langmodel}， \\
p(w) = \frac{\mathrm{exp}(d_w)}{\sum_{\hat w \in V}\mathrm{exp}(d_{\hat w})} \label{eq:token_prob}．
\end{gather}
ここで$\mathrm{MLP}$は学習可能なパラメータを持つ多層パーセプトロン，$\boldsymbol{v}_w$は単語$w$の分散表現である．

学習を安定させるために，本研究ではユニグラム確率の平滑化を行う \cite{kudo2018subword}．
具体的には，ハイパーパラメータ$\alpha$を用いて$p^*(w) = \frac{p(w)^\alpha}{\sum_{\hat w \in V}p({\hat w})^\alpha}$と平滑化したユニグラム確率を用いる．
平滑化された単語のユニグラム確率を用いて文の確率を次のように計算し，これに基づいて文を単語列へと分割する．
\begin{equation}
p(s')=\prod_{w \in s'}{p^*(w)} \label{eq:sent_prob}．
\end{equation}

単語分割に用いる語彙$V$は，予め適当な大きさになるように初期化する．
語彙に含まれる単語の初期化には，配布されている学習済みの単語分割モデル \cite{kudo2006mecab,yang2017neural}や，教師なし単語分割手法 \cite{goldwater2006contextual,mochihashi2009bayesian,sennrich2016neural}を用いて獲得された語彙を使用することができる．
本研究では，ニューラルネットワークを用いた自然言語処理において広く使用されている教師なし単語分割手法であるSentencePiece \cite{kudo2018sentencepiece}を用いて語彙の初期化を行う．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{単語分割を最適化するための機構}
\label{sec:selecting_encoder}

学習時，OpTokは複数の単語分割候補の文ベクトルを計算し，各単語分割候補の確率によってそれらを一つの文ベクトルへと変換する．

まず，ある入力文$s$の$N$-bestの単語分割候補$s'_1,..., s_n, ..., s'_N$を求める．
$N$-bestの単語分割は，\ref{sec:nulm}節で得られた単語確率に対してForward-DP Backward-A*アルゴリズム \cite{nagata1994stochastic}を適用することで得られる．

次に，それぞれの単語分割候補$s'_n$を文ベクトル$\boldsymbol{h}_{s'_n}$へと変換する．
\begin{equation}
\label{eq:sub_sent_vec}
\boldsymbol{h}_{s'_n} = g(s'_n),
\end{equation}
ここで$g(\cdot)$は単語列を一つのベクトルへと変換するニューラルエンコーダーで，CNNやBiLSTM，注意機構などを用いたものを想定している．
なお，ニューラルエンコーダーに入力する単語分散表現は，ニューラルユニグラム言語モデル（\ref{sec:nulm}節）で使用したものと共有することで，学習が安定することが経験的に分かっている．

最後に，入力文の最終的な文ベクトル$\boldsymbol{h}_s$として，式(\ref{eq:sent_prob})で求めた各単語分割候補の確率を用いて各文ベクトルの重み付き和を計算する．
\begin{gather}
a_n = \frac{p(s'_n)}{\sum_{m=1}^{N}{p(s'_m)}}， \\
\boldsymbol{h}_s = \sum_{n=1}^{N}{a_n\boldsymbol{h}_{s'_n}}．
\end{gather}
自然言語処理で一般的に使用される注意機構と同様，各単語分割候補の文ベクトルに対する重みは$\sum_{n=1}^{N}{a_n}=1$を満たすように正規化される\footnote{%
サンプリングを実現しOne-hotベクトルに近い重みを計算する方法としてGumbel softmax \cite{jang2016categorical}が提案されているが，予備実験を通して学習が安定しないことが確認されたため，本研究では単純な正規化を用いる．}．

このようにして計算した文ベクトル$\boldsymbol{h}_s$は，通常のニューラルエンコーダーを用いて計算された文ベクトルと同じように使用することができる．
例えば，$\boldsymbol{h}_s$をラベルサイズのベクトルへと変換するMLPに入力することで，ニューラル文書分類器を作成することができる．
文ベクトル$\boldsymbol{h}_s$を後段モデルに入力して計算された正解ラベルとの交差エントロピー損失を用いてモデル全体を更新することで，OpTokの持つニューラルユニグラム言語モデルは後段タスクに有用な単語分割に対して高い確率を付与するように学習される．
評価時には，ビタビアルゴリズム \cite{viterbi1967error}によって最も確率の高い単語分割を求めることで，OpTokにより学習されたタスクに適した単語分割を得ることができる．

なお，本研究は複数の単語分割候補を用いて後段モデルの学習を行うという点において，サブワード正則化との関係が深い．
サブワード正則化\cite{kudo2018subword}では，学習損失値をサブワード分割の期待値によって重みづけることで，複数のサブワード分割を考慮した後段モデルの学習を目的としている．
一方で提案手法の式(\ref{eq:sub_sent_vec})では，単語分割の確率によってエンコードされた文ベクトルを重みづけすることで，複数の単語分割を用いた後段モデルの学習を行う．
また，提案手法ではサブワード正則化とは異なり，単語分割の確率を求めるための言語モデルのパラメータが学習と同時に更新される点で異なっている．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{語彙の制約}
\label{sec:selecting_vocabulary}

タスクに対して適切な単語分割を求める時，単語長がより長く後段タスクに特徴的な単語を用いて単語分割を行うことが一つの局所最適解となる．
これはLength Bias問題\cite{lafferty2001conditional,kudo2004applying}として知られており，提案手法のように単語分割の確率をユニグラム確率の積で計算する場合は，トークン数が少なくなるような単語分割，すなわち単語長が長い単語を多く含む単語分割が優先的に選ばれてしまう．
本研究においては，学習時にこうした低頻度かつ長い単語を用いることが後段モデルの過学習につながり，後段タスクの性能低下を引き起こす．
これを防ぐため，本研究では学習時の語彙の規模に対して制約を導入する．
具体的に，OpTokは各ミニバッチ学習ごとに本来の語彙$V$から単語をサンプリングすることで，$|V'|<|V|$となるように単語数が制限された語彙$V'$（制限付き語彙と呼ぶ）を作成し，これを用いてミニバッチ学習を行う．
ここで制限付き語彙のサイズ$|V'|$はハイパーパラメータであり，本来の語彙$V$からの単語のサンプリングには平滑化されたユニグラム確率$p^*(w)$を使用する（\ref{sec:nulm}節）．
また，長さが1の単語は必ず$V'$に含まれるように制約を設け，制限付き語彙$V'$に含まれる単語の確率をノーマライズすることで，新たなユニグラム確率を得る．
OpTokは本来の語彙$V$に含まれる全ての単語について単語分散表現を保持するが，サンプリングによって$V'$から除外された単語は未知語として扱う．
$V'$はミニバッチ学習ごとに作成し直すため，ユニグラム確率が高い単語ほど頻繁にサンプリングされ，パラメータの更新機会が与えられる．
評価時には，式(\ref{eq:token_prob})によって得られる学習済みの単語のユニグラム確率に基づいて上位$|V'|$単語を$V$から選択して使用する．

高頻度な単語は一般的に単語長が短いため，サンプリング後の$V'$には短い単語が多く含まれる．
これにより，提案手法の学習時に長く特徴的な単語を含まない単語分割を使用することができ，結果として短く汎用的な単語を用いた単語分割を採用することが可能となる．
この処理はContinuous Cacheを用いた語彙削減手法に由来している \cite{grave2016improving,kawakami2017learning}．

また，このようにサンプリングによって制限付き語彙を作成することで，ミニバッチごとに学習時の$N$-bestの単語分割候補が多様化し，サブワード正則化を用いた後段モデルの学習が可能となる．
\ref{sec:nulm}節で導入したユニグラム確率の平滑化のためのハイパーパラメータ$\alpha$を用いることで，単語分割候補の多様化の度合いを調整することができる．
例えば$\alpha$を小さく設定するとユニグラム確率の分布は一様分布に近くなり，$V'$を構成する単語はより多様なものになる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{言語モデルの性質の維持}
\label{sec:keeping_nature_of_lm}

OpTokによる単語分割の最適化は後段タスクの損失関数のみに依存しているため，OpTokのユニグラム言語モデルは学習コーパスに含まれる単語の頻度を反映したものから乖離してしまう可能性がある．
一方で，学習コーパスの単語頻度を反映したユニグラム言語モデルが要求される場面もある．
例えば本研究においては，ラベルに偏りのあるデータを扱う場合に，少量ラベルに偶然現れた低頻度語を獲得する可能性がある．
言語モデルがこうした低頻度の単語に高い確率を与えた場合，\ref{sec:selecting_vocabulary}節で導入した語彙のサンプリングがN-bestの多様性を失わせ，局所解から抜け出しにくくなることが考えられる．

これを防ぐためには，OpTokのユニグラム言語モデルが実際の単語の頻度をある程度反映したものである必要がある．
そのような場合には，次のように教師なし単語分割とニューラルEMアルゴリズム \cite{deligne1995language,liang2009online,tran2016unsupervised}に基き，入力文$s$について言語モデルを更新するための損失関数を用いることができる．
\begin{equation}
\mathcal{L}^{\mathrm{lm}}_s = -\sum_{n=1}^{N}{a_n\sum_{w\in s'_n}\log p^*(w)}．
\end{equation}
$\mathcal{L}^{\mathrm{lm}}_s$と後段タスクの損失値の重み付き和に対して誤差逆伝搬を用いることで，言語モデルの性質を維持しつつ単語分割の最適化を行う．
文書分類の場合であれば，入力文に対する予測ラベルと正解ラベルとの交差エントロピー損失$\mathcal{L}^{\mathrm{cl}}_s$を用いた次の重み付き和に対して最適化を行う．
\begin{equation}
\label{eq:weighted_loss}
\mathcal{L}_s = \mathcal{L}^{\mathrm{cl}}_s + \mu\mathcal{L}^{\mathrm{lm}}_s，
\end{equation}
ここで$\mu$はハイパーパラメータであり，より大きな$\mu$を用いるほどOpTokに含まれるニューラルユニグラム言語モデルは学習データにおける単語の出現頻度を反映したものになる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{実験}
\label{sec:experiments}

本研究ではタスクに応じて単語分割を最適化することで，後段タスクの性能の向上を目指す．
本章では提案手法であるOpTokを複数の文書分類タスクに適用し，その効果を評価する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{データセット}
\label{sec:dataset}

テキストを入力とし，そのラベルを予測する文書分類によって，提案手法OpTokの評価を行う．
提案手法が言語によらず有効であることを確認するために，中国語，日本語，英語のデータセットを用いる．
本研究ではタスクに応じて適切な単語分割を学習する手法を提案しているため，インフォーマルな文体を多く含み，単語分割の差が文書分類の性能差として出やすいと考えられるSNSコーパスを用いた感情分析タスクを用いる．
また，中国語，日本語，英語において，同一のテキストに対して二つのタスクが設定されているデータセットを用いることで，提案手法がタスクごとに異なる単語分割を学習できているかを確認する．
さらに，二つの入力文を用いるTextual Entailmentタスクを用いることで，提案手法が複数の入力を必要とするタスクであっても適用できることを確認する．
各データセットについて，順に説明する．

\noindent{\bf Weibo(Zh)}\footnote{\url{https://github.com/wansho/senti-weibo}}は，中国語のSNSから作成された感情分析タスクのデータセットである．
各テキストにはPositive・Negativeのいずれかのラベルが付与されている．
配布されているデータはすでに前処理として単語分割が行われているため，デトークナイズとしてスペース記号を除去して使用する．

\noindent{\bf Twitter(Ja)}\footnote{\url{http://www.db.info.gifu-u.ac.jp/data/Data_5d832973308d57446583ed9f}}は，日本語のSNSから作成された感情分析タスクのデータセットである．
本データセットは家電機器などの製品に関するテキストを収集し，対象の製品についてPositive・Negative・Neutral・Both of Positive and Negative・Unrelatedの5つのラベルが各テキストに最低1つ付与されている．
配布されているデータのうち2018年夏の時点で352,554件にアクセスでき，本研究ではこれらのうちPositive・Negative・Neutralの3ラベルのうちいずれか1つのみが付与されたテキストのみを使用して実験を行う．

\noindent{\bf Twitter(En)}\footnote{\url{https://www.kaggle.com/c/twitter-sentiment-analysis2}}は英語のSNSから作成された感情分析タスクのデータセットで，各テキストはPositive・Negativeのいずれかのラベルが付与されている．
本研究の実験では，小文字化などの前処理を行わずに用いる．

\noindent{\bf SNLI} \cite{bowman2015large}は自然言語処理において広く使用されているTexutual Entailmentタスクのデータセットで，英語で記述されている．
二つの文の含意関係を分類するタスクであるため，本データセットの入力は2文となる．
本データセットを，提案手法が複数の入力を必要とするタスクに適用可能であることを検証するために使用する．
学習・検証・評価にはそれぞれデフォルトの分割を用い，既存研究に倣ってラベルが付与されたデータのみを使用する．

\noindent{\bf Amazon: Genre\&Rating(En)}はAmazon product data\footnote{\url{http://jmcauley.ucsd.edu/data/amazon/}}を用いて作成した英語のデータセットである．
元となるコーパスは24種の製品ジャンルについてユーザーのレビューが収録されており，各レビューにはユーザー自身が設定した1から5までのレートが付与されている．
本研究では，各製品ジャンルから5,000件ずつサンプリングし，レビューテキストを入力としたジャンル予測タスクとレート予測タスクとして使用する．
本データセットは同一のテキストに対して二つのタスクが設定されているため，提案手法がタスクに応じて異なる単語分割を学習できているかを検証することができる．
テキストの長さはレビューごとに大きく異なるため，スペース記号区切りで200単語を上限とし，これを超えないようにレビューテキストをサンプリングした．

\noindent{\bf JD.com: Genre\&Rating(Zh)}は，中国の電子商取引サイトであるJD.comに投稿されたレビューを用いて作成された中国語のデータセットである \cite{zhang2015daily}\footnote{\url{http://yongfeng.me/dataset/}}．
各レビューには商品のジャンルと，ユーザーが設定した1から5までのレートが付与されている．
Genre\&Rating(En)データセットと同様にして，レビューデータセットからジャンル予測タスクとレート予測タスクを作成した．
充分なサンプル数を持つ13ジャンル\footnote{%
\UTFC{56FE}\UTFC{4E66}\UTFC{97F3}\UTFC{50CF}，\UTFC{7535}\UTFC{8111}/\UTFC{529E}\UTFC{516C}，\UTFC{7F8E}\UTFC{5986}\UTFC{4E2A}\UTFC{62A4}，\UTFC{5BB6}\UTFC{7528}\UTFC{7535}\UTFC{5668}，\UTFC{5BB6}\UTFC{5C45}\UTFC{751F}\UTFC{6D3B}，\UTFC{5176}\UTFC{4ED6}，\UTFC{6BCD}\UTFC{5A74}/\UTFC{73A9}\UTFC{5177}，\UTFC{978B}\UTFC{7C7B}\UTFC{7BB1}\UTFC{5305}，\UTFC{624B}\UTFC{673A}/\UTFC{6570}\UTFC{7801}，\UTFC{670D}\UTFC{9970}\UTFC{670D}\UTFC{88C5}，\UTFC{5BB6}\UTFC{5177}/\UTFC{5BB6}\UTFC{88C5}/\UTFC{5EFA}\UTFC{6750}，\UTFC{8FD0}\UTFC{52A8}\UTFC{6237}\UTFC{5916}，\UTFC{949F}\UTFC{8868}/\UTFC{9996}\UTFC{9970}/\UTFC{773C}\UTFC{955C}/\UTFC{793C}\UTFC{54C1}}を選択し，各ジャンルごとに30,000件ずつ，レートが均等になるようにレビューデータをサンプリングした．
使用するレビューテキストは，その文字数が3から100に収まるようにサンプリングを行った．

\noindent{\bf Rakuten: Genre\&Rating(Ja)}は，日本の電子商取引サイトである楽天市場に投稿されたレビューを用いて作成された日本語のデータセットである \cite{rakuten}．各レビューには商品のジャンルとユーザーが設定した1から5までのレートが付与されている．JD.comから作成したデータセットと同様に，充分なサンプル数を持つ21ジャンル\footnote{
車用品・バイク用品，ダイエット・健康，ペット・ペットグッズ，靴，スイーツ・お菓子，バッグ・小物・ブランド雑貨，美容・コスメ・香水，インテリア・寝具・収納，日用品雑貨・文房具・手芸，ジュエリー・アクセサリー，食品，ホビー，スマートフォン・タブレット，インナー・下着・ナイトウエア，家電，スポーツ・アウトドア，キッズ・ベビー・マタニティ，キッチン用品・食器・調理器具，メンズファッション，花・ガーデン・DIY，レディースファッション．
}
を選択し，各ジャンルと各レートからそれぞれ5,000件ずつレビューデータをサンプリングした．
2015年のレビューデータを使用し，レビュー本文の文字数が100に収まるようにサンプリングを行った．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[b]
\input{07table01.tex}
\caption{感情分析タスクのデータセット概要．}
\label{tbl:sentiment_dataset}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 2
\begin{table}[b]
\input{07table02.tex}
\caption{Amazon product dataから作成したGenre\&Rating予測タスクのデータセット概要．}
\label{tbl:amazon_data}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

SNLI以外のタスクについては，8:1:1となるようにデータセットをランダムに分割し，それぞれ学習・検証・評価データセットとして使用する．
Genre\&Ratingタスクについても同様に，ジャンル比が等しくなるような制約のもとランダムに8:1:1に分割した．
なお，ジャンル予測タスクとレート予測タスクでは同じデータの分割を使用する．
表\ref{tbl:sentiment_dataset}に感情分析データセットの概要を示した．
また，英語のジャンル・レート予測タスクについては表\ref{tbl:amazon_data}にジャンルとレートのサンプル件数を示した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{実験設定}

OpTokのニューラルユニグラム言語モデルについて，式(\ref{eq:mlp_in_langmodel})の$\mathrm{MLP}$として2層のパーセプトロンを使用する．
式(\ref{eq:sub_sent_vec})の$\boldsymbol{h}_{s'}$を計算するためのエンコーダー$g(\cdot)$として，注意機構と線形層を接続したエンコーダー(Attention)と，BiLSTMと線形層を接続したエンコーダー(BiLSTM)の二種類を用意した．
これは提案手法がエンコーダーの種類によらず性能の向上に寄与することを確認するためである．
注意機構を用いたエンコーダーでは，単語列の分散表現の重み付き和を線形層に入力することで文ベクトルを計算する．
また，BiLSTMを用いたエンコーダーでは，分割された単語列の分散表現をBiLSTMに入力し，その出力のMax-Poolingを線形層に入力することで文ベクトルを計算する．
これらの処理において，活性化関数として${\rm tanh}$を線形層の前後に使用した．
それぞれのエンコーダーの計算の概要を図\ref{fgr:encoders}に示した．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 3
\begin{figure}[b]
\begin{center}
\includegraphics{28-2ia7f3.pdf}
\end{center}
%%%%\label{fgr:attention_encoder}
%%%%\label{fgr:bilstm_encoder}
\hangcaption{%
実験で使用するエンコーダーの概要．単語分割済みの文$s'$に含まれる単語の系列$w_1, w_2, w_3$に対応する単語分散表現$\boldsymbol{v}_{w_1}, \boldsymbol{v}_{w_2}, \boldsymbol{v}_{w_3}$について，それぞれのエンコーダーで文ベクトル$\boldsymbol{h}_{s'}$を計算する処理の概要を示す．}
\label{fgr:encoders}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

文書分類の後段モデルとして3層のMLPを使用し，文ベクトルをラベルサイズのベクトルへと変換する．
この時，MLPへの入力となる文ベクトルに50\%のドロップアウトを適用した．
SNLIについては，textとhypothesisの双方に対して同じエンコーダーを使用し，それぞれの出力のベクトル結合を文ベクトルとして後段モデルへと入力する．


提案手法との比較には，広く使用されている単語分割モデルであるSentencePiece \cite{kudo2018sentencepiece}を用いる．
具体的には，SentencePieceによって分割された単語列を文ベクトルへと変換し，後段モデルへと入力する．
すなわち，提案手法のうちニューラルユニグラム言語モデルをSentencePieceに置き換え，入力文を分割するモデルをベースラインとする．
複数の研究によって，決定的な単語分割ではなく確率的な単語分割を用いて後段モデルを学習するサブワード正則化によって性能の向上が得られることが示されている \cite{kudo2018subword,hiraoka2019stochastic,provilkov2019bpe}．
そのため，本研究においてもサブワード正則化を用いたSentencePieceをベースラインモデルとして使用する．


SentencePieceのモデルは各データセットの学習データを用いて学習した．
語彙のサイズは8K，16K，24K，32Kを探索し，Twitter(Ja)とTwitter(En)，Genre\&Rating(Zh)については16Kを選択し，Weibo(Zh)とSNLI，Genre\&Rating(En)，Genre\&Rating(Ja)については32Kを選択した．
また，学習済みのSentencePieceの語彙を用いて提案手法OpTokの語彙を初期化し，ニューラルユニグラム言語モデルについてもSentencePieceによって推定された単語確率とのKLダイバージェンスが小さくなるように事前学習し初期化した．


単語分散表現は各データセットの学習データを用いて双方向言語モデルで事前学習し，文書分類の学習時には固定した．
後段タスクに対して適切な単語分割は事前学習時に不明であるため，双方向言語モデルはSentencePieceによるサブワード正則化を用いて学習した．
Genre\&Ratingタスクについては，同じ単語分散表現を用いて学習を行った．
全てのデータセットについて，外部データによる事前学習は行っていない．


提案手法とベースライン手法を用いた文書分類の学習には，正解ラベルに対する交差エントロピー損失を用いる．
パラメータの最適化にはAdam \cite{kingma2014adam}を用い，PyTorchのデフォルトの設定を用いた．


OpTokとSentencePieceの双方で使用する単語確率の平滑化のためのハイパーパラメータ$\alpha$は既存研究 \cite{kudo2018subword}に倣い$\alpha = 0.2$とした．
提案手法の学習において，$N$-best分割については$N=3$，制限付き語彙の大きさ$|V'|$は本来の語彙の大きさの半分とした．
すなわち，Twitter(Ja)とTwitter(En)，Genre\&Rating(Zh)については$|V'|=8,000$，Weibo(Zh)，SNLI，Genre\&Rating(En)，Genre\&Rating(Ja)については$|V'|=16,000$である．
評価時には，学習された言語モデルに基づいて上位$|V'|$単語を語彙として選択し，$1$-best分割を用いてラベルの予測を行う．
本節の実験では提案手法の効果を調べるために，言語モデルの性質を維持するための損失関数への重みは$\mu=0$とした．
本稿における全ての実験結果について，事前学習部分を除く全ての学習可能パラメータをランダムに初期化し，5回の試行結果の平均F1値を報告する．
また，文書分類の最大学習エポックは20とし，各試行において検証データで最大性能となるモデルを選択し，評価データで評価を行った．

提案手法の実装と実験に使用したソースコードはGitHubにて公開している\footnote{\url{https://github.com/tatHi/optok}}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{実験結果}
\label{sec:main_results}

OpTokとSentencePieceによる単語分割手法を用いて後段モデルを学習し，その実験結果を表\ref{tbl:main_results}に示した．
SentencePieceについては，提案手法における制限付き語彙と本来の語彙それぞれと同じ大きさの語彙を持つ設定 (SentencePiece，SentnecePiece x2) で実験を行った．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 3
\begin{table}[b]
\input{07table03.tex}
\hangcaption{文書分類での実験結果．太字は各データセットでの最大値を表す．\textbar vocab\textbar はSencencePiece/SentencePiece x2それぞれの語彙の大きさを表し，これはOpTokの制限付き/本来の語彙の大きさと同じである．}
\label{tbl:main_results}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

実験結果より，多くの各言語・各タスクの組み合わせにおいて提案手法は文書分類の性能向上に寄与することを確認した．
また多くの実験設定において，OpTokの性能はSentencePieceのどちらの語彙の大きさの設定による性能よりも高いことが示された．
注意機構を用いたエンコーダーと，BiLSTMを用いたエンコーダーのどちらを使用した場合であっても，提案手法はSentenecePieceによる単語分割を用いた手法の性能を上回ることから，提案手法は使用するエンコーダーに関わらず従来の単語分割手法と比べて性能の向上に貢献することを確認した．
SNLIにおける実験結果からは，複数の入力文を要求するタスクであっても提案手法を用いることで性能向上に寄与することが示された．
さらに，OpTokはインフォーマルな表現を多く含むデータセット（SNSでの感情分析とGenre\&Ratingタスク）に限らず，SNLIのようにフォーマルな表現を含むデータセットであっても性能向上に貢献することが確認された．

提案手法は評価時に本来の語彙の半分の大きさの語彙のみを使用している．
このことから，提案手法はタスクを解くために有用な語彙を選択することで，語彙削減に貢献していると考えることができる．

注意機構によるエンコーダーを用いたRating(En)タスクでは，提案手法による性能の低下が確認された．
これは表\ref{tbl:amazon_data}に見られるような，ラベルの極端な偏りに起因すると考えられる．
注意機構によるエンコーダーはBiLSTMによるエンコーダーに比べて単語の並びを考慮しないため，文ベクトルに与える単語分割の影響が大きい．
また，Rating(En)においてレートが5となるような高評価レビューを検出するためには，肯定的なキーワードを認識できれば良い．
これにより，OpTokはeasy-positiveである高評価レビューに特徴的なキーワードのみを有用な語彙として選択し，低評価レビューの検出に有効な単語を語彙から落としてしまっているために性能が低下したと考えられる．
こうしたラベルの偏りに起因する性能の低下については，偏りを考慮して学習を行うような損失関数 \cite{li2020dice}を採用することで防ぐことが可能であると考えられる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{分析}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{単語分割のみによる性能向上}

\ref{sec:main_results}節の結果からだけでは，性能向上が提案手法で単語分割モデルと後段モデルを同時に最適化したことに起因するものであるかは不明瞭である．
そこで，本節では単語分割の最適化そのものが，後段タスクの性能向上に貢献しているかを調べる．
単語分割の最適化のみの影響を調べるために，文書分類をOpTokに含まれるニューラルユニグラム言語モデルのみで学習する．
すなわち，後段モデルとOpTokに含まれるニューラルエンコーダーのパラメータをランダムに初期化し，固定することで単語分割の更新のみによる性能向上を確認する．
ニューラルユニグラム言語モデルのパラメータのみを更新し，学習損失値と検証データにおけるF1値の推移を観察し，単語分割の最適化によって性能の向上が得られることを確認する．

本実験を\ref{sec:experiments}節で用いたTwitter(Ja)データセットにおいて行い，その結果を図\ref{fgr:diff_by_seg}に示した．
図\ref{fgr:diff_by_seg}は学習データにおける損失値と検証データにおけるF1値について，それぞれ学習開始時の値からの差をエポックごとに示した．
図より，学習エポックの増加に伴って学習損失値が下がり，検証データにおけるF1値は上昇している．
このことから，提案手法は後段タスクの損失関数を用いて，その性能が向上するような学習ができていることが示された．
また，この結果は\ref{sec:main_results}節における全体的な性能の向上に単語分割の最適化手法そのものが寄与していることを示唆している．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 4
\begin{figure}[b]
\begin{center}
\includegraphics{28-2ia7f4.pdf}
\end{center}
\hangcaption{Twitter(Ja)データセットでの，OpTokによる単語分割の更新のみを用いた性能の推移．検証データでのF1値と学習データでの損失値について，学習開始時の値からのエポックごとの差の推移を示す．}
\label{fgr:diff_by_seg}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{タスク指向の単語分割}

提案手法によって獲得される単語分割が後段タスクに応じて異なる物であるかを調べる．
本節では，\ref{sec:experiments}章での実験で用いた英語・中国語・日本語のGenre\&Ratingタスクにおいて，提案手法がどのような単語分割を学習したかを定性的に分析する．
なお，Genre\&Ratingタスクに用いたデータセットは同一のテキストに対して異なる二つの後段タスクが設定されている．
また，本節ではBiLSTMによるエンコーダーを用いた実験設定によって得られた単語分割を比較する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 4
\begin{table}[b]
\input{07table04.tex}
\hangcaption{提案手法を用いたGenre\&Ratingデータセットの学習において，学習開始時に比べてユニグラム確率が大きく向上した単語の上位15件．}
\label{tbl:lm_diff}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

表\ref{tbl:lm_diff}はジャンル予測タスクとレート予測タスクにおいて，提案手法が学習した言語モデルに基づき，学習開始時に比べてユニグラム確率が大きく上がった単語の上位15件を示す．
表より，提案手法によって学習を行ったニューラルユニグラム言語モデルは，ジャンル予測・レート予測のそれぞれで有用と考えられる単語に対して高い確率を与えるように更新されていることがわかる．
例えば英語のAmazonデータセットにおいて「zombie」という単語はジャンルを予測するために重要な手がかりとなり，「bad」はレート予測に有効であると考えられる．

また，中国語のJD.comデータセットにおいては，「\UTFC{8F66}」「衣」などのジャンル予測に有用とみられる単語や，「清」「差的」などのレート予測に有用な単語の確率がそれぞれ上昇していることが確認できる．

日本語のRakutenデータセットでは，「汚れ」「足」などの単語の確率がジャンル予測タスクでの学習で上昇し，レート予測タスクでは「とても」「気になる点」などの単語の確率が上昇している．
レビューでは「星4つ」のように，レートを直接明記する例も存在しており，日本語のレート予測の学習で「星」という単語の確率が上昇している点も特筆すべきである．

中国語と日本語のジャンル予測タスクでは，それぞれ「的」「了」や「が」「の」のような機能語の確率が大きく上昇している．
これは，ジャンル予測タスクにおいて名詞を適切に切り出すことが性能の向上につながり，その区切りを判別するために機能語が有効であるためだと考えられる．

これらの結果から，OpTokは後段タスクを解く上で有効と考えられる単語をより多く使用して単語分割を行うモデルとして学習されることが確認された．
なお，\ref{sec:keeping_nature_of_lm}節で説明した通り，本実験では言語モデルの性質を維持するような損失関数を用いていないため，学習済みの各単語の確率が極端な値になる場合がある．


検証データに含まれる入力文のうち，提案手法によって獲得された後段タスクごとの単語分割の差が顕著である英語，中国語，日本語それぞれの例を表\ref{tbl:case_study_amazon}に示した．
表において，SentencePieceは語彙の規模を16Kとしたモデルの単語分割の結果を示し，提案手法は32Kの語彙を用いて学習し単語のスコアが高い上位16K単語を用いた単語分割の結果を示した．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 5
\begin{table}[t]
\input{07table05.tex}
\hangcaption{異なるタスクにおいて，提案手法OpTokによって獲得された単語分割の例と，ベースラインであるSentencePieceによる単語分割の例．同じテキストに対して，ジャンル予測とレート予測の異なるタスクを学習した．手法間で特筆すべき分割の差が見られる箇所を太字で示した．}
\label{tbl:case_study_amazon}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

英語のジャンル予測タスクに対して最適化を行った場合は「book / s」のように，ジャンルを予測するために重要であると考えられる単語の屈折語尾を切り落とす単語分割が見られる．
これにより，屈折によらず「book」という単語を認識できるため，正しいラベルであるBookジャンルを適切に予測することができると考えられる．
一方でレート予測タスクに対して最適化を行った場合は「interest / ing」のように ，レートを予測するために有用であると考えられる「interest」という単語を適切に捉えるために，その派生語尾を切り落とす分割が見られる．
これにより，「interested」や「interests」といった単語を「interest / ing」と同じように捉えることができ，レート予測の性能向上をもたらすと考えられる．
また，ジャンル予測で学習された単語分割は「interesting」を分割せず，レート予測では「books」を分割していない．

中国語の例においても，ジャンル予測とレート予測によって獲得された単語分割の差が確認できる．
ジャンル予測で学習したモデルでは「\UTFC{6307}\UTFC{7EB9}」や「操作」など，正しいジャンルである「携帯電話/デジタル」を予測するために有用な単語を分割せずに残している一方で，ジャンル予測に不要と考えられる「不好」は分割して語彙から落としていることがわかる．
対してレート予測で学習したモデルは「不好」を連結し，「\UTFC{6307}\UTFC{7EB9}」や「操作」を語彙から落としている．
さらに，中国語の否定極性表現である「一点都」を切り出すことで，「一点都不」や「一点都没」などの表現を統一的に認識できるように学習できている．
また，SentencePieceでは単語として認識していた「\UTFC{9632}\UTFC{6307}\UTFC{7EB9}」や「而且」について，提案手法ではどちらも使用していない点が特徴的である．
「\UTFC{9632}\UTFC{6307}\UTFC{7EB9}」は耐指紋コーティングを表すが，使用したデータセットでは単純に「\UTFC{6307}\UTFC{7EB9}」について触れるレビューが多く，そのほとんどが「\UTFC{9632}\UTFC{6307}\UTFC{7EB9}」を含むレビューと同じジャンルであるために語彙削減として「\UTFC{9632}\UTFC{6307}\UTFC{7EB9}」を語彙から落としたと考えられる．
また「而且」は「また」などを表す接続詞で，ジャンル予測とレート予測の双方において意味を持たない単語であり，語彙から削除されたと考えられる．

日本語の例では，ジャンル予測で学習したモデルは「メイク」を連結しており，レート予測で学習したモデルは「ませんでした」という否定フレーズを連結することで，それぞれのタスクに応じた分割が獲得されていることが確認できる．
特に単語「メイク」は32Kの語彙の規模を持つSentencePieceモデルには含まれているが，16Kのモデルには含まれていないためSentencePieceでは「メ/イ/ク」と分割されている．
一方で，32Kの語彙をもとに提案手法で16K単語を選択した場合は「メイク」という単語が含まれているため，分割に使用することができている．
この結果は，提案手法を用いた素性選択がタスクを考慮したものであることを示唆している．

これらの事例より提案手法は英語，中国語，日本語において，後段タスクに応じて適切な単語分割を獲得していることが確認された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{PMIを用いた素性選択との関係}

本研究は後段タスクに対して適切な語彙を選択するという側面において，これまでの自然言語処理で研究されてきた素性選択との関わりが深い．
本節ではレビューデータを用いた実験を通して，文書分類のタスクにおけるラベルと単語のPMIを用いた素性選択手法\cite{sebastiani2002machine,church1990word}に関する比較を行う．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 6
\begin{table}[b]
\input{07table06.tex}
\hangcaption{SentencePieceによる32K語彙からPMIを用いて16K単語を素性選択した手法と，SentencePieceによる単語分割手法，提案手法のレビューデータにおける文書分類での実験結果．}
\label{tbl:pmi_results}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

まず提案手法による文書分類の性能と，PMIを用いて素性選択を行う手法の文書分類の性能を比較する．
PMIを用いた素性選択では，以下の二つの指標で単語とラベルの共起スコアを計算した\cite{xu2007study}．
\begin{align}
{\rm PMI}(w, l) &= \log\frac{p(l|w)}{p(l)}, \\
{\rm PMI}_{\rm max}(w) &= \max_{l \in L}{\rm PMI}(w, l), \\
{\rm PMI}_{\rm ave}(w) &= \sum_{l \in L}{p(l){\rm PMI}(w,l)}.
\end{align}
ここで$w$は単語，$l$は文書分類のラベル集合$L$に含まれるラベルである．
また，PMIのスコアは学習データ中の全ての文字N-gramを対象として計算する．
実験ではSentencePieceで学習した32Kの語彙に含まれる単語について${\rm PMI}_{\rm max}(w)$と${\rm PMI}_{\rm ave}(w)$を計算し，それぞれの指標でスコアの高い上位16K単語を選択した．
ただし未知文字を防ぐために，長さが1の単語は必ず語彙に含まれるように選択を行った．
さらに，選択した語彙をもとにEMアルゴリズム \cite{deligne1995language,liang2009online,kudo2018sentencepiece}を用いて単語の出現確率を推定し，サブワード正則化を用いた文書分類の学習を行った．
文書分類の学習には，\ref{sec:experiments}章の実験で用いたBiLSTMエンコーダーによる分類器を使用し，その結果を表\ref{tbl:pmi_results}に示した．
結果より，SentencePieceで作成した語彙からPMIを用いて素性選択を行う手法の性能は，SentencePieceの16K語彙を用いた手法や提案手法の性能を下回っている．
ここから，PMIのみを用いた素朴な素性選択に比べてSentencePieceを用いた言語モデルベースでの素性選択や，提案手法によるモデルのパラメータを考慮した語彙の選択が性能向上に寄与することがわかった．

次に，SentencePieceを用いた単語分割と提案手法による単語分割をPMIの観点から比較する．
正解ラベルとのPMIが高い単語が含まれているかどうかは，その単語分割が文書分類タスクに対して適切なものであるかを測る指標になると考えられる．
そこで，ある文$s$を単語分割した$s'$に含まれる単語のうち，最もその文の正解ラベル$l$とのPMIが高い単語のPMIスコアの平均，$\frac{1}{|D|}\sum_{s' \in D}\max_{w \in s'}{\rm PMI}(w, l)$を用いて，SentencePieceと提案手法の単語分割を比較する．
ここで$D$は単語分割済みの学習データである．
このスコアが高いほど，単語分割済みの文が正解ラベルに特徴的な単語を含んでいることを示す．
SentencePieceと提案手法それぞれの単語分割についてこのスコアを計算した結果を表\ref{tbl:pmi_scores}に示した．
表より，提案手法による単語分割はSentencePieceに比べてこのスコアの値が高く，各文の正解ラベルに特徴的な単語を用いた単語分割が行えていることが確認された．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 7
\begin{table}[t]
\input{07table07.tex}
\hangcaption{SentencePieceと提案手法それぞれの単語分割において，単語分割済み文中に含まれる単語のうち正解ラベルとのPMIが最も高い単語のPMIスコアの平均．数値が高いほど，正解ラベルに特徴的な単語を多く含む単語分割であることを表す．}
\label{tbl:pmi_scores}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

これらの検証結果から，言語モデルベースのSentencePieceや提案手法に比べて，PMIのみを用いた素性選択手法は性能向上に貢献しないことが分かった．
一方で，提案手法はSentencePieceの単語分割に比べて，正解ラベルとのPMIが高くなるような単語を用いた単語分割を学習できていることが分かった．
ここから，提案手法はSentencePieceによる言語モデルベースの素性選択の性質を残しつつ，正解ラベルとの関係が深い素性を選択することで，性能の向上が得られていると考えられる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ハイパーパラメータによる影響}
\label{sec:hyp}

本研究では提案手法のOpTokについて，語彙の大きさの制限と$N$-best分割，言語モデルの性質の維持について三つのハイパーパラメータを導入した．
本節では，これらのハイパーパラメータが性能に与える影響について，感情分析タスクを用いて分析する．

%%%%図\ref{fgr:hyp_voc_size}は
    図\ref{fgr:hyp5}aは
制限付き語彙の大きさが各言語の性能に与える影響について報告したものである．
制限付き語彙の大きさを本来の語彙に対して25\%，50\%（デフォルトの実験設定），75\%，100\%と変化させ，感情分析タスクにおける性能の変化を分析した．
図では5回の試行による平均F1値について，表\ref{tbl:main_results}で報告した値からの差を示した．
図より，語彙の大きさを50\%に縮小する設定が日本語と英語において最も性能が高く，語彙を制限することで提案手法の性能が向上することが確認された．
一方で，図より制限付き語彙の大きさを小さくするほど，中国語での性能が低下することが示された．
結果よりWeibo(Zh)データセットにおいて，32Kの大きさを持つ本来の語彙のうち全体(100\%)を用いることでF1値が93.14に到達することがわかった．
これは表\ref{tbl:main_results}で報告したOpTokのF1値よりも0.32高い数値である．
この結果は，中国語のように文字種が非常に多い言語において，語彙の大きさを制限することで後段タスクを解くための有用な単語を語彙に含めることができず，学習と評価の双方で未知語を多く発生させてしまうことに起因すると考えられる．
中国語に関するこの分析は，既存研究で報告されている分析とも合致する\cite{hiraoka2019stochastic}．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 5
\begin{figure}[t]
\begin{center}
\includegraphics{28-2ia7f5.pdf}
\end{center}
%%%%\label{fgr:hyp_voc_size}
%%%%\label{fgr:hyp_n}
\hangcaption{提案手法で用いる語彙の大きさ$|V'|$と分割候補の数$N$を異なる値にした時の性能．表\ref{tbl:main_results}で報告した感情分析タスクのF1値からの差を示す．}
\label{fgr:hyp5}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%図\ref{fgr:hyp_n}はOpTokのハイパーパラメータのうち，
    図\ref{fgr:hyp5}bはOpTokのハイパーパラメータのうち，
単語分割候補の数を表す$N$が感情分析タスクに与える影響を示している．
図より全ての言語において$N=3$を用いる設定が最も性能が高く，$N$を大きくすることで性能が低下する傾向にあることが示された．
提案手法を用いた学習では$N$-bestに含まれる全ての単語分割を用いてエンコーダーと後段モデルを学習する一方で，評価時には$1$-best分割を用いるという学習と評価時のギャップが，この傾向を引き起こしていると考えられる．
より大きな$N$を設定することで，文書分類のための後段モデルであるMLPは複数の単語分割についての文ベクトルの重み付き和を用いて学習を行う．
一方で評価時には$1$-bestの単語分割による文ベクトルのみが入力され，このギャップのために性能が低下すると考えられる．

\ref{sec:keeping_nature_of_lm}節ではOpTokで獲得される言語モデルの性質を維持するためのハイパーパラメータ$\mu$を導入した．
大きい$\mu$を設定することで，式(\ref{eq:weighted_loss})における言語モデルの性質を保つための損失値$\mathcal{L}^{\mathrm{lm}}_s$が学習に与える影響が大きくなり，OpTokのニューラルユニグラム言語モデルはコーパスに含まれる単語の頻度を反映したものになる．
\ref{sec:experiments}章の実験では提案手法の効果を調べるために$\mu = 0$と設定していたが，本節では異なる$\mu$を設定することで言語モデルの性質が維持されることと，これが感情分析タスクに与える影響を調べる．
%%%%図\ref{fgr:hyp_ppl_mu}は
    図\ref{fgr:hyp6}aは
異なる$\mu$を用いて学習したOpTokを用いて学習データを1-best分割し，そのパープレキシティを示したものである．
より大きな$\mu$を用いることでパープレキシティが下がる傾向にあることが確認され，OpTokのニューラルユニグラム言語モデルが学習データにおける単語の出現頻度を反映したものになっていることがわかる．
また，中国語，日本語，英語において，異なる$\mu$を用いて学習したモデルの性能を
%%%%図\ref{fgr:hyp_f1_mu}に示した．
    図\ref{fgr:hyp6}bに示した．
図では，表\ref{tbl:main_results}で報告した値($\mu=0$)からの差を示している．
結果より，言語モデルの性質を保つことが性能に与える影響は言語ごとに異なることがわかる．
中国語と日本語では，適切な$\mu$を設定することで性能の向上が見られ，$\mu$が大きすぎる場合には性能が低下することが確認された．
一方で英語では$\mu$の値による一貫した傾向は見られなかった．
こうした$\mu$による性能の差は，各言語間にある単語分割の曖昧性の差によって引き起こされていると考えられる．
中国語と日本語は単語境界を明示しないため単語分割の曖昧性が大きく，同じ文字列が異なる文脈に現れることが多い．
そのため，適切に$\mu$を選択して言語モデルの性質を保持することで極端なスコアを持つ単語が減り，単語分割に一貫性が得られるために性能が安定すると考えられる．
一方で英語は事前にスペース記号で単語境界を明示する言語であるため単語分割の曖昧性が小さく，言語モデルの性質を保持することによる影響が少ないと考えられる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 6
\begin{figure}[t]
\begin{center}
\includegraphics{28-2ia7f6.pdf}
\end{center}
%%%%\label{fgr:hyp_ppl_mu}
%%%%\label{fgr:hyp_f1_mu}
\hangcaption{提案手法において，言語モデルの性質を維持するための損失値の重み$\mu$による性能の差と，学習データのベスト分割に対するパープレキシティの差．}
\label{fgr:hyp6}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{BERTへの応用}

大規模なコーパスを用いて事前学習を行った言語モデルを活用した自然言語処理に関する研究が多く手掛けられている．
こうした事前学習済みの言語モデルは文ベクトルを出力するエンコーダーとして使用することができ，提案手法のエンコーダーとして使用することができる．
本節では，多くの自然言語処理のタスクで性能の向上が報告されているBERT\cite{devlin2018bert}について，提案手法を適用しTwitter(En)とGenre\&Rating(En)データセットでの評価を行う．

\ref{sec:experiments}章での実験設定のうち，提案手法に用いるニューラルエンコーダーをBERTへと変更し，同様の実験を行う．
本実験で使用するBERTモデルとして，HuggingFace\footnote{\url{https://github.com/huggingface/transformers}}が配布している${\rm BERT}_{\rm base}$を利用した．
前述の実験と同様に単語分散表現のみを固定し，その他のパラメータをfine-tuneする．
${\rm BERT}_{\rm base}$のために用意されているトークナイザはWordPieceに基づいており，最長一致アルゴリズムでの単語分割を前提としているため各単語の確率は配布されていない．
そこで本実験ではEMアルゴリズム \cite{deligne1995language,liang2009online,kudo2018sentencepiece}を用いて，配布されている語彙に含まれる単語の確率を各データセットの学習データについて推定し，これを提案手法のニューラルユニグラム言語モデルの初期値とした．
配布されている${\rm BERT}_{\rm base}$の語彙には各データセットに出現しない単語が多く含まれており，制限付き語彙を使用することで多くの未知語が発生すると考えられるため（\ref{sec:hyp}節），語彙の大きさの制限は行わない．
${\rm BERT}_{\rm base}$のパラメータのfine-tuneについてはAdamW \cite{loshchilov2017decoupled}を用い，OpTokに含まれるニューラルユニグラム言語モデルのパラメータについてはAdamによる更新を行う．

実験結果を表\ref{tbl:result_BERT}に示した．
表において，${\rm BERT}_{\rm base}$による実験ではBERTの学習時と同様に最長一致アルゴリズムを用いてWordPieceでの分割を行ったデータを用いている．
+Sampling tokenizationによる実験では，上述したEMアルゴリズムによる単語確率の推定値を用いて，SentnecePieceによるサブワード正則化と同様に確率的な単語分割を用いた学習を行った．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 8
\begin{table}[t]
\input{07table08.tex}
\hangcaption{英語で記述されたデータセットにおける${\rm BERT}_{\rm base}$を用いた実験結果（F1値）．手法間での最高値を太字で示した．}
\label{tbl:result_BERT}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

実験結果より，事前学習済みのBERTを用いることで表\ref{tbl:main_results}で報告した値に比べ，どのデータセットでも性能が向上することが確認された．
さらに，提案手法であるOpTokにBERTを組み込むことで，オリジナルのBERTや確率的な単語分割を用いて学習する手法の性能を上回ることがわかった．
以上の結果から，OpTokは自然言語処理で広く使われている事前学習モデルを組み込んだモデルであっても，単語分割を最適化することで性能の向上に寄与することが示された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{関連研究}

ニューラルネットワークを用いた自然言語処理において，単語分割の観点から処理性能の向上を目指す研究は数多く手掛けられてきた．
単語分割に起因する処理性能の低下を防ぐ方法として，複数の単語分割を同時に使用する手法が挙げられる．
ニューラルネットワークを用いた枠組みにおいては，LSTMの系列処理をラティス状に拡張することで，複数の単語分割を入力として受け取る手法が提案されている \cite{chen2017dag,zhang2018chinese,yang2018subword}．
これにより，様々な単語分割の可能性を同時に考慮しながらタスクの学習が可能となり，中国語の教師あり単語分割タスクや固有表現抽出タスクで性能の向上が報告されている．
また，Transformerの枠組みで単語分割の複数の可能性をラティスとして考慮する手法も提案されており，中英翻訳タスク \cite{xiao2019lattice}や中国語の固有表現抽出タスク \cite{li2020flat}での性能向上が報告されている．
これらの手法は複数の単語分割候補を同時に使用することで，決定的な単語分割の失敗による性能低下を防ぐことができる．


確率的な単語分割を行うサブワード正則化 \cite{kudo2018subword,kudo2018sentencepiece}では，学習エポックごとに単語分割を言語モデルにしたがってサンプリングすることで複数の単語分割候補を用いたモデルの学習を行う．
これにより，一つの学習事例を複数の単語分割を用いて学習するデータ拡張として性能の向上に繋がるだけでなく，未知の文字列に対してもロバストなモデルを学習することが可能である．
SentencePieceによるサブワード正則化を用いることで，ニューラル機械翻訳の複数の言語対において性能の向上が得られることが報告されている．
BPE-dropoutによるサブワード正則化では，Byte Pair Encodingを用いたサブワード分割におけるトークンの結合処理をランダムにスキップすることで，複数の単語分割候補を生成する \cite{provilkov2019bpe}．
言語モデルを用いずに単語分割のサンプリングを行うことで，より多くの単語分割候補を用いてモデルを学習することができ，機械翻訳タスクにおける性能の向上が報告されている．
また，教師なし単語分割手法をサブワード正則化に組み込むことで，学習が進むに従って確率的な単語分割から決定的な単語分割へとスケジューリングし，学習性能を安定させる手法も提案されている \cite{hiraoka2019stochastic}．


タスクに対して最適な単語分割を求める試みは，主に機械翻訳分野において研究されてきた．
アラインメントモデルのようにシンプルな機械翻訳手法を基準としてソース言語とターゲット言語の単語分割を決定することで，より複雑な機械翻訳モデルにおいても性能向上が見られることが報告されている \cite{xu2008bayesian,chung2009unsupervised,nguyen2010nonparametric,mermer2013improving}．
近年の研究では，ニューラル機械翻訳における単語分割の最適化が試みられている．
Incremental BPEは，Byte Pair Encodingによるサブワード分割の適切な分割粒度を，ニューラル機械翻訳器の損失値を用いて自動決定する手法である\cite{xuanli2020dynamic}．
Dynamic Programming Encodingによる単語分割では，Seq2Seqモデルを用いた文字列から単語列への変換手法 \cite{chan2016latent}を拡張し，ソース言語からターゲット言語を出力する上でより適切な単語分割を選択する手法を提案した \cite{xuanli2020dynamic}．
我々の研究はこれらの既存研究と比較し，様々なニューラルエンコーダーに適用可能である点と，後段タスクに対する学習損失値からの誤差逆伝搬のみを用いて，人手で設定した基準を用いず直接的に単語分割を後段タスクに対して最適化するという点で異なっている．
また\citeA{kudo2005morph}では，形態素解析器による単語分割の確率を用いてBag-of-Wordsベクトルの重みづけを行うことでテキスト分類タスクの性能向上を報告している．
提案手法はニューラルネットワークを用い，単語分割の確率そのものをタスクとモデルに対して最適化するという点において，この手法を拡張したものであると捉えることができる．


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

本稿では，後段タスクに対して単語分割を最適化する手法であるOpTokを提案した．
OpTokを後段モデルに接続し，一般的な後段タスクの学習と同様にパラメータを更新することで，後段タスクを解く上で有用な単語分割が学習される．
実験結果より，提案手法は後段タスクに応じて適切な単語分割を獲得し，複数の言語における文書分類において性能の向上に起用することが確認された．
また，提案手法の分析を通して，OpTokを用いることで後段タスクを学習するための損失関数のみを用いて単語分割の最適化を行うことができ，これが性能の向上をもたらすことを示した．
さらに英語のデータセットではOpTokにBERTを組み込むことによる性能の向上を確認し，大規模コーパスで事前学習された言語モデルを用いた自然言語処理についても，提案手法が適用可能であることを示した．

提案手法は文ベクトルを使用する様々な自然言語処理に適用することができるが，系列ラベリングや生成を伴うタスクに使用することは難しい．
今後の研究では，単語の生成を伴うタスクに対しても提案手法を適用できるように拡張を施し，機械翻訳タスクや文書要約タスクでの実験と分析を行う．


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

本研究成果は，国立研究開発法人情報通信研究機構 (NICT) の委託研究により得られたものです．
また本論文の内容の一部はFindings of ACL: EMNLP 2020に採択されたものです\cite{hiraoka2020optimizing}．


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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}
\bioauthor{平岡　達也}{%
2017年早稲田大学教育学部卒業．2019年奈良先端科学技術大学院大学情報科学研究科卒業，修士（工学）．同年4月より東京工業大学情報理工学院博士後期課程に在学中．言語処理学会，ACL各会員．
}
\bioauthor{高瀬　　翔}{%
2012年東北大学工学部卒業．2014年東北大学大学院情報科学研究科博士前期課程修了．2017年東北大学大学院情報科学研究科博士後期課程修了．博士（情報科学）．NTTコミュニケーション科学基礎研究所でのリサーチアソシエイト，東京工業大学での研究員を経て，2020年4月より東京工業大学助教．自然言語処理の研究に従事．言語処理学会，ACL各会員．
}
\bioauthor{内海　　慶}{%
2006年筑波大学大学院図書館情報学メディア研究科博士前期課程修了．修士（情報学）．同年〜2013年ヤフー株式会社にて自然言語処理の研究開発に従事．2013年株式会社デンソーアイティーラボラトリ入社．2021年現在，同社在職中．自然言語処理の研究に従事．言語処理学会会員
}
\bioauthor{欅　　惇志}{%
株式会社デンソーアイティーラボラトリアソシエイトリサーチャ．博士（工学）．2014 年奈良先端科学技術大学院大学情報科学研究科博士後期課程修了．2012〜2014 年日本学術振興会特別研究員(DC2)．2013 年マイクロソフト・リサーチアジアリサーチインターン．2014〜2019 年東京工業大学情報理工学院助教．2016〜2017 年シンガポール国立大学客員研究員．ACM，電子情報通信学会，日本データベース学会，言語処理学会，人工知能学会各会員．
}
\bioauthor{岡崎　直観}{%
2007年東京大学大学院情報理工学系研究科博士課程修了．東京大学大学院情報理工学系研究科・特任研究員，東北大学大学院情報科学研究科准教授を経て，2017年8月より東京工業大学情報理工学院教授．言語処理学会，人工知能学会，情報処理学会，ACL各会員．
}
\end{biography}


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






\end{document}

