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

การจำแนกป้ายจราจรหลายป้าย

ตอนนี้รถยนต์ไร้คนขับสามารถหยุดรถได้เองสำเร็จแล้ว ทีมงานจึงมั่นใจพอที่จะให้รถวิ่งต่อในเส้นทางทดสอบ

เส้นทางทดสอบมีป้ายจราจรเพิ่มอีก 59 ป้าย แบ่งออกเป็น 3 ประเภท:

Stop Sign Speed Limit Sign Pedestrian Sign

เมื่อสิ้นสุดการทดลอง คุณจะต้องวัดประสิทธิภาพโดยรวมของรถในการจดจำป้ายเหล่านี้

แพ็กเกจ class และชุดข้อมูล signs ถูกโหลดไว้ใน workspace แล้ว รวมถึง data frame test_signs ซึ่งเก็บชุดข้อมูลที่จะใช้ทดสอบโมเดล

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

Supervised Learning in R: Classification

ดูคอร์ส

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

  • จำแนกข้อมูล test_signs โดยใช้ knn()
    • กำหนด train ให้เท่ากับข้อมูลใน signs โดยไม่รวม ป้ายกำกับ
    • ใช้ test_signs สำหรับอาร์กิวเมนต์ test โดยไม่รวมป้ายกำกับเช่นกัน
    • สำหรับอาร์กิวเมนต์ cl ให้ใช้เวกเตอร์ของป้ายกำกับที่เตรียมไว้ให้
  • ใช้ table() เพื่อตรวจสอบประสิทธิภาพของตัวจำแนกในการระบุป้าย 3 ประเภท (confusion matrix)
    • สร้างเวกเตอร์ signs_actual โดยดึงป้ายกำกับจาก test_signs
    • ส่งเวกเตอร์ของค่าพยากรณ์และเวกเตอร์ของป้ายจริงให้ table() เพื่อสร้างตารางไขว้
  • คำนวณความแม่นยำโดยรวมของ kNN โดยใช้ฟังก์ชัน mean()

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

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

# Use kNN to identify the test road signs
sign_types <- signs$sign_type
signs_pred <- knn(train = ___[-1], test = ___[-1], cl = ___)

# Create a confusion matrix of the predicted versus actual values
signs_actual <- ___
table(___, ___)

# Compute the accuracy
mean(___ == ___)
แก้ไขและรันโค้ด