AnyTech Engineer Blog

AnyTech Engineer Blogは、AnyTechのエンジニアたちによる調査や成果、Tipsなどを公開するブログです。

NeurIPS 2022 参加報告

NeurIPS 2022 参加報告

はじめに

AntTechの立浪です。AnyTechでは深層学習とその周辺領域を担当してきます。

日が経ってしまいましたが、去年の12月に開催された機械学習分野の著名な国際会議 Neural Information Processing Systems (通称: NeurIPS) に参加してきました。開催場所はアメリカのニューオリンズというジャズで有名な街でした。この記事では、まずはニューオリンズの紹介、そして会議全体傾向や雰囲気、最後に気になった発表について数本触れようかと思います。私自身詳しくない領域も含まれおりますので、誤りも含まれているかもしれません。興味を持たれたら是非とも原著を読んでみていただければと思います。

なお、NeurIPSへの参加の主たる理由は私自身の採択された論文の発表のためです。その論文の内容については以下の記事にまとめましたので、興味がある方はご覧いただけますと幸いです。

tech.anytech.co.jp

ニューオリンズ

会議が開催されたニューオリンズについて簡単にご紹介します。ニューオリンズはもともとフランス植民地で、植民地戦争を経てスペイン領となった土地です。その後、ナポレオンの手によってフランスに戻りますが、すぐにアメリカ合衆国に売却されて今に至ります。その影響もあり、クレオールと呼ばれる、フランス人・スペイン人とアフリカ人・先住民を先祖に持つ人々が多く住んでいます。

食文化

この地では、クレオール料理が有名です。クレオール料理は様々なの食文化の影響を受けており、いわゆるアメリカの食文化の影響を受けつつも、フランス・スペイン・アフリカなどの食文化が融合されています。

ガンボ

ガンボは元々はオクラという意味で、アフリカ由来の野菜であるオクラが使われている料理です。ただし、私が食べたシーフードガンボにはオクラは入っておりませんでした。地元でもどうやらいろんなスタイルがあるようです。シチューのようなシツコそうな見た目ですが、その見た目に反してあっさりしており、美味しく頂けました。微量、米が入っており、日本人美味しく頂けるのではないかと思います。

牡蠣

Grilled Oystersというメニューを頼むと、チーズがかかって炭火焼きにした感じの牡蠣がでてきます。チーズの量がいかにもアメリカって感じで、美味しいんですが、すごい塩気でしたね。

Café du Monde

100年以上の歴史があり、24時間営業のオープン・テラス形式のカフェで、屋外では爆音で音楽の演奏をしている方々がおります。爆音過ぎて店内の会話はなかなか聞き取れません。このお店はベニエと呼ばれる、粉砂糖が大量にかかった四角いドーナツと、チコリ入りのコーヒーが有名です。かつて日本にもCafé du Mondeの店舗があったようですが、ベニエも頂けたようですが、現在は残念ながら撤退しております。

その他

アリゲーター、クロウフィッシュ(ザリガニ)、ナマズなども食べました。アリゲーターは鶏肉みたいで食べやすく、また食べてみたいと思えるような一品でした。

街並み

フレンチ・クオーターと呼ばれる一角の街並みが有名なんだそうです。多くの建物が植民地時代のもので、アメリカっぽくない街並みが広がっています。スペイン統治時代の建物が多く、なんともカラフルな街並みですね。フレンチ・クオーターにはフランス王家の紋章の旗(アイリスの紋章)がいたるところにあります。この紋章はお土産や会場内の自動販売機にもついてるぐらいでしたから、ニューオリンズのシンボルになっているんでしょうね。

会場の雰囲気と会議全体傾向

前置きの余談が長くなってしまいましたが、ここからが本題です。

会場

