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
ALICE: AI Lab Interfaced with Configurable Envi...
Search
Keisuke Hirota
January 18, 2019
Technology
0
950
ALICE: AI Lab Interfaced with Configurable Environment
Computing base for machine learning system, BizReach Inc.
Keisuke Hirota
January 18, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
Getting to Know Your Legacy (System) with AI-Driven Software Archeology (WeAreDevelopers World Congress 2025)
feststelltaste
1
160
OSSのSNSツール「Misskey」をさわってみよう(右下ワイプで私のOSCの20年を振り返ります) / 20250705-osc2025-do
akkiesoft
0
170
american airlines®️ USA Contact Numbers: Complete 2025 Support Guide
supportflight
1
110
United Airlines Customer Service– Call 1-833-341-3142 Now!
airhelp
0
170
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
2
190
AWS CDKの仕組み / how-aws-cdk-works
gotok365
8
300
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
440
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.5k
[SRE NEXT] ARR150億円_エンジニア140名_27チーム_17プロダクトから始めるSLO.pdf
satos
2
650
VS CodeとGitHub Copilotで爆速開発!アップデートの波に乗るおさらい会 / Rapid Development with VS Code and GitHub Copilot: Catch the Latest Wave
yamachu
2
190
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
110
AI エージェントと考え直すデータ基盤
na0
17
5.5k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
69
11k
Designing for Performance
lara
610
69k
Code Review Best Practice
trishagee
69
19k
Git: the NoSQL Database
bkeepers
PRO
430
65k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
How to train your dragon (web standard)
notwaldorf
96
6.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Site-Speed That Sticks
csswizardry
10
690
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Transcript
Copyright (C) 2019 BizReach, Inc. ALICE: AI Lab Interfaced with
Configurable Environment 株式会社ビズリーチ AI室 廣田佳祐
Copyright (C) 2019 BizReach, Inc. 自己紹介 ▪ 名前: 廣田 佳祐(ヒロタ
ケイスケ) ▪ 履歴 • 2015/04-2018/10: 某大手SIerでソフト開発 – サーバーサイド – フロントエンド – NLPの研究開発 – などなど • 2018/11: ビズリーチ 入社 – AI室の機械学習エンジニアとして、 現在は機械学習基盤の開発を担当 ▪ 趣味 • ボードゲーム – 直近では、Dice Forgeをプレーしました 1
Copyright (C) 2019 BizReach, Inc. 目次 - ビズリーチでの機械学習活用 - 機械学習基盤
ALICEの紹介 - 開発経緯 - 概要 - AWS向けのHelm Chartを作った話 - さいごに 2
Copyright (C) 2019 BizReach, Inc. ビズリーチでの機械学習活用 ▪ 企業と求職者のマッチング、求人の職種・業種・年収推定など 様々な箇所で機械学習を活用 ▪
例: 求人検索エンジン スタンバイでの「職種・業種推定」 3 課題 •様々な求⼈サイトから収集しているため、 横断的な職種・業種がない 内容 •求⼈情報から⾃然⾔語処理で求⼈の特徴 を抽出 •その特徴を学習して職種業種を推定 •検索条件やデータ分析などで利⽤ 求⼈内容から職種・業種を推定 参考: BizReach Tech Blog https://tech.bizreach.co.jp/posts/276/gtc2018-japan-report/
Copyright (C) 2019 BizReach, Inc. ALICE開発に至る経緯 ▪ 何故私たちは機械学習基盤を必要としたのか? 4 その①:データサイエンティスト・機械学習エンジニアの作業負荷低減
前に作ったバッチ処理と同じ形で作っておいてね deployの手順書はこれを参照してね 既存の動作についてちょっとだけ説明するね。 バッチ処理の動作はDockerのImageとしてBuildされてます。 処理を動かす時は、AWSのLambdaをKickしてね。処理が始 まると、AutoScalingGroupの設定を変更してスポットイン スタンスを払い出して、そのインスタンス上で処理が実施さ れるよ。実施中のログはCloudWatchに吐かれていて、もし Errorが発生したら、Slackに通知が飛ぶようになってる。こ こまでの設定は、CloudFormationを使うことで適宜定義し ているよ。 あ、そうそう、データについては事業部側のS3から取ってく るので専用のRoleを用意して事業部側に権限を付与してもら う必要もあるね。 まあ、これ読めばわかるから、 あとよろしく! 例: 新たなレコメンドエンジンを実装する時 インフラ専門じゃない エンジニアに 全部投げるの無理だから
Copyright (C) 2019 BizReach, Inc. ALICE開発に至る経緯 ▪ 何故私たちは機械学習基盤を必要としたのか? 5 その②:インフラ側の特殊な条件
•様々な環境に対して基盤を展開する必要アリ ◦事業部側がサービスを管理しているため、 事業部の採⽤インフラに合わせて適宜展開できるようにする 現状: サービス x (本番|開発)環境ごとにAWSアカウントを発行
Copyright (C) 2019 BizReach, Inc. ALICE開発に至る経緯 ▪ 何故私たちは機械学習基盤を必要としたのか? 6 まとめ
複数の環境にお⼿軽に展開できて、 インフラをあまり意識しないで使える基盤が欲しい から作りました
Copyright (C) 2019 BizReach, Inc. ALICEの概要 7
Copyright (C) 2019 BizReach, Inc. AWS向けのHelm Chartを作った話 ▪ argo-events で定義したEventに基づいて、
AWSの 特定のスポットインスタンス 上で、 argoのWorkflow を実行する、 HelmのChart を作成して、 CodeBuild経由でDeployできるようにしました ▪ 登場人物おさらい 8 Helm Kubernetesの設定ファイルを管理するパッケージマネージャ Chart Helmのパッケージ argo Kubernetes上で動作するワークフローエンジン argo-events Kubernetes上で動作するEventによる依存関係マネージャ
Copyright (C) 2019 BizReach, Inc. AWS向けのHelm Chartを作った話 ▪ 何故作ったか? •
WorkflowをDeployするためには、Kubernetes, argo, AWSの知識が必須 – Kubernetes(含argo)のyamlファイルは複雑怪奇なので、 未修者に全て編集させるのは厳しい・・・ – AWSに囚われる必要はないのに、AWS上でDeployするための学習コスト高い… – CloudFormation, EC2, CodeBuild, … ▶ 基盤側で吸収しよう 9
Copyright (C) 2019 BizReach, Inc. Chart概要 10
Copyright (C) 2019 BizReach, Inc. values.yaml 概要 11 インフラに依らないデプロイ仕様の設定 (アプリをどのように動かしたいか)
- 動作モード: calendar/webhook - モード固有設定 アプリケーション動作設定 - Workflow実行順 - 起動コンテナ定義 - ボリューム - サービス など
Copyright (C) 2019 BizReach, Inc. Chart作成の効果 ▪ 最低限のAWS, Kubernetes, argoの知識があればDeploy可能になった
▪ AWS • Deploy時に、以下の内容を設定 – スポットインスタンスのタイプ – スポットインスタンスの入札価格 – ボリュームサイズ ▪ Kubernetes & argo • values.yamlに設定し、Gitに格納 12
Copyright (C) 2019 BizReach, Inc. Workflowの見え方 13
Copyright (C) 2019 BizReach, Inc. さいごに ▪ まだまだ足りてないところが多いので順次実装して行く予定です! • 機能面
– EDA/Modeling環境のJupyter – パラメータチューニング • 環境面 – 脱AWS依存 – CodeBuild -> argo-cd/ci – fluentd + CloudWatch Logs -> Prometheus? ▪ スライドに書いてないことは懇親会で! • argo-eventsのlatestイメージが更新されて動かなくなった話など 14
None