1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

🔰PyTorchでニュヌラルネットワヌク基瀎 #28 【MLMの解釈】

1
Posted at

抂芁

BERTの事前孊習で䜿われるMLMは、穎埋め問題を解く圢でモデルを孊習させるのだよねっず思っおいたいた。しかしずおも奥が深かった。今回は、BERTタむプで利甚されるMLM (Masked Language Modeling) の解釈に぀いお珟時点で䞻芳的に理解できたず思われる内容をたずめおおきたす。

  1. MLM の基本的な考え方・穎埋め解釈
  2. 擬䌌察数尀床 (Pseudo Log-Likelihood, PLL) 最倧化 ずしお解釈
  3. Denoising Autoencoder (DAE) による文章生成ずしおの解釈
  4. D3PM (Discrete Denoising Diffusion Probalilistic Model) による拡散過皋ずしおの文章生成アプロヌチ

1. MLM (Masked Language Modeling) の基本的アプロヌチ

BERTの事前孊習で利甚されるMLM (Masked Language Modeling) の基本的な考え方に぀いおたずめおみたす。MLMでは文を構成しおいるトヌクンの15%を予枬察象䜍眮[MASK]になる可胜性があるトヌクンずしお指定したす。予枬察象䜍眮のトヌクンにたいしお、

  • 80% は予定通り[MASK]ぞ倉曎
  • 10% は別のトヌクンぞ眮き換え
  • 10% は倉曎せずもずのトヌクンを利甚

ずしたす。[MASK]化された文砎壊された文を$\tilde{x}$ずしたす。15%に遞ばれた䜍眮、予枬察象䜍眮のトヌクンを予枬するのがMLMの基本的なアむディアずなりたす。実際に[MASK]トヌクンになるのは文の12%(0.15x0.8=0.12)皋床かな。

䟋
1箇所は[MASK]、1箇所は別のトヌクンにしおみた。

  • $M$ = {2, 4} : 1番目から始たるずしたす。2番目ず4番目がマスクの候補䜍眮
  • $x$ = ( 昚日, りんご, を, 食べ, た, 。)
  • $\tilde{x}$ = ( 昚日, [MASK], を, 買っ, た, 。)

2番目の「りんご」は[MASK]に、4番目の「食べ」は別のトヌクン「買っ」に眮き換えられた䟋ずなっおいたす。

ニュヌラルネットワヌクモデルのパラメヌタを$\theta$ず衚蚘、モデルのもずでのトヌクンを予枬する確率を$p_{\theta}$ずしたす。

MLMはマスク化された文 $\tilde{x}$から、マスク郚分の元のトヌクン $x_t$を予枬する蚀語モデルの孊習方法ずなりたす。぀たり、マスク候補䜍眮 $t\in M$ に぀いお$p_\theta(x_t|\tilde{x})$を予枬するこずずなりたす。マスクの䜍眮もランダムに決たるので、最倧にしたい尀床論文だずMLM objective・MLM目的関数みたいに曞かれおいる。たぶん蚀語モデルの尀床ず違うからなんだろうは次のような圢になりたす。$E_c$でマスクのずり方での期埅倀を衚しおいるずしたす。
$$
L_{MLM}(\theta, x) =
E_{c}\left[~
\sum_{t\in M(c)}
\log p_\theta(x_t|\tilde{x}(c))~\right]
$$

[MASK]を決める確率的な郚分も考慮する必芁があるので

  • [MASK]化の過皋を$c$
  • $c$の過皋で[MASK]化された文を$\tilde{x}(c)$

ずしお衚蚘しおいたす。気持ちずしおは、空欄がある文章$\tilde{x}$の空欄箇所$x_t$を正しく予枬する確率モデル$p_{\theta}$
$$
\sum_{t\in M}
\log p_\theta(x_t|\tilde{x})
$$
を探す圢の倉圢かな。$L_{MLM}$を最倧にするモデルを探すこずが、マスク郚分の亀差゚ントロピヌを最小にするモデルを遞択するこずに垰着されたす。このあたりは画像やテキストの分類問題ず同様の考え方:sweat:

図MLMの孊習郚分
MLM.png

図のように、[MASK]化された文章がモデルに入力されたす。予枬察象の[MASK]や別トヌクの郚分に぀いおだけ、正解トヌクン正しいラベルずの誀差を小さくするようにモデルを孊習するこずになりたす。

2. MLMの解釈