New Orleans Ernest N. Morial Convention Centerという会場にて開催されました。Ernest N. Morialというのはニューオリンズの元市長の名前のようです。この会場は大変広く(調べたところ、幕張メッセより広く)、かつ細長い建物なので、非常に歩き疲れる建物でした。NeurIPSが開催されているホール付近では非常に人が密集しておりました。その状況下で大半の人がマスクをしていませんでしたが、体調悪くなる人はいなかったのか心配になります。幸いにして、私はコロナにならず帰国できまして、帰国後も発症はしませんでした。

今年の会議の特徴

今年の会議は原則全員がポスター発表の形式で執り行われました。例年のオーラルやスポットライト発表は、これらと同等の栄誉は与えられつつも、これらの発表も発表形式はポスターです。中国の企業や大学の発表はみられず、そのせいか、空いているポスター板がちらほら。中国を拠点にしている方々は、ゼロコロナ政策の影響もあってか、現地発表は見合わせているようでした。その方たちは、第2週目はバーチャルウィークで発表されるのだと思います。一方で、中国以外を拠点にしていると思われる中国人はたくさん会場内でみかけました。

採択数

今年は10,411本の投稿に対して、25.6%の論文が採択されたとのこと。投稿数が去年よりも少し増加傾向で、採択率は横ばいです。投稿数の増加傾向はコロナの研究に対する影響もさすがに少なくなってきたのでしょうか。

今年の会議の傾向

AlexNetから10年、Hinton大先生の公演

NeurIPSでは10年前の論文を選び、表彰します。今回は、"ImageNet Classification with Deep Convolutional Neural Networks"という、いわゆるAlexNetの論文が選ばれました。Neural Networksが注目されるきっかけとなったAlexNetですが、その業績から10年しか経っていないと思うと、Deep Learningの進展は急速ですね。今回のNeurIPSでは、その受賞記念も兼ねて、Hinton大先生が招待講演がありました。当日は、昼食を切り上げて遅れないように速歩きで直前に会場に入ったのですが、そこにはHinton大先生の姿はなく、なんとリモートで登場されました。生のHinton大先生を期待していたので私ががっかりしただけでなく、隣の知らない日本人にも「本人こないんですね」とぼやかれる有様でした。

ご自身の業績であるBackpropagationに対して疑問を呈し、FFアルゴリズムなるBackpropagationの代替品を提案したとのことでした。残念ながら、私のような凡人や、多くの(がっかりして?)途中退出された方々にはその凄さが伝わっていなかったようです。しかし、自分の過去の偉大な業績に甘んじることなく、それを超える何かに挑もうとする彼の姿勢には感服するばかりです。

興味がある方は、こちらの記事や原著をご覧いただくのがよいと思います。

採択論文のジャンル

採択論文のジャンルは、最近のトレンドがよく現れていると思いました。特にDiffusion Models関連の研究は非常に多くあったと思います。実際、今年はDALL-E2, Imagen, Midjourney, Stable Diffusionなどの画像生成技術が非常に話題になった年でした。一昨年、去年からDiffusion Modelsが躍進しつつありましたが、今年はトレンドの中心になりましたね。Outstanding papersにも2本選ばれていますね。また、Transformerは今年も目立っていました。もちろん、伝統的なジャンルも継続的に採択されています。

気になった発表

ようやく本題ですが、ここではNeurIPS2022から気になった発表を3件選び、これらについて簡単に解説したいと思います。なお、以下に使用している画像は特に言及がない限り、原論文から拝借しております。

Finding Differences Between Transformers and ConvNets Using Counterfactual Simulation Testing

https://arxiv.org/pdf/2211.16499.pdf

この論文では、Swin TransformerとConvNeXtのロバスト性を比較しています。「オブジェクトの回転・視点変更にはConvNeXtが強い」、「オクルージョンにはSwin Transformerが強い」という結果を得ています。

背景

Vision Transformerが騒がれて始めてから2年も経ち、これがCNNよりロバストだとか、訓練の設定揃えたらそうでもないだとか、これまでもこのような議論がされてきました。そしてこれまでの議論は、敵対的事例だったり、パッチを除去してどうなるかといったように、自然な状況設定ではありませんでした。さらに、従来研究ではTransformerをResNetのような古いデザインと比較する研究ばかりで、フェアな比較とは言えませんね。

