第4章 トレーニングモデル モデルのトレーニング
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
これまで我々は、機械学習モデルとそのトレーニングアルゴリズムを、ほとんどブラックボックスのように扱ってきた。前の章の演習をいくつか経験した人は、ボンネットの中身について何も知らなくても、どれだけのことができるかに驚いたかもしれない:回帰システムを最適化したり、数字画像分類器を改良したり、スパム分類器をゼロから作ったり。実際、多くの状況では実装の詳細を知る必要はない。
しかし、物事の仕組みをよく理解することで、適切なモデル、適切なトレーニングアルゴリズム、そしてタスクに適したハイパーパラメータのセットを素早く見つけることができる。また、フードの下にあるものを理解することは、問題のデバッグやエラー分析をより効率的に行うことにも役立つ。最後に、本章で取り上げるトピックのほとんどは、ニューラルネットワーク(本書のパートIIで説明)を理解し、構築し、トレーニングする上で不可欠なものである。
この章では、線形回帰モデル を見ることから始める。このモデルをトレーニングする2つの異なる方法について説明する:
-
閉形式1これは、モデルをトレーニングセットに最も適合させるモデルパラメータ(すなわち、トレーニングセット上のコスト関数を最小化するモデルパラメータ)を直接計算するものである。
-
勾配降下(gradient descent: GD) と呼ばれる反復最適化手法を用い、トレーニングセット上のコスト関数を最小化するようにモデルパラメータを徐々に調整し、最終的に最初の手法と同じパラメータセットに収束させる。バッチGD、ミニバッチGD、そしてストキャスティックGDである。
次に、非線形データセットに適合できるより複雑なモデルである多項式回帰 を見る。このモデルは線形回帰よりもパラメータが多いので、トレーニングデータを過学習しやすい。学習曲線を用いてこのケースを検出する方法を検討し、トレーニング・セットの過学習のリスクを減らすことができるいくつかの正則化テクニックを検討する。
最後に、分類タスクによく使われるもう2つのモデル、ロジスティック回帰とソフトマックス回帰を検証する。
警告
この章では、線形代数と微積分の基本概念を使った数式がかなり出てくる。これらの方程式を理解するためには、偏導関数と同様に、転置、乗算、反転などのベクトルと行列に精通している必要がある。これらの概念に馴染みがない場合は、オンライン補足資料で提供されている線形代数と微積分に関する入門Jupyterノートブックを復習してほしい。もし本当に数学にアレルギーがあるのなら、数式を読み飛ばしても構わない。テキストを読めばほとんどの概念は理解できるはずだ。とはいえ、数学的形式論を学ぶことは、ML論文を読む上で非常に役に立つ。最初は難しく感じるかもしれないが、実際はそれほど難しくないし、この章には方程式の意味を理解するのに役立つコードも含まれている。
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access