ความสมดุลระหว่าง Bias และ Variance

การตรวจสอบความถูกต้องของโมเดลใน Python

Kasey Jones

Data Scientist

Variance

  • Variance: โมเดลยึดติดกับข้อมูล training มากเกินไป
    • ไม่สามารถ generalize กับข้อมูล test ได้
    • Training error ต่ำ แต่ Testing error สูง
    • เกิดขึ้นเมื่อโมเดล overfit และมีความซับซ้อนสูง
การตรวจสอบความถูกต้องของโมเดลใน Python

โมเดลที่ Overfit (Variance สูง)

Overfitting เกิดขึ้นเมื่อการทำนายของโมเดลยึดติดกับข้อมูล training มากเกินไป หากวาด scatter plot แล้วค่าที่ทำนายตรงกับค่าจริงทุกจุด แสดงว่าโมเดลน่าจะ overfit

การตรวจสอบความถูกต้องของโมเดลใน Python

Bias

  • Bias: โมเดลไม่สามารถหาความสัมพันธ์ระหว่างข้อมูลกับตัวแปรเป้าหมายได้
    • Training/Testing error สูงทั้งคู่
    • เกิดขึ้นเมื่อโมเดล underfit
การตรวจสอบความถูกต้องของโมเดลใน Python

โมเดลที่ Underfit (Bias สูง)

Underfitting เกิดขึ้นเมื่อมีความสัมพันธ์ระหว่างตัวแปรที่ต้องการทำนายกับตัวแปรพยากรณ์ในโมเดล แต่โมเดลไม่สามารถค้นพบความสัมพันธ์นั้นได้

การตรวจสอบความถูกต้องของโมเดลใน Python

ประสิทธิภาพที่เหมาะสมที่สุด

การตรวจสอบความถูกต้องของโมเดลใน Python

พารามิเตอร์ที่ทำให้เกิด Over/Under fitting

rfc = RandomForestClassifier(n_estimators=100, max_depth=4)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: .84
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .77
การตรวจสอบความถูกต้องของโมเดลใน Python
rfc = RandomForestClassifier(n_estimators=100, max_depth=14)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: 1.0
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .83
การตรวจสอบความถูกต้องของโมเดลใน Python
rfc = RandomForestClassifier(n_estimators=100, max_depth=10)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: .89
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .86
การตรวจสอบความถูกต้องของโมเดลใน Python

จำไว้ว่า การป้องกัน Overfitting เป็นหน้าที่ของคุณ!

การตรวจสอบความถูกต้องของโมเดลใน Python

Preparing Video For Download...