Dùng phân loại ML để phát hiện gian lận
Trong bài tập này, bạn sẽ xem điều gì xảy ra khi dùng một mô hình machine learning đơn giản trên dữ liệu thẻ tín dụng của chúng ta.
Bạn nghĩ mình có thể vượt qua các kết quả trước đó không? Nhớ rằng, bạn đã dự đoán đúng 22 trên 50 trường hợp gian lận, và có 16 dương tính giả.
Với điều đó, hãy triển khai mô hình Logistic Regression. Nếu bạn đã học lớp về supervised learning trong Python, bạn sẽ thấy quen thuộc với mô hình này. Nếu chưa, bạn có thể ôn lại một chút ở đây. Nhưng đừng lo, bạn sẽ được hướng dẫn qua cấu trúc của mô hình machine learning.
Các biến X và y đã có sẵn trong không gian làm việc của bạn.
Bài tập này là một phần của khóa học
Phát hiện gian lận với Python
Hướng dẫn bài tập
- Chia
Xvàythành dữ liệu huấn luyện và kiểm tra, giữ 30% dữ liệu cho kiểm tra. - Khớp (fit) mô hình vào dữ liệu huấn luyện của bạn.
- Lấy nhãn dự đoán của mô hình bằng cách chạy
model.predicttrênX_test. - Tạo báo cáo phân loại so sánh
y_testvớipredicted, và dùng ma trận nhầm lẫn đã cho để kiểm tra kết quả.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Create the training and testing sets
X_train, X_test, y_train, y_test = train_test_split(____, ____, test_size=____, random_state=0)
# Fit a logistic regression model to our data
model = LogisticRegression()
model.fit(____, ____)
# Obtain model predictions
predicted = model.predict(____)
# Print the classifcation report and confusion matrix
print('Classification report:\n', classification_report(____, ____))
conf_mat = confusion_matrix(y_true=y_test, y_pred=predicted)
print('Confusion matrix:\n', conf_mat)