このような背景から、この論文では、照明・オクルージョン・オブジェクトのスケール/姿勢といった自然な設定で、かつフェアなモデルの比較を目指しています。

前者の問題は、著者らの提案するNaturalistic Variation Object Dataset (NVD) を使用することで解決しています。著者らは設定されている室内シーンをそのままで、オブジェクトに関わる環境パラメータを変更したシミュレーション画像を大量に生成しました。このデータセットには物体姿勢・物体スケール・360°パノラマカメラの回転・物体への視点を上から正面への変化・異なる物体とのオクルージョンのバリエーションが含まれています。

また、Transformerと現代的なCNN比較をするべきという課題については、Swin Transformerと現代的でViTに似ているCNNであるConvNeXtを比較することで、課題を達成しています。

Counterfactual Simulation Testing

NVD上で、特定の条件に対して期待値を取って複数のモデルをTop-1精度で比較することもできますが、それは今回の目的に対してはフェアではないと著者らが主張しています。その理由は、 モデルは実データで訓練していますが、今回使用するシミュレーション画像のデータセットへの汎化性能が、モデルごとに異なる可能性があるからだとのことです。

その対応として、Counterfactual Simulation Testingという方法を提案しています。この方法は、「物体を上から見ても分類が正しいのか」といった質問に両方のネットワークに答えさせ、正しい予測が維持されている割合PCCPを算出します。PCCPの式については導入の準備が煩雑になるためここでは割愛しますが、この方法のポイントを簡単に述べましょう。正しい予測に対して、相対的に正解が維持されるか否かを見ているということで、モデルのTop1-精度に依存しないのです。つまり、シミュレーション画像のデータセットへの汎化性能に依存しないことが、この方法のポイントです。

PCCPは異なるオブジェクトとシーン照明の間で平均化されます。そして、PCCP曲線を比較することで、物体姿勢や物体スケールの変化に対して、ネットワークがどの程度ロバストであるのかについて示しています。次節以降は、その比較実験の結果について述べていきます。

実験

いずれのバリエーション対しても、両方のネットワークで、基準の画像を変化させた画像を与えるとPCCPが急激に低下していることがわかります。

ネットワークサイズを大きくして(ConvNeXt/Swin-Base/Large)、ImageNet-1kの代わりにImageNet-22kを使って学習すると、ロバスト性が向上します。ただし、以下の図は、物体への視点を上から正面への変化させた場合についての比較です。

ConvNeXtは物体の回転や、縦横の視点変更に対して優位であることがわかります。

オクルージョンについては、Swinが有力です。左図のランダムなパッチドロップについては強いという事実については従来研究とは矛盾せず、今回のデータセットの設定(右図)でも若干ですが、ConvNeXtを上回っています。

所感

最後に、私の所感を述べます。本文中にも書かれていますが、研究の制約として、シミュレーションデータセットを使用しています。限られた現実世界のデータを使用して比較する極めて難しい問題の代替として、ドメイン汎化を意識しつつシミュレーションデータセットを使用して比較する一つの方法を与えたという点では、注目に値する研究だと思います。その一方で、このデータセットの品質については改善の余地があると思いました。特に、バリエーションについては木目のテーブルの上に物体が置いてあるという状況に限られており、本当にその状況設定だけで比較していいのかと思ってしまいました。

論文の主題からは外れますが、私の興味として、「トレーニング設定がロバスト性についてどのような影響を及ぼすのか?」について興味があります。最近のTransformer系のネットワークについては、私のSequencerも含めて似たようなトレーニング設定が使用されています。これは皆さんがDeiTの訓練方法を参考にし、そしてそれがTop1-精度的にはうまくいくからだと認識しています。このDeiT方式のトレーニング設定はTop1-精度にチューンされているはずで、必ずしもロバスト性に良い影響を与えるとは思えないのです。トレーニングリソースが有り余っている人がいれば、その周辺を調べてみたら面白いかもしれませんね。

