Dự đoán có hoặc không
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 16 trên 58.
Chương này trả lời các câu hỏi có hoặc không bằng xác suất. Chương kết thúc với một bộ lọc thư rác do bạn xây dựng, xếp hạng email như sau:
Đặt chỗ nhà hàng có bị hủy không? LogisticRegression học điều đó từ 60 lượt đặt chỗ trước đây: số ngày đặt trước và trạng thái đã hủy (1) hoặc vẫn giữ chỗ (0):
from sklearn.linear_model import LogisticRegression
model = LogisticRegression(max_iter=1000) # Đủ số lần lặp để hoàn tất quá trình học
model.fit(X, cancelled) # X: số ngày tính trước, một cột
print(np.round(model.predict_proba([[3], [40]]), 2))Kết quả in ra:
[[0.91 0.09]
[0.28 0.72]]Mỗi hàng của lượt đặt chỗ chứa xác suất thuộc lớp 0, rồi đến lớp 1. [:, 1] giữ lại xác suất thuộc lớp 1, tức là bị hủy.
Chúng đi theo hình chữ S: không bao giờ nhỏ hơn 0 hoặc lớn hơn 1, đúng như xác suất cần có.
Thử thách
Trung bìnhMột câu lạc bộ thả diều đặt ba khung giờ thả diều vào ngày mai. kites.csv lưu 90 lần thả diều trước đây: wind_kmh và flew, có giá trị 1 nếu diều bay lên được. Chương trình đọc dự báo gió cho từng khung giờ vào slots.
- Khớp mô hình
LogisticRegression(max_iter=1000) với dữ liệu gió. - In xác suất diều bay được trong mỗi khung giờ, làm tròn đến phần trăm nguyên.
- In số lần diều dự kiến bay được: tổng các xác suất (1 chữ số thập phân).
Dành cho một câu lạc bộ khác:
6 km/h: 9% chance the kite flies
18 km/h: 64% chance the kite flies
30 km/h: 97% chance the kite flies
Expected flights: 1.7 of 3Tự làm thử
import numpy as np
import pandas as pd
from sklearn.linear_model import LogisticRegression
# 90 lần thả diều trước đây: tốc độ gió tính bằng km/h và flew (1 nếu diều bay lên)
kites = pd.read_csv("kites.csv")
# Ba khung giờ thả diều ngày mai, theo tốc độ gió dự báo
winds = []
for i in range(3):
winds.append(int(input()))
slots = pd.DataFrame({"wind_kmh": winds})
# Viết code bên dưới
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Học có giám sát
1Mô hình đầu tiên của bạn
Học từ ví dụTập huấn luyện và tập kiểm traHuấn luyện và dự đoánChấm điểm mô hìnhÔn tập: Bộ sắp xếp hạt giống4Hồi quy logistic
Dự đoán có hoặc khôngNgưỡng quyết địnhTrọng số là bằng chứngNhiều lớpÔn tập: Bộ lọc thư rác2Láng giềng gần nhất
Cách k-NN đưa ra quyết địnhChọn kRanh giới quyết địnhChuẩn hóa dữ liệu cho láng giềngÔn tập: láng giềng với dữ liệu rượu vang5Đánh giá bộ phân loại
Ma trận nhầm lẫnĐộ chính xác và độ thu hồiĐiểm F1Các lớp mất cân bằngĐường cong ROCÔn tập: Bài kiểm tra sàng lọc11Dự án: Các loài chim cánh cụt
Làm quen với chim cánh cụtChuẩn bị dữ liệuChọn mô hìnhTinh chỉnh mô hình tốt nhấtĐưa mô hình vào sử dụng3Hồi quy tuyến tính
Dự đoán các con sốNhiều đặc trưngĐo lường sai sốBiểu đồ phần dưÔn tập: Thuê xe đạp6Cây quyết định
Cây đặt câu hỏiĐọc câyĐộ sâu của câyTầm quan trọng của đặc trưngÔn tập: quyết định cho vay9Các mô hình tổ hợp
Rừng ngẫu nhiênVì sao rừng hoạt động hiệu quảTăng cường độ dốcÔn tập: Người kiểm lâm rừng12Thử thách cuối cùng
Tiến triển của bệnh tiểu đườngPhê duyệt tín dụngChữ số viết tayKhách hàng rời bỏTự luyện tập: Trình biên dịch Python online