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
機械学習プロジェクトの進め方 /howtoproceedwithmlproject
Search
Miyakawa Taku
March 18, 2018
Programming
0
360
機械学習プロジェクトの進め方 /howtoproceedwithmlproject
Miyakawa Taku
March 18, 2018
Tweet
Share
More Decks by Miyakawa Taku
See All by Miyakawa Taku
入門: 末尾呼び出し最適化 /tail-call-elimination-intro
miyakawataku
2
2.4k
JVM言語の動き方・動かし方 /make-jvm-lang
miyakawataku
6
2.2k
Java SE 8から11で何が起きた?一気におさらいしてみよう! /java-se-8-to-11
miyakawataku
15
5.4k
ミニバッチサイズと学習率の関係 /small-batch-learning
miyakawataku
0
2.2k
グラフアルゴリズムその2: 単一始点最短路問題 /graphShortestPaths
miyakawataku
0
180
Strassenのアルゴリズムによる行列積の計算 /strassen-algorithm
miyakawataku
8
3.4k
Viterbiのアルゴリズム /viterbi-algorithm
miyakawataku
0
290
Other Decks in Programming
See All in Programming
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
770
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
340
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
630
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
🔨 小さなビルドシステムを作る
momeemt
4
690
Namespace and Its Future
tagomoris
6
710
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
チームのテスト力を鍛える
goyoki
3
870
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
400
Reading Rails 1.0 Source Code
okuramasafumi
0
250
Design Foundational Data Engineering Observability
sucitw
3
200
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Balancing Empowerment & Direction
lara
3
620
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Producing Creativity
orderedlist
PRO
347
40k
Transcript
機械学習プロジェクトの進め方 2018-03-19 宮川 拓
#ccc_e4 2/105 背景と動機 機械学習プロジェクトは、繰り返し的にシ ステムを改善していくプロセスらしい 繰り返しごとに、どこのツマミを回せば良 いのか? デ
ー タ 収 集 特 徴 抽 出 モ デ ル 構 築 ハ イ パ ー パ ラ メ ー タ 調 整 学 習 ・ 評 価 評 価 軸 設 計
#ccc_e4 3/105 ネタ元 Coursera「Machine Learning」 機械学習の基礎を学ぶ実務者向け講義 厳密な根拠づけは省いて、「直観的には
こんな感じ、やり方はこう」という内容 「実務上どう実現すればいいの?」とい う話もちょいちょい出てくる 今回は第6週、第11週がネタ元
題材1 (第6週) 線形回帰による住宅価格予測 #ccc_e4 4/105
#ccc_e4 5/105 題材1: 線形回帰 説明変数 (x) 広さ
部屋数 階数 築年数 …… 目的変数 (y) 住宅価格
#ccc_e4 6/105 次にどの手を打つべきか? 「予測がうまくいかない」とき そもそもそれはどういう時? 何をするべき?
データをもっと集める? 説明変数を増やす?減らす? 1 2 + 2 みたいな多項式を新たな説明変 数にする? 正則化を強くする?弱くする?
def. 予測がうまくいっていない #ccc_e4 7/105 一般的なデータに対する予測の誤差が 大きい 訓練データセットに対する予測の誤差 が大きい ◦ ×
データセットの分割 #ccc_e4 8/105 モデルのパラメータの推定のため に使うデータセット 最適な説明変数群、ハイパーパラ メータなどを選択する基準として 使うデータセット 最終的な予測の性能を測る 一般的なデータとして
使うデータセット 訓練セット バリデーション セット テストセット
説明変数の数と誤差の関係 #ccc_e4 9/105 誤差 説明変数の数 訓練誤差 バリデーション誤差 ←underfit overfit→
説明変数の数と誤差の関係 #ccc_e4 10/105 誤差 正則化項の係数λ 訓練誤差 バリデーション誤差 ←overfit underfit→
訓練セット量と誤差の関係 #ccc_e4 11/105 誤差 訓練データセットの量 Learning Curve 訓練誤差 バリデーション誤差 ←overfit
誤差が過大なら underfit→
#ccc_e4 12/105 状況ごとのやるべきこと Underfit: データに対してモデルが単純過ぎ 説明変数を増やす 正則化項の係数を小さくする Overfit:
データに対してモデルが複雑過ぎ 訓練セットの量を増やす 説明変数を減らす 正則化項の係数を大きくする
題材2 (第6週) spamフィルタ #ccc_e4 13/105
#ccc_e4 14/105 基本的な進め方 まずは簡単なモデルを作ってみる Learning Curve (訓練セット量vs誤差)を プロットしてみる
誤差が充分に小さければOK! 誤差が大きければ underfit → モデルを複雑に overfit → データを集める → モデルを単純に
#ccc_e4 15/105 エラー分析 具体的に打つ手を決めるためには、 分類エラーを分析することが有用 例: “med1cine”のような意図的なミスス ペルを持つメールがspamとして分類で
きていない → 未知語の数を説明変数に追加
題材3 (第11週) Photo OCR #ccc_e4 16/105
題材: OCRパイプライン #ccc_e4 17/105 画像 テキスト検出 文字分割 文字認識(分類)
#ccc_e4 18/105 Ceiling Analysis やみくもに各ステップを改善するのは 非効率的 Ceiling Analysisを行って、どのステップを
改善するべきか突き止めよう
Ceiling Analysis #ccc_e4 19/105 最終的な accuracy 改善 現行のパイプライン 70% -
+ 完璧なテキスト検出器 75% +5% + 完璧な文字分割器 90% +15% + 完璧な文字認識器 100% +10% → 最も改善が見込める文字分割器の改善に 労力をそそぐべき