Hồi quy tuyến tính có điều chuẩn

Giảm Chiều Dữ Liệu với Python

Jeroen Boeye

Head of Machine Learning, Faktion

Khái niệm mô hình tuyến tính

đặc trưng đến mục tiêu

Giảm Chiều Dữ Liệu với Python

Tạo bộ dữ liệu của riêng ta

x1 x2 x3
1.76 -0.37 -0.60
0.40 -0.24 -1.12
0.98 1.10 0.77
... ... ...
Giảm Chiều Dữ Liệu với Python

Tạo bộ dữ liệu của riêng ta

x1 x2 x3
1.76 -0.37 -0.60
0.40 -0.24 -1.12
0.98 1.10 0.77
... ... ...

3 phân phối đặc trưng

Giảm Chiều Dữ Liệu với Python

Tạo bộ dữ liệu của riêng ta

3 phân phối đặc trưng

Tạo biến mục tiêu của riêng ta:

$y = 20 + 5x_1 + 2x_2 + 0x_3 + error$

Giảm Chiều Dữ Liệu với Python

Hồi quy tuyến tính trong Python

from sklearn.linear_model import LinearRegression

lr = LinearRegression()
lr.fit(X_train, y_train)

# Actual coefficients = [5 2 0]
print(lr.coef_)
[ 4.95  1.83 -0.05]
# Actual intercept = 20
print(lr.intercept_)
19.8
Giảm Chiều Dữ Liệu với Python

Hồi quy tuyến tính trong Python

# Calculates R-squared
print(lr.score(X_test, y_test))
0.976
Giảm Chiều Dữ Liệu với Python

Hồi quy tuyến tính trong Python

from sklearn.linear_model import LinearRegression

lr = LinearRegression()
lr.fit(X_train, y_train)

# Actual coefficients = [5 2 0]
print(lr.coef_)
[ 4.95  1.83 -0.05]
Giảm Chiều Dữ Liệu với Python

Hàm mất mát: Sai số bình phương trung bình (MSE)

dự đoán so với thực tế

Giảm Chiều Dữ Liệu với Python

Hàm mất mát: Sai số bình phương trung bình (MSE)

dự đoán so với thực tế với MSE

Giảm Chiều Dữ Liệu với Python

Thêm điều chuẩn

dự đoán so với thực tế với MSE + công thức

Giảm Chiều Dữ Liệu với Python

Thêm điều chuẩn

dự đoán so với thực tế với MSE + công thức + chú thích

Giảm Chiều Dữ Liệu với Python

Thêm điều chuẩn

dự đoán so với thực tế với MSE + công thức + alpha

Giảm Chiều Dữ Liệu với Python

Hồi quy Lasso

from sklearn.linear_model import Lasso

la = Lasso()
la.fit(X_train, y_train)

# Actual coefficients = [5 2 0]
print(la.coef_)
[4.07 0.59 0.  ]
print(la.score(X_test, y_test))
0.861
Giảm Chiều Dữ Liệu với Python

Hồi quy Lasso

from sklearn.linear_model import Lasso

la = Lasso(alpha=0.05)
la.fit(X_train, y_train)

# Actual coefficients = [5 2 0]
print(la.coef_)
[ 4.91  1.76 0.  ]
print(la.score(X_test, y_test))
0.974
Giảm Chiều Dữ Liệu với Python

Ayo berlatih!

Giảm Chiều Dữ Liệu với Python

Preparing Video For Download...