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で始める機械学習/machine-learning-on-aws-20180310
Search
ryo nakamaru
March 10, 2018
Technology
2
2.4k
AWSで始める機械学習/machine-learning-on-aws-20180310
JAWS DAYS 2018
ryo nakamaru
March 10, 2018
Tweet
Share
More Decks by ryo nakamaru
See All by ryo nakamaru
AWSで楽をするサービスメッシュ入門/appmesh-trial
pottava
1
1.4k
reinforce-2019-recap-lt
pottava
2
4.1k
ScaleShift-jp-2019-summer
pottava
1
190
Firecracker とは何か/what is Firecracker
pottava
13
5.3k
ハイブリッド並列 on Kubernetes/hybrid-parallel-program-on-kubernetes
pottava
1
410
AWS Fargate + Code 兄弟で始める継続的デリバリー / Continuous Delivery with AWS Fargate and Code brothers
pottava
12
3.1k
Singularity と NVIDIA GPU Cloud で作る ハイブリッド機械学習環境の構築 / Building a hybrid environment for Machine Learning with Singularity and NGC
pottava
3
1.2k
明日から始めるちょい足し λ / get-started-with-aws-lambda
pottava
4
2.4k
NGC と Singularity によるハイブリッド機械学習環境 / A hybrid environment for Machine Learning with NGC and Singularity
pottava
0
460
Other Decks in Technology
See All in Technology
デジタルアイデンティティ技術 認可・ID連携・認証 応用 / 20250114-OIDF-J-EduWG-TechSWG
oidfj
2
680
ゼロからわかる!!AWSの構成図を書いてみようワークショップ 問題&解答解説 #デッカイギ #羽田デッカイギおつ
_mossann_t
0
1.5k
When Windows Meets Kubernetes…
pichuang
0
310
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
2
490
データ基盤におけるIaCの重要性とその運用
mtpooh
4
530
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
240
実践! ソフトウェアエンジニアリングの価値の計測 ── Effort、Output、Outcome、Impact
nomuson
0
2.1k
Bring Your Own Container: When Containers Turn the Key to EDR Bypass/byoc-avtokyo2024
tkmru
0
860
EMConf JP の楽しみ方 / How to enjoy EMConf JP
pauli
2
150
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
180
あなたの知らないクラフトビールの世界
miura55
0
130
KMP with Crashlytics
sansantech
PRO
0
240
Featured
See All Featured
Done Done
chrislema
182
16k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
For a Future-Friendly Web
brad_frost
176
9.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
The Language of Interfaces
destraynor
155
24k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Bash Introduction
62gerente
610
210k
The Cult of Friendly URLs
andyhume
78
6.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Transcript
Let’s get started with AWS AWS で始める機械学習 JAWS DAYS Mar
10, 2018 Ryo NAKAMARU, JAWS-UG AI 支部
中丸 良 @pottava • AWS Certified SA, DevOps Engineer -
Pro • CTO at SUPINF Inc. / Solutions Architect at Rescale, Inc. • クラサバ ERP → Web → クラウド / Docker → HPC / ML Profile 2
Profile 3 お客様先のオンプレミスに機械学習環境を構築したり 不足した機械学習用コンピュートリソースを クラウドに用意したりするお仕事させてもらってます
学習の流れを再確認してみます 4
機械学習の流れ 5 2. σʔλલॲཧ 3. ֶश 4. ਪ 1. σʔλऩू
この流れに沿い、AWS をどう使えばいいのか 利用タイミングと目的別にご紹介します
学習 6
データの準備 7
データの収集 8 もちろん、最終的には IoT から得られるセンサデータなど 自社ならではのデータを使っていきたいところ。 とはいえ、まず試してみるだけなら 一般公開されたデータ を活用するのが簡単です。 1
一般公開された画像集 9 研究もコンテストも盛んで、たくさんあります。 • MNIST http://yann.lecun.com/exdb/mnist/ • CIFAR-10 &
CIFAR-100 https://www.cs.toronto.edu/~kriz/cifar.html • ImageNet http://www.image-net.org/ • …
AWS Public Datasets 10 https://aws.amazon.com/jp/public-datasets/
Public Datasets | Google Cloud Platform 11 https://cloud.google.com/public-datasets/
Public data sets for Azure analytics 12 https://docs.microsoft.com/en-us/azure/sql-database/sql-database-public-data-sets
Datasets « Deep Learning 13 http://deeplearning.net/datasets/
? 14 http://www.data.go.jp/data/dataset
AWS 15
関連サービス群 16
データ収集に便利なサービス 17 • AWS IoT • Amazon Kinesis Streams •
Amazon CloudWatch Logs • Amazon S3 • Amazon Cognito + AWS SDK
データの前処理 18 入力データを行列計算などできるように加工する過程。 画像を切り落としたり 3 チャンネルにしたり CSV から必要なカラムだけを抜き出したり入れ替えたり。 Python で書けはするけど、専用ソフトウェアやサービスも便利。
2
AWS の関連サービス群 19
データ前処理に便利なサービス 20 • Amazon Mechanical Turk • AWS Glue •
Amazon EMR / EC2 • AWS Lambda / Step Functions • AWS CloudWatch Events
Amazon Mechanical Turk 21
Amazon Mechanical Turk: 事例 22 アメリカではラベル付けなどで とても利用されている・・ Cloud AutoML Vision?
試行錯誤 / POC 23
試行錯誤に便利なものたち 24
Jupyter notebook 25 主に科学技術計算や機械学習の業界で あれこれ 試行錯誤 したり、それを誰かと簡単に 共有 できる ツール。多くの研究者やエンジニアに愛用されている。
git などでバージョン管理するのも容易!
(NVIDIA) GPU 26 学習にはとても時間がかかるもの。 行列計算が得意な GPU を使えば時間が節約できます!
Docker 27 試行錯誤するにはこれもとても便利です。 ライブラリがどんどんバージョン更新しても大丈夫! クラウド上に学習・推論を持って行く ときにも有用! $ docker run -it
--rm -p 8888:8888 jupyter/tensorflow-notebook
NVIDIA の Docker イメージ 28 cuda:8.0-runtime ubuntu:16.04 cuda:8.0-devel cuda:8.0-cudnn5-runtime cuda:8.0-cudnn5-devel
digits (v6.0) 以下のような継承関係のイメージが公開されています。 機械学習の動作要件に適したイメージをベースに。 独自 Docker イメージのビルドもできます。 NGC なる サービスも
AWS の関連サービス群 29
試行錯誤に便利なサービス 30 • Amazon Machine Learning • Amazon SageMaker •
Amazon EMR / EC2 ‣ p3 / g3 (GPU) instances ‣ Deep Learning AMI • Amazon EBS / S3 / ECR
Amazon Machine Learning 31 二項分類、複数クラス分類、線形回帰のマネージドサービス。 データの取り込みから、学習・推論が行えます。 サーバの管理が不要なため、スケーラビリティや 推論サービスの可用性は気にせず OK!
GPU インスタンス 32 汎用コンピューティング用途: p3 系: NVIDIA Tesla P100 単精度演算性能
9.3 TFLOPS, 半精度演算性能 18.7 TFLOPS (3,584 CUDA cores) p2 系: NVIDIA Tesla K80 単精度演算性能 8.74 TFLOPS (2,496 CUDA cores / GPU が 2 つで 1 つの K80)
Amazon DeepLearning AMI 33 CUDA, cuDNN, Anaconda and so on.
P3, P3 & Intel Math Kernel Library for C5
学習 34
学習 35 3 もっとも重要、かつ ものすごく時間がかかる ところ。 自社のモデルを作るのはとても大変だが オリジナルのものができれば貴重な知財に。 クラウドの様々なサービスがサポートしてくれます。
AWS の関連サービス群 36
学習フェーズに便利なサービス 37 • Amazon EMR / Batch / EC2 ‣
p3 / g3 (GPU) instances ‣ Deep Learning AMI ‣ Spot Fleet / AutoScaling Group • Amazon SageMaker • Amazon Machine Learning • Amazon EFS / S3
AWS Batch 38 https://www.youtube.com/watch?v=UR8BI2Exkbc 科学技術計算・ハイパフォーマンスコンピューティング用途で 真価を発揮する、大規模なスケール、ジョブの依存定義が可能な マネージド 並列分散 バッチ処理基盤。現在 Docker
コンテナ前提。
AWS Batch 39 Black Belt の資料が公開されています http://aws.typepad.com/sajp/2017/02/aws-black-belt-online-seminar-aws-batch.html
AWS Batch 40 私もユーザ視点で書きました http://qiita.com/pottava/items/d9886b2e8835c5c0d30f
AWS Batch: 事例 41 https://www.slideshare.net/RecruitLifestyle/step-functionsaws-batch-81700778 株式会社リクルートライフスタイル 山田 雄さん / NTT
DATA Corporation 堤 崇行さん
Spot Fleet / Spot インスタンス 42 機械学習を AWS でやるなら、知って得する機能! 仮想サーバを安く使うことができる起動方法の一つ。
AWS のデータセンタの「余剰分」を「入札」して利用。
Amazon SageMaker 43 機械学習モデルを簡単に構築し、学習し、推論サービスをデプロイ するためのフルマネージドサービスです。EC2 を強く意識すること なく Jupyter notebook が立ち上がり、推論サービスもクリックだけ
で展開することができます。
Amazon SageMaker 44 設計 学習 デプロイ • ワンクリック起動 Jupyter notebook
• プリセットされた 機械学習アルゴリ ズム群 ▶ ▶ • ジョブを定義し 学習開始 • 並列分散学習 • ハイパーパラメタ 最適化 • シンプルな API で モデルをデプロイ • フルマネージドな 推論エンドポイント の提供
Amazon SageMaker: 事例 45
推論 46
推論 47 学習済みのモデルを使い、推論する。 ビジネスと直結 することが多く、稼働は 24 / 365。 可用性とレイテンシが重要なのは一般サービス同様。 もしかしてサーバレスでも・・いける・・・?
4
AWS の関連サービス群 (自社で推論サービスを提供する場合) 48
推論フェーズに便利なサービス 49 • Amazon ECS / EC2 ‣ p3 /
g3 (GPU) / F1 (FPGA) instances ‣ Deep Learning AMI ‣ Spot Fleet / AutoScaling Group • AWS Lambda / Amazon API Gateway • AWS ElasticBeanstalk • Amazon EFS / EBS / S3 / ECR
Amazon ECS 50 ϑϧϚωʔδυͳ Docker ίϯςφΫϥελڥɻ GPU ϕʔεͷਪΞϓϦέʔγϣϯͩͬͯಈ͖·͢ʂ ϩʔυόϥϯαΦʔτεέʔϧͳͲͱ౷߹͞Ε 24/365
ͷαʔϏεఏڙΛ༰қʹ࣮ݱ
Amazon ECS 51 https://speakerdeck.com/ayemos/build-image-classification-service-with-amazon-ecs-and-gpu-instances クックパッド株式会社 染谷 悠一郎さん
Amazon ECS 52 Black Belt の資料が公開されています https://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2016-amazon-ec2-container-service
AWS Lambda 53 サーバレスで MXNet による推論をする実装例 http://aws.typepad.com/sajp/2017/01/ seamlessly-scale-predictions-with-aws-lambda- and-mxnet.html
AWS の関連サービス群 (推論マネージドサービスの利用) 54
AWS の推論 API サービス 55 • Amazon Rekognition • Amazon
Polly • Amazon Transcribe • Amazon Translate • Amazon Comprehend
まとめ 56 2. σʔλલॲཧ 3. ֶश 4. ਪ 1. σʔλऩू
Glue EMR Lambda Lambda ML SageMaker Batch ECS どこで何を使うか 難易度や機能に応じて選択
Join us :)
JAWS-UG AI 支部 58 • AWS で AI サービスを実装・運用するための 一般的な技術情報、知見、事例共有の場
‣ すでに活用している方 ‣ 導入を検討している方 ‣ 何それおいしいの?な方(開催ごとに難易度が多少違います)
Cloud HPC with 59 • クラウド HPC シミュレーションプラットフォームを提供 • スケーラブルなシミュレーションや機械学習を!
• Singularity でのコンテナ分散実行もサポート
Containerize your app! 60 • クラウド / コンテナ を強みにした受託開発運用、コンサルティング •
2015 年から Docker の本番運用を開始・豊富な CI / CD 事例 • スピンフ、と読みます・・
ご静聴ありがとうございました 参考文献: • Cloud Native Technologies in the Fortune 100
http://redmonk.com/fryan/2017/09/10/cloud-native-technologies-in-the-fortune-100/ • A Study of Security Vulnerabilities on Docker Hub http://dance.csc.ncsu.edu/papers/codaspy17.pdf