ディープラーニングブログ

Mine is deeper than yours!

メンヘラちゃんと学ぶディープラーニング最新論文

メンヘラちゃんディープラーニングの最新論文をバリバリ語ってくれるシリーズです.Twitterに投稿したスライドをまとめました.

サムネ画像

f:id:Ryobot:20181124093542p:plain




スライド内のテキスト抽出(検索エンジン用)

メンヘラちゃんと学ぶ ディープラーニング最新論文 製作: Ryobot

はじめに 作者 • Ryobot (りょぼっと) • NAIST修士2年.RIKEN AIP勤務 (2017/7~) • チャットボットの個性と多様性の研究をしています • Twitter@_Ryobot でお気に入り論文を紹介しています スライドの概要 • メンヘラちゃんが最新論文をバリバリ語ってくれます • 分野は主に自然言語処理 (機械翻訳と言語理解) です • Twitter で投稿したスライドのまとめです メンヘラちゃん • ジョイネット様制作のLINEスタンプです • 作者様がフリー素材画像を配布しています • 気に入った方はLINEスタンプを買いましょう

Another Diversity-Promoting Objective Function for Neural Dialogue Generation [arXiv: 1811.08100] • 主著論文がAI系のトップ国際会議 AAAI 2019 の DEEP-DIAL workshop に オーラル発表で採択されました • コーパス内のトークン頻度に基づく目的関数 (Inverse Token Frequency loss) を用いてニューラル対話生成における応答の多様性を促進しました ※ SRCが人間の発言,TGTが人間の応答,MLEとMMIが既存手法の応答,ITFが提案手法の応答

はじめまして! TAのメンヘラちゃんやでっ! このクラスではディープラーニングの最新論文を うちと一緒に読みながら勉強していくでっ ぜひ論文とコーヒーを片手に楽しんでいってな! 早速やけど基礎の復習から始めていこな まずは言語モデル (Language Model) 1~k-1単語目を入力して k単語目を予測する基本タスクやな RNNはシンプル! 入力表現を直接 潜在表現に追加する LSTMは複雑! 3つのゲートで入力表現や 潜在表現を制御するでっ! ※ ここのメンヘラちゃんは二次創作設定やでっ! 実際はTAちゃうし関西弁ちゃうからな~♪

機械翻訳のようにソース文をターゲット文に変換するモデルを 系列変換モデル (Sequence-to-Sequence Model) っていうでっ! エンコーダは単語列を潜在表現 (ベクトル) に縮約して デコーダは潜在表現をもとに単語列を予測していくねん...💤 2016年まではLSTMを使うのが主流やったけど 最近の機械翻訳はTransformerに駆逐されちゃったなっ 双方向LSTMで エンコードすると 性能が高いでっ Residual 接続を 取り入れて深層に するとええでっ!

注意 (Attention) は... 検索クエリ (デコーダの出力) で 文脈情報 (エンコーダの出力) を 検索してるねんな......😪💤 Attention = softmax(query Key ) Value ようは各ステップで... 検索クエリ (query) による... 文脈情報 (Key-Value辞書) の索引と解釈でき......😪💤 ソース文とターゲット文の alignmentを可視化できるから モデルの解釈性が上が...💤

(1)自然言語処理におけるCNN 画像の各ピクセルのように近傍同士の相関が強いデータ に対しては畳み込みによる特徴抽出が有効やねんな~ テキストも[単語数 x 埋め込み次元数]の行列で表現して CNNに突っ込めるでっ! 機械翻訳での性能は Bi-LSTM < Convolution < Self-Attention やなっ Pervasive Attention: 2D Convolutional Neural Networks for Sequence-to-Sequence Prediction [Maha Elbayad, arXiv: 1808.03867]

Encoder-Decoderを使わず Decoderだけで機械翻訳が できるんやっ! シンプルやなっ! DecoderはCNNで 画像認識に使われとう DenseNetなんか DenseNetはネットワーク配線芸の始祖やねんでっ