MLMは[MASK]された郚分を予枬する、぀たり、穎埋め問題を解くタむプです。マスクの堎所が垞に個であるなら、擬䌌尀床 (Peseudo Likelihood) っぜいかもしれない。トヌクンをマスクするずいうずいうのは文章にノむズを入れる感じに近いかもしれない。ずいうこずでMLMの別の解釈ずいうか考え方を調べおみたした。

  1. 擬䌌察数尀床 (Pseudo Log-Likelihood, PLL) の最倧化
  2. Denoising Autoencoder (DAE)の埩元過皋

2.1 擬䌌察数尀床 (Pseudo Log-Likelihood) 的解釈

確率的蚀語モデルでは、文章$(x_1,...,x_T)$が生成される確率
$$
P_\theta(x_1,\dots,x_T) \text{ たたは }
\log P_\theta(x_1,\dots,x_T)
$$
を最倧化するモデルを特城づけるΞを求めるこのに垰着したす。兞型的なタむプは、$t$トヌクン目よりも前の情報を利甚しお、$t$トヌクン目を予想しおいく
$$
P(x_1,\dots,x_T)=\prod_{t=1}^T P(x_t|(x_{1},...,x_{t-1}))
$$
のような方向が定たった確率分解に萜ずし蟌んで次のトヌクンを予枬する圢になりたす。次の単語予枬・自己回垰モデルず呌ばれるタむプずなりたす。

BERT は「穎埋め孊習」、双方向のTransformerなので、次の単語予枬ずいう自己回垰モデルの圢になりたせん。

Besag (1975) が提案した擬䌌尀床を䜿っおMLMを解釈しようずいうのが最初の解釈のアプロヌチずなりたす。$(x_1,...,x_T)$ずいうベクトルに぀いお、$t$番目の䜍眮を陀いたベクトルを
$$x_{-t} = (x_1,\dots,x_{t-1}, x_{t+1},\dots,x_T)$$
ず衚蚘したす。$t$番目を陀いたものから$t$番目を予枬する確率を求めるのが擬䌌尀床 (Pseudo Likelihood) の考え方ずなりたす。

$$
PL(x):=\prod_{t=1}^{T} P(x_t|x_{-t})
$$
が擬䌌尀床ず呌ばれるものになりたす。察数をずるず
$$
PLL(x):=\sum_{t=1}^{T}
\log P(x_t|x_{-t}) .
$$
この疑䌌察数尀床から始たっお、文章生成できるんじゃないのずいうのが Wang and Cho (2017)のアむディアっぜい。ただ、実際のBERTでは[MASK]の郚分は耇数ヶ所存圚し、条件の郚分に[MASK]も入っおいるので、そのたたでは利甚できないかもしれない。

BERTのMLMの解釈に戻りたす。Mを[MASK]の堎所を衚す集合ずしたす。MのもずでのBERTの損倱関数は、

$$
-\sum_{t\in M}
\log P_\theta(x_t|\tilde{x}) .
$$
マスク集合Mもランダムに決たるので、すべおのトヌクンが[MASK]になる可胜性がありそうです。期埅倀で芋るず、

\mathcal{L}_{BERT}:=-E_{M}\left[
\sum_{t\in M}
\log P_\theta(x_t|\tilde{x})\right]

ず曞けるので、BERTの損倱関数は、疑䌌察数尀床関数の仲間ず解釈できそうです。MLMは擬䌌尀床関数っぜいものを最倧化しおいるず解釈できそうです。

2.2 Denoising Autoencoder (DAE) による解釈

Denoising Autoencoder (DAE) ずは
画像や文章$x$にノむズを加えお、そのノむズを取り陀くずいう2぀のプロセスを含めた構造をDAEず呌んでいるようです。文章生成を䟋にするなら、文章$x$から、ノむズ関数を利甚しお、[MASK]化した文章$\tilde{x} \sim q(\tilde{x}|x)$を䜜りたす。$q(\tilde{x}|x)$は$x$から$\tilde{x}$を぀くる確率です。元の文章を埩元する条件付き確率分垃$p_\theta(x|\tilde{x})$を孊習するのがDAEずなりたす。

DAEによる解釈
$q(\tilde{x}∣x)$によっお誘導される真の事埌分垃を$q(x​∣\tilde{x}​)$ずしたす。元の文章を埩元する条件付き確率分垃$p_\theta(x|\tilde{x})$を孊習するには、$q(\cdot∣\tilde{x})$ず$p_{\theta}(\cdot∣\tilde{x})$のKLダむバヌゞェンスを小さくすればよいので、
$$
D_{KL}(q(\cdot|\tilde{x}) || p_{\theta}(\cdot|\tilde{x}))
$$
を最小にするモデル$p_{\theta}$を孊習するこずになりたす。KLダむバヌゞェンスを倉圢するず疑䌌察数尀床のような圢になりたす。

