パラメータとハイパーパラメータ

R によるハイパーパラメータチューニング

Dr. Shirin Elsinghorst

Senior Data Scientist

自己紹介

R によるハイパーパラメータチューニング

「ハイパー」パラメータとモデルパラメータ

  • サンプルデータセットを見てみましょう:
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
  • シンプルな線形モデルを構築します。
R によるハイパーパラメータチューニング

基本から始めましょう:線形モデルのパラメータ

# 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 *
R によるハイパーパラメータチューニング

基本から始めましょう:線形モデルのパラメータ

  • モデルのパラメータは学習中にフィット(算出)されます。
  • モデルのフィット・学習の結果です。

  • 線形モデルでは係数を求めます。

linear_model$coefficients
(Intercept) fractal_dimension_mean 
   167.5972              -926.3866 
  • 係数はモデルの傾きy切片として解釈できます。
R によるハイパーパラメータチューニング

線形モデルにおける係数

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])

R によるハイパーパラメータチューニング

線形モデルにおけるパラメータとハイパーパラメータ

  • 復習: モデルのパラメータは学習中にフィット(算出)される。モデルのフィット・学習の結果です。

  • ハイパーパラメータは学習前に設定されます。

  • 学習をどのように行うかを指定します。
args(lm)
help(lm)
?lm

linear_model <- lm(perimeter_worst ~ fractal_dimension_mean,
                   data = breast_cancer_data,
                   method = "qr")
R によるハイパーパラメータチューニング

機械学習におけるパラメータとハイパーパラメータ

線形モデルでは:

  • 係数はフィット中に算出されます。

 

  • methodはフィットに設定するオプションです。

機械学習では:

  • ニューラルネットの重みとバイアスは学習中に最適化される => モデルのパラメータ
  • 学習率、重み減衰、ランダムフォレストの木の数などの設定 => ハイパーパラメータ
R によるハイパーパラメータチューニング

なぜハイパーパラメータをチューニングするのか?

  • ファンタジーフットボールの選手 ~ ハイパーパラメータ
  • 選手のポジション ~ ハイパーパラメータの
  • 最適な選手とポジションの組み合わせを見つける ~ 最適なハイパーパラメータの組み合わせを探す

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

R によるハイパーパラメータチューニング

練習しましょう!

R によるハイパーパラメータチューニング

Preparing Video For Download...