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
390
0
Share
機械学習プロジェクトの進め方 /howtoproceedwithmlproject
Miyakawa Taku
March 18, 2018
More Decks by Miyakawa Taku
See All by Miyakawa Taku
入門: 末尾呼び出し最適化 /tail-call-elimination-intro
miyakawataku
2
2.5k
JVM言語の動き方・動かし方 /make-jvm-lang
miyakawataku
6
2.4k
Java SE 8から11で何が起きた?一気におさらいしてみよう! /java-se-8-to-11
miyakawataku
15
5.6k
ミニバッチサイズと学習率の関係 /small-batch-learning
miyakawataku
0
2.3k
グラフアルゴリズムその2: 単一始点最短路問題 /graphShortestPaths
miyakawataku
0
210
Strassenのアルゴリズムによる行列積の計算 /strassen-algorithm
miyakawataku
8
3.6k
Viterbiのアルゴリズム /viterbi-algorithm
miyakawataku
0
330
Other Decks in Programming
See All in Programming
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
500
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6.4k
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.5k
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
590
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
130
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
280
Swift Concurrency Type System
inamiy
0
490
KagglerがMixSeekを触ってみた
morim
0
380
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
230
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
170
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
850
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
It's Worth the Effort
3n
188
29k
sira's awesome portfolio website redesign presentation
elsirapls
0
210
Mind Mapping
helmedeiros
PRO
1
150
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The Language of Interfaces
destraynor
162
26k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Speed Design
sergeychernyshev
33
1.6k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
120
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
520
Testing 201, or: Great Expectations
jmmastey
46
8.1k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
53k
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% → 最も改善が見込める文字分割器の改善に 労力をそそぐべき