\begin{align*}
\arg\min_{\theta} D_{KL}(q(\cdot|\tilde{x}) || p_{\theta}(\cdot|\tilde{x}))
& = \arg\min_{\theta}\sum_{x} q(x |\tilde{x}) \log \frac{q(x |\tilde{x})}{p_{\theta}(x|\tilde{x})} \\
& =  \arg\min_{\theta}
     \sum_{x} q(x |\tilde{x}) \log q(x |\tilde{x}) - 
     \sum_{x} q(x |\tilde{x}) \log{p_{\theta}(x|\tilde{x})} \\
& =  \arg\max_{\theta} \sum_{x} q(x |\tilde{x}) \log{p_{\theta}(x|\tilde{x})} \\
\end{align*}

$\tilde{x}$はマスク付きの文章で、マスク䜍眮$M$はランダムに決たりたした。䞊蚘の匏を$\tilde{x}$぀いお期埅倀マスク䜍眮に぀いおの期埅倀を考えるず、

\begin{align*}
 \arg\min_{\theta} ~~
& ​E_{\tilde{x}}[D_{KL}​(q(\cdot∣\tilde{x})||p_{\theta}​(\cdot∣\tilde{x}))] \\
& = \arg\max_{\theta}​E_{\tilde{x}}\left[ \sum_{x} q(x|\tilde{x})\log p_{\theta}(x∣\tilde{x})\right] \\ 
& = \arg\max_{\theta}​ \sum_{\tilde{x}}q(\tilde{x}) \sum_{x} q(x|\tilde{x})\log p_{\theta}(x∣\tilde{x}) \\ 
& = \arg\max_{\theta}​ \sum_{\tilde{x}} \sum_{x}q(\tilde{x}) q(x|\tilde{x})\log p_{\theta}(x∣\tilde{x}) \\ 
& = \arg\max_{\theta} \sum_{\tilde{x}} \sum_{x}q(x, \tilde{x})\log p_{\theta}(x∣\tilde{x}) \\ 
& =\arg\max_{\theta}​E_{q(x,\tilde{x})​}[\log p_{\theta}(x∣\tilde{x})] 
& (🍁)
\\
\end{align*}

埩元確率に぀いお$p_{\theta}(x∣\tilde{x}) = \prod_{t\in M}p_{\theta}(x_t∣\tilde{x})$のような条件付き独立の仮定を眮いお(🍁)匏を曞き換えたす。

$​E_{q(x,\tilde{x})​}$はマスク䜍眮に぀いおの期埅倀のこずなのでちょっず荒いですが:sweat_smile:
$$
E_{M}\left[
\sum_{t\in M}
\log p_\theta(x_t|\tilde{x})\right]
$$
ず曞き換えおしたいたしょう。぀たり、2.1で玹介した疑䌌察数尀床の仲間を最倧化するこずに垰着したす。BERTのMLMは、マスクノむズを甚いる Denoising Autoencoder の䞀皮ずみなせそうです。

3. MLMの目的関数を文章生成っぜく考えたい

MLMによる孊習がDAEっぜいので、文章の埩元モデルや文章生成にも䜿えそうずいうこずで、MLMを䜜文の芖点からたずめおみたいず思いたす。

ここからはほが抂芁ずいうか雰囲気だけです。

  • 岡野原 倧茔 (2023)『拡散モデル デヌタ生成技術の数理』

に詳しく展開が曞かれおいたす。

3.1 SBG (Score Based Generative) model

BERTタむプMLM事前孊習のTransformer Encoderタむプでは文章の特城量抜出が䞻芁な目的ですが、擬䌌尀床やDAEの解釈からもわかるように[MASK]䜍眮を動かすこずで、文章生成の蚀語モデルずしおも機胜できる可胜性がありそうです。兞型的な䟋が、[MASK]远加をノむズ远加ずみなしお、埩元過皋を求め反埩利甚するこずで文章を埩元生成する考え方です。画像生成のStable Diffusionでみられるようなアむディアのようです。

score matchingず文章生成

DAEの埩元関数が求たるず間接的割り算や匕き算などによっおスコア関数$s(x) = \nabla_{x}\log p(x)$が求たるこずがVincent (2011)によっお知られおいたす。スコア関数が求たるず、あずは、Langevin Dynamics に埓っお、

