TensorFlow 中的初始化
良好的初始化可以縮短找到全域最小值所需的時間。在這個練習中,我們要為一個用來預測信用卡是否違約的神經網路初始化權重與偏差。為了建立直覺,我們將採用較低階的線性代數方式,而不是使用高階的便利函式與 keras 操作。我們也會把輸入特徵從 3 擴充到 23。已經從 tensorflow 匯入了幾個運算:Variable()、random() 和 ones()。
本練習屬於課程
Python 的 TensorFlow 入門
練習說明
- 將第 1 層的權重
w1初始化為從常態分佈抽樣的Variable(),形狀為[23, 7]。 - 使用全為 1 的張量初始化第 1 層的偏差。
- 使用常態分佈的抽樣,將
w2初始化為形狀為[7, 1]的Variable()。 - 將
b2定義為Variable(),並將其初始值設為 0.0。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Define the layer 1 weights
w1 = ____(random.normal([____, ____]))
# Initialize the layer 1 bias
b1 = Variable(____([7]))
# Define the layer 2 weights
w2 = ____
# Define the layer 2 bias
b2 = ____