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
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
1.2k
CSC305 Lecture 04
javiergs
PRO
0
250
実践AIチャットボットUI実装入門
syumai
7
2.5k
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
160
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
770
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
130
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.3k
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
390
CSC509 Lecture 02
javiergs
PRO
0
400
CSC305 Lecture 02
javiergs
PRO
1
260
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Designing for humans not robots
tammielis
254
25k
Building an army of robots
kneath
306
46k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
4 Signs Your Business is Dying
shpigford
185
22k
KATA
mclloyd
32
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Documentation Writing (for coders)
carmenintech
75
5k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
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% → 最も改善が見込める文字分割器の改善に 労力をそそぐべき