Amazon 인공지능
서비스를 활용하여 스마트
애플리케이션 개발하기
박철수 솔루션즈 아키텍트
데이터는 애플리케이션의 중요 구성 요소입니다
프런트-엔드 및 UI 모바일 백-엔드 및 운영 데이터 및 분석
세 가지 유형의 데이터-기반 개발
과거
(Retrospective)
분석 및 보고
현재 (Here-and-now)
실시간 처리
및 대시 보드
미래 예측
(Predictions)
스마트한
애플리케이션 구축
Amazon  Kinesis  
Amazon  EC2  
AWS  Lambda
Amazon  Redshift,  
Amazon  RDS  
Amazon  S3
Amazon  EMR
AI 그리고 스마트 애플리케이션
AI는 기존 데이터에서 자동으로
패턴을 찾고, 이를 이용해서 새로운
데이터 포인트에 대한 예측을 하는
기술
데이터 + AI (ML/DL) = 스마트 애플리케이션
스마트 애플리케이션 사례
뉴스 기사에 알고 있는
것을 바탕으로:
흥미로운 다른 기사는
무엇이 있는가?
주문에 관련해 알고
있는 내용을 기반으로:
이것은 부정한
주문입니까?
사용자에 대해서 알고 있는
내용을 기반한 것:
그 사용자가 당신의 제품을
사용할 것인가?
또 다른 사례들…
부정 행위 탐지 부정 거래 감지, 스팸 이메일 필터링, 의심스러운 리뷰
신고, …
개인화 콘텐츠 추천, 사용자 경험 개선, 예측된 컨텐츠 로딩, …
타겟 마케팅 고객 및 상품 매칭, 마케팅 캠페인 선택, 끼워 팔기(cross-
selling) 및 연쇄판매(up-selling), …
콘텐츠 분류 문서 분류, 채용 관리자와 이력서 매칭, …
고객 이탈 예측 서비스 사용을 중단할 가능성이 있는 고객 찾기, 무료
티어 업그레이드 타켓팅, …
고객 지원 고객 이메일 예측 라우팅, 소셜 미디어 청취, …
스마트 애플리케이션 구축 – 카운터 패턴
안녕하세요 홍길동님,
여기 아주 멋진 쿼드콥터(Quadcopter)가 있습니다.
당신을 위해 단지 $49.99에 판매합니다!
스마트 애플리케이션 구축 – 카운터 패턴
SELECT c.ID
FROM customers c
LEFT JOIN orders o
ON c.ID = o.customer
LEFT JOIN products p
ON p.ID = o.product
GROUP BY c.ID
HAVING o.category = ‘toys’
AND ((p.description LIKE ‘%copter%’
AND o.date > GETDATE() - )
OR (COUNT(*) > 2
AND SUM(o.price) > 150
AND o.date > GETDATE() – 40)
)
데이터에서 비즈니스
규칙을 학습하도록
ML/DL을 사용하세요!
AI(ML/DL)의 순환 주기
프런트 엔드 팀
데이터 엔지니어링 팀
분석 및 데이터 과학자 팀
DevOps 팀
비즈니스 문제점
데이터
ML/DL 모델
ML/DL 애플리케이션
AI(ML/DL)의 순환 주기
프런트 엔드 팀
데이터 엔지니어링 팀
분석 및 데이터 과학자 팀
DevOps 팀
비즈니스 문제점
데이터
ML/DL 모델
ML/DL 애플리케이션
AWS에서 힘든 부분 담당
Amzon의
인공 지능
서비스
Amazon
 echo
클라우드 기반의 음성 서비스
• 뮤직 스트리밍
• 음성 인식
• 스마트홈
• 스킬(Skills)
• Alexa
 앱
Echo  was  inspired  by  ‘Star  Trek’  
– Jeff  Bezos
좋은 음질의 스피커?
아마존 로봇 기반 배송 예측 시스템
• 15개 물류센터에 로봇 이동 도입
• 물류 순환 속도:
60~75분 ▶ 15분
• 재고 공간: 50%
 ↑
