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

แสดงภาพการทำนายของโมเดล Random Forest สำหรับข้อมูลจักรยาน

ในแบบฝึกหัดที่ผ่านมา เราพบว่าโมเดล Random Forest สำหรับข้อมูลจักรยานทำได้ดีกว่าโมเดล Quasipoisson บนข้อมูลเดือนสิงหาคม เมื่อวัดด้วย RMSE

ในแบบฝึกหัดนี้ จะได้แสดงภาพการทำนายของโมเดล Random Forest ในเดือนสิงหาคมตามช่วงเวลา พร้อมเปรียบเทียบกับกราฟจากโมเดล Quasipoisson ที่สร้างไว้ในแบบฝึกหัดก่อนหน้า

โมเดล Quasipoisson สามารถจับรูปแบบของชั่วโมงที่ว่างและชั่วโมงที่คับคั่งในแต่ละวันได้ แต่มีแนวโน้มประเมินความต้องการสูงสุดต่ำกว่าความเป็นจริง ลองดูว่าโมเดล Random Forest ทำได้แตกต่างออกไปอย่างไร

เฟรมข้อมูล bikesAugust (พร้อมค่าทำนาย) ได้เตรียมไว้ให้แล้ว และกราฟ quasipoisson_plot ของการทำนายจากโมเดล Quasipoisson ตามช่วงเวลาจะแสดงขึ้นให้เปรียบเทียบ

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

Supervised Learning ใน R: การถดถอย

ดูคอร์ส

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

  • เติมช่องว่างเพื่อพล็อตค่าทำนายและจำนวนจริงแยกตามชั่วโมงสำหรับ 14 วันแรกของเดือนสิงหาคม
    • ใช้ pivot_longer แปลงคอลัมน์ cnt และ pred ให้เป็นคอลัมน์ชื่อ value โดยมี key ชื่อ valuetype
    • พล็อต value เป็นฟังก์ชันของ instant (วัน)

โมเดล Random Forest ให้ผลลัพธ์แตกต่างจากโมเดล Quasipoisson อย่างไร?

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

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

first_two_weeks <- bikesAugust %>%
  mutate(rf = bike_outcomesAugust$rf) %>%
  # Set start to 0, convert unit to days
  mutate(instant = (instant - min(instant)) / 24) %>% 
  # Filter for rows in the first two weeks
  filter(instant < 14) 
  # collect cnt and pred into a column named value with key valuetype
  pivot_longer(c('cnt', 'rf'), names_to = '___', values_to = '___')

# Plot predictions and cnt by date/time 
ggplot(___, aes(x = ___, y = ___, color = valuetype, linetype = valuetype)) + 
  geom_point() + 
  geom_line() + 
  scale_x_continuous("Day", breaks = 0:14, labels = 0:14) + 
  scale_color_brewer(palette = "Dark2") + 
  ggtitle("Predicted August bike rentals, Random Forest plot")
แก้ไขและรันโค้ด