2009-06-07 221 views
34

我正在尋找一些相對簡單的數據集來測試和比較人工神經網絡的不同訓練方法。我希望數據不需要太多的預處理就可以將其轉換爲輸入和輸出列表的輸入格式(標準化爲0-1)。任何鏈接讚賞。用於神經網絡訓練的數據集

回答

28

爲什麼不嘗試一些簡單的sin函數作爲訓練數據呢?由於您正在比較培訓方法,並且不真正關心您正在爲網絡培訓什麼,因此應該可以很輕鬆地生成培訓數據。

使用sin(x)訓練網絡,其中x是輸入,輸出是函數的值。在你的情況下,額外的好處是結果的絕對值已經在0-1的範圍內。它同樣適用於其他數學功能。

+0

是的,這是一個很好的觀點。另外,儘管如此,我還是喜歡一些更高維的問題。我想我也可以從等式生成它們。謝謝。 – 2009-06-08 00:24:28

+1

@JeffThomas我想知道是否有人用NN實際完成了SIN近似。如果是這樣,你最後的錯誤和網絡配置是什麼? – 2016-11-01 14:01:48

3

我通過使用它們進行OCR(光學字符識別),學習了人工神經網絡作爲本科生。我認爲這是一個很好的用例。

掃描兩頁文字,提取字母並形成訓練/測試數據集(例如8x8像素導致64個輸入節點),標記數據。訓練ANN並使用測試數據集獲得分數。更改網絡拓撲/參數並調整網絡以獲得最佳分數。

11

一些資源

  • 正弦函數。

     +---- 
         | sin(x) 
         | -------  when x != 0 
         |  x 
    sinC = | 
         | 
         |  1   otherwise 
         +---- 
    
  • sin(x)功能@adrianbanks說。

  • 爲了測試某些算法的一些新的修改,進行了良好的舊n-校驗測試。

  • 虹膜數據集,semeion手寫數字數據集等,任何其他功能和更多。

  • 的UCI機器學習庫:archive.ics.uci.edu/ml/datasets.html

  • 這裏有許多回歸的數據集其他資源:www.dcc.fc.up.pt/~ltorgo//Regression/DataSets.html。你會從UCI ML知識庫中獲得許多這些。
  • 您可以從https://www.kaggle.com/獲取各種實際數據集的數據集。

我不認爲你需要大量的預處理與這些。就像分類變量一樣,您可以使用GUI文本編輯器快速地將它們替換爲二進制文件。例如,Abalone數據集有一個分類屬性Gender,男性有三個值「M」,女性有「F」,嬰兒有「I」。您可以在文本編輯器中按Ctrl + R,並將所有出現的「M」替換爲1,0,0,將所有出現的「F」替換爲0,1,0,將所有出現的「I」替換爲0,0,1(考慮文件爲CSV格式)。這將快速替代分類變量。

如果你在R,那麼你可以使用normalizeData功能,自帶的RSNNS package在0和1

規模和規範的數據如果是在其他環境,比如octavematlab,你可以只需投入一些時間來編寫代碼。我不知道這些環境中可用的功能,我使用我的代碼來縮放和/或標準化數據。

當您使用功能時,您的工作變得更容易,並且一旦準備好數據,將修改後的數據保存在文件中。

記住一件事,培養神經網絡的目標不僅僅是訓練網絡,使其在某個訓練集上表現良好。主要目標是訓練網絡,使其對網絡尚未見過的(直接或間接)新數據具有最佳誤差。

+1

我到目前爲止發現的有關數據集問題的最佳答案...! – 2015-10-21 15:35:01