110

私は人工ニューラル ネットワークに非常に興味がありますが、始める場所を探しています。

そこにはどのようなリソースがあり、どのプロジェクトを開始するのがよいでしょうか?

4

16 に答える 16

34

まず第一に、人工ニューラル ネットワークが脳と何らかの関係があるという考えは捨ててください。生物学を学んでも、ニューラル ネットワークを効果的に適用するのには役立ちません。線形代数、微積分、確率論を学びます。少なくとも、関数の基本的な微分、連鎖律、偏導関数 (勾配、ヤコビ行列、ヘッセ行列) の考え方に精通し、行列の乗算と対角化を理解する必要があります。

ネットワークをトレーニングするときに実際に行っていることは、大規模な多次元関数を最適化することです (ネットワーク内の各重みに対する誤差測定値を最小化すること)。そのため、非線形数値最適化の手法を調査することは有益であることがわかります。これは、ニューラル ネットワーク以外の文献で広く研究されている問題であり、Web 上には数値最適化に関する講義ノートが多数あります。まず、ほとんどの人は単純な勾配降下法を使用しますが、これは、

基本的なアイデアを理解したら、隠れ層でさまざまな「押しつぶし」関数を試し、さまざまな種類の正則化やさまざまな微調整を追加して、学習を高速化することができます。「ベスト プラクティス」の包括的なリストについては、このホワイト ペーパーを参照してください。

このテーマに関する最高の本の 1 つは、Chris Bishop のNeural Networks for Pattern Recognitionです。この段階ではかなり古いものですが、それでも優れたリソースであり、中古のコピーをオンラインで約 30 ドルで見つけることができます。彼の新しい著書Pattern Recognition and Machine Learningのニューラル ネットワークの章も非常に包括的です。特に優れた実装中心のチュートリアルについては、CodeProject.comでこれを参照してください。これは、畳み込みネットワークと呼ばれる巧妙な種類のネットワークを実装しています。これは、視覚パターンの分類を非常にうまく学習できるように接続を制限します。

サポート ベクター マシンやその他のカーネル メソッドは、何をしているのかわからなくても適用でき、多くの場合、許容できる結果が得られるため、非常に人気があります。一方、ニューラル ネットワークは、多くの問題、特にコンピューター ビジョンのようなドメインにおける大規模な問題には適していますが、慎重な調整が必要な巨大な最適化問題です。

于 2009-02-01T11:21:01.487 に答える
29

Code Projectの Anoop Madhusudanan によるこの優れたシリーズを強くお勧めします。

彼は、それらがどのように機能するかを理解しやすい方法で理解するための基礎を説明し、彼のライブラリを使用brainnetして独自のライブラリを作成する方法を示します。

于 2009-01-26T06:09:44.087 に答える
17

Neural Net プログラミングの例を次に示します。 http://www.codeproject.com/KB/recipes/neural_dot_net.aspx

ここから読み始めることができます: http://web.archive.org/web/20071025010456/http://www.geocities.com/CapeCanaveral/Lab/3765/neural.html

私としては、それに関するコースを訪れ、いくつかの文献に取り組みました。

于 2009-01-26T06:09:06.087 に答える
11

ニューラルネットワークは、最近、一種のデクラス化されています。サポートベクターマシンカーネルメソッドは、バックプロパゲーションよりも多くのクラスの問題に適しています。ニューラルネットワークと遺伝的アルゴリズムは、現代の機械学習についてあまり知らないが、最先端ではない人々の想像力を捉えます。

AIと機械学習について詳しく知りたい場合は、Peter Norvigの人工知能:現代的なアプローチを読むことをお勧めします。これは、AIと多くの最新テクノロジーの広範な調査です。歴史や古い技術についても説明し、AIと機械学習の基礎をより完全に理解できるようにします。

ただし、ニューラルネットワークは非常に簡単です。特に、適切なバックプロパゲーションではなく、遺伝的アルゴリズムを使用して重みを決定する場合。

于 2009-01-26T07:02:12.577 に答える
5

私は、Chris Bishop によるパターン認識のためのニューラル ネットワークに関するdwfの推奨事項に 2 番目に同意します。ただし、これはおそらくスターター テキストではありません。Norvig またはオンライン チュートリアル (Matlab のコード付き!) は、おそらくより穏やかな導入になるでしょう。

良いスターター プロジェクトは、OCR (光学式文字認識) です。分類を実行するために、テキストのページをスキャンし、ネットワークを介して各文字をフィードできます。(もちろん、最初にネットワークをトレーニングする必要があります!)。

于 2009-02-06T17:16:03.293 に答える
4