ポイントは入力のテンソルやなっ ソース文の各トークンとターゲット文の各トークンを concat (連結) してDenseNetに入力してる concatに対する処理でトークン間の関係性を 得るのはRelation Networkに似てるな~ せやから入力テンソルは[source x target x embedding*2] これを[height x width x channel]として処理してくねん 翻訳モデルの学習には Teacher Forcing (ターゲット文をデコーダに入力) を一般的に使うでっ ただしCNNの場合 Casual Convolution(入力をズラして 未来の単語を参照しない畳み込み)にせなあかんでっ! これはWaveNetとかConvS2Sでも使われとったなっ

IWSLT’14でSOTAやねんて WMT’14でも実験してほしかったな~ 短い文やと提案手法とかRNNsearchの方が強くて 長い文やとConvS2SとかTransformerがの方が 強いって実験結果もおもろいなっ

(2)Transformer の仕組み Attentionはエンコーダの出力をKeyとValueに使って デコーダの出力をqueryに使うけど Self-Attentionはエンコーダの出力をqueryにも使うねんっ Maximum Likelihood Estimator つまりqueryは自分自身にalignmentを計算してる! 下層の単語系列全域を参照できるのが強みやな~ Transformerのキモはエンコーダとデコーダに Self-Attentionの層を加えた点やでっ! Why Self-Attention? A Targeted Evaluation of Neural Machine Translation Architectures [Gongbo Tang, EMNLP 2018, arXiv: 1808.08946]

ところで(唐突) NIPS の参加チケット 11分で完売したらしいけど みんなは入手したかな~? ねぇねぇトランスフォーマーすき~? 今日はうちが トランスフォーマー → のつよつよムーブを 解明したるで... ってそっちちゃうわっ! こっちな →

機械翻訳やとRNNよりCNNとSelf-Attentionが強いけど理由わかってへんねん CNNとSelf-Attentionは「入力トークン間を短いパスで接続→ 長距離依存のモデリングが有利→つよつよ」って仮説あるけどほんまに~? パスは 4 recurrent パスは 2 convolution パスは 1 attention トークン x1 と x5 の接続に必要なパス数やで WMT’14, ’17 英独で普通の機械翻訳やったときの BLEU, Perplexity と長距離依存タスクの精度やで

2 つのタスクで RNN, CNN, Transformer (Self-Attention) の実力に迫るでっ! (1) まずは主語-動詞間の「長距離依存」タスク ドイツ語やと動詞は主語の人物と数によって 語尾が変化するからその精度を比べんねん 上図やと Transformer と双方向 LSTM がええ勝負やけど CNN はあかんな~ 左図は訓練データを 減らした結果な~ 精度似とるな BLEU と PPL も似とるで

Transformer は Multi-head Attention のヘッド数によって長距離依存の精度が 全然ちゃうで(h2 = 2ヘッド) (2) 意味抽出が必要な「語義の曖昧性解消 (WSD)」タスク 独→英翻訳やと構文で判断できへん曖昧語があるからその精度を比べるでっ RNN, CNN に比べて Transformer は曖昧性解消の精度がずば抜けて高いな~ けつろん CNNと Transformer は長距離依存タスクやと RNN より優れとるとは限らんでっ Transformer は曖昧性解消がつよつよ!!!

(3)AI系のトップカンファレンス 会議名 概要 開催 機械学習・深層学習 NIPS 近年はDL中心,投稿数は4900 12月 ICML 実験重視だったが近年は理論重視に 6月 ICLR DL専門,OpenReviewで査読,投稿数は1600 4月 人工知能 AAAI AI全般,投稿数は7700,採択率16% 1月 IJCAI AI全般,2015年まで隔年開催,AAAIと同格 7月 自然言語処理 ACL NLP分野のトップ会議,投稿数は1500 7月 EMNLP 近年はACLと同格,投稿数は2100 11月 コンピュータビジョン CVPR CV分野のトップ会議,投稿数は5100 6月 ECCV ICCVと交互に隔年開催,CVPRと同格 9月 新設のICLRを除き,どの会議も採択率は20%前後.近年投稿数が爆増 しており,2050年のAAAIの投稿数は人類の総人口を超える見込み ICLR 2019 (Seventh International Conference on Learning Representations)