• 운영비용: 약 20%↓
• 이동 경로 계산 및 최적화 등에
머신 러닝 기법 활용
Amazon 물류 센터 - 딥러닝을 통한 문제 해결
Original image Activation map Binary map
선반 속 재고 물건 갯수 확인선반 속 재고 물건 누락 확인
2.0
1.0
Amazon  AI
Amazon Machine Learning
Amazon Rekognition Amazon Polly Amazon Lex
Amazon AI 빌딩 블록
일반 개발자
데이터 개발자
P2 인스턴스 딥 러닝 AMI 및 템플릿 MXNet에 투자
연구 및 고급 개발자
Amazon AI - 고급 개발 및 연구자를 위한 솔루션
확장성있는 딥 러닝
프레임워크, MXNet
딥 러닝
프레임워크
딥 러닝 프레임워크가 설치된
AMI (Amazon Machine
Image)
딥 러닝 AMI
Amazon EC2 인스턴스 (G2,
P2, C4, F1)
GPU 인스턴스
EC2 P2 인스턴스 - GPU기반 병렬 컴퓨팅
딥러닝 컴퓨팅에 최적화
• CUDA 및 OpenCL을 사용하는 범용 GPU
컴퓨팅 애플리케이션을 위해 설계
• 기계 학습, 고성능 데이터베이스, 전산 유체
역학, 컴퓨팅 금융, 내진 해석, 분자 모델링,
유전체학, 렌더링, 대용량 병렬 부동 소수점
처리
다양한 딥러닝 프레임웍 지원
• Mxnet 및 Tensorflow과 같은 인기 있는 딥
러닝 프레임워크와 함께 사전에 설치된
Deep Learning AMI를 사용 가능
• 이미 설치된 GPU 드라이버와 CUDA 도구
키트가 포함된 NVIDIA AMI를 사용 가능
딥 러닝 AMI
딥러닝 이미지 제공
• 손쉬운 딥러닝 플랫폼 구축 가능
• 6개의 딥러닝 플레임워크 들이 설
치되어 있음
• MXNet, Caffe, Tensorflow,
Theano, Torch, CNTK
• Intel Math Kernel Library(MKL)를
지원하는 MXNet
• NVIDIA 드라이버, CUDA, cuDNN
• Anaconda Science Platform for
Python2, Python3
http://bit.ly/deepami
• 유연한 프로그래밍 모델
(imperative 및 symbolic 지원)
• 7개 이상 언어에 대한 바인딩
지원 (예, Python, C++, Scala
등)
• 다양한 CPU/GPU 서버 및 저
전력 모바일 디바이스에 포팅
이 가능함
• 클라우드 환경에서 고성능 및
확장성을 보여줌
MXNet – 오픈 소스 딥 러닝 프레임워크
• Awesome MXNet - http://github.com/dmlc/mxnet/tree/master/example
• Language binding 예제
• Deep Learning 예제 (이미지 분석, 자연어 분석, 사진 변환 등)
• IPython Notebook
• 모바일 앱 예제
• 예측 웹 서비스
• 다양한 튜터리얼들
• MXNet과 함께 사용할 수 있는 툴들
• MXNet Model Zoo - http://mxnet.io/model_zoo/index.html
• 바로 사용할 수 있는 모델과 python 스크립트, 사전-학습에 사용된 가중치값
• 모델을 튜닝하는 방법
MXNet – 확장성 있는 딥 러닝 프레임워크
• Amazon CloudFormation은 심층
신경망 학습 같이 중요한 컴퓨팅 작
업을 위해 다수의 EC2 인스턴스를
쉽게 확장할 수 있는 템플릿 역할
• Deep Learning AMI를 사용하여 P2
또는 G2 인스턴스로 구성된 스케일
아웃 방식의 탄력적 클러스터를 스
핀업
분산 딥 러닝 환경 구성 CloudFormation
Amazon ML – 데이터 개발자를 위한 서비스
Amazon Machine Learning은 모든 개발자가 머신
러닝 서비스를 간편하게 사용하도록 도와주는
서비스
Amazon ML 특징: 손쉬운 접근성
관리 콘솔에서 직접 ML 모델링
• 데이터 소스 지정 및 생성
• ML 모델 생성, 모델 품질 측정, 튜닝
• 배포 및 관리
API, SDK를 이용하여 쉽게 활용
• Java, Python, .NET, JavaScript, Ruby,
Javascript
• AWS Mobile SDK를 통해 Android, iOS
앱에서도 쉽게 사용 가능
Amazon ML 특징: 신뢰성 및 확장성
신뢰 높은 시스템 (Dog fooding)
• 아마존 내부 데이터사이언티스트 사용 시스템
• 신뢰성 높은 알고리즘 제공
알고리즘외의 편리한 기능
• 간단한 데이터 타입 변환, 스키마 생성
• 원본 데이터와 모델에 대한 품질 평가
확장성 높은 종량 과금 모델
• 100GB 데이터 모델링 가능
• 배치를 통한 예측 지원
• 실시간 예측 지원
모델 훈련 평가 및 최적화 예측 검색
1 2 3
- 데이터 소스로 부터
DataSource 생성
- 데이터 내용과
스키마 확인
- 모델링 진행
- 생성된 모델의
품질 확인
- 모델에 해석
상세 조절
- 배치를 통한
예측
- 실시간 예측
Amazon ML 활용 방법
Amazon ML 예제
다양한 프로그램 언어 코드 예제
• Java
• Python
• Scala
모바일 플랫폼을 위한 예측 예제
• iOS
• Android
k-fold 교차-검증 예제
https://github.com/awslabs/machine-­learning-­samples
Amazon AI – 일반 개발자를 위한 서비스
Amazon Rekognition
딥러닝 기반 이미지
인식 및 분석 서비스
Amazon Polly
딥러닝 기반
음성 합성 서비스
Amazon Lex
딥러닝 기반 자동 음성
인식 및 자연어 처리
대용량 이미지를 이용해 딥러닝 트레이닝을 통한 이미지 인식, 검색 서비스
객체 및 장면
탐지
안면 분석
얼굴 유사성
비교 분석
안면 인식
및 검색
Amazon Rekognition
유명 인사
인식
이미지 조정
대용량 이미지를 통한 딥러닝 트레이닝을 통한 이미지 인식, 검색 서비스
Amazon Rekognition – JavaScript SDK 예
• detectFaces(params = {}, callback(err, data))
• detectLabels(params = {}, callback(err, data))
• recognizeCelebrities(params = {}, callback(err, data))
• compareFaces(params = {}, callback(err, data))
• indexFaces(params = {}, callback(err, data))
• searchFacesByImage(params = {}, callback(err, data))
• detectModerationLabels(params = {}, callback(err, data))
• 안면 분석
• 이미지 조정
• 얼굴 유사성 비교 분석
• 안면 인식 및 검색
• 유명 인사 인식
• 객체 및 장면 탐지
data  =  {  
FaceDetails:  [  
{  
BoundingBox:  {  
Height:  0.18000000715255737,  
Left:  0.5555555820465088,  
Top:  0.33666667342185974,  
Width:  0.23999999463558197  
},  
Confidence:  100,  
Landmarks:  [  
{  
Type:  EYE_LEFT,  
X:  0.6394737362861633,  
Y:  0.40819624066352844  
},  
{  
Type:  EYE_RIGHT,  
X:  0.7266660928726196,  
Y:  0.41039225459098816  
},  
{  
Type:  NOSE_LEFT,  
X:  0.6912462115287781,  
Y:  0.44240960478782654  
},  
{  
Type:  NOSE_LEFT,  
X:  0.6912462115287781,  
Y:  0.44240960478782654  
},  
{  
Type:  MOUTH_DOWN,  
X:  0.6306198239326477,  
Y:  0.46700039505958557  
},  
{  
Type:  MOUTH_UP,  
X:  0.7215608954429626,  
Y:  0.47114261984825134  
}    
],  
Pose:  {  
Pitch:  4.050806522369385,  
Roll:  0.9950747489929199,  
Yaw:  13.693790435791016  
},  
Quality:  {  
Brightness:  37.60169982910156,  
Sharpness:  80  
}  
}  
],  
OrientationCorrection:  ROTATE_0  
}
예: detectFaces 안면 분석
Bay
Beach
Coast
Outdoors
Sea
Water
Palm_tree
Plant
Tree
Summer
Landscape
Nature
Hotel
99.18%
99.18%
99.18%
99.18%
99.18%
99.18%
99.21%
99.21%
99.21%
58.3%
51.84%
51.84%
51.24%
카테고리 신뢰도
Rekognition: 객체 및 장면 탐지
Rekognition: 이미지 조정
Female
Happy
Smiling
Male
No Facial Hair
Happy
Female
Sad
No Eyeglasses
Rekognition: 성별 및 감정 인식
Rekognition: 안면 유사성 비교 분석
Rekognition: 안면 인식 및 검색
Rekognition: 유명 인사 인식
{  
CelebrityFaces:  [  
{  
Face:  {  
BoundingBox:  {  
Height:  
0.38555556535720825,  
Left:  0.24666666984558105,  
Top:  0.15888889133930206,  
Width:  0.57833331823349  
},  
Confidence:  
99.98231506347656,  
Landmarks:  [  
{  
Type:  eyeLeft,  
X:  0.4664250314235687,  
Y:  0.30321359634399414  
},  
...SNIP...
...SNIP...
Id:  vP522,  
MatchConfidence:  99,  
Name:  Kim  Hye-­soo,  
Urls:  [  
www.imdb.com/name/nm0453476  
]  
}  
],  
UnrecognizedFaces:  []  
}
참조 아키텍처 – 객체 및 장면 인식
https://github.com/awslabs/lambda-­refarch-­imagerecognition
참조 아키텍처 – 객체 및 장면 인식
소스 – Lambda function (객체 및 장면 인식)
const util =  require('util');;  
const AWS  =  require('aws-­sdk');;
const rekognition =  new  AWS.Rekognition();;
rekognition.detectLabels(params).promise().then(function  (data)  {  
callback(null,  data.Labels);;  
}).catch(function  (err)  {  
callback(err);;  
});;  
Amazon Polly
딥 러닝 기술을 사용하여 실제 사람 목소리처럼 음성을 합성
• 다양한 음성 및 언어 지원 (24개 언어 47개 목소리)
• 빠른 실시간 음성 합성 속도로 라이브 서비스 가능 (Amazon Lex 지원)
• SSML을 통한 시맨틱 음성 기능 지원
• 개발자가 합성된 파일, 무제한 저장 및 재생 배포 가능
• 글자당 과금 및 저렴한 비용 (허클베리핀의 모험 영어본 2.5달러 수준)
맥락에 따른 자동 음성 합성
Amazon Polly
“The temperature
in WA is 75°F”
“The temperature
in Washington is 75
degrees Fahrenheit”
We live for the
music, live from the
Madison Square
Garden.
We live(리브) for the
music, live(라이브) from
the Madison Square
Garden.
Polly – 지원 언어
Americas:
• Brazilian Portuguese
• Canadian French
• English (US)
• Spanish (US)
A-PAC:
• Australian English
• Indian English
• Japanese
EMEA:
• Danish
• Dutch
• British English
• French
• German
• Icelandic
• Italian
• Norwegian
• Polish
• Portuguese
• Romanian
• Russian
• Spanish
• Swedish
• Turkish
• Welsh
• Welsh English
Polly
자연스러운 음성 서비스
사람이 읽는 것과 거의 동일한 수준의 서비스 제공
정확한 텍스트 프로세싱
약어, 숫자, 동형이의어등에 대해 일반적인 음성으로 변환해서 발음
Today in Las Vegas, NV it's 90°F.
We live for the music, live from the Madison Square Garden.
높은 지적 능력
복잡한 문장에 대해 적절한 음성 서비스 제공
”Peter Piper picked a peck of pickled peppers.”
간단한 예제 – 신규 블로그 읽어 주기
RSS  Feed Amazon  Polly
Amazon  
CloudWatch Events
Amazon  S3AWS  Lambda
1. 트리거
2. 검사
3. 컨텐츠
4. 텍스트 5. 오디오
6. 오디오
https://github.com/awslabs/amazon-­polly-­sample
소스 – Lambda function (python)
from  boto3  import  Session,  resource
from  contextlib import  closing
polly =  Session().client(”polly)
try:  
logging.info(Next  entry,  size:  %d  %  len(entry['content']))  
logging.debug(Content:  %s  %  entry['content'])  
response  =  polly.synthesize_speech(  
Text=entry['content'],  
OutputFormat=mp3,  
VoiceId=Joanna)  
with  closing(response[AudioStream])  as  stream:  
bucket.put_object(Key=filename,  Body=stream.read())  
except  BotoCoreError as  error:  
logging.error(error)  
Amazon Lex
음성 및 텍스트를 사용해 대화형 인터페이스 서비스
• Lex 콘솔을 통해 빠르고 쉽게 채팅 봇 개발 가능
• 알렉사 음성 인식과 자연어 처리 등 딥러닝 기술 활용
• 완전 관리 클라우드 서비스 및 종량 요금 체계
진료 예약 Amazon Lex 봇 개발 사례
페이스북
메신저모바일
Utterances
Intent를 호출하는 음성 또는
텍스트 문장
BookHotel
Intents
사용자의 자연어 입력에 대한
동작을 수행함
Slots
Intent 수행에 필요한 입력 값
Fulfillment
요청한 Intent에 대한 수행
메카니즘
Amazon Lex 구성 요소
Amazon Lex 구성 요소

Œ
Ž

Book Hotel
“Book  a  Hotel in
NYC”
Hotel Booking
New  York City
Natural Language    
Understanding
Intent/Slot    
Model
UtterancesHotel Booking
City New  York City
CheckIn Nov 30th
CheckOut Dec 2nd
“Your  hotel  is  booked for    
Nov 30th”
Polly
Confirmation:  “Your  hotel    
is  booked  for  Nov 30th”
“Can  I  go  ahead    
with  the booking?
a
in NYC
Automatic Speech    
Recognition
Amazon Lex를 이용한 호텔 예약 시나리오
Lambda
Amazon Lex – 기술
Amazon Lex
Automatic Speech
Recognition (ASR)
Natural Language
Understanding (NLU)
Alexa를 구동하는 동일한 기술
Cognito CloudTrail CloudWatch
AWS 서비스
동작
AWS Lambda
인증 및
가시성
음성
API
언어
API
Fulfillment
최종
사용자
개발자
관리 콘솔
SDK
Intents,
Slots,
Prompts,
Utterances
입력:
음성 또는
문자
다중 플랫폼
클라이언트:
모바일, IoT, 웹, 챗
API
응답:
음성 (Polly를 통한 TTS)
또는 문자
JavaScript SDK 예 – 음성
JavaScript SDK 예 – 텍스트
Amazon Lex 활용
Informational Bots
외국인 관광객을 위한 Chatbot
Application Bots
외국인 전용 모바일 앱을 위한 인터페이스
• 뉴스 업데이트
• 기상 정보
• 택시 통역 ….
• 티켓 발급
• 관광 정보 제공
• 은행 계좌 관리….
Enterprise Productivity Bots
기업 업무 효율 향상을 위한 인터페이스
• 비용 관리
• 마케팅 관리
• 재고 관리….
Internet of Things (IoT) Bots
IoT 디바이스에 대화형 인터페이스 제공
• 웨어러블
• 자율 주행
• 가로등 제어….

판교 개발자 데이 – AWS 인공지능 서비스를 활용하여 스마트 애플리케이션 개발하기 – 박철수

  • 1.
    Amazon 인공지능 서비스를 활용하여스마트 애플리케이션 개발하기 박철수 솔루션즈 아키텍트
  • 2.
    데이터는 애플리케이션의 중요구성 요소입니다 프런트-엔드 및 UI 모바일 백-엔드 및 운영 데이터 및 분석
  • 3.
    세 가지 유형의데이터-기반 개발 과거 (Retrospective) 분석 및 보고 현재 (Here-and-now) 실시간 처리 및 대시 보드 미래 예측 (Predictions) 스마트한 애플리케이션 구축 Amazon  Kinesis   Amazon  EC2   AWS  Lambda Amazon  Redshift,   Amazon  RDS   Amazon  S3 Amazon  EMR
  • 4.
    AI 그리고 스마트애플리케이션 AI는 기존 데이터에서 자동으로 패턴을 찾고, 이를 이용해서 새로운 데이터 포인트에 대한 예측을 하는 기술 데이터 + AI (ML/DL) = 스마트 애플리케이션
  • 5.
    스마트 애플리케이션 사례 뉴스기사에 알고 있는 것을 바탕으로: 흥미로운 다른 기사는 무엇이 있는가? 주문에 관련해 알고 있는 내용을 기반으로: 이것은 부정한 주문입니까? 사용자에 대해서 알고 있는 내용을 기반한 것: 그 사용자가 당신의 제품을 사용할 것인가?
  • 6.
    또 다른 사례들… 부정행위 탐지 부정 거래 감지, 스팸 이메일 필터링, 의심스러운 리뷰 신고, … 개인화 콘텐츠 추천, 사용자 경험 개선, 예측된 컨텐츠 로딩, … 타겟 마케팅 고객 및 상품 매칭, 마케팅 캠페인 선택, 끼워 팔기(cross- selling) 및 연쇄판매(up-selling), … 콘텐츠 분류 문서 분류, 채용 관리자와 이력서 매칭, … 고객 이탈 예측 서비스 사용을 중단할 가능성이 있는 고객 찾기, 무료 티어 업그레이드 타켓팅, … 고객 지원 고객 이메일 예측 라우팅, 소셜 미디어 청취, …
  • 7.
    스마트 애플리케이션 구축– 카운터 패턴 안녕하세요 홍길동님, 여기 아주 멋진 쿼드콥터(Quadcopter)가 있습니다. 당신을 위해 단지 $49.99에 판매합니다!
  • 8.
    스마트 애플리케이션 구축– 카운터 패턴 SELECT c.ID FROM customers c LEFT JOIN orders o ON c.ID = o.customer LEFT JOIN products p ON p.ID = o.product GROUP BY c.ID HAVING o.category = ‘toys’ AND ((p.description LIKE ‘%copter%’ AND o.date > GETDATE() - ) OR (COUNT(*) > 2 AND SUM(o.price) > 150 AND o.date > GETDATE() – 40) ) 데이터에서 비즈니스 규칙을 학습하도록 ML/DL을 사용하세요!
  • 9.
    AI(ML/DL)의 순환 주기 프런트엔드 팀 데이터 엔지니어링 팀 분석 및 데이터 과학자 팀 DevOps 팀 비즈니스 문제점 데이터 ML/DL 모델 ML/DL 애플리케이션
  • 10.
    AI(ML/DL)의 순환 주기 프런트엔드 팀 데이터 엔지니어링 팀 분석 및 데이터 과학자 팀 DevOps 팀 비즈니스 문제점 데이터 ML/DL 모델 ML/DL 애플리케이션 AWS에서 힘든 부분 담당
  • 11.
  • 13.
  • 14.
     echo 클라우드 기반의 음성서비스 • 뮤직 스트리밍 • 음성 인식 • 스마트홈 • 스킬(Skills) • Alexa
  • 15.
     앱 Echo  was  inspired by  ‘Star  Trek’   – Jeff  Bezos 좋은 음질의 스피커?
  • 16.
    아마존 로봇 기반배송 예측 시스템 • 15개 물류센터에 로봇 이동 도입 • 물류 순환 속도: 60~75분 ▶ 15분 • 재고 공간: 50%
  • 17.
     ↑ • 운영비용: 약20%↓ • 이동 경로 계산 및 최적화 등에 머신 러닝 기법 활용
  • 18.
    Amazon 물류 센터- 딥러닝을 통한 문제 해결 Original image Activation map Binary map 선반 속 재고 물건 갯수 확인선반 속 재고 물건 누락 확인 2.0 1.0
  • 20.
  • 21.
    Amazon Machine Learning AmazonRekognition Amazon Polly Amazon Lex Amazon AI 빌딩 블록 일반 개발자 데이터 개발자 P2 인스턴스 딥 러닝 AMI 및 템플릿 MXNet에 투자 연구 및 고급 개발자
  • 22.
    Amazon AI -고급 개발 및 연구자를 위한 솔루션 확장성있는 딥 러닝 프레임워크, MXNet 딥 러닝 프레임워크 딥 러닝 프레임워크가 설치된 AMI (Amazon Machine Image) 딥 러닝 AMI Amazon EC2 인스턴스 (G2, P2, C4, F1) GPU 인스턴스
  • 23.
    EC2 P2 인스턴스- GPU기반 병렬 컴퓨팅 딥러닝 컴퓨팅에 최적화 • CUDA 및 OpenCL을 사용하는 범용 GPU 컴퓨팅 애플리케이션을 위해 설계 • 기계 학습, 고성능 데이터베이스, 전산 유체 역학, 컴퓨팅 금융, 내진 해석, 분자 모델링, 유전체학, 렌더링, 대용량 병렬 부동 소수점 처리 다양한 딥러닝 프레임웍 지원 • Mxnet 및 Tensorflow과 같은 인기 있는 딥 러닝 프레임워크와 함께 사전에 설치된 Deep Learning AMI를 사용 가능 • 이미 설치된 GPU 드라이버와 CUDA 도구 키트가 포함된 NVIDIA AMI를 사용 가능
  • 24.
    딥 러닝 AMI 딥러닝이미지 제공 • 손쉬운 딥러닝 플랫폼 구축 가능 • 6개의 딥러닝 플레임워크 들이 설 치되어 있음 • MXNet, Caffe, Tensorflow, Theano, Torch, CNTK • Intel Math Kernel Library(MKL)를 지원하는 MXNet • NVIDIA 드라이버, CUDA, cuDNN • Anaconda Science Platform for Python2, Python3 http://bit.ly/deepami
  • 25.
    • 유연한 프로그래밍모델 (imperative 및 symbolic 지원) • 7개 이상 언어에 대한 바인딩 지원 (예, Python, C++, Scala 등) • 다양한 CPU/GPU 서버 및 저 전력 모바일 디바이스에 포팅 이 가능함 • 클라우드 환경에서 고성능 및 확장성을 보여줌 MXNet – 오픈 소스 딥 러닝 프레임워크
  • 26.
    • Awesome MXNet- http://github.com/dmlc/mxnet/tree/master/example • Language binding 예제 • Deep Learning 예제 (이미지 분석, 자연어 분석, 사진 변환 등) • IPython Notebook • 모바일 앱 예제 • 예측 웹 서비스 • 다양한 튜터리얼들 • MXNet과 함께 사용할 수 있는 툴들 • MXNet Model Zoo - http://mxnet.io/model_zoo/index.html • 바로 사용할 수 있는 모델과 python 스크립트, 사전-학습에 사용된 가중치값 • 모델을 튜닝하는 방법 MXNet – 확장성 있는 딥 러닝 프레임워크
  • 27.
    • Amazon CloudFormation은심층 신경망 학습 같이 중요한 컴퓨팅 작 업을 위해 다수의 EC2 인스턴스를 쉽게 확장할 수 있는 템플릿 역할 • Deep Learning AMI를 사용하여 P2 또는 G2 인스턴스로 구성된 스케일 아웃 방식의 탄력적 클러스터를 스 핀업 분산 딥 러닝 환경 구성 CloudFormation
  • 28.
    Amazon ML –데이터 개발자를 위한 서비스 Amazon Machine Learning은 모든 개발자가 머신 러닝 서비스를 간편하게 사용하도록 도와주는 서비스
  • 29.
    Amazon ML 특징:손쉬운 접근성 관리 콘솔에서 직접 ML 모델링 • 데이터 소스 지정 및 생성 • ML 모델 생성, 모델 품질 측정, 튜닝 • 배포 및 관리 API, SDK를 이용하여 쉽게 활용 • Java, Python, .NET, JavaScript, Ruby, Javascript • AWS Mobile SDK를 통해 Android, iOS 앱에서도 쉽게 사용 가능
  • 30.
    Amazon ML 특징:신뢰성 및 확장성 신뢰 높은 시스템 (Dog fooding) • 아마존 내부 데이터사이언티스트 사용 시스템 • 신뢰성 높은 알고리즘 제공 알고리즘외의 편리한 기능 • 간단한 데이터 타입 변환, 스키마 생성 • 원본 데이터와 모델에 대한 품질 평가 확장성 높은 종량 과금 모델 • 100GB 데이터 모델링 가능 • 배치를 통한 예측 지원 • 실시간 예측 지원
  • 31.
    모델 훈련 평가및 최적화 예측 검색 1 2 3 - 데이터 소스로 부터 DataSource 생성 - 데이터 내용과 스키마 확인 - 모델링 진행 - 생성된 모델의 품질 확인 - 모델에 해석 상세 조절 - 배치를 통한 예측 - 실시간 예측 Amazon ML 활용 방법
  • 32.
    Amazon ML 예제 다양한프로그램 언어 코드 예제 • Java • Python • Scala 모바일 플랫폼을 위한 예측 예제 • iOS • Android k-fold 교차-검증 예제 https://github.com/awslabs/machine-­learning-­samples
  • 33.
    Amazon AI –일반 개발자를 위한 서비스 Amazon Rekognition 딥러닝 기반 이미지 인식 및 분석 서비스 Amazon Polly 딥러닝 기반 음성 합성 서비스 Amazon Lex 딥러닝 기반 자동 음성 인식 및 자연어 처리
  • 34.
    대용량 이미지를 이용해딥러닝 트레이닝을 통한 이미지 인식, 검색 서비스 객체 및 장면 탐지 안면 분석 얼굴 유사성 비교 분석 안면 인식 및 검색 Amazon Rekognition 유명 인사 인식 이미지 조정
  • 35.
    대용량 이미지를 통한딥러닝 트레이닝을 통한 이미지 인식, 검색 서비스 Amazon Rekognition – JavaScript SDK 예 • detectFaces(params = {}, callback(err, data)) • detectLabels(params = {}, callback(err, data)) • recognizeCelebrities(params = {}, callback(err, data)) • compareFaces(params = {}, callback(err, data)) • indexFaces(params = {}, callback(err, data)) • searchFacesByImage(params = {}, callback(err, data)) • detectModerationLabels(params = {}, callback(err, data)) • 안면 분석 • 이미지 조정 • 얼굴 유사성 비교 분석 • 안면 인식 및 검색 • 유명 인사 인식 • 객체 및 장면 탐지
  • 36.
    data  =  {  FaceDetails:  [   {   BoundingBox:  {   Height:  0.18000000715255737,   Left:  0.5555555820465088,   Top:  0.33666667342185974,   Width:  0.23999999463558197   },   Confidence:  100,   Landmarks:  [   {   Type:  EYE_LEFT,   X:  0.6394737362861633,   Y:  0.40819624066352844   },   {   Type:  EYE_RIGHT,   X:  0.7266660928726196,   Y:  0.41039225459098816   },   {   Type:  NOSE_LEFT,   X:  0.6912462115287781,   Y:  0.44240960478782654   },   {   Type:  NOSE_LEFT,   X:  0.6912462115287781,   Y:  0.44240960478782654   },   {   Type:  MOUTH_DOWN,   X:  0.6306198239326477,   Y:  0.46700039505958557   },   {   Type:  MOUTH_UP,   X:  0.7215608954429626,   Y:  0.47114261984825134   }     ],   Pose:  {   Pitch:  4.050806522369385,   Roll:  0.9950747489929199,   Yaw:  13.693790435791016   },   Quality:  {   Brightness:  37.60169982910156,   Sharpness:  80   }   }   ],   OrientationCorrection:  ROTATE_0   } 예: detectFaces 안면 분석
  • 37.
  • 38.
  • 39.
    Female Happy Smiling Male No Facial Hair Happy Female Sad NoEyeglasses Rekognition: 성별 및 감정 인식
  • 40.
  • 41.
  • 42.
    Rekognition: 유명 인사인식 {   CelebrityFaces:  [   {   Face:  {   BoundingBox:  {   Height:   0.38555556535720825,   Left:  0.24666666984558105,   Top:  0.15888889133930206,   Width:  0.57833331823349   },   Confidence:   99.98231506347656,   Landmarks:  [   {   Type:  eyeLeft,   X:  0.4664250314235687,   Y:  0.30321359634399414   },   ...SNIP... ...SNIP... Id:  vP522,   MatchConfidence:  99,   Name:  Kim  Hye-­soo,   Urls:  [   www.imdb.com/name/nm0453476   ]   }   ],   UnrecognizedFaces:  []   }
  • 43.
    참조 아키텍처 –객체 및 장면 인식 https://github.com/awslabs/lambda-­refarch-­imagerecognition
  • 44.
    참조 아키텍처 –객체 및 장면 인식
  • 45.
    소스 – Lambdafunction (객체 및 장면 인식) const util =  require('util');;   const AWS  =  require('aws-­sdk');; const rekognition =  new  AWS.Rekognition();; rekognition.detectLabels(params).promise().then(function  (data)  {   callback(null,  data.Labels);;   }).catch(function  (err)  {   callback(err);;   });;  
  • 46.
    Amazon Polly 딥 러닝기술을 사용하여 실제 사람 목소리처럼 음성을 합성 • 다양한 음성 및 언어 지원 (24개 언어 47개 목소리) • 빠른 실시간 음성 합성 속도로 라이브 서비스 가능 (Amazon Lex 지원) • SSML을 통한 시맨틱 음성 기능 지원 • 개발자가 합성된 파일, 무제한 저장 및 재생 배포 가능 • 글자당 과금 및 저렴한 비용 (허클베리핀의 모험 영어본 2.5달러 수준) 맥락에 따른 자동 음성 합성 Amazon Polly “The temperature in WA is 75°F” “The temperature in Washington is 75 degrees Fahrenheit” We live for the music, live from the Madison Square Garden. We live(리브) for the music, live(라이브) from the Madison Square Garden.
  • 47.
    Polly – 지원언어 Americas: • Brazilian Portuguese • Canadian French • English (US) • Spanish (US) A-PAC: • Australian English • Indian English • Japanese EMEA: • Danish • Dutch • British English • French • German • Icelandic • Italian • Norwegian • Polish • Portuguese • Romanian • Russian • Spanish • Swedish • Turkish • Welsh • Welsh English
  • 48.
    Polly 자연스러운 음성 서비스 사람이읽는 것과 거의 동일한 수준의 서비스 제공 정확한 텍스트 프로세싱 약어, 숫자, 동형이의어등에 대해 일반적인 음성으로 변환해서 발음 Today in Las Vegas, NV it's 90°F. We live for the music, live from the Madison Square Garden. 높은 지적 능력 복잡한 문장에 대해 적절한 음성 서비스 제공 ”Peter Piper picked a peck of pickled peppers.”
  • 49.
    간단한 예제 –신규 블로그 읽어 주기 RSS  Feed Amazon  Polly Amazon   CloudWatch Events Amazon  S3AWS  Lambda 1. 트리거 2. 검사 3. 컨텐츠 4. 텍스트 5. 오디오 6. 오디오 https://github.com/awslabs/amazon-­polly-­sample
  • 50.
    소스 – Lambdafunction (python) from  boto3  import  Session,  resource from  contextlib import  closing polly =  Session().client(”polly) try:   logging.info(Next  entry,  size:  %d  %  len(entry['content']))   logging.debug(Content:  %s  %  entry['content'])   response  =  polly.synthesize_speech(   Text=entry['content'],   OutputFormat=mp3,   VoiceId=Joanna)   with  closing(response[AudioStream])  as  stream:   bucket.put_object(Key=filename,  Body=stream.read())   except  BotoCoreError as  error:   logging.error(error)  
  • 51.
    Amazon Lex 음성 및텍스트를 사용해 대화형 인터페이스 서비스 • Lex 콘솔을 통해 빠르고 쉽게 채팅 봇 개발 가능 • 알렉사 음성 인식과 자연어 처리 등 딥러닝 기술 활용 • 완전 관리 클라우드 서비스 및 종량 요금 체계 진료 예약 Amazon Lex 봇 개발 사례 페이스북 메신저모바일
  • 52.
    Utterances Intent를 호출하는 음성또는 텍스트 문장 BookHotel Intents 사용자의 자연어 입력에 대한 동작을 수행함 Slots Intent 수행에 필요한 입력 값 Fulfillment 요청한 Intent에 대한 수행 메카니즘 Amazon Lex 구성 요소
  • 53.
    Amazon Lex 구성요소  Œ Ž 
  • 54.
    Book Hotel “Book  a Hotel in NYC” Hotel Booking New  York City Natural Language     Understanding Intent/Slot     Model UtterancesHotel Booking City New  York City CheckIn Nov 30th CheckOut Dec 2nd “Your  hotel  is  booked for     Nov 30th” Polly Confirmation:  “Your  hotel     is  booked  for  Nov 30th” “Can  I  go  ahead     with  the booking? a in NYC Automatic Speech     Recognition Amazon Lex를 이용한 호텔 예약 시나리오 Lambda
  • 55.
    Amazon Lex –기술 Amazon Lex Automatic Speech Recognition (ASR) Natural Language Understanding (NLU) Alexa를 구동하는 동일한 기술 Cognito CloudTrail CloudWatch AWS 서비스 동작 AWS Lambda 인증 및 가시성 음성 API 언어 API Fulfillment 최종 사용자 개발자 관리 콘솔 SDK Intents, Slots, Prompts, Utterances 입력: 음성 또는 문자 다중 플랫폼 클라이언트: 모바일, IoT, 웹, 챗 API 응답: 음성 (Polly를 통한 TTS) 또는 문자
  • 56.
  • 57.
    JavaScript SDK 예– 텍스트
  • 58.
    Amazon Lex 활용 InformationalBots 외국인 관광객을 위한 Chatbot Application Bots 외국인 전용 모바일 앱을 위한 인터페이스 • 뉴스 업데이트 • 기상 정보 • 택시 통역 …. • 티켓 발급 • 관광 정보 제공 • 은행 계좌 관리…. Enterprise Productivity Bots 기업 업무 효율 향상을 위한 인터페이스 • 비용 관리 • 마케팅 관리 • 재고 관리…. Internet of Things (IoT) Bots IoT 디바이스에 대화형 인터페이스 제공 • 웨어러블 • 자율 주행 • 가로등 제어….