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

สุ่มค้นหาด้วย Random Forest

เพื่อเสริมความเข้าใจเรื่องการสุ่มตัวอย่าง มาลองทำแบบฝึกหัดในลักษณะเดียวกัน แต่เปลี่ยนไปใช้ไฮเปอร์พารามิเตอร์และอัลกอริทึมที่แตกต่างออกไป

เหมือนกับที่ทำมาก่อน ให้สร้าง list ของไฮเปอร์พารามิเตอร์ที่สามารถนำมารวมกันเป็น list of lists ได้ โดยจะใช้ไฮเปอร์พารามิเตอร์ criterion, max_depth และ max_features ของอัลกอริทึม random forest จากนั้นสุ่มเลือกชุดค่าผสมของไฮเปอร์พารามิเตอร์เพื่อเตรียมพร้อมสำหรับการทำ random search

ในงานนี้จะใช้แพ็กเกจสำหรับสุ่มตัวอย่างที่แตกต่างออกไปเล็กน้อย คือ random.sample()

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

การปรับ Hyperparameter ใน Python

ดูคอร์ส

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

  • สร้าง list ที่มีค่า 'gini' และ 'entropy' สำหรับ criterion และ list ที่มีค่า "auto", "sqrt", "log2", None สำหรับ max_features
  • สร้าง list ที่มีค่าตั้งแต่ 3 ถึง 55 (รวมทั้งสองค่า) สำหรับไฮเปอร์พารามิเตอร์ max_depth แล้วกำหนดให้กับตัวแปร max_depth_list โปรดจำไว้ว่า range(N,M) จะสร้าง list จาก N ถึง M-1
  • นำ list เหล่านี้มารวมกันเป็น list of lists โดยใช้ product() เพื่อใช้สุ่มตัวอย่าง
  • สุ่มเลือกโมเดล 150 โมเดลจาก list ที่รวมแล้ว และแสดงผลลัพธ์

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

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

# Create lists for criterion and max_features
criterion_list = ____
max_feature_list = ____

# Create a list of values for the max_depth hyperparameter
max_depth_list = list(range(____,____))

# Combination list
combinations_list = [list(x) for x in product(____, ____, ____)]

# Sample hyperparameter combinations for a random search
combinations_random_chosen = random.sample(____, ____)

# Print the result
print(____)
แก้ไขและรันโค้ด