週刊ディープラーニングの時間やでっ! 先週深層学習のトップ会議ICLR'19の投稿紙が公開され 強力な結果を出した論文が続々と話題になってんねん 機械翻訳もかなりハイレベルな戦いで 同時に6紙がSOTAを報告する事態に...!? WMT’14 En-De の BLEU スコアな バトル漫画かな? ← Dual Learning, Hyperbolic, Attention って単語が目立つなっ 例えば #BIGGAN で検索すると GANで生成されたキメラ物体が見つかるで

rank paper BLEU
1 Multi-Agent Dual Learning 30.67
2 Dual Learning: Theoretical... 29.97
3 Pay Less Attention... 29.7
4 Quasi-hyperbolic ... 29.45
5 Universal Transformers 28.9
6 Hyperbolic Attention... 28.52
- (Previous SOTA) 28.4

機械翻訳系の13紙のうち11紙がTransformerを 採用してて想像以上のディファクトスタンダードに😳 RNN, CNNは残りの2紙のみ 投稿紙全体でもRNNは著しく下火に...↓ キーワードの出現頻度の上下(前年比) まず6位!活性化関数と注意機構に 外周ほど空間が広い双曲空間を使うでっ 左がユークリッド空間,右が双曲空間の埋め込みな 4位!モーメンタムSGDの代わりに 準双曲モーメンタムSGDを使うでっ つまりSGDとモーメンタムSGDの加重平均やな

Transformer の次は Dynamic Convolution! BLEUは驚異の29.7で3位 (Trans~は28.0) まずDepthwiseConvでパラメータ数を削減して time-step依存の動的カーネル を導入したでっ! 1位と2位は Dual Learning! Dual Learningって うちらふたりで 協力するイメージ?せやで頑張ろなっ GLUの出力から CNNのカーネルの 重みを求めんねんっ すごい発想っ! 英語→日本語→英語で元に戻るように学習するでっ 対訳コーパスいらんくて単言語コーパスで学習できる ちなみにSOTA勢以外は zero-shot学習,弱教師あり学習 非自己回帰モデル,多様性促進が 1件ずつあったでっ!

Multi-Agent (=Multi-Path) Dual Learning の時代到来! 対訳コーパス + 単言語コーパスの逆翻訳 = つよ さらに~ 多言語間でマルチパス翻訳 + サイクル翻訳 = つよつよ f0 2言語 (X, Y) 間で複数の翻訳エージェントから Dual Learningの再構成エラーを集める Multi-Agent Dual Learning がSOTAに君臨! new SOTA と previous SOTA の BLEU なっ WMT やと単言語コーパスなしでも 29.92! Dual Learningつよっ! いっぱいちゅき♡

(4)逆翻訳によるデータ拡張 機械翻訳は学習データの質と量がめっちゃ重要やねんっ! 逆翻訳モデルで単言語コーパスを擬似対訳コーパスに データ拡張して,水増した学習データで順翻訳モデルを 訓練することで高い性能が得られるでっ! Understanding Back-Translation at Scale [Sergey Edunov, EMNLP 2018, arXiv: 1808.09381]

えらいこっちゃ... 機械翻訳のベンチマーク evaluation: BLEU score using multi-bleu.perl on WMT newstest2014 En-De dataset: WMT parallel data (including ParaCrawl) and monolingual News Crawl

