การนำ SMOTE ไปใช้งาน
ในแบบฝึกหัดนี้ เราจะปรับสมดุลข้อมูลโดยใช้เทคนิค Synthetic Minority Over-sampling Technique (SMOTE) ซึ่งต่างจาก ROS ตรงที่ SMOTE ไม่ได้สร้างสำเนาของข้อมูลเดิมทุกประการ แต่จะสร้างตัวอย่างข้อมูลสังเคราะห์ใหม่ที่มีลักษณะคล้ายกับข้อมูลที่มีอยู่ในคลาสส่วนน้อย SMOTE จึงมีความซับซ้อนกว่าการคัดลอกข้อมูลธรรมดา มาลองนำ SMOTE ไปใช้กับข้อมูลบัตรเครดิตของเรากัน
ชุดข้อมูล df พร้อมใช้งานแล้ว และแพ็กเกจที่จำเป็นสำหรับ SMOTE ได้ถูก import ไว้เรียบร้อยแล้ว ในแบบฝึกหัดถัดไป เราจะแสดงผลลัพธ์และเปรียบเทียบกับข้อมูลเดิม เพื่อให้เห็นผลของการใช้ SMOTE ได้อย่างชัดเจน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การตรวจจับการฉ้อโกงด้วย Python
คำแนะนำการฝึกหัด
- ใช้ฟังก์ชัน
prep_dataกับdfเพื่อสร้าง featuresXและ labelsy - กำหนดวิธีการ resampling เป็น SMOTE แบบปกติ โดยเก็บไว้ในตัวแปร
method - ใช้
.fit_resample()กับXและyเดิม เพื่อให้ได้ข้อมูลที่ resample ใหม่ - พล็อตข้อมูลที่ resample แล้วโดยใช้ฟังก์ชัน
plot_data()
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
from imblearn.over_sampling import SMOTE
# Run the prep_data function
X, y = ____(df)
# Define the resampling method
method = ____()
# Create the resampled feature set
X_resampled, y_resampled = method.____(____, ____)
# Plot the resampled data
plot_data(____, ____)