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

Metrics และการ Validation ด้วย Keras

ในแบบฝึกหัดที่แล้ว เราฝึกโมเดลเพื่อพยากรณ์ตัวอักษรภาษามือ แต่ยังไม่ชัดเจนว่าโมเดลทำงานได้ดีเพียงใด ในแบบฝึกหัดนี้ เราจะพยายามทำให้ผลลัพธ์อ่านและตีความได้ง่ายขึ้น เนื่องจากยังไม่ได้ใช้ validation split จึงสังเกตได้เพียงการเปลี่ยนแปลงของ performance ในชุดข้อมูลฝึก (training set) เท่านั้น และยังไม่ทราบว่าผลลัพธ์ที่ได้นั้นเกิดจาก overfitting มากน้อยแค่ไหน นอกจากนี้ เนื่องจากยังไม่ได้กำหนด metric จึงเห็นเพียงค่า loss function ที่ลดลง ซึ่งยากต่อการตีความโดยตรง

โปรดทราบว่า keras ถูก import มาให้แล้วจาก tensorflow

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

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

ดูคอร์ส

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

  • กำหนด dense layer แรกให้มี 32 โหนด ใช้ activation function แบบ sigmoid และกำหนด input shape เป็น (784,)
  • ใช้ optimizer แบบ root mean square propagation, loss แบบ categorical crossentropy และ metric เป็น accuracy
  • กำหนดจำนวน epoch เป็น 10 และใช้ข้อมูล 10% ของชุดข้อมูลสำหรับ validation

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

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

# Define sequential model
model = keras.Sequential()

# Define the first layer
model.add(keras.layers.Dense(____, ____, ____))

# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))

# Set the optimizer, loss function, and metrics
model.compile(optimizer='____', loss='____', metrics=['____'])

# Add the number of epochs and the validation split
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)
แก้ไขและรันโค้ด