逆翻訳は機械翻訳のデータ拡張に使えるねんっ ターゲット言語に単言語コーパスを用意し 学習済みの逆翻訳モデルで ソース文を生成すれば 擬似的な二言語コーパスになるから 水増ししたデータで順翻訳モデルを学習できる! ただし逆翻訳モデルのデコーディング時にgreedy探索やbeam探索のような モデル分布の頂点のみ出力するMAP推定を使うと真のデータ分布を適切に カバーしない規則的な擬似ソース文になってしまう MAP (Maximum A-Posteriori) 推定 そこでモデル分布から確率的にサンプリングしたり beam探索にノイズを付加してみたらビビるくらい 性能が爆上がりしたから原因を調べたんやでっ

順翻訳モデルのパープレキシティを比べると 逆翻訳モデルへのサンプリングやノイズ付加は MAP推定より予測困難なソース文を生成して 順翻訳モデルの学習を難しくするでっ! 反面,豊富な訓練信号を提供するねんなっ 可愛い子には旅をさせよってことやっ! 低資源 (80K対訳文) 環境では そもそも逆翻訳モデルが貧弱 (=予測困難なソース文) やから サンプリングは逆効果になる 本物の対訳文 (bitext) と 単言語コーパスの逆翻訳 (BT-news) はかなり近い性能になるで ちなみにドメイン変化には脆弱やな

大規模・高品質な対訳文で訓練した DeepLの33.3よりも高い35.0を達成! WMTでの前SOTAは29.2 (ParaCrawlありで29.8) Transformerは28.4 去年はTransformerなどのモデル設計が精査され 今年は教師なし機械翻訳や逆翻訳などの学習方法 に研究がシフトして成果をあげてる印象やな~

(5)教師なし学習による機械翻訳 対訳コーパスなしで学習する教師なし機械翻訳が 登場して去年末から盛り上がってきとるでっ! 逆翻訳とノイズ除去を 同時に学習して 翻訳モデルを 獲得するねんな~ Machine Translation With Weakly Paired Bilingual Documents [Anonymous, ICLR 2019 id: ryza73R9tQ]

Wikipediaみたいな多言語Webサイトの 文書ペア(非対訳文)を機械翻訳の学習データに 使いたいなっ~って研究やで! 多くのマイナー言語間は 対訳文を集めるのが大変っ👻 対訳文いらずの教師なし学習教師あり学習に比べたら まだ性能がイマイチやねんな~🍭

主に2つの弱い教師信号から 翻訳モデルを学習するでっ! 1) 文書ペアから弱い対訳文を見つける 文書ペアの各文を文表現に変換してコサイン類似度が 閾値より高い2文を弱い対訳文として学習するでっ! 文表現はMUSEで事前学習した単語の埋め込み表現を 単語の出現頻度に基づいて加重平均したやつな~ 2) 文書ペアのトピック分布を近似する 文書ペア間のトピック分布(≒全単語分布の総和)は同じ と仮定し「一方の文書を翻訳して得た単語確率分布の総和」 と「対の文書の単語分布の総和」間のKL情報量ないし Wasserstein距離を目的関数Ldとして最小化するでっ! 最後に単言語ニュース記事で「教師なし機械翻訳」するでっ! Ldaeはデノイジングオートエンコーダ損失,Lrecは再構築損失 ←教師なし機械翻訳がEMNLPのベストペーパーに!

提案手法はちょうど教師なし学習教師あり学習の中間くらいの性能やなっ! 右表 : 性能はLpの貢献が大きいな~ 下図 : 弱い対訳文(文書ペアのうち コサイン類似度が高い2文)の例なっ 太字の単語は本来 対訳文に含まれちゃ ダメな単語やでっ! 学習への悪影響が どの程度か知りたいなっ

(6)言語モデルの事前学習 ELMoが複数のベンチマークで最高性能を達成したでっ! 大規模言語モデルでエンコーダを事前学習することで 様々なNLPタスクで性能が向上するらしいなっ Source: Matthew Peters Semi-Supervised Sequence Modeling with Cross-View Training [Kevin Clark, EMNLP 2018, arXiv: 1809.08370]

