記事"2020's Top AI & Machine Learning Research Papers" の紹介

## はじめに
2020年の重要な機械学習研究論文10本をまとめた以下の記事の紹介です。
　[2020's Top AI & Machine Learning Research Papers (2020/11/24公開) ](https://www.topbots.com/ai-machine-learning-research-papers-2020/)

以下の論文が紹介されています。これらの論文を読めば、今年のAI研究の進展を大まかに把握することができるでしょうと書かれています。

[1. A Distributed Multi-Sensor Machine Learning Approach to Earthquake Early Warning](#1-a-distributed-multi-sensor-machine-learning-approach-to-earthquake-early-warning)
[2. Efficiently Sampling Functions from Gaussian Process Posteriors](#2-efficiently-sampling-functions-from-gaussian-process-posteriors)
[3. Dota 2 with Large Scale Deep Reinforcement Learning](#3-dota-2-with-large-scale-deep-reinforcement-learning)
[4. Towards a Human-like Open-Domain Chatbot](#4-towards-a-human-like-open-domain-chatbot)
[5. Language Models are Few-Shot Learners](#5-language-models-are-few-shot-learners)
[6. Beyond Accuracy: Behavioral Testing of NLP models with CheckList](#6-beyond-accuracy-behavioral-testing-of-nlp-models-with-checklist)
[7. EfficientDet: Scalable and Efficient Object Detection](#7-efficientdet-scalable-and-efficient-object-detection)
[8. Unsupervised Learning of Probably Symmetric Deformable 3D Objects from Images in the Wild](#8-unsupervised-learning-of-probably-symmetric-deformable-3d-objects-from-images-in-the-wild)
[9. An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale](#9-an-image-is-worth-1616-words-transformers-for-image-recognition-at-scale)
[10. AdaBelief Optimizer: Adapting Stepsizes by the Belief in Observed Gradients](#10-adabelief-optimizer-adapting-stepsizes-by-the-belief-in-observed-gradients)

自分の勉強のため、各論文のタイトルとアブストラクトをおおまかに意訳し内容を（いくらか）整理してみました。わかりにくいところは表現を変えたり説明を加えたりしています。よくわからない部分や重要でないと感じたところは割愛しています。参考情報も付加しました。

元論文は拾い読みしかしていないので、誤りがあるかもしれません。適宜、元論文を確認するようお願いします。何かお気づきの点などあれば、コメントをいただけるとうれしいです。

## 1. A Distributed Multi-Sensor Machine Learning Approach to Earthquake Early Warning

論文タイトルのだいたいの意味： 分散マルチセンサー機械学習による緊急地震速報へのアプローチ

緊急地震速報は機械学習の分類問題と捉えられ、入力は地震計などセンサーからのデータ、出力は地震の深刻度となります。

この論文では、分散型マルチセンサー緊急地震速報システム（DMSEEW: Distributed Multi-Sensor Earthquake Early Warning）を紹介しています。DMSEEWへの入力データは各地に分散配置された地震計とGPS型センサーから収集したデータです。DMSEEWでの深刻度の予測は、スタッキング・アンサンブル法という２段階のプロセスを採用しています。予測の第一段階では、複数の分散配置されている独立した中間層のマシン（IoTのエッジサーバー）に、周辺のセンサーからのデータを入力し、深刻度の予測を出力します。第ニ段階では、データセンターのマシンに、中間層のマシンの予測結果を入力し、深刻度の総合的な予測結果を出力します。このような構成を取ることにより、データセンターに大量のセンサーデータが集中することを避けることができ、トータルの通信量を削減でき、短いレスポンスタイムを実現しています。また、インフラの部分的な故障に対する堅牢性も確保しています。

実験の結果、広範なGPS型センサーからのデータを利用可能なDMSEEWは、従来のアプローチのシステムよりも予測精度が高いことが示されました。

感想など：
エッジコンピューティングシステム上に機械学習システムを構築している事例として興味深いですね。

(参考)

* [[元論文] A Distributed Multi-Sensor Machine Learning Approach to Earthquake Early Warning](https://www.semanticscholar.org/paper/A-Distributed-Multi-Sensor-Machine-Learning-to-Fauvel-Balouek-Thomert/497aee0f4b9d764099e6cfdec14d5042c30c3c09?p2df)


## 2. Efficiently Sampling Functions from Gaussian Process Posteriors

論文タイトルのだいたいの意味： ガウス過程事後分布からの効率的サンプリング関数

ガウス過程の回帰予測では、関数の予測値（期待値）とともに予測値の不確実性（分散）を計算により（解析的に）求めることができます。この解析的解法は、予測値の不確実性を評価する必要がある多くの実世界の問題に適用されています。

しかし、解析的解法には計算量が多くなるという問題があり、教師データ数が多い場合には適用できません（計算量は教師データ数の３乗のオーダーに比例します）。そのため、計算量の少ない近似的な解法が複数提案されています。近似的な解法では、ガウス過程事後分布からデータを追加でサンプリングし、ガウス過程事後分布の積分計算をモンテカルロ法で近似するアプローチが取られています。

この論文では、上記のアプローチで、従来より計算量の少ない計算方法を提案しています。この方法は使いやすく汎用的です。実験では、この方法により、正確な近似が維持され、かつ計算量がこれまでの数分の一に削減されることが示されました。

(参考)

* [[元論文] Efficiently Sampling Functions from Gaussian Process Posteriors](https://arxiv.org/abs/2002.09309)
* [ガウス過程回帰の基礎](https://www.jstage.jst.go.jp/article/isciesci/62/10/62_390/_pdf)
* [(論文メモ) Efficiently Sampling Functions from Gaussian Process Posteriors(ICML2020)](https://scrapbox.io/k1ito/%5B%E3%82%AC%E3%82%A6%E3%82%B9%E9%81%8E%E7%A8%8B%5D%E9%AB%98%E9%80%9F%E3%81%8B%E3%81%A4%E6%AD%A3%E7%A2%BA%E3%81%AB%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%AC%E3%82%A6%E3%82%B9%E9%81%8E%E7%A8%8BEfficiently_Sampling_Functions_from_Gaussian_Process_Posteriors(ICML2020))


## 3. Dota 2 with Large Scale Deep Reinforcement Learning

論文タイトルのだいたいの意味： 大規模深層強化学習を用いたDota2

2019年4月13日、OpenAI Fiveはeスポーツの人間の世界チャンピオンを初めて破った最初のAIシステムになりました。OpenAI Fiveが戦ったeスポーツはアクションロールプレイングゲームのDota2です。Dota2は、長い時間軸、不完全な情報、複雑で連続的な状態行動空間などが特徴です。このような強化学習が困難なタスクでも、AIが高いパフォーマンスを発揮できることが実証されました。

OpenAI Fiveは、既存の強化学習技術を活用し、2秒ごとに約200万フレームのバッチデータを学習します。著者らは分散型トレーニングシステムとツールを開発することで、OpenAI Fiveを10ヶ月間にわたって継続的に訓練することを実現しました。

(参考)

* [[元論文] Dota 2 with Large Scale Deep Reinforcement Learning](https://arxiv.org/abs/1912.06680)


## 4. Towards a Human-like Open-Domain Chatbot

論文タイトルのだいたいの意味： 人間のようなオープンドメインのチャットボットを目指して

この論文では、open-domainの（話題の分野を限定しない）チャットボットMeenaを紹介しています。Meenaは、26億個のパラメータを持つニューラルネットワークで、ソーシャルメディアの会話データを用いて訓練されています。訓練では、perplexityという計算可能な評価指標を最小化するようにパラメータを調整しています。（perplexityは、会話の中で次に来る語の予測の難易度を表しています。perplexityが大きいということは、会話の相手が何と答えるか予測できないということで、その会話が混乱状態に陥っていると解釈できるでしょう。）

また、この論文では、SSA(Sensibleness and Specificity Average)という会話の流暢さを表す評価指標を提案しています。SSAは人間により評価されます。実験では、perplexityとSSAの間には強い負の相関があることが示されました。perplexityを最小化するよう学習したMeenaがSSAで高いスコア（72％）を出したという事実は、perplexityをより小さくすることができれば人間レベルのSSA(86％)に達する可能性があることを示唆しています。

(参考)

* [[元論文] Towards a Human-like Open-Domain Chatbot](https://arxiv.org/abs/2001.09977)
* [Qiita: 論文解説「Towards a Human-like Open-Domain Chatbot」](https://qiita.com/july1997/items/eb660b7bd58f66a42395)
* [トピックモデルの評価指標 perplexity とは何なのか？](https://www.slideshare.net/hoxo_m/perplexity)


## 5. Language Models are Few-Shot Learners

論文タイトルのだいたいの意味： 言語モデルは少数の例題で訓練できる学習器である

（BERTなどでの）最近の自然言語処理の研究では、深層ニューラルネットワークを大規模なコーパスで事前学習した後、タスク別にファインチューニングを行うことで、様々なタスクで高い性能を出せることが実証されています。しかし、ファインチューニングのため、数千から数万のサンプルデータがタスクごとに必要になります。これは、応用上の大きな阻害要因です。

この論文では、言語モデルGPT-3が、様々なタスクで数個のサンプルデータを与えるだけで高い性能を出せることを示しています。GPT-3は、GPT-2と同じアーキテクチャを持ち、GPT-2をスケールアップしたものです。GPT-3のパラメーター数は約1,750億個です。GPT-3では、ファインチューニングによるパラメータ調整を行いません。数個のサンプルデータは入力データとしてGPT-3にわたすだけです。GPT-3は、翻訳、質問応答、文章穴埋めなどの多くのタスクにおいて、最先端の性能に近い記録またはそれを越える記録を達成しました。

一方、GPT-3には、物理現象や社会的慣習に関する常識が欠けているという問題があります。これは、GPT-3の学習がウェブから収集したコーパスに依存していることに関連しています。また、この論文では、人間が区別することが難しいフェイクニュースの生成がGPT-3により容易になるなどの社会的影響についても言及しています。

感想など：
どこまで実用に耐えうるかという評価は必要でしょうが、低コストでさまざまなタスクに適用できそうなところが魅力だと思います。

(参考)

* [[元論文] Language Models are Few-Shot Learners](https://arxiv.org/abs/2005.14165v2)
* [「GPT-3」は思ってたより「やばい」ものだった。話し言葉でプログラミングまでこなすAI](https://cubeglb.com/media/2020/07/22/gpt-3-gamechanger/)
* [OpenAIの言語モデルGPT-3は人間のように少ない事例で学習、AIを巨大にすると人間になれるか](https://etechnologyreview.com/2020/08/28/)
* [「高精度過ぎる文章を作る」Microsoftが言語モデルGPT-3の独占的ライセンスを取得](https://ledge.ai/microsoft-gpt-3-news/)


## 6. Beyond Accuracy: Behavioral Testing of NLP models with CheckList

論文タイトルのだいたいの意味： 正解率を超えて: "CheckList" による自然言語処理モデルの振る舞いテスト

自然言語処理モデルの評価方法としては、ホールドアウト法による正解率(accuracy)がよく用いられていますが、単一の統計量だけでは具体的なモデルの問題点の発見にあまり役立ちません。この論文では、自然言語処理モデルを評価するための方法論CheckListを紹介しています。CheckListは、ソフトウェア工学における振る舞いテスト(ブラックボックステスト)の考え方を参考にした方法論で、人間がテストケースを網羅的に作成することを支援します。また、大量かつ多様なテストケースを生成するソフトウェアツールもCheckListに含まれています。

CheckListでは、「（自然言語処理モデルの）一般的言語能力」というテスト観点と、「テストタイプ」というテスト方法のパターンの組み合わせによりテストケースを作成します。「一般的言語能力」としては、ボキャブラリー、固有名詞抽出、否定などが提案されています。「テストタイプ」としては、次の３つが提案されています。

* 最小機能テスト(minimum functionality test)：単文などのシンプルな入力データに対し、出力が正しいことをテストします。ソフトウェアのユニットテストに対応します。
* 不変性テスト(invariance test)：入力データの部分変更に対し、出力が変化しないことをテストします。ソフトウェアのメタモルフィックテストに対応します。
* 期待変動方向テスト(directional expectation test)：入力データの部分変更に対し、出力が期待される方向に変動することをテストします。

例えば、一般的言語能力として固有名詞抽出を、テストタイプとして不変性テストを選択した場合、入力データ中の固有名詞を変更しても出力が変化しないことを確認するテストを検討し、必要となるテストケースやテスト用データを作成します。テスト用データは、CheckListのソフトウェアツールを用いて、テンプレートから生成することができます。

いくつかのユーザーテストでCheckListの有効性が確認されました。あるユーザーテストでは、CheckListを使用しているユーザーは、使用していないユーザーに比べて、2 倍のテストを作成し、3 倍近くのバグを発見しました。

※この論文のbehavioral testingは black box testingの意味です。元論文に "behavioral testing"(also known as black-box testing) と書かれていました。Behavior-Driven Development(BDD)も参考にしているのではないかと考えたのですが、BDDは直接引用されていないようです。

(参考)

* [[元論文] Beyond Accuracy: Behavioral Testing of NLP models with CheckList](https://arxiv.org/abs/2005.04118)
* [[DL輪読会]Beyond Accuracy: Behavioral Testing of NLP Models with CheckList (ACL2020)](https://www.slideshare.net/DeepLearningJP2016/dlbeyond-accuracy-behavioral-testing-of-nlp-models-with-checklist-acl2020)
* [機械学習の分野でも注目される、メタモルフィックテスティングとは何か。](https://www.kzsuzuki.com/entry/MetamorphicTesting)
* [wikipedia: Behavior-driven development](https://en.wikipedia.org/wiki/Behavior-driven_development)


## 7. EfficientDet: Scalable and Efficient Object Detection

論文タイトルのだいたいの意味： EfficientDet: スケーラブルで効率的な物体検出モデル

コンピュータビジョンにおいて、モデルの効率性はますます重要になってきています。この論文では、物体検出のためのニューラルネットワークのアーキテクチャ設計の選択肢を系統的に検討し、効率を向上させるための最適化を提案しています。第一の最適化は、複数のスケールの物体の特徴を簡潔かつ高速に抽出する bi-directional feature pyramid network（BiFPN）です。第二の最適化は、すべてのネットワーク（バックボーンネットワーク、特徴ネットワーク、ボックス/クラス予測ネットワーク）の解像度、深さ、幅を一様にスケーリングする複合スケーリング法です。著者らは、これらの最適化に加え、バックボーンネットワークに高い性能を持つEfficientNetを用いることで、物体検出モデルのファミリEfficientDetを開発しました。これらは従来の物体検出モデルよりも高い効率性を達成しています。特に、シングルモデル、シングルスケールの場合、EfficientDet-D7は、データセットCOCO test-devで52.2%APの最先端の記録を達成しました。EfficientDet-D7のパラメータ数は52百万個で従来の物体検出モデルの1/9～1/4、計算量は325B FLOPsで従来の物体検出モデルの1/42～1/13になっています。

(参考)

* [[元論文] EfficientDet: Scalable and Efficient Object Detection](https://arxiv.org/abs/1911.09070v4)
* [[DL輪読会]EfficientDet: Scalable and Efficient Object Detection](https://www.slideshare.net/DeepLearningJP2016/dlefficientdet-scalable-and-efficient-object-detection)


## 8. Unsupervised Learning of Probably Symmetric Deformable 3D Objects from Images in the Wild

論文タイトルのだいたいの意味： 手が加えられていない画像による概ね対称的で変形可能な3次元物体の教師なし学習

この論文では、アノテーションなどの教師情報を与えずに、単視点の２次元画像だけから、視点や照明の向きの影響を除去したオリジナルの３次元の物体の形状や色を予測する手法を提案しています。

この手法では、入力画像から、深度(depth)、アルベド(albedo)、視点(viewpoint)、照明(illumination)の各要素をオートエンコーダーを用いて予測します。深度は、物体の３次元形状を表し、正面の視点から見た深度地図で表現されます。アルベドは、物体の色を表し、R/G/Bごとの光の反射率の地図で表現されます。視点は、物体を写すカメラの位置と向きを表します。照明は、光源の方向を表します。これらの要素から２次元の画像を復元し、元の入力画像との差を評価することで学習を進めます。

この手法では、さらに、人間の顔など、興味の対象となるカテゴリに属する物体が概ね左右対象であることを学習に利用しています。深度とアルベドを左右反転して２次元画像を復元し、元の入力画像との差を評価することで、学習を強化します。人の顔の髪型のように左右対象ではない部分については、学習に悪影響を与えないようにするため、入力画像との差を割り引いて評価します。そのため、物体の対称性の度合いを表す地図も合わせて予測します。

実験の結果、この手法により、教師情報がなくても、単一ビュー画像から人の顔、猫の顔、自動車の3D形状を非常に正確に復元できることが示されました。ベンチマークでは、2次元画像に対して教師情報を付加する他の手法と比較しても、優れた精度を得られることが示されました。

感想など：
限られた情報の断片から背後にある意外な情報を正確に予測できてしまうというところが面白いです。今後も、AIの意外な応用が広がっていくだろうと思います。

(参考)

* [[元論文] Unsupervised Learning of Probably Symmetric Deformable 3D Objects from Images in the Wild](https://arxiv.org/abs/1911.11130)
* [Unsupervised Learning of Probably Symmetric Deformable 3D Objects from Images in the Wild 自分用メモ](https://hotcocoastudy.hatenablog.jp/entry/2020/06/18/182228)
* [Qiita: 【論文読解】Unsupervised Learning of Probably Symmetric Deformable 3D Objects From Images in the Wild](https://qiita.com/takoroy/items/a3306a18dc37eedc9ae5)
* [Deep Learning JP: Unsupervised Learning of Probably Symmetric Deformable 3D Objects from Images in the Wild](https://deeplearning.jp/unsupervised-learning-of-probably-symmetric-deformable-3d-objects-from-images-in-the-wild/)


## 9. An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale

論文タイトルのだいたいの意味： １つの画像には16×16個分の単語の価値がある：大規模な画像認識のためのトランスフォーマー

トランスフォーマーは、自然言語処理分野でのデファクトスタンダードのアーキテクチャーとなっています。しかし、コンピュータビジョン分野では、トランスフォーマーの利用は限られており、トランスフォーマーのコンポーネントであるattentionが畳み込みニューラルネットワーク(CNN)をベースとするネットワークアーキテクチャの中で部分的に利用されているだけです。

この論文では、コンピュータビジョン分野において、CNNを用いずに、トランスフォーマーのアーキテクチャを直接適用するVision Transformer(ViT)を提案しています。自然言語処理分野では入力文を分割して単語のシーケンスを作成し、そのシーケンスをトランスフォーマーの入力とします。ViTでも、同様に、入力画像を分割して小さな領域（画像パッチ）のシーケンスを作成し、そのシーケンスをViTの入力とします。また、大量のデータで事前学習した後、個別のタスクでファインチューニングして用いるというプロセスも、自然言語処理分野のトランスフォーマーとViTで共通しています。

この論文では、複数の画像分類ベンチマーク（ImageNet、CIFAR-100、VTABなど）により、ViTと最先端のCNNベースのネットワークnoisy student(EfficientNet-L2)を比較評価しています。予測性能については、ViTがnoisy studentを上回り、最先端の記録を更新しています(CIFAR-100で94.55%)。一方、事前学習の計算量については、ViTがnoisy studentの数分の一となっています。

※ViTの事前学習の計算量は他の最先端のモデルより少ないとのことですが、それでも、TPUv3-core換算で延べ約2500日かかっています。
※最高性能を出したViTのモデルでは、画像パッチのサイズを14x14とし、事前学習では224x224の画像を16x16に分割しています（元論文の Appendix B.1 Trainingより）。論文のタイトルの"An Image is Worth 16×16 Words"（１つの画像には16×16個分の単語の価値がある）は、このあたりから来ているのでしょう。

(参考)

* [[元論文] An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale](https://arxiv.org/abs/2010.11929)
* [Qiita: 画像認識の大革命。AI界で話題爆発中の「Vision Transformer」を解説！](https://qiita.com/omiita/items/0049ade809c4817670d7)
* [(関連論文)Self training with noisy student improves ImageNet classification](https://arxiv.org/abs/1911.04252)
* [(論文解説) Self training with noisy student improves ImageNet classification](https://www.slideshare.net/harmonylab/self-training-with-noisy-student)


## 10. AdaBelief Optimizer: Adapting Stepsizes by the Belief in Observed Gradients

論文タイトルのだいたいの意味： AdaBelief： 観測した勾配の信用度に応じて歩幅を適応させるオプティマイザ

深層学習のための一般的なオプティマイザは、適応的手法(例えば、Adam)と加速スキーム（例えば、モーメントタムSGD）に大別されます。
畳み込みニューラルネットワーク(CNN)のような多くのモデルでは、適応的手法は加速スキームに比べて、通常、収束は速く、汎化性能は悪くなります。
敵対的生成ネットワーク(GAN)のような複雑な条件設定では、適応的手法の方が一般により安定しています。

この論文では、Adamのような高速な収束、モーメンタムSGDのような高い汎化性能、トレーニングの安定性という3つの目標を同時に達成するオプティマイザAdaBeliefを提案しています。
AdaBelief は、現在の勾配方向の「信用度(belief)」に応じて歩幅を調整します：

* 勾配の指数移動平均を次の時刻での勾配の予測値と見なします。
* 観測された勾配が予測値から大きく乖離している場合は、現在の観測値の信用度を下げて、歩幅を小さくします。
* 観測された勾配が予測値に近い場合は、現在の観測値の信用度を上げて、歩幅を大きくします。

この論文では、大規模な実験でAdaBeliefを検証し、画像分類モデルや自然言語処理モデルにおいて、他の手法よりも収束が速く、汎化性能が高いことが示されました。特に、ImageNet上では、AdaBeliefはSGDと同等の予測精度を達成しました。さらに、Cifar10 上での GAN のトレーニングでは、AdaBeliefが高い安定性を示し、Adamの改良型オプティマイザと比較して生成されたサンプルの品質を向上させました。

※この記事が出る少し前の2020/10/3に、「SAM」というオプティマイザーの論文が発表され注目を集めています。SAMは、AdaBelief以上の性能を達成しています。

（参考）

* [[元論文] AdaBelief Optimizer: Adapting Stepsizes by the Belief in Observed Gradients](https://arxiv.org/abs/2010.07468v1)
* [Qiita: 出きたてホヤホヤ！最新オプティマイザー「AdaBelief」を解説！](https://qiita.com/omiita/items/5012afa3cba4d73a7aed)
* [(関連論文) Sharpness-Aware Minimization for Efficiently Improving Generalization](https://arxiv.org/abs/2010.01412)
* [Qiita: SoTAを総なめ！衝撃のオプティマイザー「SAM」爆誕&解説！](https://qiita.com/omiita/items/f24e4f06ae89115d248e)

## 変更履歴
2020/12/31 初版公開
2021/01/02 「2. Efficiently Sampling Functions from Gaussian Process Posteriors」の説明を修正。
2021/02/07 誤字訂正： SMA → SAM (１箇所）