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
Keishu
August 13, 2025
Programming
2
38
パラメータ探索を効率化するベイズ最適化入門
Keishu
August 13, 2025
Tweet
Share
More Decks by Keishu
See All by Keishu
スマートフォンで実現する次世代の足形計測と靴選び
keishu
0
15
Other Decks in Programming
See All in Programming
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
980
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
8
1.6k
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
400
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
2
150
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
670
開発生産性を上げるための生成AI活用術
starfish719
3
420
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
5
1.7k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
290
All About Angular's New Signal Forms
manfredsteyer
PRO
0
110
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
120
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
530
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Rails Girls Zürich Keynote
gr2m
95
14k
A designer walks into a library…
pauljervisheath
209
24k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Statistics for Hackers
jakevdp
799
220k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
GitHub's CSS Performance
jonrohan
1032
470k
Transcript
パラメータ探索を効率化する ベイズ最適化入門 ~MATLAB実装~ 元記事:https://qiita.com/kepr/items/adacf7678cf4e9a6a1b8 Keishu X: @Keishu_te
直感的なパラメータ探索の課題 機械学習モデルを利用する際に、「パラメータ探索」を行う機会は多い。しかし、実 際のところは経験や直感に依存したり、パラメータを一つずつ手動で調整している ケースも少なくない そのような手法の課題 • 最適解に到達できない(交互作用、局所最適解) • 時間的、人的リソースがかかる •
プロセスの俗人化、技術資産として残らない イントロ
賢いハイパーパラメータ探索へ • Grid Search: 格子状にパラメータの組を網羅する • Random Search: 運がよければ少ない回数で最適解に到達 •
Bayesian Optimization: 最適解が存在しそうな場所を集中的に探索。一回の 試行に時間がかかる場合、特に効果的。 イントロ
ベイズ最適化の基本的な仕組み 概要 1.パラメータ 試行 2. 関数の 予測 3. 有望な パラメータ
判断 2. 予測 3. 判断 ガウス過程回帰 獲得関数
ガウス過程回帰:予測値と不確かさ 予測平均 (μ): 最も確からしい値 不確かさ (σ): 予測の自信度 • 観測点付近: 不確かさ
↓ (自信あり) • 未知の領域: 不確かさ ↑ (自信なし) 【予測】
類似度に基づく「重み付き平均」 予測したい点(x=2)に近い点ほど、予測への影響力が大きい。 【予測】 この点は近いから影響大 この点は遠いから影響小
類似度を測るカーネル関数 カーネル関数の役割 • この「似ている」の度合い(類似度)を計算する 予測曲線の"設計図" • カーネル関数が、全ての点の組み合わせの「類似度」を計算 • この「類似度の一覧表」により、予測する関数の形を決まる 【予測】
予測平均の式 【予測】 予測値のxと観測値のxが どれだけ類似しているか 予測値のy座標 観測値のy座標 観測値のy座標を補正
次の一手を決める獲得関数 μ(x) →予測平均 σ(x) → 予測分散 κ: 活用 vs 探索のバランス調整
【判断】
問題設定(Irisデータセット) • Data: fisheriris (アヤメ) • Task: 3クラス分類 • Model:
SVM (RBF Kernel) • Goal: 分類誤差を最小化するBoxConstraintとKernelScaleを発見する。 実践例 特徴量 分類
MATLABによる実装コード 実践例 探索するハイパーパラメータ設定 最小化する目的関数の設定 実行
結果:代理モデルと獲得関数 実践例
結果:分類誤差の推移 実践例 • 最初の数回の試行で最小誤差が急 激に低下し、その後も少しずつ最小 誤差が低下している • 少ない試行で質の高い解に到達、 その後より良い解を探している
まとめ • 直感に基づくパラメータ探索では、時間、再現性、精度に課題 • パラメータ探索手法には、グリッドサーチ、ランダムサーチなども存在するが、 試行に時間がかかる問題にはベイズは最適化が特に有効 • ベイズ最適化の仕組みとしては、試行、予測、判断のサイクル • 予測の直感的なイメージは、類似度に基づく重み付き平均
• MATLABにおける実践例を紹介 まとめ ぜひ研究やプロジェクトで、ベイズ最適化を使ってみてください