最近NLP界隈でpre-trainingとかtransfer learningとか multi-task learningが激アツやねんっ ELMoを契機に ブームになってるな~ 特にEMLoが大規模言語モデルをpre-trainingして 6つのNLPタスクでSOTAを達成した覚えとるっ? EMLoは多層双方向LSTMのエンコーダを事前学習して その潜在表現をいろんなNLPタスクの埋め込み表現に使ったでっ

ELMoは多層双方向LSTMで言語モデルを訓練したやん? でも実際のpre-trainingやと フォワード言語モデルと バックワード言語モデルを 個別に訓練してんねんっ! 多層LSTMの中間層は フォワードの潜在表現と バックワードの潜在表現を concat (連結) できへんからな~ concatしたら 予測すべき 単語の情報が リークしてまう からなっ♫ ELMoはモデルの構造側が制限されてて 前後の文脈を考慮できひんわけ 著者らは入力データ側を制限して フルモデルの本来の力を発揮させたでっ!

教師あり学習やと 完全な入力文を受け取る “主要モジュール”を普通に訓練して 教師なし学習やと 完全な入力文を受け取る “主要モジュール”の出力をラベルに 一部が欠損した入力文を受け取る “補助モジュール”を訓練するでっ 半教師あり学習によって重み共有した 多層双方向LSTMの潜在表現の質が 改善されるんやって~っ! 他のタスクの予測モジュールを追加したら 簡単にマルチタスク訓練ができんでっ 全てのタスクでラベルなしデータから擬似的ラベル ありデータを人工的に作成できるんも利点やなっ♡ pθが擬似的な 教師信号なっ あとで紹介するBERTでは 一部が欠損した入力文と 欠損部分の予測タスクで 事前学習モデルを訓練してる これは質疑応答研究の cloze task (穴埋め問題) と同じでマスク言語モデル (Masked Language Model) と定義してるでっ!

ほとんどのタスクでSOTA~! 訓練セットを減らすと さらに威力を発揮するでっ!

(7)自然言語処理のタスク BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding [Jacob Devlin, arXiv: 1810.04805]

タスク 概要 前SOTA BERT
GLUE 8種の言語理解タスク 75.2 81.9
1. MNLI 2入力文の含意/矛盾/中立を判定 82.1 86.7
2. QQP 2質問文が意味的に等価か判定 70.3 72.1
3. QNLI SQuADの改変.陳述文が質問文の解答を含むか判定 88.1 91.1
4. SST-2 映画レビューの入力文のネガポジを判定 91.3 94.9
5. CoLA 入力文が言語的に正しいか判定 45.4 60.5
6. STS-B ニュース見出しの2入力文の意味的類似性をスコア付け 80.0 86.5
7. MRPC ニュース記事の2入力文の意味的等価性を判定 82.3 89.3
8. RTE 2入力文の含意を判定 56.0 70.1
SQuAD 質疑応答タスク.陳述文から質問文の解答を抽出 91.7 93.2
CoNLL 固有表現抽出タスク.単語に人物/組織/位置のタグ付け 92.6 92.8
SWAG 入力文に後続する文を4つの候補文から選択 59.2 86.3

GLUE(8種のNLPタスク,スコアは平均) SQuAD(質疑応答タスク) 言語モデルを事前学習した エンコーダを質疑応答や タグ付け等のNLPタスクに 転移学習する研究やでっ ぶっちぎりのSOTAやん! こんなん勝てんわっ!