どこから始めないかをお勧めします。Amazon でのレビューが高く、「認知科学とコンピューター サイエンスの最も重要なトピックの 1 つに非常にアクセスしやすい入門書」であると主張している、Kevin Gurney によるニューラル ネットワークの紹介を購入しました。個人的には、この本から始めるのはお勧めしません。10%くらいしか理解できませんが、私だけかもしれません(英語は私の母国語ではありません)。このスレッドから他のオプションを検討します。

于 2010-11-16T00:59:37.157 に答える
4

Raul Rojas の本は非常に良いスタートです (これも無料です)。また、Haykin の本第 3 版は、大ボリュームですが、非常によく説明されています。

于 2010-11-14T15:48:20.850 に答える
3

http://www.ai-junkie.com/ann/evolved/nnt1.htmlは、バックプロパゲーションアルゴリズムについては説明していませんが、マルチレイヤーパーセプトロンの明確な紹介です。

また、世代5.orgもご覧ください。このサイトには、AI全般に関する多くの記事が掲載されており、ニューラルネットワークに関する優れたテキストがいくつか掲載されています。

于 2009-12-19T12:52:24.043 に答える
2

あなたがお金を使うことを気にしないのであれば、脳理論と神経ネットワークのハンドブックはとても良いです。多くの分野の研究をカバーする287の記事が含まれています。それは紹介と理論から始まり、次にあなたの興味を最もよくカバーするために記事を通しての道を強調します。

最初のプロジェクトに関しては、Kohonenマップ分類に役立ちます。音楽コレクションで隠された関係を見つけたり、スマートロボットを構築したり、 Netflix賞を解決したりします。

于 2009-01-26T06:53:01.800 に答える
1

私は生物学を勉強することは良い出発点ではないと言った他の人々に同意します...生物学には無関係な情報がたくさんあるからです。ニューロンがその機能を再現するためにどのように機能するかを理解する必要はありません。必要なのは、その動作をシミュレートすることだけです。RayKurzweilによる「HowToCreateA Mind」をお勧めします。これは、計算モデルに関連する生物学の側面に入ります(複数の入力を組み合わせて、しきい値に達したら発火することでシミュレートされたニューロンを作成します)が、次のような無関係なものは無視します。ニューロンが実際にthouse入力を一緒に追加する方法。(たとえば、+と不等式を使用してしきい値と比較します)

また、この本は「心を創造する」ことについてではなく、階層的なパターン認識/新皮質にのみ焦点を当てていることも指摘しておく必要があります。一般的なテーマは1980年代から話題になっていると思いますので、同じ情報の少し古い形式が含まれていると思われる古い本がたくさんあります。たとえば、ビジョンシステムは多層パターン認識装置であると述べている古い文書を読みました。彼は、これは新皮質全体に当てはまると主張している。また、彼の「予測」を一粒の塩でとってください-彼のハードウェアの見積もりはおそらくかなり正確ですが、彼は単純なタスクがどれほど複雑になる可能性があるかを過小評価していると思います(例:車の運転)。確かに、彼は多くの進歩を見てきました(そしてその一部でした)が、それでも彼は楽観的すぎると思います。人間ができる99.9%以上と比較すると、AI車が90%の時間で1マイルをうまく運転できることには大きな違いがあります。少なくとも20年間、AIが本当に私を運転しているとは思っていません...(実際のコースで「トレーニング」する必要のあるBMWトラックカーは実際には同じようにプレーしていないため、カウントしません。ゲーム)

AIとは何か、そしてAIをどのようにモデル化できるかについての基本的な考え方をすでに知っている場合は、より技術的なものにスキップしたほうがよいかもしれません。

于 2013-03-08T16:29:04.947 に答える
1

FausettのFundamentalsofNeural Networksは、わかりやすく、簡単に理解できる入門用の教科書であることがわかりました。

于 2009-03-25T16:37:21.053 に答える
1

教科書「計算知能」はとても参考になりました。

于 2010-06-17T19:53:35.017 に答える
1

良い出発点はいつでもウィキペディアだと思います。そこには、ニューラル ネットワークを使用するドキュメントやプロジェクトへの便利なリンクもあります。

于 2009-01-26T06:10:29.063 に答える
1

Programming Collective Intelligenceでは、検索およびランキング アルゴリズムのコンテキストでこれについて説明しています。また、ここ(ch.4) で入手できるコードでは、この本で説明されている概念が Python の例で示されています。

于 2010-06-17T20:00:22.093 に答える
1

私の研究中に使用された2冊の本:

入門コース: Igor Aleksander と Helen Morton による Neural Computing の入門。

上級コース: Robert Hecht-Nielsen によるニューロコンピューティング

于 2009-03-02T21:38:41.193 に答える