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
8.9k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
gokartを作った話
nishiba
February 05, 2020
More Decks by nishiba
See All by nishiba
ジョブ理論: 顧客の「進歩」から発想する イノベーション設計の実践
nishiba
1
700
m3 ai team
nishiba
38
52k
Graph Convolutional Networksを使った 推薦システム
nishiba
6
8.7k
機械学習関連の開発を 効率化した話
nishiba
7
5.7k
エムスリーの機械学習チームビルディングの考え方
nishiba
13
7.6k
Graphの推薦システムへの応用
nishiba
6
9.2k
AI・機械学習チームにおけるデータパイプライン構築
nishiba
8
27k
エムスリーにおける 機械学習活用事例と開発の効率化
nishiba
3
6.9k
医療用語に注目した文書の類似度計算
nishiba
6
5.2k
Other Decks in Programming
See All in Programming
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
160
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
280
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
110
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
240
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
250
今さら聞けない .NET CLI
htkym
0
210
MySQLとPostgreSQLって何が違うの?
akagami
0
130
Go 1.27 における memory allocation の高速化
andpad
0
300
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
500
初めての模倣学習とVLA
natsutan
0
190
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
120
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
200
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
A Tale of Four Properties
chriscoyier
163
24k
Six Lessons from altMBA
skipperchong
29
4.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Code Reviewing Like a Champion
maltzj
528
40k
How to build a perfect <img>
jonoalderson
1
5.9k
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Automating Front-end Workflow
addyosmani
1369
210k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
580
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!!