20

さまざまなクラスの機械学習アルゴリズムの違いを感じようとしています。

進化的アルゴリズムの実装は、ニューラル ネットワークの実装とはかなり異なることを理解しています。

ただし、どちらも、潜在的にノイズの多いトレーニング/履歴データのセットからの入力と出力の間の相関関係を判断することを目的としているようです。

定性的な観点から、進化的アルゴリズムとは対照的に、ニューラル ネットワークのより適切なターゲットとなる問題領域はありますか?

それらを補完的な方法で使用することを提案するいくつかの記事をざっと見てきました。そのためのユースケースの適切な例はありますか?

4

7 に答える 7

19

取り決めは次のとおりです。機械学習の問題では、通常、次の 2 つのコンポーネントがあります。

a) モデル (関数クラスなど)

b) モデルの適合方法 (最適化アルゴリズム)

ニューラル ネットワークはモデルです。レイアウトと重みの設定が与えられると、ニューラル ネットワークは何らかの出力を生成します。バックプロパゲーション、対照的発散など、ニューラル ネットワークを適合させる標準的な方法がいくつかあります。ただし、ニューラル ネットワークの大きなポイントは、誰かが「正しい」重みを与えた場合、問題をうまく解決できるということです。

進化的アルゴリズムは、モデルの適合という 2 番目の部分に対処します。ここでも、進化的アルゴリズムに対応する標準モデルがいくつかあります。たとえば、進化的プログラミングは通常、特定のタイプのすべてのプログラムを最適化しようとします。ただし、EA は基本的に、特定のモデルの適切なパラメーター値を見つける方法です。通常、クロスオーバー操作が合理的な方法でモデル パラメーターを記述し、EA クランクを回してパラメーターの妥当な設定を取得します。

たとえば、進化的アルゴリズムを使用してニューラル ネットワークをトレーニングすることができます。ただし、EA が機能するために必要な重要な部分は、クロスオーバー操作が妥当なものでなければならないということです。ある妥当な設定からパラメータの一部を取得し、別の妥当な設定から残りのパラメータを取得することにより、多くの場合、さらに良いパラメータ設定。ほとんどの場合、EA が使用されますが、これは当てはまりません。最終的にはシミュレーテッド アニーリングのようなものになり、混乱を招き、非効率的になります。

于 2009-03-10T01:44:08.580 に答える
4

手書き認識など、「直感」を必要とする問題は、ANN に適しています。膨大な量の入力でニューラル ネットワークをトレーニングし、完了するまでそれを評価します (これには長い時間がかかります) が、その後、手書きを「推測」できるブラックボックス アルゴリズム/システムが得られるため、小さな評価を維持できます。脳とそれをモジュールとして長年使用するか何か。複雑な問題に対して高品質の ANN をトレーニングするには数か月かかることがあるため、最悪の場合は幸運です。

他のほとんどの進化的アルゴリズムは、一種の山登りパターンで、その場でアドホックなソリューションを「計算」します。

また、別の回答で指摘されているように、実行時にANNは他のほとんどの進化的アルゴリズムが「計算」できるよりも速く「推測」できます。ただし、ANN は単なる「推測」であり、間違っている可能性があるため、注意が必要です。

于 2009-03-10T00:52:15.210 に答える
2

ニューロの進化を見てください。(NE)

現在の最良の方法は、Kenneth Stanley によるNEATおよびHyperNEATです。

遺伝的アルゴリズムは、ある種のゲノムのみを見つけます。ニューラル ネットワークのゲノムを作成することは素晴らしいことです。なぜなら、静的な遺伝子の集まりだけでなく、ニューラル ネットワークのリアクティブな性質が得られるからです。

学習できることには多くの制限はありません。でももちろん時間はかかります。ニューラル トポロジは、通常の突然変異とクロスオーバー、および重みの更新を通じて進化させる必要があります。逆伝播はあり得ません。

また、フィットネス関数を使用してトレーニングすることもできます。これは、出力がどうあるべきかわからない場合に、逆伝播よりも優れています。最適な戦略がわからないシステムの複雑な動作を学習するのに最適です。唯一の問題は、予期しない動作を学習することです。多くの場合、その動作は非常に異質なものになる可能性がありますが、フィットネス関数で報酬を与えたとおりに動作します。したがって、バックプロパゲーションの出力セットを作成するのと同じくらい多くの時間をフィットネス関数の導出に使用することになります:P

