Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ハイパーパラメータチューニングって何をしているの
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
toridori
November 11, 2024
Technology
0
460
ハイパーパラメータチューニングって何をしているの
toridori
November 11, 2024
Tweet
Share
More Decks by toridori
See All by toridori
Locustでmacから開発環境に負荷試験をしてみた
toridori_dev
0
250
N + 1 問題の概要と Railsにおける解決方法
toridori_dev
0
190
Aurora Cloneで QA環境をつくってみた
toridori_dev
0
280
ニューモーフィズムってどうなの
toridori_dev
0
500
toridori base webをv0で爆速で作った話
toridori_dev
0
230
KoT APIでプチ業務改善を試してみた
toridori_dev
0
540
MUI DataGridProコンポーネントの紹介
toridori_dev
0
790
あの日行ったマージの仕組みを僕達はまだ知らない。
toridori_dev
0
370
DBマイグレーションとORMについて
toridori_dev
0
270
Other Decks in Technology
See All in Technology
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
0
260
契約書からの情報抽出を行うLLMのスループットを、バッチ処理を用いて最大40%改善した話
sansantech
PRO
2
260
スピンアウト講座01_GitHub管理
overflowinc
0
1.3k
スピンアウト講座02_ファイル管理
overflowinc
0
1.3k
Why we keep our community?
kawaguti
PRO
0
220
ThetaOS - A Mythical Machine comes Alive
aslander
0
170
事例から紐解くSHIFT流QA支援 ~大規模プロジェクトの品質管理支援、QA組織立ち上げ~ / 20260320 Nozomu Koketsu
shift_evolve
PRO
0
140
LLMに何を任せ、何を任せないか
cap120
10
5.4k
FlutterでPiP再生を実装した話
s9a17
0
160
モジュラモノリス導入から4年間の総括:アーキテクチャと組織の相互作用について / Architecture and Organizational Interaction
nazonohito51
6
3k
スピンアウト講座03_CLAUDE-MDとSKILL-MD
overflowinc
0
1.2k
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
1
440
Featured
See All Featured
Navigating Team Friction
lara
192
16k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
From π to Pie charts
rasagy
0
160
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
400
Done Done
chrislema
186
16k
How to build a perfect <img>
jonoalderson
1
5.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Unsuck your backbone
ammeep
672
58k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
Raft: Consensus for Rubyists
vanstee
141
7.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Transcript
ハイパーパラメータチューニング って何をしているの 開発部 井上 2024/10/25
ハイパーパラメータとは
(普通の)パラメータ 線形回帰での例 観測データ が与えられたとき、直線(モデル) が最もフィットするような、適切な値 を求めたい。 このような、データに合わせてモデルの振る舞いを決める値を、モデルのパラメータや重みという。 適切なパラメータを求めることを、学習という。
「適切な」パラメータの定式化 線形回帰での例 どのようなときに「最もフィット」するか? 線形回帰の例では、次の誤差関数を最小化すればよい(いわゆる最小二乗法)。
ハイパーパラメータ Ridge回帰の例 モデルの複雑さを抑えるため(上記の例では、パラメータの絶対値が大きくなりにくくするため)、線 形回帰の誤差関数に対して、次のような罰則項を加えた関数(コスト関数)を考え、この最小化を考え ることがある(Ridge回帰)。 ここでλは、罰則の強さを決める正の実数で、値が大きいほど罰則が強くなる(パラメータは絶対値の大 きな値を取りにくくなる)。 このλは、学習前に事前に決めておくパラメータで、ハイパーパラメータと呼ばれる。
フィットさせたい関数 パラメータ 最小化したい関数 ハイパーパラメータ ここまでのまとめ Ridge回帰の例
実際の例 ハイパーパラメータを変えて学習した例 から生成した点+外れ値に 3つのモデルをフィッティング。 λを大きくすると、 傾きも小さくなっている。 ※αはscikit-learnライブラリで設定する 際のハイパーパラメータの名前で、 λと同じものと考えて大丈夫です ※Ridge回帰は多重共線性への対処に
用いられるのですが、今回は1変数 のため説明を割愛
ハイパーパラメータチューニング
ハイパーパラメータチューニングとは ハイパーパラメータに適切な値はあるの? どうやって決めたらいいの? それを決めるのがハイパーパラメータチューニングです。 ハイパーパラメータチューニングとは
ハイパーパラメータチューニングの定式化 任意のλに対し、コスト関数 を最小化するような を と書くことにする。このとき、誤差関数の値 が最も小さくなるようなλを選択すればよい。 ※本当は評価用のデータセットを分けたりしないといけないのですが、今回は割愛 Ridge回帰の例
ハイパーパラメータチューニングの方法 そのようなハイパーパラメータをどうやって探索すればよいか? あらかじめ決めておいた有限個のリストを探索したり、与えられた範囲からランダムに探索したりする 方法もある。 完全なランダムではなく、いい感じに確率的に探索してくれるのが、ベイズ最適化。 探索の方法
最適化とは 一般に、関数が最小値(あるいは最大値)を取るような値を求めることを最適化という。 ベイズ最適化はブラックボックス最適化の一種で、よく分からない関数でもいい感じに最適化してくれ る。 ベイズ最適化を行ってくれるPythonのライブラリとしては、Optunaが有名。 ベイズ最適化
コード例 このあたりはMLのテンプレなので Optunaのコード例 Optunaで最適化するために 追加するのはこのあたり
おまけ
最適化の応用例 Googleの研究者がチョコチップクッキーのレシピの最適化をしたらしいです: Bayesian Optimization for a Better Dessert レシピ→“美味しさの評価値”という関数の最大化を試みたわけですね。 Googleのチョコチップクッキーレシピ
ご清聴ありがとうございました おわり