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
gokartを作った話
Search
nishiba
February 05, 2020
Programming
2
8.1k
gokartを作った話
nishiba
February 05, 2020
Tweet
Share
More Decks by nishiba
See All by nishiba
m3 ai team
nishiba
36
47k
Graph Convolutional Networksを使った 推薦システム
nishiba
6
8.4k
機械学習関連の開発を 効率化した話
nishiba
7
5.4k
エムスリーの機械学習チームビルディングの考え方
nishiba
12
7.2k
Graphの推薦システムへの応用
nishiba
6
8.7k
AI・機械学習チームにおけるデータパイプライン構築
nishiba
8
27k
エムスリーにおける 機械学習活用事例と開発の効率化
nishiba
3
6.7k
医療用語に注目した文書の類似度計算
nishiba
6
4.9k
WSDM 2018 論文読み会 Hyperbolic Representation Learning for Fast and Efficient Neural Qestion Answering
nishiba
0
1.7k
Other Decks in Programming
See All in Programming
API for docs
soutaro
2
1.3k
AIコードエディタの基盤となるLLMのFlutter性能評価
alquist4121
0
210
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
0
110
Kamal 2 – Get Out of the Cloud
aleksandrov
1
190
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
3
900
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
1k
AI Coding Agent Enablement - エージェントを自走させよう
yukukotani
14
6.1k
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
380
Vibe Codingをせずに Clineを使っている
watany
17
6.3k
Java 24まとめ / Java 24 summary
kishida
3
500
The Evolution of the CRuby Build System
kateinoigakukun
0
700
PHP で学ぶ OAuth 入門
azuki
1
190
Featured
See All Featured
A designer walks into a library…
pauljervisheath
205
24k
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
670
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Gamification - CAS2011
davidbonilla
81
5.2k
Code Reviewing Like a Champion
maltzj
522
40k
Producing Creativity
orderedlist
PRO
344
40k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
660
Visualization
eitanlees
146
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
Transcript
gokartを作った話 エムスリー/エンジニアリンググループ リーダー/ AI・機械学習チーム リーダー 西場 正浩 2020年02月05日更新
この登壇について 2
エムスリー株式会社 発表中のお願い 3 写真・SNSへ投稿OK 感想、コメント、ツッコミを SNSに投稿してほしい! ※ 発表後でエゴサする!
エムスリー株式会社 自己紹介 4 西場 正浩 @m_nishiba
機械学習の勉強を始めて約3年 プロダクトマネージャー(PdM)の勉強とチャレンジ 38歳くらいで起業したい(あと4年) 趣味は「ビジネスで新しい挑戦をすること」負荷かけたい 本・論文(ビジネスやML)はたくさん読む。巨人の肩にのりたい。 毎月続けるか辞めるかを考えている。
エムスリー株式会社 5
エムスリー株式会社 医療に関わる体験を良くしたい!! 〜〜〜〜仲間募集中〜〜〜〜 エムスリーにおける AI・機械学習チームの立ち上げと 機械学習プロダクト開発 gokartを作り始めた会社
エムスリー株式会社 7 日本における65歳以上の人口比率 3人に1人
エムスリー株式会社 8 増え続ける日本の医療費 40兆円超
エムスリー株式会社 エムスリーのミッション インターネットを活用し、 健康で楽しく長生きする人を一人でも増やし、 不必要な医療コストを一円でも減らすこと 9
エムスリー株式会社 m3.com 医療従事者向けポータルサイトを運営 10 日本の医師の約90%(28万人以上)が登録 20以上の医療系のサービスを展開 日経225に採用された大企業
(AI関連のスタートアップではないです) ❌ 医療業界の人がITにチャレンジ ⭕ IT業界の人が医療にチャレンジ グローバル展開。エンジニアも数ヶ月NY出張。 2018年、営業利益が300億円を突破
エムスリー株式会社 医療界の変革をテーマに事業創造 11
エムスリー株式会社 エムスリーは非常にフラットな組織 12 経営会議メンバー エンジニアリングG グループ A グループ B
AI・機械学習チーム チーム A チーム B 階層を最小化 意思決定のスピードも超高速 経営メンバー リーダー メンバー
gokartを作った話 なぜ必要だったのか? 13
エムスリー株式会社 前処理の変更や追加など、データパイプライン上の一部の処理だけを簡単に変更し たい。 途中の計算結果など保存し、パラメータや入力が変わったら再計算をしたい。これら を意識することなく実行したい。 アルゴリズム開発でPDCAを高速にまわしたい! Plan(計画)→ Do(実行)→
Check(評価)→ Act(改善)
エムスリー株式会社 コードレビューの負荷を減らす方法 • コード量を減らす。フレームワークがよしなに色々してくれる。 • 管理コストが低い再利用できるコードを増やす。クラス設計を強制的に統一す る。 • 単一責任の原則を強制しやすくする。 エンジニアリング力がジュニアなメンバーの
コードレビューの負荷を減らしたい。
エムスリー株式会社 コードや中間データ、モデルを共通化したい。 都度、pageview関連データなどの大きいデータを落とすのはしんどい。 複数のプロジェクトを同時に開発したい。
エムスリー株式会社 本番で落ちたときに対応を簡単にしたい。S3等から中間生成物をダウンロードして、 restore(task_id)で全く同じものを再現できる。 すべてのプロジェクトで構成が統一できるので動かすのが誰でも比較的簡単。 管理コストやキャッチアップのコストを下げたい。
エムスリー株式会社 PandasのDataFrameがemptyのときのテストやcolumnの型が意図せず変わってしま う問題への対処。 gokartを使ってデータパイプライン上のpandas関連をテストする。 開発の知見を共有し、共通化したい。
エムスリー株式会社 gokart.TaskOnKartを組み合わせて、さくっとモデル開発ができるようにしたい。 チームメンバーが作ったモデルや処理、過去に自分が追試したアルゴリズムなどを 低コストで使いまわしたい。 もっと開発を楽したい。
エムスリー株式会社 Qiita: PythonのPipelineパッケージ比較:Airflow, Luigi, Gokart, Metaflow, Kedro, PipelineX のコメント参照。 前処理を追加したり、モデルを変更するなど、ワークフローの一部を変更することが
コード上容易。また中間生成物なども”いい感じに”管理してくれる。 gokart.TaskInstanceParameter requiresの中で自由に組み合わせることができる。
gokartを作った話 今後どうしたいか? 21
エムスリー株式会社 一部テストの自動化(pandasの型チェックなどはすでにある) テストのコード量を減らしたい。 単体テストを楽したい
エムスリー株式会社 ごめん。。。 Write high-quality friendly documentation!!
エムスリー株式会社 78。。。 star数を増えないかな〜
エムスリー株式会社 実務上、困っていることを改善するのが大切 issue driven!!