SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
Copyright (C) 2019 BizReach, Inc.
ビズリーチの機械学習基盤
株式会社ビズリーチ システム本部 AI室
機械学習エンジニア
右田 尚人
2019年2月23日
第33回 Machine Learning 15minutes!
Copyright (C) 2019 BizReach, Inc.
自己紹介
■ 名前: 右田 尚人(ミギタ ナオト)
■ 2015/04〜2018/5: 富士通
• ニューラルネットワーク系の自然言語処理の研究開発
• AIサービスの導入支援・PoC(FAQ検索など)
■ 2018/7〜: ビズリーチ
• レコメンドエンジン開発
• 機械学習基盤開発
1
Copyright (C) 2019 BizReach, Inc.
ビズリーチでの機械学習活用
企業と求職者のマッチング、求人の職種・業種・年収推定
など様々な箇所で機械学習を活用
2
課題
● 様々な求人サイトから収集している
ため横断的な職種・業種がない
内容
● 求人情報から自然言語処理で求人の
特徴を抽出
● その特徴を学習して職種業種を推定
● 検索条件やデータ分析などで利用
例: 求人内容から職種・業種を推定
参考: BizReach Tech Blog
https://tech.bizreach.co.jp/posts/276/gtc2018-japan-report/
Copyright (C) 2019 BizReach, Inc.
なぜ私たちは機械学習基盤を必要としたのか?
3
①データサイエンティスト・機械学習エンジニアの作業負荷低減
前に作ったバッチ処理と同じ形で作っておいてね
deployの手順書はこれを参照してね
既存の動作についてちょっとだけ説明するね。
バッチ処理の動作はDockerのImageとしてBuildされ
てます。処理を動かす時は、AWSのLambdaをKickし
てね。処理が始まると、AutoScalingGroupの設定を
変更してスポットインスタンスを払い出して、その
インスタンス上で処理が実施されるよ。実施中のロ
グはCloudWatchに吐かれていて、もしErrorが発生
したら、Slackに通知が飛ぶようになってる。ここま
での設定は、CloudFormationを使うことで適宜定義
しているよ。
あ、そうそう、データについては事業部側のS3から
取ってくるので専用のRoleを用意して事業部側に権
限を付与してもらう必要もあるね。
まあ、これ読めばわかるから、
あとよろしく!
例: 新たなレコメンドエンジンを実装する時
Copyright (C) 2019 BizReach, Inc.
なぜ私たちは機械学習基盤を必要としたのか?
4
①データサイエンティスト・機械学習エンジニアの作業負荷低減
前に作ったバッチ処理と同じ形で作っておいてね
deployの手順書はこれを参照してね
既存の動作についてちょっとだけ説明するね。
バッチ処理の動作はDockerのImageとしてBuildされ
てます。処理を動かす時は、AWSのLambdaをKickし
てね。処理が始まると、AutoScalingGroupの設定を
変更してスポットインスタンスを払い出して、その
インスタンス上で処理が実施されるよ。実施中のロ
グはCloudWatchに吐かれていて、もしErrorが発生
したら、Slackに通知が飛ぶようになってる。ここま
での設定は、CloudFormationを使うことで適宜定義
しているよ。
あ、そうそう、データについては事業部側のS3から
取ってくるので専用のRoleを用意して事業部側に権
限を付与してもらう必要もあるね。
まあ、これ読めばわかるから、
あとよろしく!
例: 新たなレコメンドエンジンを実装する時
インフラ専門じゃない
エンジニアに
全部投げるの無理だから
Copyright (C) 2019 BizReach, Inc.
なぜ私たちは機械学習基盤を必要としたのか?
5
● 様々な環境に対して基盤を展開する必要アリ
● 事業部側がサービスを管理しているため サービス x (本番|開発)環境ごとにAWS
アカウントを発行
● 今後は他クラウドサービス(GCP、Azure)対応の可能性も
②インフラ側の特殊な条件
Copyright (C) 2019 BizReach, Inc.
なぜ私たちは機械学習基盤を必要としたのか?
6
まとめ
複数の環境にお手軽に展開できて、
インフラをあまり意識しないで使える基盤が
欲しい
                   から作りました
