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
AWSを活用した機械翻訳のためのGPU並列処理環境の構築/aso
Search
Stockmark
June 16, 2021
0
1.1k
AWSを活用した機械翻訳のためのGPU並列処理環境の構築/aso
Stockmark
June 16, 2021
Tweet
Share
More Decks by Stockmark
See All by Stockmark
LLM開発・活用の舞台裏@2024.04.25
stockmark
0
58
ストックマークデザイナー採用LT/ Stockmark desginer recruiting LT
stockmark
0
85
ストックマークテックミートアップ#8 / Stockmark Tech MeetUp#8
stockmark
0
100
Stockmark Designer Recruiting Pitch
stockmark
1
930
210629 Stockmark Tech Meetup #1 AWSを活用したCPU/GPU環境の並列化
stockmark
0
530
Stockmark_Recruiting Guidebook
stockmark
3
110k
Featured
See All Featured
Web development in the modern age
philhawksworth
203
10k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
The Invisible Customer
myddelton
117
13k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
What's in a price? How to price your products and services
michaelherold
239
11k
Happy Clients
brianwarren
94
6.6k
A designer walks into a library…
pauljervisheath
201
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
129
32k
A Modern Web Designer's Workflow
chriscoyier
689
190k
How to name files
jennybc
67
96k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
How to Think Like a Performance Engineer
csswizardry
4
590
Transcript
AWSを活用した機械翻訳のための GPU並列処理環境の構築 ストックマーク株式会社 バックエンドエンジニア 麻生 晋併 2021/06/16
ストックマークのプロダクト:「Anews」 • 国内外30,000メディアの記事を毎日収集 • 最先端の自然言語処理で個人や組織のミッションに即した記事をレコメンド
レコメンドの課題:英語記事の配信精度の向上 • ユーザーの過去記事へのアクションから当日配信する記事を選定 • 英語記事は読まれない → 精度が上がらない → 読まれないまま... 読むのが大変なので
精度が高くないなら 読みたくない。
解決策:日本語記事の行動履歴の活用
翻訳のためのインフラ見直し(現状:EC2インスタンス1台) POINT1:翻訳用のGPU並列処理環境の追加 • 翻訳はGPU環境を複数用意して並列処理しないと処理時間がかかりすぎる POINT2:既存処理環境(CPU環境)と翻訳処理環境(GPU環境)の分離 • GPU不要の既存処理をGPU環境で実行するとコストがかかりすぎる POINT3:ワークフローエンジンの導入 • サーバを跨いだワークフローの管理が必要
インフラ選定結果 翻訳処理環境(GPU環境):AWS Batch + Amazon EC2 • GPUを利用可能、かつ、配列ジョブで並列処理を実装しやすいことからを採用 • 並列数を記事数に応じて変えるため、事前に
Lambda で必要な並列数を算出 既存処理環境(CPU環境):Amazon ECS + AWS Fargate • EC2は他サービスと連携しづらいため既存処理環境も差し替え • 既に一部タスクを ECS + Fargate で実行できる状態にしていたので他タスクへ拡張 ワークフローエンジン:AWS Step Functions • AWSサービスとの連携しやすさ+社内での利用実績から採用
インフラ構成ビフォーアフター
ストックマークのテックブログで もう少し詳しく解説しています https://tech.stockmark.co.jp/blog/gpu_translate/
インフラ再構築のポイント Infrastructure as Code (IaC) • コードで書いてある通りにインフラの追加・削除・変更が可能 → 開発環境で試行錯誤しやすい、本番環境反映時の負担軽減とミス防止 •
コードが設計書としても機能する → 引き継ぎしやすい CI/CD • GitHub で特定のタグを付与すると CodeBuild で自動デプロイ用のワークフローが実行され る(CPU/GPU環境別のイメージのbuild&push、ECSとBatchの定義更新) → 開発環境/本番環境へのデプロイ時の負担軽減とミス防止
【6月29日(火)19:30開催!】 Stockmark Tech Meetup #1 テックブログで語られなかった試行錯誤の数々を公開! https://stockmark.connpass.com/event/216396/