雑記: NeurIPS 2019 Proceedings の「不確か」を含むタイトル

キャラクターは架空のものです。何かありましたらご指摘いただけますと幸いです。
参考文献

f:id:cookie-box:20190101155733p:plain:w60

NeurIPS 2019 Proceedings のサイトをみるとタイトルに uncertain を含む発表が…17件もありますね。上から順にメモしていきますか…面倒ですが…。なお、現時点でクリック先で閲覧できるアブストラクトを一通り読んだのみの直感的な理解であることに留意ください。

ノイジーなラベルから密な対応を学ぶために不確かさを利用するんでしょうか? 機械学習モデルは基本的に人間が作成した教師データに基づいて学習しますが、DensePose のような場合はアノテーションに限界があるといっていますね。この DensePose というのはサイト上の画像をみるに「ある幼児の体の表面のこの座標がある大人の体の表面のこの座標に対応している」のような対応を取るものなんでしょうか。それは確かにアノテーションし切れませんね…。なので、ニューラルネットの出力としてラベルだけでなくラベルにわたる分布も出すようにして、アノテーションの不確かさを捉えるようにした…? 先行手法に比べて、どこで誤るかの相関も捉えているということですが、これって例えば肩のある点で対応が誤っていたら、肩から少しずれたところでも対応が誤っているだろう、ということなんでしょうか。それで、DensePose のタスクをより正確に解くことができたと。また、複数のモデルを組み合わせてより精度を向上させた例も紹介されているとのことです。

Verified Uncertainty Calibration
Ananya Kumar, Percy S. Liang, Tengyu Ma
天気予報やパーソナライズ度な薬の需要予測では確率が正しく推測されるようにキャリブレーションをするということですが、多くのモデルでこのキャリブレーションは out of the box になされているのではなくモデル出力へのポスト処理としてなされているということです…? この out of the box にやってないとは「ちゃんとやってないよね?」という意味なんでしょうか…。例えばよく知られている「Platt scaling」や「temperature scaling」という手法は実は報告よりキャリブレーションされておらず、自分たちがどれだけ誤っているかに気付けないと…えぇ…。「histogram binning」というどれだけ誤っているか計測できる手法もあるんですが、これはこれで精度を出すには膨大なサンプル数を必要とするようですね。だから「scaling-binning calibrator」を提案するそうです。まずパラメトリックな関数をフィッティングして、次にその値を適切に bin で切るのですかね? そうするとサンプル数がより抑えらえるそうです。でもこれでもサンプルが最小で済むというわけではないのですかね…suboptimal とあります。それで、CIFAR-10 と ImageNet で実験して histogram binning よりも 35% 低いキャリブレーションエラーを達成したとあります。

Modeling Uncertainty by Learning a Hierarchy of Deep Neural Connections
Raanan Yehezkel Rohekar, Yaniv Gurwicz, Shami Nisimov, Gal Novik
ニューラルネットで不確かさもモデリングするのにベイジアンニューラルネットは有力な方法ですが、ネットワークの重みの事前分布の選択が必要になり、正規分布や疎性が利用できる分布がよく選択されるということですね。しかしこれらのような事前分布はデータの生成プロセスに agnostic、まあデータの生成プロセスを無視しており、訓練データから外れたテストデータに不適切な推測をしてしまう恐れがあると。不適切というのはそのようなデータについてはまだ何もわからないはずだというデータに何か自信満々に推測してしまうといったことなのでしょうか。それなら何となくわかるような気はしますが。それで、入力データと識別関数に交絡因子がある? だからその交絡因子もモデリングする? 生成ネットワークと識別ネットワークがネットワークの結合っぷりを共有するというように読めますが…。それでなんか最終的に事後分布に応じてヒエラルキーからサンプリングするとあるんですが、ヒエラルキーということは最終的なモデルの中にも社長さん、部長さん、課長さん、平社員さんがいらっしゃるのでしょうか…。タイトルからするとネットワーク結合にヒエラルキーがあるというので「この結合は社長さん」ということですか…??

