人工ニューラルネットワークのさまざまなトレーニング方法をテストおよび比較するための比較的単純なデータセットを探しています。入力および出力のリストの入力形式(0-1に正規化)に変換するために、あまり多くの前処理を必要としないデータが必要です。どんなリンクもありがたいです。
トレーニングデータとしてsin関数のような単純なものを試してみませんか?トレーニング方法を比較しているので、ネットワークのトレーニング対象をあまり気にしないため、トレーニングデータを簡単に生成できます。
Sin(x)を使用してネットワークをトレーニングします。xは入力で、出力は関数の値です。この場合の追加の利点は、結果の絶対値がすでに0〜1の範囲にあることです。他の数学関数でも同様に機能します。
https://archive.ics.uci.edu/ml は、カリフォルニア大学アーバイン校の機械学習データセットのリポジトリです。これは本当に素晴らしいリソースであり、それらはすべてCSVファイルに含まれていると思います。
いくつかのリソースは
SinC関数。
_ +----
| sin(x)
| ------- when x != 0
| x
sinC = |
|
| 1 otherwise
+----
_
@adrianbanksが言ったsin(x)
関数。
あるアルゴリズムの新しい修正をテストするために、古き良きn-パリティテストを行います。
Irisデータセット、semeion手書き数字データセットなど、その他の機能など。
UCI Machine Learning Repository: archive.ics.uci.edu/ml/datasets.html
これらの多くの前処理は必要ないと思います。カテゴリ変数のように、GUIテキストエディターを使用して、バイナリ変数にすばやく置き換えることができます。たとえば、 Abalone データセットにはカテゴリ属性が1つあり、性別には男性の「M」、女性の「F」、幼児の「I」の3つの値があります。テキストエディタでCtrl + Rを押して、「M」のすべての出現を_1,0,0
_に、「F」のすべての出現を_0,1,0
_に、「I」のすべての出現を_0,0,1
_に置き換えることができます。 (ファイルはCSV形式であることを考慮してください)。これにより、カテゴリ変数の迅速な置換が行われます。
[〜#〜] r [〜#〜] にいる場合は、 RSNNSパッケージ に付属するnormalizeData
関数を使用してスケーリングできます0と1でデータを正規化します。
octave や matlab のような他の環境にいる場合、コードを書くのに少し時間をかけることができます。これらの環境で利用可能な機能を認識していません。コードを使用してデータをスケーリングおよび/または正規化します。
関数を使用すると、作業がはるかに簡単になり、データを準備したら、変更したデータをファイルに保存します。
ニューラルネットワークのトレーニングの目標は、特定のトレーニングセットで適切に機能するようにネットワークをトレーニングすることだけではありません。主な目標は、ネットワークが(直接または間接的に)見たことのない新しいデータに対して最良のエラーを持つようにネットワークを訓練することです。
http://neuroph.sourceforge.net/sample_projects.html 多くのサンプルプロジェクトと有名なデータがあります。
以下は、トレーニング用の手書きおよびその他のデータベースです。
http://www.cs.nyu.edu/~roweis/data.html
おもしろいサイドノートとして、〜roweisは妻と戦った後2010年に自殺しました: http://www.huffingtonpost.com/2010/01/14/sam-roweis-nyu-professor-_n_421500.html 。
私は、ANNを学部生として使用してOCR(光学文字認識)を実行しました。これはいいユースケースだと思います。
2ページのテキストをスキャンし、文字を抽出し、トレーニング/テストデータセット(8x8ピクセルが64個の入力ノードにつながるなど)を形成し、データにラベルを付けます。 ANNをトレーニングし、テストデータセットを使用してスコアを取得します。ネットワークトポロジ/パラメータを変更し、ネットワークを調整して最高のスコアを取得します。
NLP、NERからImage Classificationまでのいくつかの興味深いデータセットをここで見つけることができます: https://dataturks.com/projects/trending