Principal component analysis là gì

1. Giới thiệu

Với thời đại tài liệu nở rộ như ngày nay, dữ liệu ta thu thập được rất lớn. Trong thực tế, cácvector đặc trưng(feature vectors) rất có thể gồm số chiều không hề nhỏ, cho tới vài ngàn. Đồng thời, lượng điểm dữ liệu cũng khá phệ. Điều kia sẽ gây ra khó khăn mang đến việc tàng trữ cùng tính tân oán. Vì vậy, một giữa những bước đặc trưng trong vô số bài xích tân oán học thiết bị là ta phảisút chiều dữ liệu(dimentionality reduction).

Bạn đang xem: Principal component analysis là gì

Giảm chiều dữ liệucòn là cách thức được sử dụng để giảm vấn đềvượt khớp(overfitting),nó tất cả hai phía là hướngchọn lựa quánh trưng(feature selection) cùng hướngtrích xuất sệt trưng(feature extraction). Hôm ni ta sẽ khám phá về một thuật tân oán theo hướngtrích xuất đặc trưnglà Principal Component Analysis (PCA).

Xem thêm: What Is Tether Usdt Là Gì ? Những Hiểu Biết Về Đồng Tiền Ảo Tether (Usdt)

1.1 Giới thiệu về PCA


*

1.2 Cnghỉ ngơi sở toán thù học

Kỳ vọng (mean)

Là quý giá mong ước, nó đơn giản là mức độ vừa phải cùng của cục bộ những giá bán trị

ChoNgiá chỉ trị

*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*

3. Demo đối kháng giản

*
*
*
*
*
*
*
*

Dữ liệu được trải rộng hơn ở trục PC 1 – yếu tố chính trước tiên (the first principal component)Dữ liệu được trải rộng lớn it hơn sống trục PC 2 – yếu tắc chủ yếu lắp thêm nhị (the second principal component)Phần này ta áp dụng thỏng viện sklearn để bớt chiều dữ liệu với training

from matplotlib.colors import ListedColormapdef plot_decision_regions(X, y, classifier, resolution=0.02): # cài đặt marker generator and color map markers = ("s", "x", "o", "^", "v") colors = ("red", "blue", "lightgreen", "gray", "cyan") cbản đồ = ListedColormap(colors<:len(np.unique(y))>) # plot the decision surface x1_min, x1_max = X<:, 0>.min() - 1, X<:, 0>.max() + 1 x2_min, x2_max = X<:, 1>.min() - 1, X<:, 1>.max() + 1 xx1, xx2 = np.meshgrid(np.arange(x1_min, x1_max, resolution), np.arange(x2_min, x2_max, resolution)) Z = classifier.predict(np.array().T) Z = Z.reshape(xx1.shape) plt.contourf(xx1, xx2, Z, alpha=0.4, cmap=cmap) plt.xlim(xx1.min(), xx1.max()) plt.ylim(xx2.min(), xx2.max()) # plot examples by class for idx, cl in enumerate(np.unique(y)): plt.scatter(x=X, y=X, alpha=0.6, color=cmap(idx), edgecolor="black", marker=markers, label=cl)from sklearn.linear_model import LogisticRegressionfrom sklearn.decomposition import PCA# initializing the PCA transformer and# logistic regression estimator:pca = PCA(n_components=2)lr = LogisticRegression(multi_class="ovr", random_state=1, solver="lbfgs")# dimensionality reduction:X_train_pca = pca.fit_transform(X_train_std)X_test_pca = pca.transform(X_test_std)# fitting the logistic regression model on the reduced dataset:lr.fit(X_train_pca, y_train)#OutputLogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True, intercept_scaling=1, max_iter=100, multi_class="ovr", n_jobs=None, penalty="l2", random_state=1, solver="lbfgs", tol=0.0001, verbose=0, warm_start=False)Phân nhiều loại tài liệu trên tập train chưa đến tài liệu 2 chiều

plot_decision_regions(X_train_pca, y_train, classifier=lr)plt.xlabel("PC 1")plt.ylabel("PC 2")plt.legend(loc="lower left")plt.tight_layout()plt.show()
Phân các loại dữ liệu trên tập demo chưa đến dữ liệu 2 chiều

plot_decision_regions(X_test_pca, y_demo, classifier=lr)plt.xlabel("PC1")plt.ylabel("PC2")plt.legend(loc="lower left")plt.tight_layout()plt.show()
Ta hoàn toàn có thể thấy chỉ có một vài ba điểm bị phân nhiều loại không nên, logistic regression vận động hơi xuất sắc trên không gian hai phía này.

Xem thêm: Đội Hình Mạnh Cờ Liên Quân, Top 3 Đội Hình Cờ Liên Quân Bá Đạo Nhất

4. Kết luận

4.1 Ưu điểm của PCA

Loại vứt các đặc trưng đối sánh (giảm những sệt trưng)Cải thiện tại hiệu suất thuật toánGiảm quá khớp (overfitting)Cải thiện nay trực quan tiền hóa dữ liệu (dễ trực quan tiền hóa Lúc bao gồm không nhiều chiều)

4.2 Nhược điểm của PCA

Các biến chuyển độc lập trsinh hoạt yêu cầu cạnh tranh phát âm rộng (các đặc thù mới rất khó gọi và dễ nắm bắt nhỏng các đặc thù ban đầu).Chuẩn hóa tài liệu trước khi áp dụng PCA.Mất lên tiếng.

5. Tài liệu tmê man khảo

<1>Pynhỏ machine learning book


Chuyên mục: Công Nghệ 4.0