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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
nishiba
February 05, 2020
Programming
2
8.7k
gokartを作った話
nishiba
February 05, 2020
Tweet
Share
More Decks by nishiba
See All by nishiba
ジョブ理論: 顧客の「進歩」から発想する イノベーション設計の実践
nishiba
1
600
m3 ai team
nishiba
38
51k
Graph Convolutional Networksを使った 推薦システム
nishiba
6
8.6k
機械学習関連の開発を 効率化した話
nishiba
7
5.6k
エムスリーの機械学習チームビルディングの考え方
nishiba
13
7.5k
Graphの推薦システムへの応用
nishiba
6
9k
AI・機械学習チームにおけるデータパイプライン構築
nishiba
8
27k
エムスリーにおける 機械学習活用事例と開発の効率化
nishiba
3
6.8k
医療用語に注目した文書の類似度計算
nishiba
6
5.1k
Other Decks in Programming
See All in Programming
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
810
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
500
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
320
AHC061解説
shun_pi
0
350
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
240
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
7.9k
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
860
Codex の「自走力」を高める
yorifuji
0
1.1k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
750
AI主導でFastAPIのWebサービスを作るときに 人間が構造化すべき境界線
okajun35
0
680
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
5
390
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
810
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
970
How to train your dragon (web standard)
notwaldorf
97
6.5k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
250
How to Ace a Technical Interview
jacobian
281
24k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
240
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
670
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
410
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
A Modern Web Designer's Workflow
chriscoyier
698
190k
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!!