あらすじ
この講演の狙いは、メタ学習および“学習の学習”は一般的な人工知能の開発に重要であることをあなたに説得することです。
モデリング、レコメンダシステムもしくはデータクラスタリングの予測のためのメタ学習のアプローチに関するいくつかの例を示し、トップAI研究所による強化学習のためのメタ学習の最近の研究について議論します。
はじめに、メタ学習が何にとって良いのかということを説明しなくてはいけません。メタ学習という用語は多くの異なった定義と意味を持っています。
メタ学習の定義
- Donald B. Maudesley(1979)は「学習者が気づき、次第に認知、照会、学習そして獲得した成長の習慣をコントロールできるようになる過程」とした。
- John Biggs (1985)はその状態を「気づき、自分自身で学習をコントロールすること」と説明した。
- メタ学習システムは学習の経験と適合したサブシステムを必ず含んでおり、経験はシングルデータセットもしくは異なったドメインや問題上にある以前の学習エピソードから取り出されたメタ知識のエクスプロイトによって得られる。Vitala (2005)
- 主題知識はベース学習に変換され、ベーシ学習に特定のタスクのための経験が蓄積される。メタ学習はより高いレベルで開始され、いくつかの学習システムのアプリケーションで蓄積された経験と関係している。Brazdil (2009)
- 学習上の問題に直面した状況では、メタ学習は自動学習プロセスを自身でモニターし、その動きに順応しパフォーマンスをより良くしようと努めます。Vanschoren (2010)
ご覧の通りメタ学習は、段階的な学習能力を持つAI開発という最初の主題の課題に関係しています。
メタ学習と知識ベース
メタ学習における一つの主要な方向性は、知識リポジトリ(Knowledge Repository)を活用するメタレベルシステムを持つことです。
解決されている問題とベース学習者のパフォーマンスをメタデータに保存することができます。ここでは、通常メタデータはデータセットから抽出されます。
メタデータ
StatLog type DCT
- Simple Measures
- Statistical Measures
- Information-based measures
Histograms based DCT
関係性を持つ属性値の分布に関する情報(例:象徴的な属性とクラスとの間に共通する情報)
Landmarking
シンプル(速い)学習者のパフォーマンスを使用して、候補アルゴリズムのパフォーマンスを予測する
新しい問題に対しては、似たメタデータを持つ問題を見て、最良の実行アルゴリズムを推奨します。
現代の知識リポジトリはクラウドベースサービスにすることができ、多くのメタデータ、フローそしてオントロジを含むことができます。
より詳しい情報については、こちら概要(this overview)を参照、またはこの具体的な一例(one particular example)を確認してください。
メタデータベースとアルゴリズム推奨の問題点
- もしアルゴリズム/結果の互換性がない、もしくは同等ではなかったら?
- 推奨知識フローと前処理パイプライン?
- アンサンブルとアルゴリズムの階層性アンサンブル?
特定のアルゴリズムを推奨する問題点はアルゴリズムの問題点が無限大ということです。特にFrankenstein ensemblesは機械学習モデルのトポロジーがどれくらい複雑に成りうるかを示す良い例です。
メタ学習とアンサンブル
メタ学習のもう一つの方向性はアンサンブルです。
アンサンブル VS メタ学習
- 上記の定義に基づくと、バギングはメタ学習?それともブースト?それともスタッキング?
ブーストやスタッキングのようなシンプルなモデルアンサンブルメソッドであっても、上記の定義を考慮するとメタ学習メソッドであると考えられます。
多くのアンサンブルアプローチが存在し、それらは人間の脳の構造に似た階層的な手法でさらに結合(further combined)することもできます。
成長する機械学習モデル
次のメタ学習アプローチはディープラーニングの先駆的(further combined)な教授であるA.G. Ivakhnenkoに基づいています。彼は多くの誘導アプローチ(many inductive approaches)を50年前に導入しました。
私の論文とその後の研究において、私は彼の階層型適応スタッキングモデルとも考えられるGMDH MIAアプローチにインスパイアされました。
GAME neural networksはデータから誘導的に成長し、与えられたタスクに適応します(GAME neural networks grow)。
面白い名前を持つもっと多くの誘導アプローチが存在し、 NEAT もしくは HyperGPは強化学習のために設計されています。
また、最近のHyper Networksでは、長期記憶機能を備えたRecurrent Neural Netsを成長させることができます。
Neuroevolution of LSTM networks (CoDeepNEAT)にもまた期待ができそうです。
複数の尺度によって機械学習モデルを評価する時、与えられた問題に対する適切なトポロジーは特に重要です。最も重要な尺度は汎化能力です。
多くの候補アルゴリズムを持っている時それは難しいのですが、頻繁にモデルトレーニング/リコールを考慮する時間を取るべきです。
最近の実験では、私たちはごくわずかな時間内に合理的で正しいモデルを得ることができるということを示しており、それはあなたの資源に限りがある時に重要です。よりシンプルなモデルはより良くより速く学習します。
しかし、複雑なタスクに対しては、より複雑な類型が必要になります。メタ学習アルゴリズムは与えられたタスクに対するトポロジの最適化に役立ちます。
H2O.ai のAirline dataset上における私たちの結果は、シンプルなシグモイドモデルのアンサンブルは、拡張性と学習効率に関して言えばディープラーニングモデルの性能を凌ぐかもしれないということを示しています。
また、画像分類子の大規模な進化に関する最近の論文は、同様のアプローチの別の例です。
メタ学習とハイパーパラメータの最適化
メタ学習に強い関わりのあるもう一つの領域は、学習アルゴリズムのグローバルパラメータの最適化です。Evolutionary techniquesはこの目的に使用することができます。
しかし、最も一般的なアプローチは、単純にブルートフォースグリッド検索もしくはランダム検索です。
より洗練されたアプローチはBayesian methodsベースに基づいたものです。先日紹介されたBanditベースメソッドのHyperBandもまたメタ学習アプローチです。
モデルの学習を予定より早く終わらせることができる際には、見込みのある学習者に指数関数的により多くのリソースを与えることによって、私たちは重要な数多くのリソースを節約し、学習を高速化することができます。
このアプローチの欠点は複雑なモデルが適応するまでにより多くの時間を必要にすることと、学習の初期段階において最終的なパフォーマンスを評価することが難しく、そのため注意をしながら使用しなければいけないということです。
これまで、私たちはモデリングの範囲内でメタ学習について議論していました。もう一つの機械学習領域は推奨システムに非常に類似しています。
我々の実験は、たくさんの推奨システム(recommender systems)を評価するのは簡単ではないということ、そのためモデリングの管理は容易ではないということを示しています。
管理されていない学習メソッドも同様の問題点を持っている。管理されていない尺度のみが利用可能なのです。
クラスターアンサンブルを生成することも可能ですが(generate cluster ensembles)、最適化の方向を明らかにすることのできる情報だけがこれらの管理されていない尺度です。
強化学習の定義
- 環境とのやりとりによって学習する
- 教えられたり、また過去の経験に基づいて行動を選択したりすることよりも行動の結果から学習する
- 強化学習には報酬のシステムを使用して自ら考え教えることが含まれます
最も難しい機械学習領域は強化学習です。通常、あなたは環境や報酬もしくは罰から学習しなくてはいけません。
強化学習における最先端のコントローラーは価値関数(ゲーム内の状態の質)やポリシー(行動のシークエンス)を推定するためにニューラルネットワークを使用します。
AlphaGO にはさらに多くのネットワークと洗練されたトレーニングプロシージャーが存在しています。
それらすべてのネットワークはその特定のタスクに調整されていますが、ネットワークのトポロジーにおいては特に改善の余地があると私は信じています。
DeepMindの研究によるもう一つの面白い論文は、LSTMリカレントネットワークもしくはstacked LSTMsによってどのくらいポリシーまた価値関数がモデル化できるかを示しています。
この研究はますます複雑化するタスクの結果を示し、またそれは漸進的学習の課題(challenge on gradual learning)に適用することができます。
より多くの研究とアプローチが登場しており、例えば、Neural Episodic Controlは、より速く学習を行うDifferentiable Neural Dictionaryを持つ深層強化学習エージェントです。
メタレベルの知識を学習することに焦点を当てた、この興味深いメディア記事(medium article)を見てください。
メタ学習による賢い強化学習エージェントのポテンシャルは大きいと私は信じています。私たちはRecombeeの一つを用いて、特定のシナリオ(電子メール、関連商品、ホームページなど)のために推奨エンジンを最適化します。
報酬シグナルは成功したコンバージョンであり、あなたは推奨アルゴリズムと製造中のそれらのハイパーパラメータを最適化し、コンバージョンレートを最大化することができます。
同様に、Adobeの研究者は強化学習システムによってどの程度Customer Lifetime Valueが最適化可能か(can be optimized)を示しています。
自動運転自動車、ナビゲーティングロボットを含む非常にたくさんのアプリケーションドメインが存在し、強化学習の分野では全てのトップAI研究所が活動しており、メタ学習を大いに使用しています。
多くのインスピレーションはIDSIA、 OpenAI、DeepMindで見つけることができます。
メタ学習は一般的な人工知能に重要です。一般的なAIへの第一歩は漸進的学習の進歩です。そして、それは同様にGoodAIの課題でもあります。
あなたのAIを、より賢いチャットボットへの道である、よりよい質問への回答のためのシンプルなタスク(train your AI on simple tasks towards better question answering)でトレーニングすることができます。
原文
チャットボットライフとの提携により、翻訳し掲載しています。
チャットボットライフとは、最新のボット、AI、NLP、ツール等を扱うメディアです。