Propagating Uncertainty in Reinforcement Learning via Wasserstein Barycenters
Alberto Maria Metelli, Amarildo Likmeta, Marcello Restelli
「価値関数の不確かさはどのように伝播していくだろうか?」と始まっていますね。囲碁や将棋のAIでは盤面の価値を評価しますけど、そのような価値の不確かさですよね。この論文ではベイズ手法で価値関数の不確かさをモデリングして、ワッサースタイン重心の伝播をみるとあります。さらに Wasserstein Q-Learning (WQL) というアルゴリズムを考案すると。この WQL は適当な仮定の下で理論的に望ましい性質をもつということですが…? Atari ゲームでの実験でも WQL の有効性を示しているようですね。

Uncertainty-based Continual Learning with Adaptive Regularization
Hongjoon Ahn, Sungmin Cha, Donggyu Lee, Taesup Moon
Uncertainty-regularized Continual Learning (UCL) なる新しい継続学習のアルゴリズムを提案するとのことです。変分推論をベースにしているようです。正則化に基づく手法では、正則化の強さを決めるメモリコストの問題や、忘却する性能に欠ける問題があるそうですが、UCL は KL ダイバージェンス項を平均場近似の変分下限と解釈してこれらの問題を克服したと…? そもそも継続学習というのがよくわかっていませんが、学習し続けるのだから状況が変化したときはさっぱり忘れて新しく学習するべきといった感じなのでしょうか。2つの問題の後者については、重要なパラメータの値を維持してモデルを安定させる正則化項と、新しいタスクを学ぶための正則化項を新しく導入したようですね。実験でも UCL の有効性を実証しています。ソースコードへのリンクもありますね。
副部長、今回は5件ごとに背景色変えたいんでここで交代してください。

f:id:cookie-box:20190101160814p:plain:w60

私たちは背景色みたいな概念に agnostic でないといけないんじゃないのかな…。

Successor Uncertainties: Exploration and Uncertainty in Temporal Difference Learning
David Janz, Jiri Hron, Przemysław Mazur, Katja Hofmann, José Miguel Hernández-Lobato, Sebastian Tschiatschek
Posterior sampling for reinforcement learning (PSRL) という、強化学習で効果的に探索と利用のバランスを取る手法があると。さらに Randomised value functions (RVF) というのが PSRL をスケールさせる有力な手段とみられているらしいけど、ニューラルネットにそれを組み合わせても PSRL の性質は上手く発揮されなかったらしい。不確かさの伝播でもっても駄目だったって。だから Successor Uncertainties (SU) という RVF の実装方法を考案すると。これはニューラルネットワークなのかな?? まあそれで SU は Atari ゲームで人間とか Bootstrapped DQN とかを上回ったって。

Single-Model Uncertainties for Deep Learning
Natasa Tagasovska, David Lopez-Paz
「偶然な不確かさ」と「わかっている不確かさ」を1つのモデルでモデリングするみたいだね。前者の不確かさに対しては、Simultaneous Quantile Regression (SQR) っていうので目的変数のクオンタイルを捉えるらしい。後者の不確かさに対しては、Orthonormal Certificates (OCs) っていう、全ての訓練データを 0 に移す関数を用意して、これで 0 に移されなかったら out-of-distribution であるシグナルになると。なるほど、それなら「訓練データになかったから知らないよ」とわかるね。それらの工夫で不確かさも含めたモデリングをアンサンブルなしで実現したらしい。まあ別にモデルのアンサンブルが必要となってそこまですごい困るってわけでもないと思うけど、不確かさのモデリングをアンサンブルに丸投げせずにきちんと考えるってのは大事そうだな…。

Accurate Uncertainty Estimation and Decomposition in Ensemble Learning
Jeremiah Liu, John Paisley, Marianthi-Anna Kioumourtzoglou, Brent Coull
お次はアンサンブルか。Bayesian nonparametric ensemble (BNE) という手法を提案するらしい。これも色んなとこからくる不確かさを考慮するっていってるな…。その色んなとこってどこなんだろう。noise と error ってことなのかな。さっきの論文でいう「偶然な不確かさ」と「わかっている不確かさ」に相当しそうだけどやっぱりしないのかな。error っていうのは損失があるとわかっているけど表現力の限界で埋められないといったイメージがあるな…わからないけど。まあそれで、不確かさをロバストに推定できる理論的な保証もあるらしい。あと、不確かさをそのソース別に分解もできるんだって。大気汚染のデータで実験して有効性を示しているらしい。

