Menu
CoddyTech

Ôn tập: Bộ lọc thư rác

Thuộc phần Học có giám sát trong hành trình Machine Learning của Coddy. Bài học 20 trên 58.

challenge icon

Thử thách

Trung bình

Hãy xây dựng bộ lọc thư rác mà chương này đã mở đầu. emails.csv chứa 200 email: links, exclaims, caps_words, from_contact (1 nếu người gửi đã biết), words và spam. Chương trình đọc một ngưỡng.

  1. Giữ lại một phần tư dữ liệu để kiểm tra (random_state=0), chuẩn hóa các hàng dùng để huấn luyện, huấn luyện một mô hình LogisticRegression; in độ chính xác trên tập kiểm tra (3 chữ số thập phân).
  2. Với ngưỡng đó, đếm số email kiểm tra bị đưa vào thư rác, số email thật trong đó và số thư rác lọt qua.
  3. In bằng chứng mạnh nhất cho thấy email là thư rác và trọng số của nó (2 chữ số thập phân).

Với một dịch vụ khác và 0.7:

Test accuracy: 0.884
At 0.7: 15 emails to spam (1 of them real), 4 spam let through
Strongest spam evidence: links (1.38)

Tự làm thử

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression

emails = pd.read_csv("emails.csv")
features = ["links", "exclaims", "caps_words", "from_contact", "words"]
threshold = float(input())

# Viết code của bạn bên dưới

Tất cả bài học trong Học có giám sát

Tự luyện tập: Trình biên dịch Python online