การแบ่งข้อมูลสำหรับเทรนและทดสอบ
ในกระบวนการ machine learning ที่มีระเบียบวินัย สิ่งสำคัญคือต้องแยกข้อมูลบางส่วนไว้เป็น ข้อมูลทดสอบ (testing data) โดยไม่นำไปใช้ในการตัดสินใจใดๆ วิธีนี้ช่วยให้ประเมินประสิทธิภาพของโมเดลได้อย่างเป็นอิสระเมื่อโมเดลสร้างเสร็จแล้ว ส่วนข้อมูลที่เหลือซึ่งเรียกว่า ข้อมูลเทรน (training data) จะถูกนำไปใช้สร้างและคัดเลือกโมเดลที่ดีที่สุด
ในแบบฝึกหัดนี้ จะใช้แพ็กเกจ rsample เพื่อแบ่งข้อมูล gapminder ออกเป็นชุดเทรนและชุดทดสอบในขั้นตอนแรก
หมายเหตุ: เนื่องจากการแบ่งข้อมูลนี้เป็นแบบสุ่ม จึงควรกำหนด seed ก่อนทำการแบ่งข้อมูลทุกครั้ง
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning ใน Tidyverse
คำแนะนำการฝึกหัด
- แบ่งข้อมูลออกเป็น 75% สำหรับเทรนและ 25% สำหรับทดสอบโดยใช้ฟังก์ชัน
initial_split()แล้วกำหนดให้กับตัวแปรgap_split - ดึง data frame ชุดเทรนออกจาก
gap_splitโดยใช้ฟังก์ชันtraining() - ดึง data frame ชุดทดสอบออกจาก
gap_splitโดยใช้ฟังก์ชันtesting() - ตรวจสอบขนาดของ data frame ที่ได้ว่าตรงตามที่คาดไว้หรือไม่ โดยใช้ฟังก์ชัน
dim()กับtraining_dataและtesting_data
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
set.seed(42)
# Prepare the initial split object
gap_split <- initial_split(___, prop = ___)
# Extract the training data frame
training_data <- ___
# Extract the testing data frame
testing_data <- ___
# Calculate the dimensions of both training_data and testing_data
dim(___)
dim(___)