\documentclass[japanese]{jnlp_3.6}
\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[dvipsnames]{xcolor}
%%%%\newcommand{\revision}[1]{\textcolor{red}{#1}}
%%%%\newcommand{\revisionStart}{\color{Maroon}}
%%%%\newcommand{\revisionEnd}{\color{black}}
%%%%\usepackage[dvipdfmx]{graphicx}
%%%%\usepackage{amsmath}
%%%%\usepackage{url}
%%%%% User Defined Packages
\usepackage{booktabs}  % For tables
\usepackage{cleveref}  % For section marks
\crefformat{section}{#2#1#3~節}
\crefformat{subsection}{#2#1#3~節}
%%%%\crefformat{subsubsection}{#2#1#3~節}
%%%%\crefformat{equation}{式#2#1#3}
\crefname{figure}{図}{図}
\crefname{table}{表}{表}
\crefname{algorithm}{アルゴリズム}{アルゴリズム}
\crefname{appendix}{付録}{付録}
%%%%% algorithm
\usepackage{algorithm,algpseudocode}
\renewcommand{\algorithmicrequire}{\textbf{Input:}}
\renewcommand{\algorithmicensure}{\textbf{Output:}}
\makeatletter
\renewcommand{\ALG@name}{アルゴリズム}
\makeatother
%%%%% For showing subfigures
%%%%\usepackage{mwe}
%%%%\usepackage{subfig}
%%%%% For \mathbb
%%%%\usepackage{amsfonts}
%%%%% For review responses
%%%%\usepackage{framed}
%%%%\renewcommand\UrlFont{\rmfamily}
% Basics
\newcommand{\Appendix}[1]{付録\ref{#1}}
\newcommand{\Table}[1]{表\ref{#1}}
\newcommand{\Figure}[1]{図\ref{#1}}
%%%%\newcommand{\Algorithm}[1]{アルゴリズム\ref{#1}}
\newcommand{\minisection}[1]{\vspace{4mm}\noindent{\bf {#1}.}}
\newcommand{\minisectionNoDot}[1]{\vspace{4mm}\noindent{\bf {#1}}}
%%%%\newcommand{\ie}{i.e.}
%%%%\newcommand{\eg}{e.g.}
%%%%\newcommand{\ia}{i.a.}
% math
%%%%\newcommand{\matr}[1]{\boldsymbol{#1}}
\newcommand{\vect}[1]{\boldsymbol{#1}}
%%%%\newcommand{\argmax}{\mathop{\rm arg~max}\limits}
%%%%\newcommand{\argmin}{\mathop{\rm arg~min}\limits}
% Linguistics
\newcommand{\sentence}[1]{``{\it #1}''}
\newcommand{\word}[1]{{\it #1}}
\newcommand{\token}[1]{\texttt{#1}}
\newcommand{\package}[1]{\texttt{#1}}
\newcommand{\NoTrain}{NoTrain}
\newcommand{\Uniform}{Uniform}
\newcommand{\Zipf}{Zipf}
\newcommand{\LogLinear}{LogLinear}
\newcommand{\Bigram}{Bigram}
\newcommand{\Flat}{Flat}
\newcommand{\Nesting}{Nesting}
%%%%\newcommand{\Dependency}{Dependency}
%%%%\newcommand{\Parenthesis}{Parenthesis}
\newcommand{\LSTM}{LSTM}
\newcommand{\Transformer}{Transformer}
%%%%\newcommand{\Spanish}{Spanish}
%%%%\newcommand{\Japanese}{Japanese}
\newcommand{\English}{English}
%%%%\newcommand{\PoSTagging}{PoS tagging}
%%%%\newcommand{\DependencyParsing}{dependency parsing}
%%%%\newcommand{\RiJa}{李　凌寒}
%%%%\newcommand{\TsuruokaJa}{鶴岡　慶雅}
%%%%\newcommand{\RiEn}{Ryokan Ri}
%%%%\newcommand{\TsuruokaEn}{Yoshimasa Tsuruoka}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

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

\received{2022}{10}{31}
\revised{2023}{2}{1}
\accepted{2023}{3}{6}

\setcounter{page}{664}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{一般論文}
\jtitle{人工言語による事前学習を用いた言語間転移可能な知識の分析}
\jauthor{李　　凌寒\affiref{Affiliation}\affiref{Affiliation2} \and 鶴岡　慶雅\affiref{Affiliation}}
\jabstract{%
本論文では，ニューラルネットエンコーダが学習する知識のうち，どのような構造的知識が自然言語のタスクを解くのに転移可能かを調査する．提案するアプローチでは，自然言語の構造を模したいくつかの「人工言語」を用いてエンコーダを訓練し，そのエンコーダの自然言語の下流タスクにおける性能を評価することで，事前学習データに含まれている構造的知識の転移可能性を計測する．実験の結果，転移可能なエンコーダを獲得するにあたって，事前学習のデータ系列中において，統計的依存関係が重要であること，係り受け関係を持つ際に入れ子構造が有用であることなどが明らかとなった．こうした結果は，エンコーダが転移可能な抽象的な知識として，位置を考慮したトークンの文脈依存性があることを示唆している．
}
\jkeywords{言語間転移学習，多言語，事前学習モデル}

\etitle{Analyzing Transferable Knowledge by Pretraining with Artificial Language}
\eauthor{Ryokan Ri\affiref{Affiliation}\affiref{Affiliation2} \and Yoshimasa Tsuruoka\affiref{Affiliation}}
\eabstract{%
We conducted a study to determine what kind of structural knowledge learned in neural network encoders is transferable to the processing of natural language. We designed artificial languages with structural properties that mimic those of natural language, pretrained encoders on the data, and examined the encoders' effects on downstream tasks in natural language. Our experimental results demonstrate the importance of statistical dependency, as well as the effectiveness of the nesting structure in implicit dependency relations. These results indicate that position-aware context dependence represents knowledge transferable across different languages.}
\ekeywords{Cross-lingual Transfer Learning, Multilingual, Pretrained Model}

\headauthor{李，鶴岡}
\headtitle{人工言語による事前学習を用いた言語間転移可能な知識の分析}

\affilabel{Affiliation}{東京大学}{The University of Tokyo}
\affilabel{Affiliation2}{2023 年 4 月よりLINE株式会社}{LINE Corporation}



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

\renewcommand{\thefootnote}{}
\footnote[0]{本論文は ACL 2022 に採択された論文\protect\cite{ri-tsuruoka-2022-pretraining}の内容を拡張・再構成したものです．}
\renewcommand{\thefootnote}{\arabic{footnote}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\vspace{-1\Cvs}
\section{はじめに}
\label{sec:intro}

複数の言語のテキストで学習したマルチリンガル事前学習モデルは，
\pagebreak
言語横断転移学習のタスクなどで高い性能を発揮しており\cite{conneau-etal-2020-unsupervised}，
これはモデルが異なる言語にわたって共有できる知識を学習していることを示している．
タスクを解くために役立つ言語の知識には，単語などの語彙に関する知識もあれば，文法に関する知識もある．
ここで言う文法とは，外国語学習に見られるような具体的な文法事項というよりは，ニューラルネットワークが，トークンの系列から情報を集約して，タスクを解くために必要な「意味」を導き出す内部処理のことを指す．
このニューラルネットワークの「文法」に，異なる言語にわたって共有できる部分が存在することが示唆されている．

\citeA{artetxe-etal-2020-cross} は，英語のデータのみで重みを学習した Transformer エンコーダを，異なる言語にも転用できることを示した．
つまり，英語のデータから学習した「文法」に言語非依存なものが存在するということである．
言語間で共有できる文法事項のうち，マルチリンガル事前学習モデルが実際に捉えているものとして，Universal Dependencies\footnote{\url{https://universaldependencies.org/}} で定義されている係り受け関係\cite{chi-etal-2020-finding}や，主格の概念\cite{papadimitriou-etal-2021-deep}が存在することが今まで示されている．
これらは，我々にとっても直感的な文法であるが，ニューラルネットワークはより抽象度が高い概念や処理を，異なる言語にわたって共有できることが示唆されている．
たとえば \citeA{papadimitriou-jurafsky-2020-learning} は，楽譜やプログラミングコードといった非自然言語データで LSTM 言語モデルを訓練し，そのモデルが自然言語の言語モデリングのタスクに転用できることを示した．
つまり，自然言語間に限らず，外見の全く異なる系列データ間にも共通の構造があり，それに関して学習した知識をモデルが転用できることを示している．

しかしながら，具体的にどのような構造的知識が転用されるのかに関しては，十分に明らかになっていない．
この点について理解を深めることは，ニューラルネットワークの言語処理に関する洞察を与え，かつ，言語共通の知識を効率的に捉えるモデルの考案にも役立つ．
本研究は，転移可能な知識を人工言語からの転移学習（\cref{fig:artificial_pretraining}）により分析する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f1.pdf}
\end{center}
\hangcaption{人工言語を用いた事前学習の概要．人工言語は何かしらの構造的特徴を持ち，そのデータから学習した知識が，自然言語のタスクへ転用できるかどうかを調べる．}
\label{fig:artificial_pretraining}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

本実験手法は Test for Inductive Bias via Language Model Transfer \cite{papadimitriou-jurafsky-2020-learning} の実験手法から着想を得ており，転移元データで学習したモジュールを，異なる種類のデータへと転用した場合のタスク性能を評価することによって，転移元と転移先データで共有可能な知識が存在するかどうかを調べる．
本研究では，系列データの持つ抽象的な構造に関する知識の転移可能性を調べるために，転移元データとして抽象的な構造以外の要素を捨象した人工言語を設計する．
人工言語が持つ構造の転移可能性の評価として，事前学習した \Transformer{} を自然言語の言語モデリングへの転移した際の性能を測定した．

本研究で着目する自然言語の構造的な性質は，単語の分布，単語の係り受け関係，ランダム性である．
これらの構造について，自然言語に近いものを持つ人工言語，自然言語とは異なるものを持つ人工言語を設計し，比較実験を行った．
得られた知見を以下にまとめる．

\begin{itemize}

  \item コーパス全体における単語分布そのものは転移可能な有用な知識になり得ず，自然言語へ転移できる \Transformer{} のパラメータを学習するためには，事前学習データの系列内の統計的依存関係が必要となる．この統計的依存関係から，\Transformer{} は入力中の文脈情報を集約するような学習をし，自然言語タスクに有用なものとなる．

  \item 事前学習データとして，係り受け構造を持った人工言語を設計し，係り受け関係が入れ子状になる制約を持った言語と，そうでない言語を比較すると，入れ子制約を持っている方が高い自然言語への転移性能を示した．これは，トークン予測のタスクにおいて，入れ子構造が，自然言語の文法に見られるような，一貫した位置に依存する規則性を持っているからだと考えられる．

  \item 人工言語にランダム性がなく，生成されたデータの系列の並びが決定的であったとしても，事前学習された \Transformer{} は自然言語に転移可能なものとなる．また，転移元の人工言語と転移先の自然言語の語彙サイズが近しいことそのものの有効性は確認されなかった．これら実験結果を踏まえると，転移学習の性能に影響を与える主たる要因は，系列データの統計的依存性であると考えられる．

\end{itemize}


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

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{事前学習エンコーダにおける転移可能な知識}
\label{subsec:related-transfer}

言語横断転移学習に用いられるマルチリンガルモデルは，言語共通の構造を捉えていることが示唆されている．
マスク付き言語モデリングで学習したマルチリンガル言語モデル \cite{devlin2018bert,Doddapaneni2021APO} は，言語間の対応関係を示すデータを与えられていない場合でも，高い言語横断転移学習の性能を示す\cite{liu-etal-2020-multilingual}．
これはモデルは言語共通の意味空間を獲得していることを意味しているが，言語横断転移学習の能力は，異なる言語の語彙の間に共通のサブワードが存在しない場合でも獲得されることが示されている\cite{K-mBERT-ICLR-2020,conneau-etal-2020-emerging}．
したがって，ここでモデルが言語非依存な意味空間の学習の手がかりにしているのは，異なる言語にわたって見られる共通の構造だと考えられている．

このような，言語共通の構造の存在を示唆する観察として，単言語コーパスで学習したエンコーダの転移可能性がある．
\citeA{artetxe-etal-2020-cross} の報告によれば，転移元言語のデータのみで学習した \Transformer{} エンコーダは，転移先言語の単語埋め込みをそのエンコーダに合わせて学習するだけで，高い言語間転移学習の性能を示す．
\citeA{papadimitriou-jurafsky-2020-learning} は， \LSTM{} エンコーダをプログラミングコード，楽譜，人工データなどの非言語データで学習し，それらのエンコーダがスペイン語の言語モデリングにおいても，ある程度の性能を発揮できることを示した．
これらの結果は，ニューラルネットワークのエンコーダが，単言語/非言語データから，異なる言語にも共有できる何らかの知識を学習できることを示している．

それでは，異なる言語の間で共有されている共通の構造とはどのようなものだろうか．
Probing タスク\cite{ijcai2018-796,conneau-etal-2018-cram}を用いた分析から，マルチリンガル言語モデルは，言語普遍な依存構造\cite{chi-etal-2020-finding}や主格の概念\cite{papadimitriou-etal-2021-deep}など，言語非依存な構造を捉えていることが示唆されている．
しかし，Probing の手法は，モデルがそうした言語知識を捉えていることは示しても，そうした知識を持つことが言語間転移学習の性能にどれほど貢献しているかを示すことはできない．
また，単純な単語の分布構造や語彙サイズといった，抽象的な要素に関する知識の転移可能性は明らかにできない．

本研究は，エンコーダが捉える異なる言語間で転移可能な知識とは何かという問いを明らかにするために，Test for Inductive Bias via Language Model Transfer (TILT) \cite{papadimitriou-jurafsky-2020-learning}の枠組みに則り，人工言語を活用した実験を行う．
TILT の枠組みは，転移先言語（ここでは自然言語）にも活用可能な抽象的な知識を，転移元言語から学習できるのかどうか，ということを明らかにする．
我々の実験では，転移元言語として単純な構造的特徴から構成される人工言語を設計し，その特徴の転移可能性を分析した．
人工言語からの転移学習による分析は \citeA{papadimitriou-jurafsky-2020-learning} においても，\Uniform{} や \Zipf{} の分布を持つ人工言語，同一トークン間の係り受け構造を模した人工言語を用いて行われている．
先行研究との差異として，我々の研究では，係り受け関係を持つトークンについて自然言語により近い構造をしていると考えられる人工言語を採用し，文内の統計的依存関係の必要性を調べるための \LogLinear{} や，系列のランダム性を制御する \Bigram{} 言語といった新たな人工言語を設計し詳細な分析を加え知見を広げる．
また，\citeA{papadimitriou-jurafsky-2020-learning} はエンコーダとして LSTM を取り上げているが，本研究は近年の転移学習における主流アーキテクチャである Transformer を取り上げる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{人工言語を用いた言語モデルの分析}

言語の特徴に関わる分析における難点の 1 つに，言語の特徴の多様性が挙げられる．
日本語と英語を比べると，文字も異なれば，語彙，文法も全く異なる．
異なる自然言語には様々なレベルでの違いがあり，こうした言語特徴がモデルの性能に与える影響を調べようとしても，それぞれ違いを独立にコントロールして実験を行うことが難しい．
こうした難点を避けるために．自然言語の性質を人為的に改変して人工言語を作り，元の言語と比較するアプローチがある．
典型的には以下の手順を踏む： (1) 対象の自然言語が持つある特徴に変更を加えて人工言語を作成する．改変される言語特徴として，たとえば，語順\cite{sinha-etal-2021-unnatural,dufter-schutze-2020-identifying,Sinha2021MaskedLM}，文字\cite{K-mBERT-ICLR-2020,dufter-schutze-2020-identifying,conneau-etal-2020-emerging}，形態素\cite{ravfogel-etal-2019-studying}などがある; (2) 元の自然言語と改変後の人工言語のデータを用いて，それぞれのモデルを，分析タスクにおいて訓練・評価する．
これにより，改変した言語特徴に絞って，モデルの性能に与える影響を調べることができる．

このような利点がある一方で，自然言語に改変を加える手法は，容易に変更を加えられるような言語特徴しか分析の対象にできない．
そこで，より幅広い言語特徴の影響を分析するアプローチとして，特定の言語特徴を持った人工言語の利用が挙げられる．
\citeA{white-cotterell-2021-examining}は，名詞句や動詞句といった文法的構成素の語順をパラメータとして変更できる確率的文脈自由文法 (PCFG) を設計し，パラメータの違いが LSTM と Trasformer それぞれの言語モデリングの性能に与える影響について調べた．
また，\citeA{Chiang2022AAAI} も人工言語を用いたアプローチで，様々な性質を持った人工言語で事前学習された Transformer エンコーダの，GLUE ベンチマーク \cite{DBLP:conf/iclr/WangSMHLB19} における性能を評価している．
本研究も同様に，自然言語をもとにしない，抽象的な規則から生成された人工言語を用いて，自然言語タスクに転用できる構造的な知識をとは何かを調べる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{人工言語を用いた転移学習}
\label{sec:approach}

本研究の実験手法は，\citeA{papadimitriou-jurafsky-2020-learning}の提案した Test for Inductive Bias via Language Model Transfer (TILT) の実験手法にもとづく．
TILT は以下のような事前学習と転移学習の 2 つのステップから構成される．

\begin{enumerate}
   \item エンコーダを転移元言語で事前学習をする．
   \item エンコーダを転移先言語での下流タスクに転用し，性能を評価する．このとき，転移元言語の単語埋め込みは使わずに，転移先言語の単語埋め込みをランダムに初期化し，単語埋め込みパラメータのみを学習する．つまり，エンコーダのパラメータを固定することで，エンコーダが事前学習で獲得した知識の，転移先言語・タスクにおける有用性が検証できる．
\end{enumerate}

ここでいうエンコーダとは，ベクトルの系列を受け取り，系列全体の情報を考慮した出力ベクトルを得るモジュールのことを指す．
本研究で扱う事前学習・評価タスクは，左から右にトークンを予測・生成していく言語モデリングであるため，このモジュールはデコーダともいえる．
しかし，本論文では入力系列から文脈化されたベクトル表現に変換する点に焦点をあてることから，一貫してエンコーダと呼ぶことにする．

本研究では，自然言語に転移可能な構造的知識とは何かを調べるために，転移元言語として自然言語の特定の性質を模した人工言語，転移先言語として自然言語（ここでは英語）を用いる．
以下，人工言語の形式的な定義を与えた後に，実際に用いる人工言語を導入する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{人工言語の定式化}

人工言語は，語彙 $\{ w | w \in \mathcal{V} \}$，系列長の分布 $p_{len}(l)$，系列のサンプリングアルゴリズム $f(l): l \mapsto \mathcal{V}^{l}$ の 3 つの要素から構成される．
事前学習に用いられるデータは 1 系列ずつ，以下の手順で生成される：(1) 系列長 $l$ を分布 $p_{len}(l)$ からサンプリングして決定する; (2) その長さだけトークン $[w_{1}, ..., w_{l}]$ を $f(l)$ のアルゴリズムでサンプルする．

ここでの人工言語の語彙は，単純な数字 ID または記号と数字の組合せから構成されており，実際の自然言語の語彙との対応は想定されていない．
また，すべての人工言語について，系列長の分布 $p_{len}(l)$ は，ベースラインのデータセット（ここでは英語 Wikipedia Dump）から算出された系列長分布を用いる．
人工言語の最も重要な特徴は，以下に詳述する系列のサンプリングアルゴリズム $f(l)$ であり，これがどのような構造的知識をエンコーダが学習するかを決定づける要素となる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{単語分布のモデリング}
\label{subsec:word_distribution}

自然言語における単語分布にはいくつかの特徴がある．
こうした単語分布に関する事前知識の，自然言語のタスク学習への有効性を調べるために，自然言語を模した単語分布を持つ人工言語を設計する．
単語分布のみを特徴としてもつ人工言語のサンプリングアルゴリズム $f(l)$ は，言語の持つ単語分布 $p(w)$ からのサンプリング $w \sim p(w)$ を $l$ 回繰り返すことで行われる．

\minisectionNoDot{\Uniform{} 単語分布}を持つ人工言語では，1 系列中のトークンを，語彙全体から一様にサンプリングする．
これは，自然言語の単語分布とは掛け離れており，ベースラインとして用いられる．
トークン $w$ がサンプリングされる確率は以下のように表される．
\begin{equation}
  p(w) = \frac{1}{|\mathcal{V}|}
\end{equation}


実際の自然言語における単語分布は，経験的に Zipf's の法則\cite{Zipf1949HumanBA}に従うことが知られており，各単語の頻度とその頻度順位が $\text{frequency}(w) \propto \frac{1}{\text{rank}(w)^{\alpha}}$ で表される比例関係にある．
係数 $\alpha$ は通常おおよそ$1$となるが，係数算出に用いるコーパスのドメインによって幾分かゆらぎを見せる\cite{Zanette2005DynamicsOT}．

\minisectionNoDot{\Zipf{} 単語分布}は自然言語のこのような性質を捉えており，それぞれのトークン $w$ を $\alpha=1$ と設定した Zipf の分布からサンプリングする．
\begin{equation}
  p(w) 	\propto \frac{1}{\text{rank}(w)}
\end{equation}

ここまで導入した 2 つの単語分布は，それぞれの系列中のトークンを独立にサンプリングしている．
しかし，自然言語において文中の単語には統計的依存関係，つまり特定の単語共起パターンが存在することが知られている\cite{church-hanks-1989-word}．
たとえば，\sentence{The cat and dog are fighting over food.} という文を考える．
単語 \word{the} と \word{cat} は偶然より高い確率で共起するが，これは \word{cat} という名詞が，\word{the} という冠詞と結びついているからである．
また \word{dog} と \word{cat} の間にもトピックの関連があるため，共起しやすくなっている．
文中の単語は何かしらの統語的・意味的な関係に従って互いに結びついている．

\minisectionNoDot{\LogLinear{} 単語分布}はこのような性質をモデリングする．
文毎に異なる単語分布を与えるため，単語分布は文 $s$ に条件づけられた形の $p(w|s)$ となる．
\citeA{arora-etal-2016-latent}の Log-linear モデルにならい，ある文 $s$ 中の単語は以下の確率分布からサンプリングされる．
\begin{equation}
  p(w | s) 	\propto \exp(\vect{c}_{s} \cdot \vect{v}_{w})
\end{equation}
ここで $\vect{c}_s \in \mathbb{R}^d$ は文の discourse ベクトルであり，$\vect{v}_w \in \mathbb{R}^d$ はトークン $w$ の単語ベクトルである．
直感的には，discourse ベクトル は文の話題を表し，単語ベクトルと合わせて文中のユニグラム分布\cite{Blei2003LatentDA}を定義しているとみなせる．
このようなサンプリング関数を採用することで，1 つの文中には discourse ベクトル $\vect{c}_s$ に近い単語ベクトルを持つトークンがより高い確率でサンプルされ，特定の単語同士が共起しやすいという現象を表現できる．

これらの単語ベクトルと discourse ベクトルは自然言語のコーパスから学習することも考えられるが，本研究では自然言語の持つ具体的な共起構造の転移可能性というより，文中でトークンが共起するという単純な構造自体の転移可能性を調べたい．
トークンが共起する構造自体は，それぞれのベクトルにランダムなベクトルを割り当てた場合でも表現できる．
したがって，ここでは単語ベクトル $\vect{v}_w$ として，各単語に多次元標準正規分布からサンプルされたベクトルを割り当てる．
単語ベクトルは \LogLinear{} 言語の初期化時にサンプリングされた後は固定される．
discourse ベクトル $\vect{c}_s$ は，系列 $s$ をサンプリングする度に多次元標準正規分布からランダムに決定される．
語彙サイズ $|\mathcal{V}|$ が与えられている場合，\LogLinear{} 単語分布の構造はベクトルの次元 $d$ によっても左右される．
ここでは，生成されたデータ全体における単語分布が，Zipf の分布のような偏りをもつように $d = 10$ と設定した（\cref{fig:word-freq-dist}）．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[t]
\begin{center}
\includegraphics{30-2ia14f2.pdf}
\end{center}
\hangcaption{単語分布をモデリングした人工言語から生成されるデータにおいて，頻度の高いトークンから順に頻度をプロットした対数グラフ．}
\label{fig:word-freq-dist}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{係り受け構造のモデリング}
\label{subsec:modeling_structure}

自然言語は，単語分布によって特徴づけられるだけではなく，文の中に構造を持つ．
その構造として，しばしば木構造\cite{Chomsky1957}や係り受け構造\cite{Melcuk1988}などが仮定されるが，ここでは人工言語の文に，2 つのトークン間の単純な依存関係を仮定した構造を与えることを考える．
自然言語における文中の単語は係り受け関係をもち，特定の単語の出現がまた他の特定の単語の出現を示唆するということがある（たとえば英語の動詞 \word{am} は，ほぼ常に \word{I} と共起する）．
これを模して，語彙中の半分のトークンを head トークンとし，もう半分を tail トークンとし，それぞれ 1 対 1 のペアを成しているとみなす．
ここでは 1 つのペアを，同じ数字 ID と括弧の片方から成るトークンで表す（例：\token{<123}, \token{123>}）．
構造をもつ人工言語のサンプリングアルゴリズム $f(l)$ は，\cref{subsec:word_distribution}で導入した単語分布に従ってトークンのペアを $\lceil \frac{l}{2} \rceil$ 組サンプルし，一定の構造を持つように並べ替える形となる．
これにより，1 つの系列中に特定のペアが常に現れることになり，単純な係り受け関係を表現している．

係り受けを模した人工言語は，\citeA{papadimitriou-jurafsky-2020-learning}の分析でも用いられているが，本研究のものと異なり，head と tail トークンが同一トークンとなっている．
本研究では，異なるトークン同士の依存関係を持った構造を，より自然言語に近いと考え採用する．

\minisectionNoDot{\Flat{} 係り受け構造}は，トークンをランダムに並べ替えるが，それぞれのペアについて head は tail よりも必ず左に位置するという制約を加える（例：[\token{<5}, \token{<84}, \token{5>}, \token{<123}, \token{123>}, \token{84>}]）．
このとき 1 系列中の依存関係を表すエッジはしばしば互いに交差し，non-projective な構造を示す．

\minisectionNoDot{\Nesting{} 係り受け構造}は，それとは対照的に，依存関係のエッジが交差しないように，括弧が入れ子状に配置されるようにトークンを並べる（例：[\token{<5}, \token{<84}, \token{84>}, \token{5>}, \token{<123}, \token{123>}]）．
このときのトークンの並びは，\cref{algo:stack-nesting} に示す，スタックを用いたアルゴリズムから生成される\cite{papadimitriou-jurafsky-2020-learning}．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% algo 1
\newcommand{\varInputStack}{input\_pairs}
\newcommand{\varClosingStack}{closing\_stack}
\newcommand{\varSentence}{sentence}
\newcommand{\isEmpty}{is\_empty()}
\newcommand{\pop}{pop()}
\newcommand{\push}[1]{push(#1)}
\newcommand{\append}[1]{append(#1)}
\begin{algorithm}[ht]
    \caption{~~係り受け構造を持った \Nesting{} 言語から系列を生成するアルゴリズム.}
    \label{algo:stack-nesting}
    \begin{algorithmic}[1]
    \Require \varInputStack{}: Stack[($w$, $w$)]]
    \Ensure \varSentence{}: List[$w$]
    \State \varClosingStack{} = []
    \While{not \varInputStack{}.\isEmpty{}}
      \State Uniform sampling $p \sim [0, 1]$
      \If{\varClosingStack{}.\isEmpty{} or $p < 0.4$}
        \State head, tail = \varInputStack{}.\pop{}
        \State \varSentence{}.\append{head}
        \State \varClosingStack{}.\push{tail}
      \Else
        \State tail = \varClosingStack{}.\pop{}
        \State \varSentence{}.\append{tail}
      \EndIf
    \EndWhile
    \While{not \varClosingStack{}.\isEmpty{}}
      \State tail = \varClosingStack{}.\pop{}
      \State \varSentence{}.\append{tail}
    \EndWhile
    \State \Return \varSentence{}
    \end{algorithmic}
\end{algorithm}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

自然言語の係り受け関係には，しばしば入れ子関係が見られる．
たとえば，UD tree bank\footnote{\url{https://universaldependencies.org/}} 中のさまざまな言語のデータで，projective な構造と non-projective な構造を持つ文を数えると，ほとんどのコーパスで projective な文（入れ子構造のみを持つ文）が 9 割以上を占めている．
事前学習のデータが同様に入れ子状の係り受け構造を持つことの有効性を， \Flat{} と \Nesting{} を比較することで明らかにできる．

係り受け構造を特徴づける要素として，2 つのトークン間の係り受け関係の距離がある．
ここでは，\Flat{} と \Nesting{} の構造の違いによる影響を比較する際に，係り受け関係の距離の違いの影響を排除するために，\Flat{} 言語から生成される系列の係り受け関係の距離の分布を，比較する \Nesting{} 言語での分布に合致するように調整して実験を行った．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ランダム性のモデリング}
\label{subsec:randomness}

これまで導入した人工言語は，程度は異なるが，いずれもランダムに系列を生成する．
自然言語も，単語を文法に則り自由に組合せることができ，ある程度のランダム性を備えているといえる．

訓練データ系列にランダム性があることは，エンコーダの転移可能性にどのような影響を与えるのだろうか．
また，事前学習データのランダム性が自然言語に近い方が，良い転移性能を示すのだろうか．
これらの問いに答えるために，ここでは完全にランダムなものから決定的なものまで，生成する系列のランダム性を制御できるような人工言語を設計する．

\minisectionNoDot{\Bigram{} 言語}は，系列を単純マルコフ過程，つまり語彙のバイグラムの遷移行列に従って生成する．
Bi-gram 言語は実数パラメータ $\alpha$ を持ち，ある単語 $w_t$ から次の単語 $w_{t+1}$ へ遷移する確率は次式のように定義される．
\begin{equation}
  p(w_{t+1} | w_t) \propto \frac{1}{\text{rank}(w_{t+1}; w_t)^{\alpha}}
\end{equation}

ここで $\text{rank}(w_{t+1}; w_t)$ は人工言語を初期化する際に決定されるパラメータであり，1 つの $w_t$ について $1\sim|\mathcal{V}|$ の数字が各トークンにランダムに割り振られる．
つまり，次にどの単語へ遷移するかの確率分布は Zipf の分布となっている．
これは $\alpha = 0$ のとき，前にあるトークンに条件づけられた次のトークンの分布が一様分布となり，完全にランダムに系列を生成する\footnote{$\alpha=0$ の \Bigram{} 言語は \Uniform{} 単語分布で定義される人工言語と同じ振る舞いをする．}．
一方で，$\alpha \rightarrow \infty$ のときは，各トークン $w_t$ の次は，ランクが最高値，つまり $\text{rank}(w_{t+1}; w_t) = |\mathcal{V}|$ となる $w_{t+1}$ に必ず遷移し，完全に決定的な系列を生成する．
$\alpha$ が中間の値にある場合は，トークンは確率的に遷移するが，分布は偏っており，それぞれのトークンの次には，特定のトークンがよく生成される形になる．
この $\alpha$ のパラメータを変えることで，さまざまな程度のランダム性を持つ系列が生成できる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{実験設定}
\label{sec:experiment}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{タスク}

訓練・評価タスクとして左から右に順に単語を予測する Causal Language Model を用いる．
入力は 1 文ずつになるように処理され，言語モデリングは文レベルで行う．
モデルの評価は，評価データセット内の文を入力したときの，データセット全体で計算したパープレキシティの値を用いる．
$N$ 単語含むデータセット中の各単語 $w_i$ について，モデルが予測した単語の出現確率を $p(w_i)$ とすると，データセット全体のパープレキシティは $\exp(\frac{1}{N} \sum^{N}_i - \log p(w_i))$ と計算される．
パープレキシティは分岐数とも呼ばれ，モデルが文脈を与えられて次の単語を予測する際の平均選択肢数と解釈できる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{エンコーダモデル}

本実験ではエンコーダとして，近年の大規模言語処理モデルにおけるデファクトスタンダードとなっている \Transformer{} \cite{NIPS2017_7181}を用いる．
モデルの層は 3 層，隠れ層のサイズは $300$ 次元，フィードフォワード層の次元は $600$，自己注意機構のヘッドは $4$ つに設定した．
また，単語出力層と単語埋め込み層の重みは共有されている\cite{press-wolf-2017-using}．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{事前学習コーパス}

人工言語から系列データをサンプリングし，事前学習コーパスとして用いる．
まず，文構造を持たず，トークンの分布のみをモデリングした人工言語として，\cref{subsec:word_distribution} で導入した\Uniform{}，\Zipf{}，\LogLinear{}分布からサンプリングされたトークンをランダムに並べたもので実験を行う．
また，文構造をモデリングしたものとして，単語分布のうち 1 つを選び，それを\cref{subsec:modeling_structure}で導入した\Flat{}係り受け構造または\Nesting{}係り受け構造と組合せたものを用いる．
系列のランダムさの影響を調べる実験では，\Bigram{} 言語のパラメータ $\alpha$ を $\{0, 0.7, 0.8, 0.9, 1.0, 1.5, 2.0, 10\}$ と設定して事前学習データを生成し，そこから訓練されたエンコーダを比較する．
この $\alpha$ の値は，バイグラム遷移確率のパープレキシティが幅広い値を含むように選定した．


これに加えて，ベースラインとして，自然言語である 英語 (en) の Wikipedia Dump で事前学習したエンコーダも評価する．
Wikipedia Dump 中のパラグラフは \package{icu}\footnote{\url{https://github.com/unicode-org/icu}} を用いて文に分割され，文は \package{Moses}\footnote{\url{https://github.com/moses-smt/mosesdecoder}} を用いて単語に分割した．
英語以外の Wikipedia コーパスで訓練した場合も，英語と同様の結果が得られたため，人工言語との比較は主に英語のデータを参照して行う．
その他の自然言語を用いた場合のデータ処理と結果は \cref{appendix:nl} にて記載する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 3
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f3.pdf}
\end{center}
\caption{英語 Wikipedia から求めた系列長の分布．長さの最長値を $6$，最大値を $60$ と設定している．}
\label{fig:length_distribution}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

人工言語から生成されるデータの系列長は，英語 Wikipedia の事前学習コーパスと同じ分布（\cref{fig:length_distribution}）に従うようにサンプリングする．
人工言語と自然言語のいずれも語彙サイズ $|\mathcal{V}|$ は 16,000 に設定され，自然言語コーパス中の語彙に含まれない単語は未知語トークンに置換される．
エンコーダは，$12.8$M系列のデータを用いて $1$ エポック，バッチサイズ $128$ で $10$ K ステップ訓練した．
最適化アルゴリズムには AdamW \cite{DBLP:conf/iclr/LoshchilovH19}，学習率スケジューリングには学習率を徐々に上げた後に減衰させる Noam の学習率スケジューラ \cite{NIPS2017_7181} を，warmup のステップ数 $4,000$ で用いた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ファインチューニング・評価コーパス}

事前学習されたエンコーダの評価には，Penn Treebank (PTB) コーパス \cite{Marcus1993BuildingAL} の訓練セットを用いてファインチューニングの後，評価セットを用いてパープレキシティの値を計算する．
コーパスは \citeA{Mikolov2010RecurrentNN} による前処理済みのものを用い，各単語は小文字化され，語彙サイズが 10,000 になるように低頻度語は未知語トークンに置換されている．
PTB コーパスの統計情報を\Table{table:ptb-stat}に示す．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[b]
\input{14table01.tex}
\caption{Penn Treebank (PTB) コーパスの統計情報．}
\label{table:ptb-stat}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

ファインチューニングは，単語埋め込み層の重みのみをアップデートし，エンコーダ層の重みは固定される．
最適なバッチサイズ $128$ で訓練し，開発セットのパープレキシティによるアーリーストッピングにより訓練エポック数を決定した．
最適化アルゴリズムには AdamW \cite{DBLP:conf/iclr/LoshchilovH19}，学習率スケジューリングには Noam の学習率スケジューラ \cite{NIPS2017_7181}を，warmup のステップ数 $4,000$ で用いた．

本実験の主眼は，さまざまな性質を持ったデータで事前学習されたエンコーダを比較することであるが，ベースラインとして，事前学習をせずにランダムな重みのまま固定されたエンコーダ (\NoTrain{}) で評価した結果も提示する．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Probing タスク}

言語モデリングのタスクにおけるエンコーダの本質的な役割とは，次の単語を予測するために，入力系列中の情報を集約することである．
したがって，事前学習されたエンコーダが，自然言語への転用にどの程度効果的であるかは，エンコーダがどのように入力系列情報を集約するかと強く関連すると予想される．
ここでは，人工言語からエンコーダが学習した入力系列情報の集約パターンを分析するために，Probing タスクを導入する．

ここで導入する Probing タスクは，エンコーダのあるタイムステップにおける出力ベクトルから，入力系列中のトークンの情報をどれだけ復元できるかを測るものである．
Probing タスクに用いるデータとして，人工的な数字 ID の系列を以下の通り生成する．
まず，系列長を 15～25 の範囲から一様にサンプルし，その数だけトークンを語彙サイズ $100$ から一様にサンプルすることで，100K 系列生成する．
このうち 90K 系列を訓練セットとして用い，5K を開発セット，5K をテストセットとして用いる．
モデルが解くべきタスクは，この系列をエンコーダで受け取り，最後のタイムステップの出力ベクトルから，入力系列中の前に出現したトークンを予測することである．
最後のタイムステップからの相対位置が異なるポジションにあるトークンをそれぞれ予測させ，その精度を測ることで，エンコーダがどの位置の文脈情報をどの程度保存しているかを分析できる．

各ポジションにあるトークンの予測には，それぞれ異なる線形分類器を同時に学習する．
本実験では，最後のタイムステップからの相対位置が [-9, -4, -3, -2, -1, 0] にあるトークンを予測させた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{実験結果}
\label{sec:results}

本実験では，それぞれの設定について，異なる乱数シードでエンコーダを 3 つ事前学習し，さらにそれぞれのエンコーダから異なる乱数シードでファインチューニングを 3 回行い，合計 9 つのモデルを評価した．
事前学習しない \NoTrain{} エンコーダに関しては，異なるランダムな初期値で同様に 9 つのモデルを学習した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{単語分布の転移可能性}
\label{subsec:results-distribution}

\cref{fig:results-distribution} に，単語分布のみをモデリングした人工言語で学習したエンコーダと，ベースラインの結果を示す．
以下，それぞれの単語分布から，どのような知識が自然言語のモデリングに転移可能か議論していく．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 4
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f4.pdf}
\end{center}
\hangcaption{ランダムな重みを持つエンコーダ (\NoTrain{}) と，単語分布をモデリングした人工言語 (\Uniform{}, \Zipf{}, \LogLinear{}) で事前学習したエンコーダの，転移学習と Probing タスクで評価した際の結果．}\label{fig:results-distribution}
\end{figure}
%%%%\subfloat[PTB データセットで評価したパープレキシティ．]{\label{fig:word-dist-perplexity}\includegraphics[height=3.9cm]{data/results/word_distribution_perplexity.png}}
%%%%\subfloat[Probing タスクの精度．]{\label{fig:word-dist-probing}\includegraphics[height=3.9cm]{data/results/word_distribution_probing.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

まず，\NoTrain{} エンコーダはある程度，言語モデリングに有用なものになっていることを確認する．
\NoTrain{} との比較対象として，たとえば英語の PTB コーパスにおけるトライグラム言語モデルのパープレキシティを挙げると，設定にもよるが 180前後の値\footnote{\url{https://github.com/shayneobrien/language-modeling} の実装を用いて算出}になる．
%%%%したがって，\NoTrain{} エンコーダの平均パープレキシティ $194.7 \pm 2.5$ （\cref{fig:word-dist-perplexity}）は，
    したがって，\NoTrain{} エンコーダの平均パープレキシティ $194.7 \pm 2.5$ （\cref{fig:results-distribution}a）は，
言語モデリングのタスクとしてある程度妥当な学習を行っている結果だといえる．

%%%%\cref{fig:word-dist-probing} の Probing の精度をみると，
    \cref{fig:results-distribution}b の Probing の精度をみると，
\NoTrain{} のエンコーダは 2 つ前のタイムステップまでのトークン情報を保持しており，言語モデリングにおいて次のトークンを予測するために，文脈情報を集約する役割を遂行できている．
ランダムな重みでもタスクが解けることは非直感的ではあるが，学習されていない初期値のままのネットワークを含むモデルでも，比較的高い性能を達成できることが他のタスクやアーキテクチャでも観察されている\cite{Pilault2019OnTI,Tay2020SynthesizerRS}．

一方で，\Uniform{} 言語は何ら有用な事前知識を与えない．
\Uniform{} 言語で事前学習したエンコーダは，著しく高いパープレキシティ ($338.6 \pm 21.4$) を記録している．
\Uniform{} 言語は自然言語に類似した性質を持たないため，転移性能が高くないことは予想できるが，何かしらの事前学習を行ったにも関わらず \NoTrain{} よりも著しく悪い性能を示す理由は自明でないかもしれない．
このことについては，ランダムな系列を予測しようとする事前学習タスクの挙動を考えることで理解できる．
\Uniform{} 言語では，全てのトークンが同確率で現れうるため，事前学習におけるモデルの最適解は，全てのトークンを常に同確率で予測し続けることである．
この場合，出力が文脈に依存することはないため，事前学習においてエンコーダは文脈情報を保持するような学習を行わない．
%%%%\cref{fig:word-dist-probing} の Probing の精度を見ても，
    \cref{fig:results-distribution}b の Probing の精度を見ても，
\Uniform{} エンコーダの出力からは 1 タイムステップより前のトークンの情報を全く復元できないものになっていることから，事前学習の過程で文脈を保持しないような解に収束していると考えられる．

文脈情報が使えない \Uniform{} エンコーダにとって，転移先の言語モデリングにおける最適な戦略は，頻度の高いトークンを常に予測することである．
このような学習がなされていることを確かめるために，PTB コーパスの開発セットに対して予測された最も確率の高いトークンの数を調査した（\cref{fig:results-prediction-count}）．
\Uniform{} は頻度の高いトークンだけを主に予測している一方で，パープレキシティがある程度低い \NoTrain{} や \LogLinear{} エンコーダは，頻度に関わらず幅広い種類のトークンを予測できている．
このことは \Uniform{} エンコーダが文脈情報を十分に活用できず，頻度の高いトークンを予測するような学習に陥っていることの証左となっている．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 5
\begin{figure}[t]
\begin{center}
\includegraphics{30-2ia14f5.pdf}
\end{center}
\hangcaption{各エンコーダからの予測トークンの頻度を表したグラフ．グラフの横軸は，10,000 種類あるトークンを頻度順に並べ，50 個のビンに分けている．}
\label{fig:results-prediction-count}
\end{figure}
%%%%\subfloat[\NoTrain{}．]{\label{fig:prediction-count-NoTrain}\includegraphics[height=3.9cm]{data/analysis/prediction_count_random.png}}
%%%%\subfloat[\Uniform{}．]{\label{fig:prediction-count-uniform}\includegraphics[height=3.9cm]{data/analysis/prediction_count_uniform.png}}
%%%%\subfloat[\LogLinear{}．]{\label{fig:prediction-count-loglinear}\includegraphics[height=3.9cm]{data/analysis/prediction_count_loglinear.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\Zipf{} 言語も，\Uniform{} 言語と同じく，トークンが文脈に依存している形にはなっていないので，事前学習における挙動も単純であり得られる知識も限られているはずである．
しかしながら，\Zipf{} のパープレキシティ ($196.4 \pm 4.6$) は \Uniform{} ($338.6 \pm 21.4$) よりも著しく低く，Probing の精度からも文脈情報をある程度捉えている．
\Zipf{} 言語ではトークンの出現頻度に偏りがあるため，最適な戦略は最高頻度のトークンを常に高い確率で予測し続けることである．
単純な戦略を学習すれば良いところは \Uniform{} 言語と同じであるが，異なるのは学習時のパラメータの変化が比較的安定していることだと推測する．
\Uniform{} は，全てのトークンを常に同確率で予測し続ける最適戦略に収束したとしても，トークンの予測が当たることは稀なため，損失関数から得られる誤差は常に大きく，パラメータもランダムな方向に更新され続ける．
一方 \Zipf{} では，頻度の高いトークンを予測する戦略に落ち着いた場合に，実際に頻度の高いトークンを予測することに成功するため，パラメータの更新幅は少ない．
これにより，\Zipf{} エンコーダは初期値である \NoTrain{} の重みから比較的変化の少ないパラメータに収束し，事前学習タスクが文脈情報を必要しないものとしても，文脈情報をある程度残していると考えられる．


最後に，\LogLinear{} 言語は言語モデリングに有用な構造的知識を有していると考えられる．
ここで取り上げる単語分布をモデリングした人工言語のうち，\NoTrain{} ($194.7 \pm 2.5$) に比べて有意に低いパープレキシティを全ての言語で示しているのは，\LogLinear{} ($183.2 \pm 5.8$) だけである．
\LogLinear{} は他の分布と異なり，文中のトークン間に統計的依存性が存在する．
統計的依存性が存在するということは，言語モデリングのタスクにおいて，文脈のトークンの情報を用いることで，次のトークンがある程度予測できるということである．
したがって，事前学習時に \LogLinear{} エンコーダは，文脈情報をエンコーダ出力に保持するような学習をし，それが自然言語の言語モデリングにおいても有用であると解釈できる．
%%%%実際に，\LogLinear{} エンコーダは Probing タスク（\cref{fig:word-dist-probing}）において，
    実際に，\LogLinear{} エンコーダは Probing タスク（\cref{fig:results-distribution}b）において，
他のエンコーダに比べて多くの文脈情報を保持するようなパターンを見せている．

以上の分析をまとめると，コーパス全体における単語の頻度分布情報は，必ずしも自然言語に転移可能な知識とはならないこと，一方で文中のトークン間に統計的依存性が存在するという知識は，自然言語のモデリングに転移可能な有用な知識であることが示唆された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{文構造の転移可能性}
\label{subsec:results-structure}

続いて，文中における係り受け構造の転移可能性を分析する．
\cref{fig:results-structure} に，\Uniform{} 分布からトークンのペアをサンプルし，\Flat{} と \Nesting{} の係り受け構造それぞれと組合せた人工言語で訓練したエンコーダと，自然言語である英語 (\English{}) で訓練したエンコーダの結果を示す．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 6
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f6.pdf}
\end{center}
\hangcaption{係り受け関係をモデリングした人工言語 (\Flat{}, \Nesting{}) で事前学習したエンコーダと，英語 (\English{}) で訓練したエンコーダを，転移学習と Probing タスクで評価した際の結果．}
\label{fig:results-structure}
\end{figure}
%%%%\subfloat[PTB データセットで評価したパープレキシティ．]{\label{fig:structure-perplexity}\includegraphics[height=3.9cm]{data/results/structure_perplexity.png}}
%%%%\subfloat[Probing タスクの精度．]{\label{fig:structure-probing}\includegraphics[height=3.9cm]{data/results/structure_probing.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

まず，系列に係り受け関係を持つことが自然言語のモデリングに有用であることを議論する．
\Uniform{} \Flat{} ($183.7 \pm 5.6$) は \LogLinear{} ($183.2 \pm 5.8$) と同程度のパープレキシティ，\Uniform{} \Nesting{} ($168.8 \pm 4.3$) はそれらに比べて低いパープレキシティを示している．
系列内に係り受け関係を持つということは，あるトークンの存在をもとに，別のトークンの存在を予測できるということであり，これは \LogLinear{} 言語同様，系列が統計的依存性を持つことを意味する．
この結果は，\LogLinear{} と異なる形の統計的依存性から得られる知識でも，自然言語のモデリングに役に立つことを示している．

次に，入れ子構造の有用性を検証する．
\Nesting{} ($168.8 \pm 4.3$) が \Flat{} ($183.7 \pm 5.6$) を下回る値を示しており\footnote{この傾向は，他の単語分布と組合せた場合も同様に観察される（\Appendix{appendix:structure}）．}，これは入れ子構造を持つことが，自然言語への転移学習により有用であることを示唆している．
%%%%この理由について考えると，Probing タスクの結果（\cref{fig:structure-probing}）では，
    この理由について考えると，Probing タスクの結果（\cref{fig:results-structure}b）では，
\Flat{} エンコーダの方が，\Nesting{} よりも多く文脈情報を保持しているため，分布構造のみを持つ人工言語を比較した場合（\cref{subsec:results-distribution}）と異なり，文脈情報を残しやすいために言語モデリングの性能が高いという可能性は排除される．

単語モデリングにおける \Nesting{} 構造の特徴を考えると，\Flat{} に比べてトークンの配置パターンが限られていることが挙げられるが，入れ子構造の優位性は，こうしたより一貫性のある規則と，自然言語の文法との類似性に帰せられると考えられる．
エンコーダの主たる役割は文脈情報の集約であると考えれば，入れ子構造を考慮してトークン同士の位置関係を残しつつ文脈情報を集約するパターンが，自然言語に有用であるのだと考えられる．

最後に，自然言語で訓練したエンコーダ (\English{}) に着目すると，一番良い転移性能 ($154.6 $\linebreak$ \pm\ 2.6$) を発揮している．
これは，ここで調べている構造を持った人工言語と，自然言語から学習できる転移可能な知識には隔たりがあることを示している．
Probing タスクの精度をみると，\English{} エンコーダは文脈情報を近いものから遠いものまでよく捉えている．
しかし，図にあげた 3 種類のエンコーダを比較したときに，パープレキシティの値と，Probing タスクの精度の間には一貫した傾向は見られない．
この Probing タスクで捉えられる側面よりさらに細かい観点から，エンコーダの振る舞いを分析することが今後の課題となる．

以上の分析をまとめると，単純な 2 トークン間の係り受け関係の構造は自然言語に転用可能な知識を与え，これはやはり文脈が次トークンの予測に役立つという統計的依存性が存在するからだと考えられる．
構造に入れ子関係の制約がある場合はより転移性能が向上することから，トークン同士の位置関係に自然言語に類似性のある構造が認められる場合には，その知識も転移しうることが示された．
これは，転移可能な知識として位置情報を考慮した統計的依存性が存在することを示唆する．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 7
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f7.pdf}
\end{center}
\hangcaption{\Bigram{} 言語のランダムさを表すパラメータ $\alpha$ を変化させて，転移学習と Probing タスクで評価した際の結果．グラフの x 軸には，遷移確率のパープレキシティ ($P$) も共に示しており，これは遷移先のトークンが平均何通りあるうるか示す数として解釈できる．}
\label{fig:results-randomness}
\end{figure}
%%%%\subfloat[PTB データセットで評価したパープレキシティ．]{\label{fig:randomness-perplexity}\includegraphics[height=3.9cm]{data/results/randomness_perplexity.png}}
%%%%\subfloat[Probing タスクの精度．]{\label{fig:randomness-probing}\includegraphics[height=3.9cm]{data/results/randomness_probing.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ランダム性の転移可能性}
\label{subsec:results-randomness}

\cref{fig:results-randomness} に，\Bigram{} 言語のランダム性を調整するパラメータ $\alpha$ を変化させた場合の結果を示す．
$\alpha = 0.0$ では単語遷移が完全にランダムであり，$\alpha = 10$ では遷移パターンが一意に決まる．

$\alpha = 0.0$ は \Uniform{} 言語と等価であり，\cref{subsec:results-distribution} で述べたように，系列中に統計的依存関係が存在しないため，そのデータからエンコーダは有用な情報を何も学習できない．
一方で，$\alpha = 0.7$ 以上のときは，前のトークンから次のトークンを予測できる構造，つまり統計的依存関係が生じ，$\alpha = 0.0$ のパープレキシティに比べて有意に低い値を示している．
$\alpha = 10$ のように，完全に決定的な系列で事前学習した場合でも同様であり，このことから，系列にランダム性があること自体は自然言語へ転移できる知識の学習に影響を及ぼさないと考えられる．

\Bigram{} エンコーダのパープレキシティ値は，$\alpha = 0.8$ で最低値を示している．
この $\alpha = 0.8$ の \Bigram{} 言語は，特に自然言語に有用な特徴を持っているのだろうか．
$\alpha = 0.8$ のランダム性を定量化した値として，\Bigram{} 言語の遷移確率分布のパープレキシティを確認すると約 4,200 であり，これは自然言語のランダム性と比べてかなり大きい\footnote{PTB コーパスの訓練セットでユニグラム言語モデルを作り，評価セットでパープレキシティを計算した場合でもおおよそ 700 前後の値をとる．}．
したがって，転移性能が良いのは，ランダム性の度合いが自然言語に似ているためではない．
この点については，異なる $\alpha$ の値によってトークン予測における文脈情報の有用性が異なり，その結果学習されるエンコーダの文脈情報の集約パターンの違いが，パープレキシティに反映されていると考える．
%%%%しかしながら Probing の結果（\cref{fig:randomness-probing}）では，
    しかしながら Probing の結果（\cref{fig:results-randomness}b）では，
パープレキシティに差のある $\alpha = 0.8$ と $\alpha = 1.0$ の間に目立った差は見られないため，本実験の分析では捉えきれない要因がこの結果をもたらしている．


この結果は，今回の転移学習において，エンコーダの性能に大きく影響を与える要素が事前学習データの構造であり，データの複雑性/多様性はその構造を学習するのに必要最低限あれば良いことを示していると解釈できる．
\Bigram{} 言語においては，$\alpha$ の値がある程度大きくなると，1 つ前の単語から次の単語がある程度予測できるという構造が生まれるが，$\alpha$ をそれ以上大きくし，系列が決定的になることでデータの多様性が減じても，構造自体は変わらない．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 8
\begin{figure}[b]
\begin{center}
\includegraphics{30-2ia14f8.pdf}
\end{center}
\hangcaption{\Uniform{} 分布を持った \Nesting{} 言語の語彙サイズを変化させて，転移学習と Probing タスクで評価した際の結果．}
\label{fig:result-vocab_size}
\end{figure}
%%%%\subfloat[PTB データセットで評価したパープレキシティ．]{\label{fig:vocab_size-perplexity}\includegraphics[height=3.9cm]{data/results/vocab_size_perplexity.png}}
%%%%\subfloat[Probing タスクの精度．]{\label{fig:vocab_size-probing}\includegraphics[height=3.9cm]{data/results/vocab_size_probing.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

また，構造の影響が大きいことを支持する結果として，\Nesting{} 言語の語彙サイズを変化させた場合のパープレキシティを \Figure{fig:result-vocab_size} に示す．
語彙サイズがあまりにも小さい ($|V| \leq 100$) 場合は，大きい語彙サイズの場合に比べてスコアが悪化しているが，語彙サイズが比較的小さい段階 ($|V| = 1,000$) で最良スコアに到達している．
この $1,000$ という語彙サイズは，転移先のタスクにおける英語の語彙サイズ 10,000 に比べて，かなり小さい．
おそらく，\Nesting{} 言語の構造を，十分に一般化した形で学習するのに必要な語彙サイズが $1,000$ であったのだと考える．

この観察は，人工データを通じてモデルに帰納バイアスを埋め込む，という手法にある示唆を与える\cite{DBLP:conf/icml/WuRLBGS21,Chiang2022AAAI}．
一般的に，機械学習，特にニューラルネットワークを基盤とするモデルは，データがあればあるほど良いという傾向にある．
しかし，今回の結果は，モデルを構築したいドメインの意味論的な性質ではなく，構造的な性質をモデルに学習させ転移学習に活用する場合には，その構造を十分に学習できるだけのデータのみを確保すれば良い，ということを示唆している．


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

本研究では，人工言語からの転移学習を通じて，自然言語の言語モデリングを解くために転移可能な構造的知識とは何かを調べた．
その結果，トークンの頻度分布，トークンの種類数，系列のランダム性などの要素そのものによる，転移可能性への影響は限られており，系列中の統計的依存性が重要であることが分かった．
特に，入れ子構造を持った \Nesting{} 言語が，そうでない \Flat{} 言語に比べて，転移性能が高いことから，トークンがどの位置にあるトークンに依存しているかのパターンも，転移可能な知識として存在する．

位置を考慮した統計的依存性が存在するという知識は，たとえば，「今日　の　天気　は」という分かち書きされた文脈が与えられて次の単語を予測するとき，一つ前が助詞の「は」で，二つ前が「天気」であるということが大きな手がかりとなり，「晴れ」という単語を予測できる，というような知識である．
言語モデリング，もしくは一般的な言語タスクを解くのに有用な事前知識として，位置を考慮したトークンの文脈依存性があることは直感的にも納得できる．
また，これは今日の言語の表現学習アルゴリズム\cite{Sinha2021MaskedLM}が仮定している，分布仮説\cite{harris54}が成立する，という知識であるともいえる．

\citeA{papadimitriou-jurafsky-2020-learning} は，楽譜データやプログラミングコードで事前学習したエンコーダが，自然言語モデリングに転用できることを示した．
系列中の，位置を考慮した統計的依存性の観点から考えると，楽譜中でメロディを形作る音符はしばしば近接しており，局所的なパターンを形成している．
また，プログラミングコードにも繰り返し用いられる構文が数多く存在する．
これらの非自然言語データにも，位置を考慮した統計的依存性が存在し，これが自然言語へ転移可能性をもたらしていると考えられる．

\citeA{artetxe-etal-2020-cross} が示した，転移元言語で訓練したエンコーダが，また異なる転移先言語にも転用できるという結果も，この言語に共通する統計的依存性が大きな役割を担っていると考えられる．
しかし，自然言語間での転移学習に関しては，今回の研究では対象外とした，意味空間の構造の共通性\cite{Mikolov:2013tp,Lample:2018wg,artetxe-etal-2018-robust}も少なからず転移性能に寄与している可能性がありうる．

また，近年の研究によれば，言語データで訓練した多層 Transformer エンコーダが，他の自然言語のみならず，オフライン強化学習\cite{Reid2022CanWH}や，さまざまな計算タスク\cite{Lu2021PretrainedTA}に効果的に転用できることが知られている．
このような転移学習についても，位置を考慮した統計的依存性が重要な役割をになっているのか，より複雑なトークン間の依存関係を捉えられるような事前知識を学習しているのか，または Transformer のアーキテクチャ，サイズ，層の数と転移可能性に何か関係があるのか，などの問いが残っている．
言語から，また，言語への転移学習における，転移されている知識についての更なる理解は，今後の課題としたい．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%\bibliographystyle{jnlpbbl_1.5}
    \bibliographystyle{jnlpbbl_1.7}
%%%%\bibliography{j_yourrefs}
    \bibliography{14refs}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\appendix

\section{その他の自然言語からの実験結果}
\label{appendix:nl}

一般的に，言語間転移学習においては，転移先と転移元の言語が，同じ語族に分類される，また，語彙の多くが共通しているなど，類似点が多い言語である場合に，より高い性能が発揮される傾向にある\cite{artetxe-etal-2020-cross}．
ここでは，事前学習に用いる自然言語の違いによる，エンコーダの転移性能の差について調査するため，英語に加えて，スペイン語，日本語のデータを用いた実験結果を示す．
事前学習に用いるデータは，英語のデータ同様，Wikipedia Dump を用いた．
スペイン語の文は \package{Moses}\footnote{\url{https://github.com/moses-smt/mosesdecoder}}，日本語の文は \package{MeCab}\footnote{\url{http://taku910.github.io/mecab/}} を用いて単語に分割した．

ここで，下流タスクは PTB コーパスを用いており，転移先の言語は英語となる．
英語と，転移元の言語の近さに関して，スペイン語は，英語と同じインド・ヨーロッパ語族に属し，日本語は，英語と比較的離れた言語である．
従って，転移先言語との近さは，英語 $>$ スペイン語 $>$ 日本語，の順で近いといえる．
しかしながら，\Figure{fig:nl} に示す通り，下流タスクのパープレキシティの値，Probing タスクの精度のどちらにおいても，これらの言語で訓練されたエンコーダの間に，顕著な差は認められない．
今回の実験において，エンコーダが系列データから学習できる統計的規則に関しては，これらの言語の間に差はないということが分かる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 9
\begin{figure}[t]
\begin{center}
\includegraphics{30-2ia14f9.pdf}
\end{center}
\hangcaption{3種類の自然言語，英語 (English)，スペイン語 (Spanish)，日本語 (Japanese) で事前学習したエンコーダを，転移学習で評価した際の結果．}
\label{fig:nl}
\end{figure}
%%%%\subfloat[PTB データセットで評価したパープレキシティ．]{\label{fig:nl-perplexity}\includegraphics[height=3.9cm]{data/appendix/natural_language_perplexity.png}}
%%%%\subfloat[Probing タスクの精度．]{\label{fig:nl-probing}\includegraphics[height=3.9cm]{data/appendix/natural_language_probing.png}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{各単語分布と係り受け構造を組合せた人工言語からの実験結果}
\label{appendix:structure}

\Figure{fig:structure-distribution} は，各種分布と係り受け構造を組合せた人工言語で訓練したエンコーダを評価した結果である．
基本的に，\cref{sec:results} で提示したデータと同様の傾向を示している．
まず，\cref{subsec:results-structure} で観察された通り，トークンのペアをサンプルする分布に関わらず，\Flat{} の構造より，入れ子状の制約を持つ \Nesting{} の方が低いパープレキシティを記録している．
また，同じ構造を持った人工言語内で比較した際に，\cref{subsec:results-distribution} で見られたように，\Uniform{} $>$ \Zipf{} $>$ \LogLinear{} の順でパープレシティが低くなることが確認できる．
\LogLinear{} と \Nesting{} との組合せは，\LogLinear{} の構造だけを持つ言語と，\Uniform{} \Nesting{} 言語のどちらよりも，低いパープレキシティを一貫して示しており，\LogLinear{} と \Nesting{} の構造は，それぞれ相補的に異なる有用な知識を与えていると考えられる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 10
\begin{figure}[t]
\begin{center}
\includegraphics{30-2ia14f10.pdf}
\end{center}
\hangcaption{トークンのペアをサンプルする際の分布 (\Uniform{}，\Zipf{}，\LogLinear{}) と，係り受け関係(\Flat{}, \Nesting{})を各種組合せた人工言語で事前学習したエンコーダを，転移学習で評価した際の結果．}
\label{fig:structure-distribution}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


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

\bioauthor{李　　凌寒}{%
2023 年東京大学大学院情報理工学系研究科博士課程終了．同年より LINE 株式会社所属．博士（情報理工学）．言語処理学会，ACL 各会員．
}

\bioauthor{鶴岡　慶雅}{%
2002 年東京大学大学院工学系研究科博士課程修了．
同年より科学技術振興事業団研究員．
2006 年マンチェスター大学研究員．
2009 年北陸先端科学技術大学院大学准教授．
2011 年より東京大学大学院 准教授．
2018 年より東京大学大学院 教授．
博士（工学）．言語処理学会，情報処理学会，人工知能学会，各会員．
}

\end{biography}



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


\end{document}

