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

เราต้องการข้อมูลเพิ่มเติมหรือไม่?

ถึงเวลาตรวจสอบแล้วว่าโมเดล model ที่สร้างขึ้นจาก ชุดข้อมูล digits จะได้ประโยชน์จากตัวอย่างการฝึกที่มากขึ้นหรือไม่!

เพื่อให้โค้ดกระชับที่สุด สิ่งต่าง ๆ เหล่านี้ถูกเตรียมไว้ให้พร้อมใช้งานแล้ว:

  • model ที่เพิ่งสร้างไว้
  • X_train, y_train, X_test และ y_test
  • initial_weights คือค่าน้ำหนักเริ่มต้นของโมเดล ที่บันทึกไว้ด้วย model.get_weights()
  • รายการขนาดข้อมูลฝึกที่กำหนดไว้ล่วงหน้า: training_sizes
  • callback สำหรับ early stopping ที่ติดตามค่า loss: early_stop
  • รายการว่างสองรายการสำหรับเก็บผลการประเมิน: train_accs และ test_accs

ฝึกโมเดลด้วยขนาดข้อมูลฝึกที่แตกต่างกัน แล้วประเมินผลบน X_test จากนั้นพล็อตผลลัพธ์ด้วย plot_results()

ดูโค้ดทั้งหมดสำหรับแบบฝึกหัดนี้ได้จากสไลด์!

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

Deep Learning เบื้องต้นด้วย Keras

ดูคอร์ส

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

  • ดึงข้อมูลฝึกบางส่วนตามสัดส่วน size ที่กำลังประเมินในลูปปัจจุบัน
  • ตั้งค่าน้ำหนักของโมเดลเป็น initial_weights ด้วย set_weights() แล้วฝึกโมเดลบนข้อมูลฝึกส่วนนั้นโดยใช้ early_stop เป็น callback
  • ประเมินและบันทึกค่าความแม่นยำสำหรับข้อมูลฝึกส่วนนั้นและชุดข้อมูลทดสอบ
  • เรียกใช้ plot_results() โดยส่งค่าความแม่นยำของข้อมูลฝึกและข้อมูลทดสอบสำหรับแต่ละขนาดการฝึก

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

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

for size in training_sizes:
  	# Get a fraction of training data (we only care about the training data)
    X_train_frac, y_train_frac = X_train[:size], y_train[:size]

    # Reset the model to the initial weights and train it on the new training data fraction
    model.set_weights(____)
    model.fit(X_train_frac, y_train_frac, epochs = 50, callbacks = [early_stop])

    # Evaluate and store both: the training data fraction and the complete test set results
    train_accs.append(model.evaluate(____, ____)[1])
    test_accs.append(model.evaluate(____, ____)[1])
    
# Plot train vs test accuracies
plot_results(____, ____)
แก้ไขและรันโค้ด