Menu
CoddyTech

Quá nhiều đặc trưng

Thuộc phần Học không giám sát trong hành trình Machine Learning của Coddy. Bài học 24 trên 51.

Chương này gói gọn nhiều tính năng trong một vài tính năng. Đến cuối chương, 13 phép đo rượu vang sẽ trở thành một bản đồ:

178 loại rượu vang trên một bản đồ với hai đặc điểm mới theo chiều ngang và chiều dọc: ba nhóm, giống nho 1 ở bên phải, giống nho 2 ở phía dưới, chính giữa, giống nho 3 ở bên trái

Tại sao cần nén? Nhiều đặc trưng khó vẽ biểu đồ, mất nhiều thời gian để khớp và thường lặp lại nhau, như hai đặc trưng này:

Tổng phenol tăng cùng với flavanoid ở 178 loại rượu vang: các điểm cùng tăng từ góc dưới bên trái lên góc trên bên phải, với r = 0.86

Cặp đôi mang cùng một ý tưởng nhưng xuất hiện hai lần. Ma trận tương quan giúp tìm ra chúng, với giá trị r gần 1 hoặc -1:

wine = load_wine(as_frame=True).frame
corr = wine.corr()
print(round(corr.loc["flavanoids", "total_phenols"], 2))

Lệnh này in ra 0.86. Giữ lại một phần tử trong mỗi cặp hoặc gộp chúng lại: chương này hướng dẫn cách gộp.

challenge icon

Thử thách

Trung bình

Một xưởng xà phòng đo 10 thông số trên mỗi mẻ xà phòng, khiến các báo cáo ngày càng dài. Hãy tìm các cặp song sinh. Chương trình đọc một ngưỡng; đoạn code ban đầu tạo corr.

  1. Duyệt qua mỗi cặp cột khác nhau đúng một lần.
  2. In từng cặp có giá trị r có độ lớn ít nhất bằng ngưỡng, bất kể dấu, với r được làm tròn đến 2 chữ số thập phân.
  3. In số cặp bạn tìm được.

Với một xưởng khác và ngưỡng 0.85:

lye_g and oil_g: 0.91
cure_days and water_left_pct: -0.88
Twin pairs: 2

Tự làm thử

import pandas as pd

# Một xưởng làm xà phòng: 10 phép đo cho mỗi mẻ trong 60 mẻ xà phòng
batches = pd.read_csv("soaps.csv")
limit = float(input())
corr = batches.corr()
cols = corr.columns

# Viết code của bạn bên dưới
quiz iconTự kiểm tra

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 không giám sát

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