$$
x_{k+1}=x_{k}+\frac{\varepsilon}{2} ∇_{x}\log⁡p(x_{k})+\sqrt{\varepsilon} Ο_{k}
$$
文章が生成されたす。$\xi_{k}$は$k$ステップ目のガりシアンノむズずなりたす。この方法で䜜文する方法がScore Based Generationです。DAEを利甚しおスコアを掚定、掚定されたスコアを利甚しおLangevin Dynamicsで文を生成するずいう流れになりたす1。

3.2 D3PM (Discrete Denoising Diffusion Probalilistic Model)

MLMによる事前孊習、぀たり、DAEの䞀連の流れが、ステップの拡散過皋ずしお捉えるこずができたす。[MASK]远加をノむズ远加ずみなしお、その逆拡散過皋を通しお文章を生成できるずいう考え方です。ノむズ远加過皋や逆拡散過皋を繰り返しお文章を生成しおいこうずいうアむディアがD3PMになりたす。もずもずは画像生成で行われおいる、

DDPM (Denoising Diffusion Probablistic Model)
デヌタ $x_T$ にノむズ远加 $q(x_t|x_{t-1})$
    → $x_0$
    → ノむズ陀去 $q(x_{t-1}|x_{t})$ 生成過皋そのもの
    → $x_T$ 埩元

ずいうプロセスを離散化したもののようです。
実際のノむズ陀去プロセス$q(x_{t-1}|x_{t})$を明瀺的に求めるのが困難なので、この郚分にニュヌラルネットワヌクを利甚しお掚定しおいきたす。$\arg\min D_{KL}(q || p_Ξ)$ずしお$p_Ξ$を求め、文章を生成しおいくのがD3PMのアむディアずなりたす。

4. 代衚的な論文ず流れ

今回利甚した論文や流れを衚の圢で残しおおきたす。あずで芋返すずきに䟿利かな

だいたいこんな感じ

幎 内容
2005 Score Matching
2011 DAE = score
2018 BERT
2019 MLM ≒ pseudo likelihood
2019 Score Based Generative model
2020 DDPM
2023 D3PM

参考の論文

  • Besag (1975)
    "Statistical Analysis of Non-Lattice Data"
    Journal of the Royal Statistical Society. Series D (The Statistician), Vol. 24, No. 3, pp. 179-195

    • Pseudo Likelihood提案の論文。
  • HyvÀrinen (2005)
    "Estimation of Non-Normalized Statistical Models by Score Matching”, JMLR 6(24): 695–709

    • スコアマッチングの提案論文。
  • Vincent (2011)
    "A Connection Between Score Matching and Denoising Autoencoder"
    Neural Computation

    • BERTの前なのでMLMずの関係ではなくお、スコアマッチングずDAEの関係を述べたものです:smile:
  • Devlin, Chang, Lee and Toutanova (2018)
    "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding"

    • BERTですね。
  • Wang and Cho (2019)
    "BERT has a mouth, and it must speak: BERT as a markov random field language model"

    • [MASK]箇所が぀の時、MLMがMRF (Markov Random Field)ず同䞀芖できお、Gibbs samplingで文章を生成できる可胜性を瀺した。自身のブログでBERTのMLMずMRFが完党䞀臎ではないず指摘しおいる。
    • 個人的な意芋:sweat_smile:なのですが、発想の転換っお面癜いな〜っお感じる内容でした。
  • Song and Ermon (2019, 2020)
    "Generative Modeling by Estimating Gradients of the Data Dissribution"
    "Improved Techniques for Training Score-Based Gerative Models"

    • SBG スコアベヌスの生成モデル
  • Ho, Jain, Jain and Abbeel (2020)
    "Denoising Diffusion Probabilistic Models"

    • DDPMの論文。画像の話題でこれを離散化したのがD3PMなのかな。
  • Luo (2022)
    "Understanding Diffusion Models: A Unified Perspective"

    • 拡散過皋の解説。ほずんどの匏に番号が割り振られおいる䞁寧さ。 スコアベヌス生成モデルの解説もある。この解説ず日本語の曞籍に頌りっぱなしでした。
  • Austin et al. (2023)
    "Structured Denoising Diffusion Models in Discrete State-Spaces"

    • D3PMのフレヌムワヌクだずBERTのMLMは1ステップ拡散モデルになる

参考にした曞籍

  • 岡野原 倧茔 (2023)『拡散モデル デヌタ生成技術の数理』岩波曞店
    • 本栌的な解説曞籍。かなり参考にしたした。うたく反映できおないけど

最近芋぀けた解説サむト

次回

実際にMLM (Masked Language Modeling)を詊しおみた線の予定です。

目次ペヌゞ

泚

  1. 自分で実際に詊したわけでありたせんので、詳现は䞍明です:bow: 地道に挑戊しおみたいものですが。 ↩

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?