ลงมือใช้งาน Optuna
ใช้ Optuna เพื่อปรับแต่งไฮเปอร์พารามิเตอร์ของฟังก์ชันอย่างง่าย
ในทางปฏิบัติ ฟังก์ชัน objective ที่ต้องการปรับแต่งมักใช้เวลานานในการประเมินผล ดังนั้นจึงต้องการหาไฮเปอร์พารามิเตอร์ที่เหมาะสมโดยใช้จำนวน trial น้อยที่สุดเท่าที่จะเป็นไปได้
เพื่อความสะดวก แบบฝึกหัดนี้จะใช้ฟังก์ชัน objective ที่กำหนดไว้ล่วงหน้า ซึ่งสามารถประเมินผลได้แทบจะทันที:
$$f(x,y) = 2*(1-x)^2 + (y-x)^2$$
ฟังก์ชัน metric() ถูกกำหนดไว้ในสภาพแวดล้อมของคุณแล้ว
ในแบบฝึกหัดนี้ x และ y คือไฮเปอร์พารามิเตอร์ที่ต้องการปรับแต่ง
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Deep Reinforcement Learning ด้วย Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
study = optuna.create_study()
def objective(trial: optuna.Trial):
# Declare hyperparameters x and y as uniform
x = ____
y = ____
value = metric(x, y)
return value