直交化
機械学習システムを構築する際の課題の1つは、試して変更できることが多すぎることです。たとえば、調整可能なハイパーパラメータが多数あります。これらの非常に効率的な機械学習のエキスパートには特徴があることに気づきました。彼らは明確な考え方を持っています。彼らは特定の効果を達成するために何を調整すべきかについて非常に明確です。このステップは直交化と呼ばれます。そうです。
これは古いテレビの画像です。画像のさまざまなプロパティを調整するために使用できる多くのノブがあるため、これらの古いテレビには、画像の垂直方向の高さを調整するためのノブと、画像の幅を調整するための別のノブがあります。台形の角度を調整するためのつまみ、画像の左右のオフセットを調整するための別のつまみ、画像の回転角度を調整するための別のつまみなどもあります。テレビの設計者は回路の設計に多くの時間を費やしていましたが、当時は通常、各ノブに比較的明確な機能を持たせるためにアナログ回路でした。これを調整するつまみ(高さ)、これを調整するつまみ(幅)、これを調整するつまみ(台形角度)など。
対照的に、ノブを調整して 、像高を示し 、画像幅を表し 、台形の角度を表します 画像が水平軸などの座標を表します。このつまみを調整すると、画像の高さ、幅、台形角度、パン位置がすべて同時に変化します。このようなつまみを使用すると、画像が領域の中央に表示されるようにテレビを調整することはほとんど不可能です。
したがって、この場合、直交化とは、TVデザイナーがそのようなノブを設計して、各ノブが1つのプロパティのみを調整できるようにすることで、TV画像の調整がはるかに簡単になり、画像を中央に調整できるようにすることです。
次に、直交化の別の例を示します。運転について考えると、車には3つの主要なコントロールがあります。1つ目はステアリングホイールです。ステアリングホイールは、左右にどれだけ回転するか、そしてスロットルとブレーキを決定します。これらの3つのコントロールで、1つは方向を制御し、他の2つは速度を制御します。これにより、解釈が容易になります。さまざまなコントロールのさまざまなアクションが車の動きにどのように影響するかを理解します。
誰かがこのような車を作り、ゲームパッドを作り、ハンドルの1つの軸が制御されると想像してみてください 操舵角-速度は、制御軸があります ステアリング角度 車速が、理論的には、あなたはこれらの2つのノブを取得したい調整することにより、角度や車のスピードを調整しますが、これだけで舵角比制御することができ、別々の速度制御がはるかに困難です。
したがって、直交化の概念は、次元を思い付くことができることを意味します。この次元で実行したいことは、ステアリング角度を制御することであり、速度を制御する別の次元であり、ステアリング角度のみを制御するノブが必要ですこの駆動例のもう1つのノブは、実際には速度を制御するスロットルとブレーキです。しかし、2つを混合するためのコントロールノブがある場合、たとえば、そのようなコントロールデバイスはステアリング角度と速度に同時に影響し、同時に両方のプロパティを変更するため、希望の速度と角度で車を作ることは困難です。前進しなさい。ただし、直交化後、直交とは互いに90度を意味します。直交制御デバイスを設計する場合、最も理想的な状況は、必要な実際の制御の性質と一致しているため、パラメーターをより簡単に調整できます。ステアリング角度は、スロットルとブレーキだけでなく、独立して調整できるため、車は思い通りに動きます。
では、これは機械学習とどう関係しているのでしょうか?教師あり学習システムを作成するには、通常、システムのノブを調整する必要があります。
確認することは4つあります。まず、通常、少なくともトレーニングセットでシステムが取得した結果が良好であることを確認する必要があります。そのため、トレーニングセットのパフォーマンスは、ある種の評価を許容レベルに渡す必要があります。アプリケーションによっては、人間レベルのパフォーマンスですが、アプリケーションによって異なります。来週、人間レベルのパフォーマンスと比較する方法について詳しく説明します。ただし、トレーニングセットで適切に実行した後、システムを開発セットで適切に実行し、次にシステムをテストセットで適切に実行する必要があります。最終的には、テストセットでのシステムのコスト関数が実際の使用で十分に機能するようにし、たとえば、これらの猫の画像アプリケーションのユーザーを満足させる必要があります。
テレビの調整の例に戻りましょう。テレビの画像が広すぎる、または狭すぎる場合は、つまみで調整してください。5つの異なるつまみを注意深く調整する必要はありません。他の画像のプロパティにも影響します。 TV画像の幅を変更するには、ノブが必要です。
同様に、アルゴリズムがトレーニングセットとコスト関数にうまく適合しない場合は、ノブが必要です。はい、これをノブまたは特定のノブセットを表すために描画します。これを使用して、アルゴリズムを調整してトレーニングセットにうまく合わせることができるため、デバッグに使用するノブは、より大きなネットワークをトレーニングできる場合や、Adam最適化アルゴリズムなどのより優れた最適化アルゴリズムに切り替えることができる場合です。等 今週と来週には、他のいくつかのオプションについて説明します。
対照的に、アルゴリズムが開発セットにうまく適合していないことがわかった場合は、独立したノブのセットを用意する必要があります。そうです、これは私がうまい具合に描いたもう1つのノブです。独立したノブのセットを用意したいと考えています。デバッグ。たとえば、アルゴリズムが開発セットでうまく機能しない場合、トレーニングセットではうまく機能しますが、開発セットではうまく機能せず、調整する一連の正規化されたノブがあります。システムが2番目の条件を満たすようにしてください。テレビとの類似点は、テレビの幅を調整したことです。画像の高さが正しくない場合は、別のノブを使ってテレビの画像の高さを調整する必要があります。このノブがテレビの幅に影響を及ぼさないようにしてください。トレーニングセットを増やすことは、もう1つの利用可能なノブである可能性があります。これは、学習アルゴリズムが開発セットのルールをより適切に要約するのに役立ち、TV画像の高さと幅が調整されます。
3番目の基準を満たさない場合はどうなりますか?システムが開発セットでは問題なく機能するが、テストセットでは機能しない場合はどうなりますか?その場合は、ノブを調整する必要があります。これは、より大きな開発セットになる場合があります。なぜなら、開発セットではうまくいくが、テストセットではうまくいかない場合、これは、開発セットに過剰適合していることを意味し、一歩下がってより大きな開発セットを使用する必要があるためです。
最後に、テストセットでうまく機能しても、猫の画像アプリケーションのユーザーに良いエクスペリエンスを提供しない場合は、戻って開発セットまたはコスト関数を変更する必要があります。システムが特定のコスト関数に基づいてテストセットで適切に機能する場合、実際のアルゴリズムのパフォーマンスを反映できません。つまり、開発セットの分布が正しく設定されていないか、コスト関数です。測定されたインデックスが間違っています。
これらの例については、すぐに1つずつ説明します。これらの具体的なノブについては、後で詳しく紹介します。今週の後半と来週に紹介します。したがって、すべての詳細を理解できなくても心配する必要はありませんが、この直交化プロセスの概念を理解していただければ幸いです。4つの問題のうちどれを調整し、その問題を解決するために調整できるさまざまなことを明確にする必要があります。
ニューラルネットワークをトレーニングするときは、通常、早期停止を使用しませんが、この手法は悪くありません。多くの人がこれを行います。しかし、個人的には、このノブはトレーニングセットへの適合に影響を与えるため、早期停止で分析するのは難しいと思います。早期に停止すると、トレーニングセットへの適合があまり良くないためです。開発セットのパフォーマンスを改善するために使用されるため、このノブはそれほど直交していません。ノブは同時に2つのことに影響するため、ノブがテレビ画像の幅と高さの両方に影響するのと同じです。こんな風に使ってはいけないということではなく、使いたくても大丈夫です。しかし、ここで書いた他の方法など、より直交する制御がある場合は、これらの方法を使用してネットワークを調整する方がはるかに簡単です。
だから、皆さんがテレビ画像を見るのと同じように、直交化の意味についていくつかの考えを持っていることを願っています。私のテレビの画像が広すぎるので、このつまみ(幅つまみ)を調整する必要があります。または高すぎるので、そのノブ(高さノブ)を調整する必要があります。または台形すぎるので、このノブ(台形の角度ノブ)を調整する必要があります。
機械学習では、システムを観察してこの部分が間違っていると言うことができる場合、トレーニングセットではうまくいかない、開発セットではうまくいかない、テストセットではうまくいかない、または、テストセットではうまく機能しますが、現実の世界では良くありません。問題の原因を突き止める必要があります。対応するノブまたは対応するノブのセットがあり、問題を解決するだけで機械学習システムのパフォーマンスが制限されます。
これは、今週と来週、システムパフォーマンスのボトルネックを診断する方法について説明する予定です。システムの特定の側面のパフォーマンスを向上させるためにシステムを調整するために使用できる特定のノブのセットもあります。このプロセスについて詳しく説明します。
コースPPT