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.3k
reinforce-2019-recap-lt
pottava
2
4.1k
ScaleShift-jp-2019-summer
pottava
1
190
Firecracker とは何か/what is Firecracker
pottava
13
5.2k
ハイブリッド並列 on Kubernetes/hybrid-parallel-program-on-kubernetes
pottava
1
400
AWS Fargate + Code 兄弟で始める継続的デリバリー / Continuous Delivery with AWS Fargate and Code brothers
pottava
12
3k
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
450
Other Decks in Technology
See All in Technology
CData Virtuality 日本ローンチイベントのKeynote
cdataj
0
230
普通の Web エンジニアのための様相論理入門 #yapcjapan / YAPC Hakodate 2024
ytaka23
7
1.6k
Develop to Survive - YAPC::Hakodate 2024 Keynote
moznion
8
3k
電子辞書にステータスバーを実装する
puhitaku
0
110
Webセキュリティのあるきかた
akiym
32
11k
テクニカルライターのチームで「目標」をどう決めたか / MVV for a Team of Technical Writers
lycorptech_jp
PRO
3
120
From naive to advanced RAG: the complete guide
glaforge
0
250
LINEヤフー新卒採用 コーディングテスト解説 アルゴリズム問題編
lycorp_recruit_jp
0
13k
【㈱アイモバイル】エンジニア向け会社説明資料
imobile
0
470
ラブグラフ紹介資料 〜プロダクト解体新書〜 / Lovegraph Product Deck
lovegraph
0
14k
AWSの初級者向けAI・ML資格『AWS Certified AI Practitioner』の傾向と対策/So You Want To Pass AWS Certified AI Practitioner
quiver
0
540
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
2
240
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
325
23k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Bash Introduction
62gerente
608
210k
Into the Great Unknown - MozCon
thekraken
31
1.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
231
17k
Infographics Made Easy
chrislema
239
18k
Atom: Resistance is Futile
akmur
261
25k
Music & Morning Musume
bryan
46
6.1k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
25
660
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