Chọn eps
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 22 trên 51.
eps chỉ là một giá trị phỏng đoán cho đến khi bạn quan sát dữ liệu. Với công viên trong bài Các điểm nhiễu, hãy đo khoảng cách từ mỗi điểm đến điểm gần thứ 4, tính cả chính điểm đó, tương tự như min_samples=4. Sắp xếp rồi vẽ biểu đồ:
Các điểm trong cụm nằm thấp và phẳng; các điểm đơn lẻ vọt lên cao. Điểm gối, nơi đường cong bắt đầu hướng lên, là một giá trị eps phù hợp:
from sklearn.neighbors import NearestNeighbors
nn = NearestNeighbors(n_neighbors=4).fit(X)
distances, rows = nn.kneighbors(X)
ax.plot(np.sort(distances[:, -1]))kneighbors cho biết khoảng cách từ mỗi điểm đến 4 điểm gần nhất, theo thứ tự từ gần nhất đến xa nhất, vì vậy cột -1 là điểm thứ 4. np.sort sắp xếp chúng.
Thử thách
Trung bìnhCác nhà địa chấn học muốn DBSCAN tìm các đường đứt gãy dưới khu vực xảy ra động đất trong một năm, với min_samples=5. Hãy chọn eps.
- Khớp
NearestNeighbors(n_neighbors=5)vớiXvà lấy khoảng cách của mọi trận động đất. - Vẽ khoảng cách đến trận động đất gần thứ 5 theo thứ tự đã sắp xếp.
- Chạy và xác định điểm gấp khúc. Giữ giá trị đó trong
eps, vẽ đường nét đứt màu xám bằngax.axhlinerồi hiển thị biểu đồ.
Ở một khu vực khác, điểm gấp khúc nằm gần 4 km:
Coddy mô tả biểu đồ của bạn, sau đó chạy DBSCAN với eps bạn chọn.
Tự làm thử
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.neighbors import NearestNeighbors
# Các trận động đất trong một năm ở một khu vực: tọa độ mỗi tâm chấn tính bằng km
quakes = pd.read_csv("quakes.csv")
X = np.column_stack([quakes["east_km"], quakes["north_km"]])
fig, ax = plt.subplots()
ax.set_title("Distance to the 5th Nearest Quake")
ax.set_xlabel("Quakes, sorted")
ax.set_ylabel("Distance (km)")
# 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 không giám sát
1Tìm các nhóm
Học không cần nhãnĐo độ tương đồngTự thực hiện K-MeansK-Means trong scikit-learnÔn tập: thành viên phòng gym7PCA trong thực tế
Quan sát 64 chiềuCác thành phần như mẫu hìnhNén và dựng lạiPCA trước khi xây dựng mô hìnhÔn tập: máy quét khuôn mặt10Dự án: Khám phá chữ số
Quan sát các chữ sốThu gọn bằng PCAPhân cụm chữ sốĐặt tên cho các cụmTìm những chữ số khác biệt2Chọn k
Quán tínhPhương pháp khuỷu tayĐiểm số SilhouetteChuẩn hóa thang đo trước khi phân cụmÔn tập: Các vùng giao hàngTự luyện tập: Trình biên dịch Python online