Copyright (C) 2019 BizReach, Inc.
世の中の機械学習基盤
機械学習サービスの課題
Hidden Technical Debt in Machine Learning Systems NIPS2015
7
https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf
Copyright (C) 2019 BizReach, Inc.
世の中の機械学習基盤
■ KubeFlow
• KubeCon2017年でgoogleが発表した
OSSプロジェクト
• kubernetes上に機械学習基盤を構築
• 現状だと発展途上かつGCP依存が多そう
(PipelinesはGKE依存)
8
https://www.kubeflow.org/docs/other-guides/accessing-uis/
Copyright (C) 2019 BizReach, Inc.
ビズリーチの機械学習基盤 ALICE
9
Copyright (C) 2019 BizReach, Inc.
values.yaml 概要
10
インフラに依らないデプロイ仕様の設定
(アプリをどのように動かしたいか)
- 動作モード: calendar/webhook
- モード固有設定
アプリケーション動作設定
- Workflow実行順
- 起動コンテナ定義
worker Nodeのスペック
- ボリューム
- インスタンスタイプ
- スポットインスタンスの入札価 など
Copyright (C) 2019 BizReach, Inc.
Chart概要
11
Copyright (C) 2019 BizReach, Inc.
Workflowの見え方
12
Copyright (C) 2019 BizReach, Inc.
ビズリーチの機械学習基盤 ALICE まとめ
13
複数の環境にお手軽に展開できてインフラをあまり意識しない
で使える基盤をkubernetesを使って開発
■ ALICE CLIの提供
• init: kubernetesクラスタをコマンド1つで展開
• notebook: jupyter notebookをクラスタ上に展開
■ アプリDeploy時の設定は、1枚のファイルを書くだけ
• 最低限のAWS, Argoの知識があればDeploy可能になった
• 設定ファイルの変更は、Argo CDでAuto sync。GitOpsを実現
■ Argoによって柔軟なworkflowを定義可能
• preprocess、training、predictionなどのジョブごとに
コンテナやマシンスペックを選べる
Copyright (C) 2019 BizReach, Inc.
今後
■ 脱AWS依存
• CodeBuild -> skaffold?
• fluentd + CloudWatch Logs -> Prometheus?
■ インフラエンジニアとの連携
• Kubernetes周りは登場人物も多くてキャッチアップが大変
• 専門の人に頼りたい
■ ALICEを外部公開
• まずはhelm chartから公開予定
14
ビズリーチの機械学習基盤

Contenu connexe

Tendances

エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021Preferred Networks
 
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Preferred Networks
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編infinite_loop
 
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介gree_tech
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計Yoshinori Matsunobu
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと土岐 孝平
 
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Taro Hirose
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
 
Java EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfileJava EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfileNorito Agetsuma
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)Shota Imai
 
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...NTT DATA Technology & Innovation
 
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjpRSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjpsonickun
 
Go初心者がGoでコマンドラインツールの作成に挑戦した話
Go初心者がGoでコマンドラインツールの作成に挑戦した話Go初心者がGoでコマンドラインツールの作成に挑戦した話
Go初心者がGoでコマンドラインツールの作成に挑戦した話dcubeio
 
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~Daisuke Morishita
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
GOの機械学習システムを支えるMLOps事例紹介
GOの機械学習システムを支えるMLOps事例紹介GOの機械学習システムを支えるMLOps事例紹介
GOの機械学習システムを支えるMLOps事例紹介Takashi Suzuki
 

Tendances (20)

WayOfNoTrouble.pptx
WayOfNoTrouble.pptxWayOfNoTrouble.pptx
WayOfNoTrouble.pptx
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
 
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
 
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
 