feature importance はその特徴がモデル出力にどれくらい影響するかを推定した量で、モデルを評価したり解釈したりするのに重要だけど、高次元データの feature importance の高速な推定やその不確かさの推定は課題として残っているとあるね。そこで、機械学習モデルの判断を解釈するのを因果学習のタスクと捉えて、causal explanation (CXPlain) なるモデルを学習するらしい。CXPlain は対象の機械学習モデルにある入力を入れるとどんな出力をどれくらい出てきそうかをモデリングするのかな? CXPlain を一旦学習すればそれを利用して簡単に対象の機械学習モデルを説明できると。ブートストラップアンサンブルによって feature importance の不確かさも定量評価できるらしい。テストデータにおける feature importance も上手く予測できるのかな?

Adaptive Temporal-Difference Learning for Policy Evaluation with Per-State Uncertainty Estimates
Carlos Riquelme, Hugo Penedones, Damien Vincent, Hartmut Maennel, Sylvain Gelly, Timothy A. Mann, Andre Barreto, Gergely Neu
on-policy で trajectory データのバッチから価値関数を推定することを考える。TD手法とモンテカルロ手法の様々な問題に焦点を当てると。TD法はバリアンスは小さいがバイアスは大きい傾向があるらしい。モンテカルロ手法はその逆なのかな? それで、TD法のバイアスは局所近似の誤差が増幅された結果で、各状態において適応的に TD かモンテカルロかスイッチするモデルで誤差が軽減されるんだって。このスイッチ式の手法だと学習の信頼区間から TD のバイアスを検知できるっていってるのかな? まあ性質の異なる2つのモデルをそれぞれの得意な場面でだけつかうようにできるのならそれはよさそうだよね。
ここまでで10件だね。うち4件目、6件目、10件目が強化学習だけどこれらはもうわかんないな…。

f:id:cookie-box:20190101155733p:plain:w60

11~15件目です。

Uncertainty on Asynchronous Time Event Prediction
Bertrand Charpentier, Marin Biloš, Stephan Günnemann
未来に発生するイベントを予測するようなときに、遠い未来のできごとは自信がないはずだから、不確かさを捉えるのは大切だということでしょうか?? それで、WGP-LN と FD-Dir というモデルを提案するようですね。それぞれ probability simplex 上の分布にロジット正規分布とディリクレ分布をつかうと。probability simplex というのがよくわからないですが逆にいうとディリクレ分布がその上に分布しているというようなのが probability simplex なのでしょうね。ディリクレ分布は確率分布たちの上の確率分布ですね。これらの分布が時間に依存するということです。RNN を Gaussian process または function decomposition と組み合わせて分布のパラメータの時間発展を表現するようですね。これ、遠い未来の予測ほどロジット正規分布とディリクレ分布の確率密度が無情報な分布のところに集まっていてほしいということですよね…? まあそれで提案モデルは色々なタスクでの実験でハイパフォーマンスを発揮したそうです。

A Simple Baseline for Bayesian Uncertainty in Deep Learning
Wesley J. Maddox, Pavel Izmailov, Timur Garipov, Dmitry P. Vetrov, Andrew Gordon Wilson
SWA-Gaussian (SWAG) なる、シンプルでスケーラブルで汎用的な不確かさのモデリングキャリブレーション手法を提案するそうです。SGD による学習時に Stochastic Weight Averaging (SWA) という手法を用いるとニューラルネットの汎化性能の向上に寄与するらしいですが、SWAG はどうもそれにガウシアンな不確かさを加味した版ですね。SWAG で out-of-sample の検知や、キャリブレーションや、転移学習も上手くできるらしいです。比較した手法として変分推論や MC dropout、KFAC Laplace、temperature scaling などの名前が挙がっていますね。

