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 Environment
Search
Keisuke Hirota
January 18, 2019
Technology
0
780
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
プロデザ! BY リクルート vol.18_リクルートのリサーチ実践組織「リサーチブーストコミュニティ」
recruitengineers
PRO
3
240
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
24
5.1k
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.3k
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
1
190
なぜ NOT A HOTEL が Web3 に取り組むのか - NOT A HOTEL TECH TALK
ynunokawa
0
160
HEXA OSINT CTF V3 作戦会議
meow_noisy
0
110
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
530
エンタープライズ環境下での Active Directory の運用 TIPS
tamaiyutaro
1
1.6k
NLP2024 参加報告LT ~RAGの生成評価と懇親戦略~ / nlp2024_attendee_presentation_LT_masuda
taro_masuda
1
200
Data and AI Governance: Existing Challenges and Emerging Trends
scotthsieh825
0
150
PHP"オレ"カンファレンスの告知
ysknsid25
0
360
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
110
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
Into the Great Unknown - MozCon
thekraken
10
980
How to train your dragon (web standard)
notwaldorf
72
5.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
15
1.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
23
2k
A designer walks into a library…
pauljervisheath
199
23k
Done Done
chrislema
178
15k
Atom: Resistance is Futile
akmur
258
25k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
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