開始使用免費開始

建立並訓練一個簡單的神經網路

接下來要學習的模型是神經網路。神經網路能夠捕捉變數之間複雜的互動關係,但在建置與理解上較不容易。近年來,它們在許多領域(包含影像辨識與遊戲對戰,像是 AlphaGo)都擊敗了人類專家,因此很有機會表現優異。

我們會使用 keras 函式庫來建立神經網路。這是一個高階 API,可以讓我們很快做出神經網路,同時仍能對設計保有相當多的控制。首先,我們要建立幾乎是最簡單的網路——一個 3 層的網路,輸入特徵後輸出單一數值。和 sklearn 的模型類似,keras 模型也有 .fit() 方法,參數為 (features, targets)

本練習屬於課程

Python 金融 Machine Learning

檢視課程

練習說明

  • 在神經網路中建立第 2 層 Dense,使用 20 個節點與 ReLU('relu')啟動函式。
  • 建立最後一層 Dense,使用 1 個節點並採用線性啟動函式(activation='linear')。
  • 將模型擬合到 scaled_train_featurestrain_targets

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

from keras.models import Sequential
from keras.layers import Dense

# Create the model
model_1 = Sequential()
model_1.add(Dense(100, input_dim=scaled_train_features.shape[1], activation='relu'))
model_1.add(Dense(____, activation=____))
model_1.add(Dense(____, activation=____))

# Fit the model
model_1.compile(optimizer='adam', loss='mse')
history = model_1.fit(____, ____, epochs=25)
編輯並執行程式碼