Java EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfileJava EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfile
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
 
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...
Selenium×PostgreSQL15×Grafanaで思い出を保存&分析するプロジェクト(第35回PostgreSQLアンカンファレンス@オンライン...
 
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjpRSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
 
Go初心者がGoでコマンドラインツールの作成に挑戦した話
Go初心者がGoでコマンドラインツールの作成に挑戦した話Go初心者がGoでコマンドラインツールの作成に挑戦した話
Go初心者がGoでコマンドラインツールの作成に挑戦した話
 
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
GOの機械学習システムを支えるMLOps事例紹介
GOの機械学習システムを支えるMLOps事例紹介GOの機械学習システムを支えるMLOps事例紹介
GOの機械学習システムを支えるMLOps事例紹介
 

Similaire à ビズリーチの機械学習基盤

中小企業におけるキャッシュレス決済導入のポイント
中小企業におけるキャッシュレス決済導入のポイント中小企業におけるキャッシュレス決済導入のポイント
中小企業におけるキャッシュレス決済導入のポイント良治 富田
 
第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わるDIVE INTO CODE Corp.
 
20190313_SDGsや社会課題にxRはどう活かせるか
20190313_SDGsや社会課題にxRはどう活かせるか20190313_SDGsや社会課題にxRはどう活かせるか
20190313_SDGsや社会課題にxRはどう活かせるかShingo Mori
 
第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わるDIVE INTO CODE Corp.
 
リクルーティングパートナーシップのご提案
リクルーティングパートナーシップのご提案リクルーティングパートナーシップのご提案
リクルーティングパートナーシップのご提案DIVE INTO CODE Corp.
 
HelloCodingSchool説明会資料.pdf
HelloCodingSchool説明会資料.pdfHelloCodingSchool説明会資料.pdf
HelloCodingSchool説明会資料.pdfssuser568785
 
クラウドで実現!!マーケティングにおけるIoT活用事例
クラウドで実現!!マーケティングにおけるIoT活用事例クラウドで実現!!マーケティングにおけるIoT活用事例
クラウドで実現!!マーケティングにおけるIoT活用事例Yasuhiro Kobayashi
 
Business utilization of real estate image classification system using deep le...
Business utilization of real estate image classification system using deep le...Business utilization of real estate image classification system using deep le...
Business utilization of real estate image classification system using deep le...BrainPad Inc.
 
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術AtsushiMurakami10
 
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにするDIVE INTO CODE Corp.
 
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2Sei Kato (加藤 整)
 
AIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにAIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにReNom User Group
 
リクルーティングパートナーシップのご提案 β版1.2
リクルーティングパートナーシップのご提案 β版1.2リクルーティングパートナーシップのご提案 β版1.2
リクルーティングパートナーシップのご提案 β版1.2DIVE INTO CODE Corp.
 
DIVE INTO WORK 就業説明会のご案内
DIVE INTO WORK 就業説明会のご案内DIVE INTO WORK 就業説明会のご案内
DIVE INTO WORK 就業説明会のご案内DIVE INTO CODE Corp.
 
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!Arata Fujimura
 
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...Deep Learning Lab(ディープラーニング・ラボ)
 
AI-OCR 導入最前線 (AI inside)
AI-OCR 導入最前線 (AI inside)AI-OCR 導入最前線 (AI inside)
AI-OCR 導入最前線 (AI inside)Shotaro Umeda
 

Similaire à ビズリーチの機械学習基盤 (20)

ゼロから学ぶAI
ゼロから学ぶAIゼロから学ぶAI
ゼロから学ぶAI
 
中小企業におけるキャッシュレス決済導入のポイント
中小企業におけるキャッシュレス決済導入のポイント中小企業におけるキャッシュレス決済導入のポイント
中小企業におけるキャッシュレス決済導入のポイント
 
第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる
 
20190313_SDGsや社会課題にxRはどう活かせるか
20190313_SDGsや社会課題にxRはどう活かせるか20190313_SDGsや社会課題にxRはどう活かせるか
20190313_SDGsや社会課題にxRはどう活かせるか
 
第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる第4次産業革命 AIでビジネスの現場が変わる
第4次産業革命 AIでビジネスの現場が変わる
 
リクルーティングパートナーシップのご提案
リクルーティングパートナーシップのご提案リクルーティングパートナーシップのご提案
リクルーティングパートナーシップのご提案
 
HelloCodingSchool説明会資料.pdf
HelloCodingSchool説明会資料.pdfHelloCodingSchool説明会資料.pdf
HelloCodingSchool説明会資料.pdf
 
クラウドで実現!!マーケティングにおけるIoT活用事例
クラウドで実現!!マーケティングにおけるIoT活用事例クラウドで実現!!マーケティングにおけるIoT活用事例
クラウドで実現!!マーケティングにおけるIoT活用事例
 
Business utilization of real estate image classification system using deep le...
Business utilization of real estate image classification system using deep le...Business utilization of real estate image classification system using deep le...
Business utilization of real estate image classification system using deep le...
 
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術
採用担当者必見!\累計6万通以上のスカウト送信実績/ ITエンジニア採用における返信率10%超のスカウトメール術
 
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする
第4次産業革命に備える!新たなスキルを習得し時代の変化をバネにする
 
Smfl20201001
Smfl20201001Smfl20201001
Smfl20201001
 
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
 
AIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにAIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるために
 
HoloLab_20191016_ceatec
HoloLab_20191016_ceatecHoloLab_20191016_ceatec
HoloLab_20191016_ceatec
 
リクルーティングパートナーシップのご提案 β版1.2
リクルーティングパートナーシップのご提案 β版1.2リクルーティングパートナーシップのご提案 β版1.2
リクルーティングパートナーシップのご提案 β版1.2
 
DIVE INTO WORK 就業説明会のご案内
DIVE INTO WORK 就業説明会のご案内DIVE INTO WORK 就業説明会のご案内
DIVE INTO WORK 就業説明会のご案内
 
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!
アジャイル開発の原則を守りつつ、マルチサイト開発を行なう!
 
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...
[Track3-1] ビジネスで役立つAIリテラシーから機械学習エンジニアリングまで実践形式で学ぶ課題解決型AI人材育成とは?〜国内最大AIコンペサイトの...
 
AI-OCR 導入最前線 (AI inside)
AI-OCR 導入最前線 (AI inside)AI-OCR 導入最前線 (AI inside)
AI-OCR 導入最前線 (AI inside)
 

ビズリーチの機械学習基盤

  • 1. Copyright (C) 2019 BizReach, Inc. ビズリーチの機械学習基盤 株式会社ビズリーチ システム本部 AI室 機械学習エンジニア 右田 尚人 2019年2月23日 第33回 Machine Learning 15minutes!
  • 2. Copyright (C) 2019 BizReach, Inc. 自己紹介 ■ 名前: 右田 尚人(ミギタ ナオト) ■ 2015/04〜2018/5: 富士通 • ニューラルネットワーク系の自然言語処理の研究開発 • AIサービスの導入支援・PoC(FAQ検索など) ■ 2018/7〜: ビズリーチ • レコメンドエンジン開発 • 機械学習基盤開発 1
  • 3. Copyright (C) 2019 BizReach, Inc. ビズリーチでの機械学習活用 企業と求職者のマッチング、求人の職種・業種・年収推定 など様々な箇所で機械学習を活用 2 課題 ● 様々な求人サイトから収集している ため横断的な職種・業種がない 内容 ● 求人情報から自然言語処理で求人の 特徴を抽出 ● その特徴を学習して職種業種を推定 ● 検索条件やデータ分析などで利用 例: 求人内容から職種・業種を推定 参考: BizReach Tech Blog https://tech.bizreach.co.jp/posts/276/gtc2018-japan-report/
  • 4. Copyright (C) 2019 BizReach, Inc. なぜ私たちは機械学習基盤を必要としたのか? 3 ①データサイエンティスト・機械学習エンジニアの作業負荷低減 前に作ったバッチ処理と同じ形で作っておいてね deployの手順書はこれを参照してね 既存の動作についてちょっとだけ説明するね。 バッチ処理の動作はDockerのImageとしてBuildされ てます。処理を動かす時は、AWSのLambdaをKickし てね。処理が始まると、AutoScalingGroupの設定を 変更してスポットインスタンスを払い出して、その インスタンス上で処理が実施されるよ。実施中のロ グはCloudWatchに吐かれていて、もしErrorが発生 したら、Slackに通知が飛ぶようになってる。ここま での設定は、CloudFormationを使うことで適宜定義 しているよ。 あ、そうそう、データについては事業部側のS3から 取ってくるので専用のRoleを用意して事業部側に権 限を付与してもらう必要もあるね。 まあ、これ読めばわかるから、 あとよろしく! 例: 新たなレコメンドエンジンを実装する時
  • 5. Copyright (C) 2019 BizReach, Inc. なぜ私たちは機械学習基盤を必要としたのか? 4 ①データサイエンティスト・機械学習エンジニアの作業負荷低減 前に作ったバッチ処理と同じ形で作っておいてね deployの手順書はこれを参照してね 既存の動作についてちょっとだけ説明するね。 バッチ処理の動作はDockerのImageとしてBuildされ てます。処理を動かす時は、AWSのLambdaをKickし てね。処理が始まると、AutoScalingGroupの設定を 変更してスポットインスタンスを払い出して、その インスタンス上で処理が実施されるよ。実施中のロ グはCloudWatchに吐かれていて、もしErrorが発生 したら、Slackに通知が飛ぶようになってる。ここま での設定は、CloudFormationを使うことで適宜定義 しているよ。 あ、そうそう、データについては事業部側のS3から 取ってくるので専用のRoleを用意して事業部側に権 限を付与してもらう必要もあるね。 まあ、これ読めばわかるから、 あとよろしく! 例: 新たなレコメンドエンジンを実装する時 インフラ専門じゃない エンジニアに 全部投げるの無理だから
  • 6. Copyright (C) 2019 BizReach, Inc. なぜ私たちは機械学習基盤を必要としたのか? 5 ● 様々な環境に対して基盤を展開する必要アリ ● 事業部側がサービスを管理しているため サービス x (本番|開発)環境ごとにAWS アカウントを発行 ● 今後は他クラウドサービス(GCP、Azure)対応の可能性も ②インフラ側の特殊な条件
  • 7. Copyright (C) 2019 BizReach, Inc. なぜ私たちは機械学習基盤を必要としたのか? 6 まとめ 複数の環境にお手軽に展開できて、 インフラをあまり意識しないで使える基盤が 欲しい                    から作りました
  • 8. Copyright (C) 2019 BizReach, Inc. 世の中の機械学習基盤 機械学習サービスの課題 Hidden Technical Debt in Machine Learning Systems NIPS2015 7 https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf
  • 9. Copyright (C) 2019 BizReach, Inc. 世の中の機械学習基盤 ■ KubeFlow • KubeCon2017年でgoogleが発表した OSSプロジェクト • kubernetes上に機械学習基盤を構築 • 現状だと発展途上かつGCP依存が多そう (PipelinesはGKE依存) 8 https://www.kubeflow.org/docs/other-guides/accessing-uis/
  • 10. Copyright (C) 2019 BizReach, Inc. ビズリーチの機械学習基盤 ALICE 9
  • 11. Copyright (C) 2019 BizReach, Inc. values.yaml 概要 10 インフラに依らないデプロイ仕様の設定 (アプリをどのように動かしたいか) - 動作モード: calendar/webhook - モード固有設定 アプリケーション動作設定 - Workflow実行順 - 起動コンテナ定義 worker Nodeのスペック - ボリューム - インスタンスタイプ - スポットインスタンスの入札価 など
  • 12. Copyright (C) 2019 BizReach, Inc. Chart概要 11
  • 13. Copyright (C) 2019 BizReach, Inc. Workflowの見え方 12
  • 14. Copyright (C) 2019 BizReach, Inc. ビズリーチの機械学習基盤 ALICE まとめ 13 複数の環境にお手軽に展開できてインフラをあまり意識しない で使える基盤をkubernetesを使って開発 ■ ALICE CLIの提供 • init: kubernetesクラスタをコマンド1つで展開 • notebook: jupyter notebookをクラスタ上に展開 ■ アプリDeploy時の設定は、1枚のファイルを書くだけ • 最低限のAWS, Argoの知識があればDeploy可能になった • 設定ファイルの変更は、Argo CDでAuto sync。GitOpsを実現 ■ Argoによって柔軟なworkflowを定義可能 • preprocess、training、predictionなどのジョブごとに コンテナやマシンスペックを選べる
  • 15. Copyright (C) 2019 BizReach, Inc. 今後 ■ 脱AWS依存 • CodeBuild -> skaffold? • fluentd + CloudWatch Logs -> Prometheus? ■ インフラエンジニアとの連携 • Kubernetes周りは登場人物も多くてキャッチアップが大変 • 専門の人に頼りたい ■ ALICEを外部公開 • まずはhelm chartから公開予定 14