2016-06-21 86 views
-1

我是ANN的新來者,我希望有人能幫助我理解標準化的概念,舉例如下。最好在PHP中,只是一個小例子可以做。人工神經網絡標準化

比方說>>

Rooms    Area    Type 
    1     350    Apartment 
    1     800    Apartment 
    3     300    Apartment 
    8     1500    House 
    7     900    house 
    1     800    flat 

我怎樣才能規範這個數據?大部分閱讀ANN的讀者都認爲輸出必須是0或1,這些值來自哪裏?

我希望系統能夠分辨房屋和公寓之間的區別。 請給我一個在PHP代碼的例子。 提前感謝。

+0

有了這個小數據,你可以規範化你想要的東西,你的神經網絡永遠不會解決它。 :-)規範化並不困難:v'=(v - mean)/ std dev。你可以安裝這個:http://php.net/manual/en/book.stats.php讓std dev的計算稍微簡單一點......但它很簡單,你不需要它。 –

+0

我剛給你一個簡單的例子,我可以填充超過10,000個。我只是試圖給你一個例子,在這裏可以有很多單位與不同的測量風格或不同的房間號碼。這就是爲什麼我需要使用ANN來做到這一點。 –

+0

好吧,試試看,在PHP中做些什麼。如果遇到特定問題,您可以在此提問。 –

回答

0

由於這是一個分類問題(從數據看來),因此您無需對輸出進行歸一化。所以,你只需要標準化輸入值。如果您在使用Python numpy的,您可以通過以下兩種方式正常化它:

  1. 高斯正常化(0平均和1個STD):這個歸一化數據,具有零均值和ST偏差等於1。

    XNOR =(xx.mean())/ x.std()

  2. (0,1)範圍歸一化:此數據歸一化到範圍(0,1)。

    XNOR =(xx.min())/(x.max() - x.min())

向量化的輸出,則可以使用一個VS-所有分類或二進制編碼分類。我個人會推薦一對一分類。你可以參考這裏https://en.wikipedia.org/wiki/Multiclass_classification