私は博士号のために、理論的な機械学習、具体的には転移学習に取り組んでいます。
好奇心から、なぜ凸最適化のコースを取る必要があるのですか?
理論的機械学習の研究で、凸最適化から得られることは何ですか?
私は博士号のために、理論的な機械学習、具体的には転移学習に取り組んでいます。
好奇心から、なぜ凸最適化のコースを取る必要があるのですか?
理論的機械学習の研究で、凸最適化から得られることは何ですか?
回答:
機械学習アルゴリズムは常に最適化を使用します。損失やエラーを最小限に抑えるか、ある種のスコア関数を最大限にします。勾配降下法は、おそらくあらゆる機械学習コースでカバーされる「hello world」最適化アルゴリズムです。回帰モデルまたは分類モデルの場合は明らかですが、クラスタリングなどのタスクを使用しても、データに最適なソリューションを探しています(たとえば、k-meansはクラスター内の平方和を最小化します)。そのため、機械学習アルゴリズムがどのように機能するかを理解したい場合、最適化についてさらに学習することが役立ちます。さらに、ハイパーパラメーターの調整などを行う必要がある場合は、最適化も直接使用しています。
凸関数を処理する代わりに、以下のような凸曲面から遠く離れた損失曲面に遭遇することが多いため、機械学習にとって凸最適化はそれほど興味深いものではない、と主張することができます。
(ソース:https ://www.cs.umd.edu/~tomg/projects/landscapes/および arXiv:1712.09913)
それにもかかわらず、他の回答で述べたように、凸最適化はより速く、よりシンプルで、計算集約的ではないので、問題を「凸化」し(凸最適化を使いやすく)、非凸最適化を使用する方が簡単です。たとえば、勾配降下法などのアルゴリズムは、機械学習、特にニューラルネットワークで一般的に使用されます。これは、それらが「機能」し、スケーリングし、さまざまなソフトウェアに広く実装されているにもかかわらず、落とし穴を見つけることができる最高のものではないためです、NIPS 2017でのアリラヒミの講演で議論されたとおり。
一方、進化アルゴリズムなどの非凸最適化アルゴリズムは、MLコミュニティでますます認識されているようです。たとえば、神経進化によるニューラルネットワークのトレーニングは、最近の研究トピックのようです(arXiv:1712.07897も参照)。
ここには2つの質問があると思います。
@Timには最適化の理由に関する良い答えがあると思います。機械学習に興味のある方には、継続的な最適化をマスターすることを強くお勧めします。最適化プロセス/時間の経過とともにより良いソリューションを見つけることが、コンピューターの学習プロセスだからです。
私たちが凸関数に興味を持っている理由についてもっと話したいです。その理由は簡単です。凸最適化は「解決が容易」であり、解決するための信頼できるアルゴリズムがたくさんあります。
しかし、世界は凸面ですか?いいえ。なぜ凸性に取りつかれていますか?この比phorを確認してください
警官は、酔っぱらいが街灯の下で何かを探しているのを見て、酔っぱらいが何を失ったのか尋ねます。彼は鍵をなくしたと言い、二人とも一緒に街灯の下を見る。数分後、警官は彼がここで彼らを失ったと確信しているかどうか尋ねます、そして、飲酒は答えます、そして、彼は公園で彼らを失ったと。警官は、なぜここで捜しているのかと尋ね、酔った人は「これが光のある場所だ」と答えます。
最も重要なことは、利用可能な最適なソリューションがない問題に機械学習が適用されることです。最善の方法は、適切な近似値を見つけることです。
対照的に、最適化の問題がある場合、最適な解決策がありますが、通常、妥当な時間または妥当な処理能力では見つけることができません。
使用するツールとアルゴリズムは根本的に異なります。そのため、最適化クラスを取得してもすぐにはメリットはないと言いますが、関連するフィールドについて少し知っておくとよいでしょう。最適化の問題を認識できる場合は、機械学習アルゴリズムではなく最適化アルゴリズムに取り組む必要があることがわかります。それだけでも私は言う価値があります。
ディープラーニング(ニューラルネットワークで実際に広く使用されている転送学習)アプリケーションに適用される(凸)最適化に関心がある場合は、httpの第8章(ディープニューラルネットワークのトレーニングの最適化)を読むことを強くお勧めします://www.deeplearningbook.org/
凸最適化と、それがディープニューラルネットワークに適用されたとき、まだそれほど成功していない理由についての議論があります。もちろん、おそらく現在のコンセンサスを変えるこの分野の研究を行うことができます!
Jerome H. Friedmanから聞いたように、機械学習で開発されたメソッドは、実際には機械学習コミュニティに属していません。
私の観点から見ると、機械学習は他の分野のさまざまな方法の集まりに似ています。
統計学習の観点から、回帰と分類に関する3つの主な質問は次のとおりです。
近似器を引き出す関数ファミリーとは何ですか
関数をプルする方法の基準は何ですか
最適な機能を見つける方法とは
(1)で何らかの建設的な方法で操作するには-数学の最適化を使用することがどのように役立つかはそれほど明らかではありません
(2)に対して建設的な方法で操作すること-目的が目標であることは明らかです。そして、数学の最適化はそれに役立ちます。
(3)に対して何らかの建設的な方法で操作するには、数学の最適化が必要です。
数学の最適化にはいくつかの部分があります。
また、「確率的凸最適化の解決方法を誰も知らない」など、何らかの方法で「確率論」に対処する方法もあります 。
NonConvex最適化-通常、これによって人々は継続的な目標を意味しますが、曲率は異なる場合があります。この惑星の人々は、それを正確に解決する方法を知りません。そして実際、すべての方法は(1)
コンビナトリアル最適化-(2)よりもさらにワイルドになりました。マイナス演算子を適用することさえできないパラメーターになりました。1つの例は、ディシジョンツリーの「リージョン」です。そのため、対処方法は2つあります。a)問題を凸状にし、(1)のメソッドを使用しますb)総当たり攻撃を行います。膨大な数のパラメーターでは機能しません。c)ブルートフォースを行いますが、いくつかの貪欲な手順があります。それはCARTが行うことです。
だから、少なくとも私はあなたにそれをお話しすると思います:
I)凸最適化は、ほとんどの最適化問題の中心です。
II) 「01:15最適化は、実際にはMLやAIよりも大きなテーマですが、実際にはより大きなテーマです。」 (https://www.youtube.com/watch?v=uF3htLwUHn0&t=992s)