Tham số vs siêu tham số

Tinh chỉnh siêu tham số trong R

Dr. Shirin Elsinghorst

Senior Data Scientist

Về tôi

Tinh chỉnh siêu tham số trong R

Tham số "siêu" vs tham số mô hình

  • Hãy xem một bộ dữ liệu ví dụ:
head(breast_cancer_data)
# A tibble: 6 x 11
  diagnosis concavity_mean symmetry_mean fractal_dimension perimeter_se smoothness_se
  <chr>              <dbl>         <dbl>             <dbl>        <dbl>         <dbl>
1 M                 0.300          0.242            0.0787         8.59       0.00640
2 M                 0.0869         0.181            0.0567         3.40       0.00522
3 M                 0.197          0.207            0.0600         4.58       0.00615
4 M                 0.241          0.260            0.0974         3.44       0.00911
  • Và xây dựng một mô hình tuyến tính đơn giản.
Tinh chỉnh siêu tham số trong R

Bắt đầu đơn giản: Tham số mô hình trong mô hình tuyến tính

# Create linear model
linear_model <- lm(perimeter_worst ~ fractal_dimension_mean, data = breast_cancer_data)
# Get coefficients
summary(linear_model)$coefficients
                       Estimate Std. Error t value Pr(>|t|)    
(Intercept)              167.60      25.91   6.469  3.9e-09 ***
fractal_dimension_mean  -926.39     392.86  -2.358   0.0204 *
Tinh chỉnh siêu tham số trong R

Bắt đầu đơn giản: Tham số mô hình trong mô hình tuyến tính

  • Tham số mô hình được ước lượng (tức là tìm ra) trong quá trình huấn luyện.
  • Chúng là kết quả của việc khớp/huấn luyện mô hình.

  • Với mô hình tuyến tính, ta cần tìm các hệ số.

linear_model$coefficients
(Intercept) fractal_dimension_mean 
   167.5972              -926.3866 
  • Có thể xem chúng là độ dốc và giao điểm trục y của mô hình.
Tinh chỉnh siêu tham số trong R

Hệ số trong mô hình tuyến tính

ggp <- ggplot(data = breast_cancer_data, 
              aes(x = fractal_dimension_mean, y = perimeter_worst)) +
        geom_point(color = "grey")

ggp + geom_abline(slope = linear_model$coefficients[2], intercept = linear_model$coefficients[1])

Tinh chỉnh siêu tham số trong R

Tham số mô hình vs siêu tham số trong mô hình tuyến tính

  • Nhớ rằng: tham số mô hình được ước lượng trong huấn luyện; chúng là kết quả của việc khớp/huấn luyện mô hình.

  • Siêu tham số được đặt trước khi huấn luyện.

  • Chúng quy định CÁCH huấn luyện sẽ diễn ra.
args(lm)
help(lm)
?lm

linear_model <- lm(perimeter_worst ~ fractal_dimension_mean,
                   data = breast_cancer_data,
                   method = "qr")
Tinh chỉnh siêu tham số trong R

Tham số vs siêu tham số trong Machine Learning

Với mô hình tuyến tính của chúng ta:

  • Hệ số được tìm trong quá trình khớp.

 

  • method là một tùy chọn đặt trước khi khớp.

Trong Machine Learning ta có thể có:

  • Trọng số và độ lệch của mạng nơ-ron được tối ưu khi huấn luyện => tham số mô hình.
  • Các tùy chọn như learning rate, weight decay và số cây trong mô hình Random Forest để tinh chỉnh => siêu tham số.
Tinh chỉnh siêu tham số trong R

Vì sao cần tinh chỉnh siêu tham số?

  • Cầu thủ fantasy football ~ Siêu tham số
  • Vị trí của cầu thủ ~ Giá trị siêu tham số
  • Tìm tổ hợp tốt nhất giữa cầu thủ và vị trí ~ Tìm tổ hợp siêu tham số tối ưu

https://pixabay.com/photo-1493087/

Tinh chỉnh siêu tham số trong R

Cùng luyện tập nào!

Tinh chỉnh siêu tham số trong R

Preparing Video For Download...