Beyond neural scaling laws: beating power law scaling via data pruning

この論文は、データプルーニングについて、理論的かつ実験的の両面から論じた論文です。従来のデータプルーニング手法について論じるだけでなく、自己教師あり学習を使ったデータプルーニングの手法も提案しています。

https://arxiv.org/pdf/2206.14486.pdf

背景

機械学習では、モデル構築のための学習データを増やすこと・モデルサイズを肥大化すること・計算量の増加によって、モデルの性能を向上させることができます。しかし、テスト誤差は、これらの増加に対して、べき乗則で減少することが知られています。特に、学習データについて言えば、数%の精度向上のために、何億ものデータが必要になります。言い換えれば、これまでの研究では、途方も無いデータ収集をしても、この労力には見合った精度向上は得られないことが知られています。この問題に立ち向かうために、著者らは、データプルーニングによって、データセットサイズに対して、テスト誤差がべき乗則よりよく減少する可能性を理論と実証で示しています。

データプルーニングについての理論とシミュレーションから得られる結果

この論文では、データセットに対する誤差のべき乗則のうち、冗長なデータをプルーニングすることで、モデルの性能を低下させずに訓練に使用するデータサイズと削減できることを理論的・実験的に示しています。著者らは、統計力学を応用したパーセプトロンの教師-生徒間におけるデータプルーニングの解析的理論を確立して、生徒の汎化誤差を予測しています。この理論は、初期データ量が多い[少ない]場合は、難しい[易しい]例のみを残すべきであることや、テスト誤差はプルーニングデータセットサイズに対して、少なくとも指数関数的に減少することができることを示唆しています。この結果は、理論的な導出だけでなく、シミュレーション結果とも一致度が高いです。

より実世界向きの話

これまでの理論や実験については、パーセプトロンについての内容でしたが、著者らは実世界のデータセットについても、このような結果が成り立つかどうかも実験で示しています。SVHN/CIFAR-10/ImageNetのようなデータセットでResNetをスクラッチで訓練する実験では、パーセプトロンと同様の傾向を示しました。

さらに、ファインチューニングについても、この理論を検証しています。ファインチューニングでプルーニングする場合と、事前訓練でプルーニングする場合について実験がされております。前者については、ImageNet21Kで事前訓練済のVision Transformerを、CIFAR-10を10%にプルーニングしたデータセットでファインチューニングをしたら、元のCIFAR-10と同等以上の性能を得ることができたとのことです。後者については、ResNet-50を50%のプルーニングしたImageNet1Kで事前訓練し、CIFAR-10でファインチューニングすると、プルーニングしない場合と同等以上の性能が得られることを示されました。

このように、著者らは、以下の事柄がより実用的な設定の場合でも正しいことを示しております。

  • 初期データ量が多い[少ない]場合は、難しい[易しい]例のみを残すべきである。
  • テスト誤差はプルーニングデータセットサイズに対して、少なくとも指数関数的に減少することができる。
ImageNetで様々なデータプルーニングメトリクスをベンチマーク

これまで、データプルーニングメトリクスはImageNetのような大きいデータセットに対する調査は限定的でした。そこで。著者らは8種類のデータプルーニングメトリクスを使って、データプルーニングを行うと精度がどのように変化するのか、どのデータプルーニングメトリクスが優れているのかを調査しました。ImageNetの約80%訓練サブセットを選択した場合、全データセットで訓練した場合の性能に匹敵するものがありませんでしたが、memorizationというデータプルーニングメトリクスが最も良い性能を示しています。ImageNetは慎重にキュレーションされているため、このことがImageNetのデータプルーニングの難しさに関わっているようです。

自己教師あり学習を利用したデータプルーニングメトリクス開発