On Mixup Training: Improved Calibration and Predictive Uncertainty for Deep Neural Networks
Sunil Thulasidasan, Gopinath Chennupati, Jeff A. Bilmes, Tanmoy Bhattacharya, Sarah Michalak
Mixup というのは近年提案された、訓練中に追加的にサンプルを生成するニューラルネットワークの訓練手法であるそうです。ランダムなデータのペアを合成して新しいデータとするのですかね。シンプルなのに画像分類におけるデータの増強に驚くほど効果を発揮するそうです。しかしこれまで Mixup で訓練したモデルのキャリブレーションについては触れられてこなかったと。なんと、Mixup で訓練したモデルはよくキャリブレーションされていたとのことです。つまり、モデルが出力する softmax スコアは実際の尤度をよく表現していたと。また、単に特徴を混合したのでは同じようなよいキャリブレーションは得られず、したがって Mixup でのラベルスムージングが重要な役割を果たしていたといえると指摘しています。さらに、Mixup で訓練したモデルは out-of-distribution や random-noise データに over-confident になりにくかったともありますね。そんなこんなで、ニューラルネットの典型的な overconfidence はハードラベルによる学習からくると結論付けています。

Can you trust your model's uncertainty? Evaluating predictive uncertainty under dataset shift
Jasper Snoek, Yaniv Ovadia, Emily Fertig, Balaji Lakshminarayanan, Sebastian Nowozin, D. Sculley, Joshua Dillon, Jie Ren, Zachary Nado
「モデルの不確かさを信頼できますか?」とは語りかけてくるタイプのタイトルですね…。不確かさを取り扱う深層学習手法はベイズ手法であるものないもの色々提案されていますが、著者らの知る限りでは、これらの手法について厳密なデータのシフトへの性能が比較されていないと。そこで分類タスクの SOTA な手法たちについてデータのシフトが精度やキャリブレーションに与える影響を調査したとのことです。実際、伝統的(?)なキャリブレーション手法は性能がよくなかったそうです。しかしいくつかの手法は様々なタスクですばらしい性能をみせたと。

アンサンブルによる不確かさの推定は誤分類の検知や、out-of-distribution の検知や、敵対的攻撃の検知に応用されていると。Prior Network というのも事後分布たちの上のディリクレ分布をパラメタライズすることで分類モデルのアンサンブルを抽出できると。これらのモデルは out-of-distribution に対する性能で MC-Dropout などの比較手法を上回っていると。しかし、Prior Network は分類するクラスが多いとき同じ学習方法だとスケールしない? よくわかりませんが、クラスが増えると事後分布たちの空間がどんどん大きくなりそうな感じはしますね。そこでこの論文では、ディリクレ分布間の reverse KLダイバージェンスというのをつかって適切な学習を実現したそうです。さらにこの論文では、Prior Network を利用した敵対的攻撃の検知とか敵対的トレーニングの一般化もやっているそうです。提案手法によって CIFAR-10 や CIFAR-100 で学習したモデルを攻撃するには、他の敵対的トレーニングをしたモデルや MC-Dropout よりもとても苦労したと。
…しかし、Mixup がキャリブレーションに有効かどうかもまたデータドメインによりそうですよね? それをいい出すと全てのモデルが有効かどうかはデータドメインによりますが…。しかし、「不確かさ」パートには「既存手法のこんな側面には焦点が当てられてこなかった」という論文がちょいちょい見受けられますね。

f:id:cookie-box:20190101160814p:plain:w60

最後16、17件目が以下だね。

Bayesian Layers: A Module for Neural Network Uncertainty
Dustin Tran, Mike Dusenberry, Mark van der Wilk, Danijar Hafner
ベイジアン層」というのを提案するらしい。ベイジアンニューラルネット層とか、Dropout層とか、確率的アウトプット層とか、ガウス過程層とかかかれているけど、既存のニューラルネットの対応する層をこれらに置き換えろって話なのかな? 機械翻訳タスクで実験したみたい。

Using Self-Supervised Learning Can Improve Model Robustness and Uncertainty
Dan Hendrycks, Mantas Mazeika, Saurav Kadavath, Dawn Song
self-supervised learning はラベルを必要としない便利な方法だけど、アノテーションの手間が省ける以上のメリットは世間一般に認識されていない、っていってるね。でも、著者らは敵対的サンプルや、ラベルの腐敗(どう訳すのかな)や、common input の腐敗に対するロバスト性とかがあるのを発見したと。さらに out-of-distribution の検知もできて、完全な教師あり学習のパフォーマンスを凌駕したと。

つづかない