0

我想要預測一個給定的乘客是否倖存下來,以及在泰坦尼克號的災難中。我給0不滿意的人和1給生存的人。我使用python scikit學習庫並實現了以下用於分類的神經網絡。預測時,所有乘客只得到0。任何人都可以幫助我解決這個問題。通過使用python實施的神經網絡獲得相同的預測值

from sklearn.neural_network import MLPClassifier 

>>> clf = MLPClassifier(solver='lbgfs', alpha=1e-5, 
...      hidden_layer_sizes=(5, 2), random_state=1) 
... 
>>> clf.fit(train_data)       
MLPClassifier(activation='relu', alpha=1e-05, batch_size='auto', 
     beta_1=0.9, beta_2=0.999, early_stopping=False, 
     epsilon=1e-08, hidden_layer_sizes=(5, 2), learning_rate='constant', 
     learning_rate_init=0.001, max_iter=200, momentum=0.9, 
     nesterovs_momentum=True, power_t=0.5, random_state=1, shuffle=True, 
     solver='lbgfs', tol=0.0001, validation_fraction=0.1, verbose=False, 
     warm_start=False) 

回答

0

也許如果您使用的是2個輸出層爲一個二元分類,你將需要申請「一個熱碼」爲您輸出變量,它關係到你的訓練數據的格式,你有沒有嘗試過的物流激活,看看它是否返回0和1之間的值?

0

這種類型的問題通常在數據未標準化/標準化時出現(至少我在代碼中看不到)。神經網絡技術在不同特徵之間非常敏感,因此所有列的數據標準化[平均值= 0 std = 1]是一種好的做法。