著者らは、教師ありのデータプルーニングがImageNetに対応できていないことと、これらのメトリクスの計算量の多さ、そしてラベルを必要とすることに対して、問題意識を持ちました。特に、近年公開されている教師なしの巨大なラベルなしのデータセットにも対応できるように、著者らは自己教師あり学習を利用したデータプルーニングメトリクスを提案しています。ImageNetの事前学習済み自己教師付きモデルの埋め込み空間でk-meansクラスラリングして、各データ点の難しさを最も近いクラスタセントロイドへの"1-コサイン類似度"で定義します。このようなシンプルなデータプルーニングメトリクスでも、memorizationと同等または上回る精度を得ました。

所感

理論的な部分は完全に理解できない部分もありましたが、理論と実証の両輪で主張がされていて、興味深い論文だと思います。これまでデータプルーニングという概念を考えたことがなかったのですが、アカデミックに面白いだけでなく、実務的にも大変参考になる論文だと思いました。

Diffusion Visual Counterfactual Explanations

https://arxiv.org/pdf/2210.11841.pdf

Visual Counterfactual Explanation(VCE)という、モデルの説明手法があります。この手法は、ある分類器に対して、「なぜこの画像がこのクラスに分類されなかったのか?」について、視覚的に説明を与えてくれます。これまではGANベースの手法がほとんどだったのですが、この論文ではDiffusion Modelと組み合わせています。これまでの研究では説明すべき分類器に制約がありましたが、それを撤廃している点がこの論文の魅力的な部分です。また、特に定性的に既存の手法よりも良好なVCEが生成できています。

背景

機械学習を扱っている人は、その機械学習アルゴリズムが何を捉えているのか、知りたくなります。これまで、さまざまな説明手法が提案されていますが、その中に反事実説明(Counterfactual Explanation/CE)という手法があります。これは、与えられた分類器について、あるインスタンスを、高い確率でクラスcとして分類できるように、かつリアリティさと保ったまま、最小限の変化を施します。画像分類に限ったCEを、VCEといいます。こんな興味深いVCEですが、これまでの研究は制約が多いため広く使われていません。その制約とは、ロバストモデルに限定される、クラス数の少ないデータセットに限定されるなどの制約がありました。

こういった制約に対して、著者らは、任意のImageNet分類器に対してVCEを生成する手法を提案しています。この手法では、最近の画像生成の手法に用いられている有力な技術であるDiffusion Modelを利用しています。本手法は、生成的拡散モデルと、敵対的ロバストモデルが利用可能な任意のデータセットに対して適用できます。提案手法は、ハイパーパラメータを画像間、さらにはモデル間で固定することができる利点があります。敵対的ロバストモデルによる分類器の勾配を使って正則化する手法を用いて(デメリットでもある)、意味のあるVCEの生成を実現しています。

Diffusion Model

Diffusion Modelについては、Diffusion Models Beat GANs on Image SynthesisというDiffusion Modelでは有名な論文がベースになっています。ここでは駆け足にします。こちらの記事が大変丁寧にまとめられているので、是非参照ください。本手法で使用するDiffusion Modelsはノイズ入の画像  \mathbf{x}_t に対して、分類器  p_\phi(y|\mathbf{x_t},t) を学習させています。また、Diffusion Modelsは条件付けずに、別途用意しておきます。サンプリングでは所望のクラス  y に誘導するために、勾配 \nabla_\mathbf{x}\log{p_\phi}(y|\mathbf{x}_t, t)を使って、次のようにサンプリングします。

手法

本手法では、分類器はVCEを適用したい分類器として、さらに上記の平均の推定を改変して、次のように、 元の画像 \hat{x} に近づけつつも、分類器のスコアを上げる方向に更新します。

また、ハイパーパラメータ C_c, C_dの影響をフェアにするために、更に次のように修正します。

