Tính năng mở rộng quy mô với Scikit-Learn for Data Science – Chick Golden


Bạn có thực sự muốn điều này xảy ra ?

Trong tiến trình khoa học dữ liệu, tất cả chúng ta cần thực thi một số tiền giải quyết và xử lý trước những thuật toán học máy. Đây hoàn toàn có thể là 1 số ít quá trình nghiên cứu và phân tích tài liệu cơ bản như giải quyết và xử lý những giá trị bị thiếu và giá trị ngoại lai và làm sạch tài liệu. Chúng tôi cũng vận dụng quy mô ( quy đổi tài liệu ) cho 1 số ít tài liệu .
Chia tỷ suất là không bắt buộc, nhưng nó hoạt động giải trí tốt hơn để chia tỷ suất tài liệu trước 1 số ít thuật toán học máy .
Mục đích chính của việc chia tỷ suất là để tránh tác động ảnh hưởng của khoanh vùng phạm vi số lớn hơn. Đặc biệt là nó rất quan trọng so với những thuật toán học máy mà khoảng cách là rất quan trọng, ví dụ điển hình như thuật toán KNN ( k Nearest Neighbor ), K-Means Clustering, SVM ( Support Vector Machine ), PCA ( Main Component Analysis ) .

Trong biểu đồ phân tán bên dưới, bạn hoàn toàn có thể kiểm tra sự độc lạ giữa chia tỷ suất và không chia tỷ suất. Chia tỷ suất đã được sử dụng trong quy trình PCA. Phạm vi ( thang điểm ) rất rộng mà không có tỷ suất nên rất khó tách điểm. Khi quy mô được sử dụng, nó mang lại hiệu suất cao và hiệu suất tốt .

Bạn đang đọc: Tính năng mở rộng quy mô với Scikit-Learn for Data Science


Như đã nêu trước đây, mục tiêu của việc chia tỷ suất là đưa từng tài liệu trong tập dữ liệu lại gần nhau hơn. Mục tiêu khác là để tránh 1 số ít loại khó khăn vất vả trong quy trình thống kê giám sát. Ví dụ : thuật toán tối ưu hóa dựa trên Gradient Descent thích lan rộng ra quy mô và hoạt động giải trí tốt hơn với quy mô. Hồi quy tuyến tính và hồi quy logistic, những thuật toán phổ cập sử dụng Gradient Descent, cũng hoàn toàn có thể được chia tỷ suất. Chúng tôi cũng hoàn toàn có thể vận dụng quy mô cho những thuật toán học máy khác và Mạng thần kinh. Chúng tôi hoàn toàn có thể đạt được hiệu suất tốt hơn và hiệu quả tốt hơn. Chúng ta hoàn toàn có thể so sánh tác dụng khi chia tỷ suất và không chia tỷ suất .
Một số thuật toán như Cây quyết định hành động, Rừng ngẫu nhiên, Adaboost không cần chia tỷ suất .

Tài liệu tìm hiểu thêm
Chúng tôi sẽ tập trung chuyên sâu sâu xa vào những điểm chung nhất ; StandardScaler, RobustScaler, MinMaxScaler và MaxAbsScaler .

1 – StandardScaler

from sklearn.preprocessing import StandardScaler

StandardScaler là một phương pháp chia tỷ lệ dựa trên trung bình. Công thức của StandardScaler là (Xi-Xmean) / Xstd, vì vậy nó điều chỉnh giá trị trung bình là 0.

Tài liệu tìm hiểu thêm

StandardScaler dễ bị tác động ảnh hưởng bởi những ngoại lệ vì những ngoại lệ ảnh hưởng tác động đến giá trị trung bình. Nếu bạn có phân phối chuẩn hoặc có tài liệu gần chuẩn, StandardScaler sẽ chuyển dời tài liệu của bạn gần hơn với phân phối chuẩn chuẩn. Tuy nhiên, StandardScaler sẽ không hoạt động giải trí tốt nếu bạn có những ngoại lệ .
Hãy kiểm tra StandardScaler trên biểu đồ ;