双方向LSTMやTransformerで言語モデル(次の単語を予測)を学習する場合 モデルが予測すべき単語(教師信号)を参照するのを防ぐ制約が必要やねんな BERTは フルモデルの Transformer OpenAI Transformerなら 未来の単語位置のネットワークに マスクをかけなあかん ELMoなら順方向LSTMと 逆方向LSTMを同時に学習できへん せやからモデル自身は前後の文脈を考慮できへん... そこでモデル側やなくてデータ側を制約したでっ! ネットワークにマスクをかけず入力データにマスクをかけたから フルモデル(前後の文脈を考慮できるモデル)で殴れるねんなっ! マスク単語を予測 これは以前紹介したCross-View Training論文と同じ問題意識やでっ

先行研究との違い • フルモデルのTransformerを使用 • 本来6層8注意ヘッドのTransformerを24層16注意ヘッドに巨大化! • BooksCorpusとWikipedia混合の大規模コーパスを使用! • マスク単語の予測 + 2入力文が連続か否かの予測を事前学習に追加 • 学習効率が悪そう? モデルへの制約は全単語から教師信号が得られるけどデータへの制約はマスク単語からしか 教師信号が得られへん.実践的には収束がやや遅くなるだけで性能が上がるスピードは早いでっ • 費用は7000ドルくらい?(TPU16台 x 4日間 x 24 時間 x 4.5ドル) SQuADの場合,質問文と陳述文の各単語を 単語・単語位置・文の区分のベクトルに埋め込むでっ Transformerのハイパパラメータなっ! L: 層数,H: 隠れ層サイズ,A: 注意のヘッド数 モデルの巨大化がかなり性能へ寄与しとるな~

まとめ 機械翻訳 1. WMTの競争激化 WMTベンチマークがNLP版ImageNet状態に 2. Self-Attentionの成功 LSTMの時代が終わり,Self-AttentionベースのTransformerが標準化 3. 教師なし機械翻訳の登場 教師なし学習(対訳文いらず)でも翻訳モデルの学習が可能に 4. 逆翻訳・二重学習の発展 逆翻訳や二重学習(翻訳と逆翻訳の連携)で大きく性能が向上 言語理解 5. 言語モデルの事前学習 ELMoとOpenAI Transformerが複数の言語理解タスクでSOTA達成 6. マスク言語モデル BERTとCVTが穴埋めタスク型の言語モデルを事前学習してSOTA大幅更新 画像生成 (おまけ) 7. 256px→1028pxへと高画質化 StackGAN→StackGAN v2→Progressive Growing GAN 8. ImageNet級の多様性 BigGANがImageNet (1000クラス) の高画質生成に初めて成功 9. VAE・FLOWベースの画像生成 IntroVAEとGLOWがGANレベルの高画質生成に成功

おわりに 100件以上の感想ツイートがありました. 「かわいい」が約5割,内容への感想も多かったです. 嬉しかったツイートを載せます.圧倒的感謝ですっ! 「女の子いるとグッと読みやすいと感じた.これから同じことしたい」 「これはすごい.女の子の絵がいるだけで,とっつきやすさが段違い」 「美少女が専門をバリバリ語るYouTuber需要あるから増えろ」「これで論文読みVTuberやってください」 「某学会のアブストもみんなこんな感じになればいいのに(?)」 「研究会とかのスライド,みんなこんな感じにしようよ!サイコーかよ!」 「こんな感じで深夜帯に今週の機械学習界隈事情~をアニメ化してほしい」 「ディープラーニングの内容がイラスト付きでまとめられていてわかりやすい」 「Ryobot君,論文紹介芸の研究にも余念がないのスゴい」 「りょぼっとさん,最先端の論文を日本語で紹介してくれるからすごく助かってる」 「りょぼっと氏みたく漫画チックに論文や手法を紹介するの控えめに言って好きすぎるし流行って欲しい」 「まじこのシリーズ好き」「可愛く論文紹介するのずるい」 「This one is so cute! Can we have an English version, please?」 「one of those times when I wish I knew how to read Japanese」 「Oh My Gosh! So... fky cute! I nearly doubt that I’m reading a paper...」 「How dare you make this so cute!!!! LOL