于 2011-04-08T07:07:55.150 に答える
1

問題領域の観点から、バックプロパゲーションによってトレーニングされた人工ニューラルネットワークを進化的アルゴリズムと比較します。

進化的アルゴリズムは、ランダム化されたビームサーチを展開します。つまり、進化的オペレーターは、適合性によってテストおよび比較される候補を開発します。これらの演算子は通常非決定論的であり、局所最適点でスタックする問題を克服するために、パラメーター空間で近接している候補と遠くにある候補の両方を見つけることができるように設計できます。

ただし、EAアプローチの成功は、開発するモデルに大きく依存します。これは、高い表現の可能性(過剰適合する可能性があります)と一般性(モデルがターゲット関数を表現できない可能性がある)の間のトレードオフです。

ニューラルネットワークは通常多層であるため、パラメーター空間は凸状ではなく、局所最適点が含まれているため、最急降下アルゴリズムがスタックする可能性があります。最急降下は決定論的アルゴリズムであり、近接を検索します。そのため、ニューラルネットワークは通常ランダムに初期化され、複数のモデルをトレーニングする必要があります。

さらに、ニューラルネットワークの各隠れノードが超平面を定義していることを知っているので、問題にうまく適合するようにニューラルネットワークを設計できます。ニューラルネットワークの過剰適合を防ぐためのいくつかの手法があります。

全体として、ニューラルネットワークは高速にトレーニングされ、わずかな費用で妥当な結果が得られる可能性があります(いくつかのパラメーターを試してみてください)。理論的には、十分に大きいニューラルネットワークはすべてのターゲット関数を近似することができ、反対側では過剰適合しやすくなります。進化的アルゴリズムでは、良好な結果を得るには多くの設計上の選択を行う必要がありますが、おそらく最も難しいのは、どのモデルを最適化するかです。しかし、EAは(定義した方法で)非常に複雑な問題空間を検索し、すぐに良い結果を得ることができます。問題(ターゲット機能)が時間の経過とともに変化している場合でも、AEは成功し続けることができます。

Tom Mitchellの機械学習ブック: http ://www.cs.cmu.edu/~tom/mlbook.html

于 2009-06-05T08:09:32.040 に答える
1

教師なし学習に依存しているため、進化的アルゴリズム (EA) は低速で​​す。EA は、いくつかのソリューションが他のソリューションよりも優れていると言われますが、それらを改善する方法は教えられません。ニューラル ネットワークは一般的に高速であり、教師あり学習のインスタンスです。特定のパラメーターに対して関数空間内で勾配降下法を使用することにより、ソリューションを改善する方法を知っています。これにより、有効なソリューションにすばやく到達できます。ニューラル ネットワークは、問題に関する十分な知識がなく、他の方法が機能しない場合によく使用されます。

于 2009-03-09T22:41:18.940 に答える
1

進化的アルゴリズム (EA) はモデルをトレーニングする方法を表し、ニューラル ネットワーク (NN) はモデルです。最も一般的な文献では、NN がバックプロパゲーション アルゴリズムを使用してトレーニングされていることがわかります。この方法は数学者にとって非常に魅力的ですが、数式を使用してモデルのエラー率を表現できる必要があります。これは、近似しようとしている関数の入力値と出力値が多数わかっている場合に当てはまります。この問題は、損失関数の最小化として数学的にモデル化できます。これは微積分のおかげで達成できます (それが数学者がそれを好む理由です)。

しかし、ニューラル ネットは、ある結果を最大化または最小化しようとするシステムのモデル化にも役立ちます。その式は、数学的にモデル化するのが非常に困難です。たとえば、神経回路網はサイボーグの筋肉を制御して走ることができます。モデルは、さまざまな時間枠で、さまざまなセンサーからの入力に基づいて、サイボーグの体の各筋肉にどれだけの張力が存在する必要があるかを確立する必要があります。そのようなトレーニング データを提供することは不可能です。EA は、モデルの評価方法を提供するだけでトレーニングを可能にします。この例では、落下を罰し、(一定の時間枠で) 表面を移動した距離に報酬を与えます。EA は、この意味でベストを尽くすモデルを選択するだけです。最初の世代はつまらないものですが、驚くべきことに、数百世代を経て、そのような個人は非常に大きな成果を上げています」

于 2016-10-13T09:44:00.263 に答える