深度學習|泰坦尼克號生還數據預測(MLP)

前言

上次分享,我們利用pandas和sklearn完成了泰坦尼克號數據的預處理,包括下面的步驟,具體可看深度學習|泰坦尼克號生還數據處理

  • 選取建模字段
  • 缺失值處理
  • 性別處理
  • 登陸船艙的處理
  • 劃分數據集
  • 數據的標準化

那這篇文章我們就構造神經網絡來完成數據的建模和預測。

MLP建模

模型結構

模型結構爲:

  • 輸入層,也就是9個神經元(對應9個字段)
  • 隱藏層1,40個神經元
  • 隱藏層2,30個神經元
  • 輸出層,1個神經元
建立模型
from keras.models import Sequential
from keras.layers import Dense,Dropout

model = Sequential()

model.add(Dense(units=40, input_dim=9, 
                kernel_initializer='uniform', 
                activation='relu'))

model.add(Dense(units=30, 
                kernel_initializer='uniform', 
                activation='relu'))

model.add(Dense(units=1, 
                kernel_initializer='uniform',
                activation='sigmoid'))
訓練模型
model.compile(loss='binary_crossentropy', 
              optimizer='adam', metrics=['accuracy'])

train_history =model.fit(x=X_train, 
                         y=y_train, 
                         validation_split=0.1, 
                         epochs=30, 
                         batch_size=30,verbose=2)
測試
scores = model.evaluate(x=X_test, 
                        y=y_test)
scores[1]
# result 0.804

這樣,我們的泰坦尼克號數據預測工作就完成了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章