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.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
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
330
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
3
180
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
複雑なState管理からの脱却
sansantech
PRO
1
130
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
フルカイテン株式会社 採用資料
fullkaiten
0
40k
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
220
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
490
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Designing the Hi-DPI Web
ddemaree
280
34k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
GitHub's CSS Performance
jonrohan
1030
460k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
A Tale of Four Properties
chriscoyier
156
23k
A designer walks into a library…
pauljervisheath
203
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
120
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