2010-04-19 86 views
4

我在試圖確定如何將我的「有意義的輸入」轉換爲人工神經網絡的數據,以及如何將輸出轉換爲「有意義的輸出」。神經網絡輸入和輸出爲有意義的值

我總是可以看到這樣做的方式是通過將所有內容都轉換爲二進制值類別。

例如,而不是輸出年齡,具有0-1 < 10,10 0-1 - 19等

與相同的輸入,其中,I可能使用,例如,頭髮顏色。是唯一的方法把它變成輸入有金髮0-1,布朗0-1等?

我錯過了ANN的一些完整主題嗎?我閱讀的大部分書籍和類似文章都使用理論實例。

回答

3

你的例子是點亮的,被稱爲離散化。另一種方法是將連續輸入/輸出縮放到0-1範圍內。對於你的另一個頭發顏色的例子,這將是一個名義上的屬性,所以唯一真正的選擇就是將它離散爲每種顏色的單獨輸入。

+0

我認爲這可能是這種情況。我縮小了輸入年齡,但對於頭髮的顏色,我很高興至少有一個人看到與我相同的解決方案。 :)(但知道正確的術語:)) – Micheal 2010-04-19 21:09:44

+0

其實,我一直在想這個,我不確定縮放年齡。如果我理解正確,縮放將無法處理異常高峯(例如20歲左右的高峯和40歲左右的高峯,中間下降)。這是另一個要求離散的呼籲嗎? – Micheal 2010-04-19 21:36:27

+0

縮放連續值有多種方法。我認爲線性縮放會保留「高峯」,但你必須爲你的年齡建立一個界限。例如,您可以將最小年齡設置爲0(出於顯而易見的原因),並且最大年齡爲100歲,以便50歲的年齡將變爲0.5。如果你使用對數標度,那麼你不需要設置明確的界限,但是你的分佈可能會失真,使NN難以理解它。 – Cerin 2010-04-20 13:58:46