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
hk_1933
September 06, 2019
Business
1
81
データ分析プロジェクトマネジメントで気を付けること
hk_1933
September 06, 2019
Tweet
Share
More Decks by hk_1933
See All by hk_1933
AIに冴えない上司の育てかた
hayashidak
0
150
ハマってはいけない学びの沼
hayashidak
0
210
Other Decks in Business
See All in Business
MYPLATE for office
myplate
0
120
【キャリア採用】BuySell Technologies会社説明資料
buyselltechnologies
2
61k
データ分析基盤構築に役立つAWSマネージドサービス紹介
ryo5043617
0
200
しくじり先生 〜ふりかえり手法はチームのイマとコネクトして〜
electricsatie
0
400
LT資料作成の基礎 / Basics of LT Slide Preparation
pauli
8
1.2k
regions_recruit
regions
0
100
akippa株式会社 - 会社紹介資料
akippa
2
45k
株式会社ミライロ 会社紹介資料
mirairohr
0
130
Zeit für Klarheit
arnekittler
0
140
新卒向けふりかえり研修
viva_tweet_x
10
2.4k
Smartwill Company Profile
1129panda
0
580
Z_Venture_Capital採用_240417.pdf
zvc2022
0
150
Featured
See All Featured
Being A Developer After 40
akosma
66
580k
Building Adaptive Systems
keathley
32
1.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
20
1.7k
Agile that works and the tools we love
rasmusluckow
325
20k
4 Signs Your Business is Dying
shpigford
176
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
11
1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
65
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
How to train your dragon (web standard)
notwaldorf
74
5.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
46k
The Cost Of JavaScript in 2023
addyosmani
20
3.9k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
Transcript
データ分析プロジェクトを進める際に 気を付けたいこと 1
今日おはなしする内容 機械学習の細かい話とかは今回はしません! (というよりできません!すいません!) ・データ分析プロジェクトの面倒を見ろ!と言われたとき -まずどう進めていけばよいのか -進めていく上での留意点 などをお話しできればと思います。 2
自己紹介 ・名前:Twitter:hk_1933 ・職種:製造業で研究開発部門 ・現在の主な業務:工場設備のデータ分析(設備予防保全、品質不良) -各工場設備のデータ分析(Python) -Webアプリケーション開発(Django, Flask, フロントエンド言語) -データ蓄積・分析基盤の構築 -データ分析プロジェクトのマネジメント業務(現在、二人の面倒みてます)
※プログラミングは会社入ってから本格的に学び始めた(学生時代はノータッチ) 元々の専攻は電気電子工学(強電系→光、半導体→プラズマ) 3
さて、データ分析プロジェクトを進めていきたいのですが、 そもそもどう進めるのか? ・専門書やコンペ(kaggleなど)ではtrain(val)/testデータ分けて、両方でよい精度出せればよい。 ・ただし、業務となると期間や結果報告、分析結果の実装が避けて通れない。 ・報告する相手にデータ分析知識が全くない専門用語が伝わらない (feature_importance, precision, recall etc.) ・分析したいデータもkaggleやiris,
MNISTみたく手元にキレイな状態であるわけでもない。 データ分析を進めていく上で、何か参考になりそうなものないかな・・・ 4
天下のO‘Reilly 5 scikit-learnとTensorFlowによる実践機械学習 ・上記2つのライブラリで機械学習ざっくり学ぶのによい ・GitHub上でnotebook形式で公開されてるので最悪買わなくても コード追ってお勉強はできる。 (https://github.com/ageron/handson-ml) ・本題:データ分析プロジェクトの進め方の参考→付録にあった! 「機械学習プロジェクトチェックリスト」
機械学習プロジェクトチェックリストの中身 6 1.問題の枠組みを明らかにし、全体の構図をつかむ 2.データを手に入れる 3.データを探る 4.データを準備する 5.有望なモデルを絞り込む 6.システムを微調整する 7.ソリューションをプレゼンテーションする 8.本番稼働!
機械学習プロジェクトチェックリストの中身 7 1.問題の枠組みを明らかにし、全体の構図をつかむ:課題設定→機械学習で解ける問題に落とし込む。 2.データを手に入れる:データかき集める、ざっくり要/不要分類、train/testデータ作成。 3.データを探る:統計量見る、相関見る、グラフにプロットする、欠損値チェック。 4.データを準備する:データ補完、前処理、特徴量作成(平均値/var/std計算、カテゴリ化など)。 5.有望なモデルを絞り込む:scikit-learnでざっくり分析してみる、説明変数のランク付け、交差検証。 6.システムを微調整する:ハイパーパラメータ調整、アンサンブルメソッド(精度どれだけあげるか)。 7.ソリューションをプレゼンテーションする:資料にまとめて報告しよう。 8.本番稼働!:分析結果をシステムに落とし込む。
機械学習プロジェクトチェックリストの中身 8 2.データを手に入れる: 3.データを探る: 4.データを準備する: 5.有望なモデルを絞り込む: 6.システムを微調整する: なんとなくやるべきことわかる
機械学習プロジェクトチェックリストの中身 9 1.問題の枠組みを明らかにし、全体の構図をつかむ 2.データを手に入れる: 3.データを探る: 4.データを準備する: 5.有望なモデルを絞り込む: 6.システムを微調整する: 7.ソリューションをプレゼンテーションする 8.本番稼働!
なんとなくやるべきことわかる 機械学習プログラミング以外の内容 1.具体的に何をすればよいか 7.プレゼンの構成 8.システム用のコーディング
問題の枠組みを明らかにし、全体の構図をつかむ 10 ・相手の困りごとをヒアリングする -AI使ったらなんかうまいことやってくれるという幻想をお持ちの方も多いので、現状把握して数値で 困りごとを炙りだしてあげる。 ・困りごとがif-thenやグラフにするだけで解決できる問題なのかまず検討する。 ・課題解決を機械学習のカテゴリにあてはめる(回帰問題?分類問題?単なる分析?) ・最終的なシステム実装イメージざっくり決める(グラフにする、メール発報、既存設備への結果反映) ・機械学習モデルの評価指標の設定(回帰:RMSEなど、分類:再現・適合率、ROC) ・モデル精度の妥当性検討(改善効果あるか、判定ミスによるロス算定などを計算、検討)
・協力者の設定(ドメイン知識の共有、実証実験時の協力者) ・前につくったソースコード再利用できないか 課題設定→機械学習で解ける問題に落とし込む。
ソリューションをプレゼンテーションする 11 分析の流れをまじめに最後まで報告する→伝わらないのである程度間引いてください ・まずは結論 ・データ分析の結果で得られる効果(波及効果も提示できれば直良し) ・問題と設定課題の説明 ・使用したデータの概要(必要であれば詳細説明まで) ・データ分析の流れ(データの結合、前処理、train/testの分け方、outputをブロックと線で) ・使用したモデルの説明(no数式、must挿絵) ・分析結果(no数式、mustグラフwith吹出で説明)
・結論で締める 報告する相手(幹部、グループ内共有)で構成の強弱を変える 資料にまとめて報告しよう。
問題の枠組みを明らかにし、全体の構図をつかむ 12 ・データ分析で使う言語:だいたいpython→python一気通貫でシステム書きたい! ・python用のウェブアプリフレームワーク -Flask:シングルウェブページ向け。簡易に作りたい(分析結果をブラウザで見たい) -Django:中~大規模開発向け(認証機能、DBかまえたい) ・データ分析用のコードをどうシステム用のコードにスムーズに移行するか -Cookiecutter:機械学習プロジェクト用のフォルダテンプレート作ってくれる pip install
cookiecutter cookiecutter https://github.com/drivendata/cookiecutter-data-science cmd上で質問(プロジェクト名、製作者名、プロジェクトの説明など)に答えるとフォルダ構成を自動で作成 本番稼働!
最近の所感など(閑話休題) 13 1.データ分析業務=コンサル×データサイエンス×SIer 一人で課題設定~本番運用までやるとこうなる(チーム分担できると楽) 例)DeNAの事例(うまく役割分担できている) -AI研究開発エンジニア:研究部門 -データサイエンティスト:事業課題を分析課題まで落とし込む、モデル精度のブラッシュアップ -MLエンジニア:AI技術のサービス実装、運用 -インフラエンジニア:分析基盤構築、上記エンジニアサポート 2.分析業務、ドメイン知識、サイクルのスピード感
課題解決のための分析手法の熟考<分析サイクルのスピード感 例)松尾先生(東京大学) データ分析と相性がいいのは「高専生」 -電気、機械の素養がある(教育システム、ロボコン) -手を動かすのがはやく、すぐ結果持ってくる 上記の事例を自分がいる組織にどう落とし込んでいくかが、次のステップアップのカギ。
まとめ 14 データ分析プロジェクトを進めていく上にあたっての進め方、留意点に関して述べさせていただいた。 ・機械学習/深層学習の教科書やサイトで学べることだけで分析業務は進められない ・課題設定→機械学習の問題に落とし込むところでは、 -問題、課題設定は数字を必ず織り交ぜて -相手の協力者は必ず設定してドメイン知識を聞き出そう ・資料にまとめて報告するところでは、 -データ分析で得られる効果をまず説明したい -分析の一部始終を報告する必要はない
・本番稼働のところでは -pythonでもwebアプリケーションは書ける(処理速度はおいといて) -テンプレート等をうまく活用し、分析→実装までの時間を短くできれば