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

การปรับเปลี่ยน Loss Function

ในแบบฝึกหัดก่อนหน้า คุณได้นิยาม loss function ของ tensorflow และประเมินค่าครั้งหนึ่งสำหรับชุดค่าจริงและค่าที่ทำนายไว้ ในแบบฝึกหัดนี้ จะคำนวณค่า loss ภายในฟังก์ชันอีกตัวที่ชื่อว่า loss_function() ซึ่งจะสร้างค่าที่ทำนายจากข้อมูลและตัวแปรก่อน จุดประสงค์คือเพื่อสร้างฟังก์ชันของตัวแปรโมเดลที่ฝึกได้ซึ่งคืนค่า loss จากนั้นจึงประเมินฟังก์ชันนี้ซ้ำด้วยค่าตัวแปรต่าง ๆ จนกว่าจะพบค่าต่ำสุด ในทางปฏิบัติ จะส่งฟังก์ชันนี้ให้กับ optimizer ใน tensorflow โปรดทราบว่า features และ targets ถูกนิยามไว้แล้วและพร้อมใช้งาน นอกจากนี้ Variable, float32, และ keras ก็พร้อมใช้งานเช่นกัน

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

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

ดูคอร์ส

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

  • นิยามตัวแปร scalar โดยกำหนดค่าเริ่มต้นเป็น 1.0 และชนิดข้อมูลเป็น float32
  • นิยามฟังก์ชันชื่อ loss_function() โดยรับ scalar, features, และ targets เป็นอาร์กิวเมนต์ตามลำดับนั้น
  • ใช้ mean absolute error เป็น loss function

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

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

# Initialize a variable named scalar
scalar = ____(1.0, ____)

# Define the model
def model(scalar, features = features):
  	return scalar * features

# Define a loss function
def loss_function(____, features = features, targets = targets):
	# Compute the predicted values
	predictions = model(scalar, features)
    
	# Return the mean absolute error loss
	return keras.losses.____(targets, predictions)

# Evaluate the loss function and print the loss
print(loss_function(scalar).numpy())
แก้ไขและรันโค้ด