from sklearn.preprocessing import StandardScaler
df_scale = StandardScaler().fit_transform(df)

      
from sklearn.preprocessing import StandardScaler
import numpy as np
df_log = np.log(df)
df_scale = StandardScaler().fit_transform(df_log)

      

2 – RobustScaler

Xem thêm : PTU là gì

from sklearn.preprocessing import RobustScaler

RobustScaler là một phương pháp chia tỷ lệ dựa trên trung bình. Công thức của RobustScaler là (Xi-Xmedian) / Xiqr, vì vậy nó không bị ảnh hưởng bởi các ngoại lệ.

Tài liệu tìm hiểu thêm

Vì nó sử dụng khoanh vùng phạm vi giữa những phần, nên nó hấp thụ những ảnh hưởng tác động của những yếu tố ngoại lai trong khi lan rộng ra quy mô. Phạm vi liên phần tư ( Q3 – Q1 ) có một nửa điểm tài liệu. Nếu bạn có những ngoại lệ hoàn toàn có thể ảnh hưởng tác động đến hiệu quả hoặc thống kê của mình và không muốn vô hiệu chúng, RobustScaler là lựa chọn tốt nhất .

Ở trên, tài liệu khởi đầu ( không có thang đo ) có giá trị ngoại lệ ở những điểm 250000 và 200000, sau RobustScaler, chúng biến hóa thành 150 và 200, nhưng StandardScaler đưa chúng thành 25 và 35. Các giá trị ngoại lệ tác động ảnh hưởng đến StandardScaler và quá gần với điểm trung bình. RobustScaler giữ những giá trị ngoại lai ở những nơi chúng nên tránh xa tài liệu có nghĩa .

3 – MinMaxScaler

from sklearn.preprocessing import MinMaxScaler

Công thức của MinMaxScaler là (Xi-Xmin) / (Xmax-Xmin) .

Tài liệu tìm hiểu thêm

MinMaxScaler đặt tài liệu từ 0 đến 1. Tỷ lệ được tính với điểm tối thiểu và tối đa, do đó tài liệu hoàn toàn có thể bị ảnh hưởng tác động bởi những giá trị ngoại lệ. Nó không tương thích với những ngoại lệ. Trước khi tiến hành MinMaxScaler, bạn nên giải quyết và xử lý những ngoại lệ .

4— MaxAbsScaler

from sklearn.preprocessing import MaxAbsScaler

Công thức của MaxAbsScaler là Xi / | Xmax |. Nếu tài liệu có giá trị âm, MaxAbsScaler đặt tài liệu từ – 1 đến 1. Nó chia tỷ suất tài liệu theo mức tối đa tuyệt đối, vì thế nó không tương thích với những giá trị ngoại lệ. Nó cần giải quyết và xử lý trước như giải quyết và xử lý với những yếu tố ngoại lai .

Phần kết luận

Mục đích chính của việc chia tỷ suất là để kiểm soát và điều chỉnh lại từng biến trên một thang đo tiêu chuẩn hóa và để tránh những không ổn định về số hoàn toàn có thể gây ra bởi những số quá lớn, để tăng cường những thuật toán tối ưu hóa. Và yếu tố quan trọng nhất về lan rộng ra quy mô là hãy chắc như đinh rằng vận dụng quy mô cả tài liệu đào tạo và giảng dạy và kiểm tra. Chúng tôi muốn chia tỷ suất toàn bộ tài liệu theo cùng một tỷ suất .

Tài liệu tìm hiểu thêm

StandardScaler

  • Nó không phù hợp với dữ liệu có giá trị ngoại lai.
  • Nó điều chỉnh giá trị trung bình thành 0.
  • Nó phù hợp hơn cho dữ liệu có giá trị ngoại lai.
  • Nó không phù hợp với dữ liệu có giá trị ngoại lai.
  • Nó điều chỉnh dữ liệu giữa 0 và 1.
  • Nó không phù hợp với dữ liệu có giá trị ngoại lai.
  • Nó điều chỉnh dữ liệu giữa -1 và 1.
ĐÁNH GIÁ post
Bài viết liên quan

Tư vấn miễn phí (24/7) 094 179 2255