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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Keisuke Hirota
January 18, 2019
Technology
0
1k
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
スピンアウト講座04_ルーティン処理
overflowinc
0
1.2k
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
250
Datadog で実現するセキュリティ対策 ~オブザーバビリティとセキュリティを 一緒にやると何がいいのか~
a2ush
0
110
品質を経営にどう語るか #jassttokyo / Communicating the Strategic Value of Quality to Executive Leadership
kyonmm
PRO
3
1.2k
AI時代のIssue駆動開発のススメ
moongift
PRO
0
210
「コントロールの三分法」で考える「コト」への向き合い方 / phperkaigi2026
blue_goheimochi
0
150
【AWS】CloudTrail LakeとCloudWatch Logs Insightsの使い分け方針
tsurunosd
0
120
FastMCP OAuth Proxy with Cognito
hironobuiga
3
190
AIエージェント×GitHubで実現するQAナレッジの資産化と業務活用 / QA Knowledge as Assets with AI Agents & GitHub
tknw_hitsuji
0
220
Phase08_クイックウィン実装
overflowinc
0
1.7k
君はジョシュアツリーを知っているか?名前をつけて事象を正しく認識しよう / Do you know Joshua Tree?
ykanoh
4
120
SaaSに宿る21g
kanyamaguc
2
160
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Statistics for Hackers
jakevdp
799
230k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
150
Building an army of robots
kneath
306
46k
Docker and Python
trallard
47
3.8k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Odyssey Design
rkendrick25
PRO
2
560
sira's awesome portfolio website redesign presentation
elsirapls
0
200
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
240
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
52k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
490
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