เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ฝึกโมเดล linear regression แบบ batch

ในแบบฝึกหัดนี้ เราจะฝึกโมเดล linear regression แบบ batch โดยต่อจากที่ทำค้างไว้ในแบบฝึกหัดก่อนหน้า วิธีนี้จะวนผ่านชุดข้อมูลทีละ batch และอัปเดตตัวแปรของโมเดล ได้แก่ intercept และ slope หลังจากแต่ละขั้นตอน แนวทางนี้ช่วยให้สามารถฝึกกับชุดข้อมูลขนาดใหญ่ที่หน่วยความจำไม่สามารถโหลดได้ทั้งหมดในครั้งเดียว

โปรดทราบว่าฟังก์ชัน loss loss_function(intercept, slope, targets, features) ได้ถูกกำหนดไว้ให้แล้ว นอกจากนี้ keras และ numpy ได้ถูก import ไว้ให้เรียบร้อยในชื่อ np ตัวแปรที่ฝึกได้ต้องใส่ลงใน var_list ตามลำดับที่ปรากฏในอาร์กิวเมนต์ของ loss function

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

TensorFlow เบื้องต้นใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ optimizer .Adam()
  • โหลดข้อมูลจาก 'kc_house_data.csv' แบบ batch โดยกำหนด chunksize เป็น 100
  • ดึงคอลัมน์ price จาก batch แปลงเป็น numpy array ชนิด 32-bit float แล้วกำหนดให้ตัวแปร price_batch
  • เติม loss function ให้สมบูรณ์ กำหนดรายการตัวแปรที่ฝึกได้ และดำเนินการ minimization

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Initialize Adam optimizer
opt = keras.optimizers.____

# Load data in batches
for batch in pd.read_csv('____', ____=____):
	size_batch = np.array(batch['sqft_lot'], np.float32)

	# Extract the price values for the current batch
	price_batch = np.array(batch['____'], np.____)

	# Complete the loss, fill in the variable list, and minimize
	opt.minimize(lambda: loss_function(____, slope, price_batch, size_batch), var_list=[intercept, ____])

# Print trained parameters
print(intercept.numpy(), slope.numpy())
แก้ไขและรันโค้ด