ฝึกโมเดลเชิงเส้น
ในแบบฝึกหัดนี้ เราจะต่อจากแบบฝึกหัดก่อนหน้า โดยที่ intercept และ slope ถูกกำหนดและกำหนดค่าเริ่มต้นไว้แล้ว นอกจากนี้ยังมีฟังก์ชัน loss_function(intercept, slope) ที่คำนวณค่า loss โดยใช้ข้อมูลและตัวแปรของโมเดล
ในขั้นตอนนี้ คุณจะกำหนด optimization operation ในชื่อ opt จากนั้นฝึกโมเดลเชิงเส้นแบบตัวแปรเดียวด้วยการ minimize ค่า loss เพื่อหาค่าที่เหมาะสมที่สุดของ intercept และ slope โดย opt จะค่อย ๆ เข้าใกล้จุด optimum ทีละขั้น ซึ่งต้องใช้หลายขั้นตอนกว่าจะถึง ดังนั้นจึงต้องรันคำสั่งนี้ซ้ำหลายครั้ง
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
TensorFlow เบื้องต้นใน Python
คำแนะนำการฝึกหัด
- กำหนดค่าเริ่มต้น Adam optimizer ในชื่อ
optโดยตั้ง learning rate เป็น 0.5 - เรียกใช้เมธอด
.minimize()กับ optimizer - ส่ง
loss_function()พร้อมอาร์กิวเมนต์ที่เหมาะสมในรูป lambda function ให้กับ.minimize() - ระบุรายการตัวแปรที่ต้องการอัปเดตใน
var_list
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Initialize an Adam optimizer
opt = keras.optimizers.____(0.5)
for j in range(100):
# Apply minimize, pass the loss function, and supply the variables
opt.____(lambda: ____(____, ____), var_list=[____, ____])
# Print every 10th value of the loss
if j % 10 == 0:
print(loss_function(intercept, slope).numpy())
# Plot data and regression line
plot_results(intercept, slope)