これだけでは、ロバストな分類器ではうまくいくのですが、非ロバストな分類器ではうまくいかず、敵対的な例ができてしまうだけです。その原因は、非ロバストな分類器の勾配にノイズが多いことに依ります。そこで、 \nabla_\mathbf{x}\log{p_\phi}(y|\mathbf{x}_t, t)の代用品として、ロバストな分類器の勾配を、説明したい分類器の勾配を中心とする錐体上に射影したベクトルを用います。最終的のように生成過程を定義します。

実験

実験のセクションでは、ImageNetについて、DVCEとロバストな分類器に適用できる既存手法との比較と、様々なモデルのDVCEを比較しています。

DVCEとロバストな分類器に適用できる既存手法との比較

MNR-RN50というロバストなモデルに対して、提案手法であるDVCEと、BDVCE、l1.5-SVCEという手法を比較しています。ロバストなモデルなため、錐体射影は不要であるため、この実験では使っていません。定性的な評価は以下の図のとおりです。

DVCEでは、生成画像の信頼度が高く、また類似クラスへの転送や、全く異なるオブジェクトへの転送も扱えています。それに対して、BDVCEとl1.5-SVCEでは、必ずしも信頼度が高い画像が生成されていません。また、ディンゴからティンバーウルフのように奇妙な画像が生成されています。

定性的な評価に加えて、(元画像との)近さ、妥当性、写実性について、定量的な評価をしています。BDVCEよりは常によく、l1.5-SVCEよりもよいFIDです。

また、ユーザ調査からも意味のあるVCEが生成されていることが示されています。

モデルの比較

非ロバストモデルとロバストモデルについて、それぞれ比較がされています。非ロバストモデルは、Swin, ConvNeXt, Noisy-Student EfficientNetの比較がされています。ロバストモデルではないので、錐体射影を使用します。この結果から、SOTAモデルについても有効であることが確認できます。

ロバストモデルについては、MNR-RN50、MNR-XCiT、MNR-DeiTという3種類のモデルを比較しています。ロバストモデルのため、錐体射影を使用しません。この結果から、ResNetだけでなく、Transformer系のロバストモデルについても、DVCEを利用できることがわかります。

所感

VCEに対しては、ブラックボックスの深層学習を深層学習で説明するのか、という批判があるかもしれませんが、私自身はとても興味深い手法だと思います。そして、この研究は定性的には素晴らしく、またVCEをより使いやすくしています。その一方でこの手法が広く用いられるためには、もう一皮剥ける必要があるのではないでしょうか。この手法では、ロバスト分類器の勾配に非ロバスト分類器の勾配を射影していますが、この部分でロバスト分類器に依存しています。つまり、任意の分類器に対応していると言いながらも、使用するデータセットに対して、ロバスト分類器を準備する必要があります。常にロバスト分類器を訓練できるかは自明ではなく、その訓練の手間も発生するため、使用するシチュエーションはまだ限られると思います。ロバスト分類器を必要としないようなVCEの手法が登場することを期待しています。

この手法では、勾配を射影に錐体射影を採用していますが、非常に天下り的で、なぜこのような方法を使用するのかの説明が不十分だと思いました。これに対して、理論的な説明が導ければ、ロバスト分類器を必要性についての問題の手がかりになるかもしれませんね。

Mean confidenceの項目で、DVCEはl1.5-SVCEに劣っています。一方で、定性的な評価の図では、大半のサンプルでDVCEはl1.5-SVCEにconfidenceで勝っています。このことから、定性的な評価の図ではかなり恣意的にデータが選ばれている可能性があり、注意が必要な部分だと思いました。

さいごに

今回はNeurIPS2022についての参加報告として、開催地や会場の雰囲気、そして私が気になった論文について紹介させていただきました。実際NeurIPSに参加し、NeurIPSが非常に裾野が広い会議で、私が明るくない分野からも多く採択されてる会議だということを身を持って認識しました。これまで精通していなかった分野についても、もう習熟しなければならないなと感じさせられました。