[e-commerce & retail day] 인공지능서비스 활용방안

Post on 23-Jan-2018

122 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

김민성, Solutions Architect

인공지능 서비스활용 방안

본 강연에서 다룰 내용

• 인공 지능 이란?

• AWS 기반의 다양한 인공지능 서비스 활용 방안• Amazon ML

• 효과 적인 Deep Learning을 위한 구성 요소

• Amazon AI 서비스

Artificial Intelligence (AI)

커머스와 AI

실시간 제품추천

실시간 인센티브

자연어 이해

이미지 검색

제고 관리

챗봇

머천다이징

사이즈 및스타일

다 채널 마케팅

온/오프 매장분석

위치 기반마케팅

“2016년 기준 40개 이상의 Startup에 $4.9B 투자”

출처 : Beyond Chatbots: 40+ Commerce Startups Using AI To Style Shoppers, Adjust Pricing, Track Behavior, And More (CBINSIGHTS)

Artificial Intelligence (AI)

“인간과 인간이 서로상호작용 하는 것과 같은

자연스러운 방법으로컴퓨터가 주어진 업무를

처리하는 것"

Artificial Intelligence (AI)

43,252,003,274,489,856,000

“사천삼백만경”

Artificial Intelligence (AI)

F2 U' R' L F2 R L' U'

Learning function

Artificial Intelligence (AI)

F2 U' R' L F2 R L' U'

Learning function

1%accuracy

R U r U R U2 r U2%accuracy

Artificial Intelligence (AI)

Learning function

20%accuracy

40%accuracy

60%accuracy

80%accuracy

95%accuracy

2%accuracy

R U r U R U2 r U

Artificial Intelligence (AI)

Learning function

95%accuracy

?

F2 R F R′ B′ D F D′ B D F

Artificial Intelligence (AI)

0.9초 만에 큐브 맞추기 성공

학습이 필요합니다.

제품의 구매…

인식 조사 구매

“현실에는 투자한 만큼 결과를 얻는 일이 많습니다.”

“y=ax + b”

아마존 머신 러닝

쉽게 접근 및 사용할 수 있는 Console로 직접 ML 모델링• 데이터 소스 지정 및 생성

• ML 모델 생성, 모델 품질 측정, 튜닝

• 배포 및 관리

다양한 부가 기능• 간단한 데이터 타입 변환, 스키마 생성

• 원본 데이터와 모델에 대한 품질 평가

S3에 저장된 데이터를 직접 접근하여 활용하며, Amazon Redshift에 저장된 데이터를 편리하게 가져와 모델링 가능

학습 평가 및 최적화 예측

1 2 3

아마존 머신 러닝 활용

학습

평가 및 최적화

배치(Batch)방식 예측

비동기적으로 대량의 예측 결과 필요 시 사용

Console, API를 통해 요청 가능

많은 양의 데이터를 한 번에 처리하여 결과를 S3에 저장

>>> import boto

>>> ml = boto.connect_machinelearning()

>>> model = ml.create_batch_prediction(

batch_prediction_id = 'my_batch_prediction’

batch_prediction_data_source_id = ’my_datasource’

ml_model_id = ’my_model',

output_uri = 's3://examplebucket/output/’)

실시간(Real-time) 예측

동기적으로 빠르게 예측 결과를 바로 사용 가능

API, SDK를 통해 요청

각각의 데이터를 실시간으로 서비스에서 요청하여 사용

>>> import boto

>>> ml = boto.connect_machinelearning()

>>> ml.predict(

ml_model_id=’my_model',

predict_endpoint=’example_endpoint’,

record={’key1':’value1’, ’key2':’value2’})

{

'Prediction': {

'predictedValue': 13.284348,

'details': {

'Algorithm': 'SGD',

'PredictiveModelType': 'REGRESSION’

}

}

}

하지만 모든 문제가…

신경망

•체세포soma (CPU)하나 이상의 신호(signal)를 조합

•수상돌기dendrite (input bus)다른 뉴런으로부터 입력을 조합

•시냅스synapse (interface)뉴런 간의 파라미터를 저장하는 인터페이스역할

•축색돌기axon (cable)엑티베이션(activation)신호를 다른 뉴런에 전달

인공 신경망의 구현

주요 프레임웍

딥러닝의 어려움

기술의 구축 및스케일 관리의

어려움

모델의 생성 및 운영에시간이 매우 많이

소요되고 비용 소모가심함

GPU EC2 인스턴스 – P2

• NVIDIA K80 GPUs, 인스턴스당 최대 16 GPU

• GPUDirect 지원

• Intel Broadwell processors ( ~64 vCPUs , ~768GiB RAM)

• ~25Gbps 네트워크 지원 (ENA – Elastic Network Adapter)

• 다양한 오픈소스 프레임워크 및 ISV 소프트웨어 지원

인스턴스이름

GPU수량

vCPU 수량

Memory병렬프로세싱코어수량

GPU Memory

Network 성능

p2.xlarge 1 4 61 GiB 2,496 12 GiB High

p2.8xlarge 8 32 488 GiB 19,968 96 GiB 10 Gigabit

p2.16xlarge 16 64 732 GiB 39,936 192 GiB 25 Gigabit

GPU 타입 인스턴스의 학습 시간

• 인스턴스 타입별 epoch 1000번의 학습 시간

Instance p2.xlarge g3.4xlarge m4.xlarge

Epoch 1000 490.41 469.99 7451.94

0 2000 4000 6000 8000

Time (sec)

p2.xlarge g3.4xlarge m4.xlarge

출처 : 원티드랩 TensorFlow 성능 실험 결과

Intel® MKL 2017 최적화

• Intel® Xeon® CPU를 이용하는 EC2 인스턴스에 최적화되어 있음

• 일반적인 딥러닝 연산에 최적화되어 있음

• GEMM(1) (RNN 및 Fully Connected 레이어에 유용함)

• 컨볼루션

• 풀링

• ReLu

• Batch normalization

(1) GEMM: general matrix-matrix multiplication

C4 인스턴스를 이용한 딥러닝 예측

6.1 2.4 1.2 0.8

679.4

262.5

79.7 73.90

200

400

600

800

AlexNet GoogLeNet v1 ResNet-50 Inception v3

Ima

ge

s/S

ec

c4.8xlarge MXNet Inference

No MKL MKL

No MKL MKL

C4 Instances

c4.8xlarge On-Demand:

• $1.675/hr

GoogleNet inference:

• batch size 32

• 262 ims/sec = 3.8 ms/im

• 1 백만 이미지 비용 $1.77

OS: Linux version 3.13.0-86-generic (buildd@lgw01-51) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #131-Ubuntu SMP Thu May 12 23:33:13 UTC 2016. MXNet Tip of tree: commit de41c736422d730e7cfad72dd6afc229ce08cf90, Tue Nov 1 11:43:04 2016 +0800. MKL 2017 Gold update 1

다양한 EC2 인스턴스 타입

간단한 VPS FPGA

P2M4 D2 X1 G2/3T2 R4 I3 C4/5Lightsail F1

Elastic GPUs On EC2

범용 GPU고밀도

저장소

대용량

메모리

그래픽집약메모리

집약

높은 I/O

연산집약버스팅

범용

딥러닝을 위한 EC2 인스턴스

간단한 VPS FPGA

P2M4 D2 X1 G2/3T2 R4 I3 C4/5Lightsail F1

Elastic GPUs On EC2

범용 GPU고밀도

저장소

대용량

메모리

그래픽집약메모리

집약

높은 I/O

연산집약버스팅

범용

다양한 가격 옵션 기반의 비용 최적화

온디멘드 예약 스팟

처리는 빨라졌지만…

구축은? 스케일 관리는?

AWS Deep Learning AMI

• Used Ubuntu 16.04 (ami-cd0f5cb6) as the base AMI with CUDA 8 support• Framework upgrades for Caffe1 (compiled with NCCL 2.0 support), PyTorch, Keras 2.0.• 8 Deep Learning Frameworks - contains the most popular Deep Learning Frameworks(MXNet, Caffe, Caffe2,

Tensorflow, Theano, Torch, PyTorch and CNTK)

• Framework upgrades for Caffe1 (compiled with NCCL 2.0 support), PyTorch, Keras 2.0.• Used Amazon Linux 2017.09 (ami-8c1be5f6) as the base AMI with CUDA 8 support• 8 Deep Learning Frameworks - contains the most popular Deep Learning Frameworks: MXNet, Caffe, Caffe2,

TensorFlow, Theano, PyTorch, Torch and CNTK

Alexa Voice Service 음성 분석

16 years = 140,160 hour

140,016 hours of speech

분산 딥러닝

80대 이상의 Amazon EC2 g2.2xlarge GPU 가상 서버를 통해

모델 훈련

Amazon S3 스토리지에 수천시간의 음성 훈련 데이터 보관

분산 딥러닝

• CloudFormation 템플릿으로 제공

• 5 AWS Region 지원(us-east-1, us-east-2, us-west2, eu-west-1, ap-southeast-2)

• 공유 스토리지를 위한 EFS

• GPU 및 CPU Type 지원

분산 딥러닝 환경 구축

다양한 EC2 인스턴스 선택 가능(CPU, GPU, FPGS)

클러스터의 Worker 노드 수량

분산 딥러닝 환경 구축

../../tools/launch.py-n $DEEPLEARNING_WORKERS_COUNT -H $DEEPLEARNING_WORKERS_PATHpython train_cifar10.py

--gpus $(seq -s , 0 1 $(($DEEPLEARNING_WORKER_GPU_COUNT - 1))) --network resnet--num-layers 50 --kv-store dist_device_sync--num-epoch 2

학습을 수행할Worker 노드수

각 Worker에서사용할 GPU 개수

분산 딥러닝 기반의 학습 성능

개선 그리고 개선

데이터/피드백을 기반으로

모델의 학습학습된 모델을

기반으로 예측

데이터

피드백

모델

S3와의 유연한 연동 (MXNet)

MXNet학습데이터

모델체크포인트

data_iter = mx.io.ImageRecordIter( path_imgrec="s3://bucket-name/training-data/caltech_train.rec", data_shape=(3, 227, 227), batch_size=4, resize=256)

딥러닝의 어려움

기술의 구축 및스케일 관리의

어려움

모델의 생성 및 운영에시간이 매우 많이

소요되고 비용 소모가심함

딥러닝의 어려움

기술의 구축 및스케일 관리의

어려움

모델의 생성 및 운영에시간이 매우 많이

소요되고 비용 소모가심함

AI/ML 전문가부족

Amazon AI 서비스

Amazon Rekognition딥러닝 기반 이미지인식 및 분석 서비스

Amazon Polly딥러닝 기반

음성 합성 서비스

Amazon Lex딥러닝 기반 자동 음성인식 및 자연어 처리

Amazon Rekognition

• Deep Learning 기반의 이미지 인식 서비스• 수만개의 이미지를 인식하고, 검색하고, 관리할 수 있음

이미지 모더레이션• 응용 프로그램의 요구사항이 맞게 명시/묵시적 내용 감지

(예: 선정성 감지 등)

안면 분석• 안면 위치를 식별하고 안면 속성(예: 미소 또는 개안 여부) 분석

(예: 사용자의 감성 추적 등)

안면 비교 • 이미지 상의 안면의 유사성 비교를 통한 동일인 여부 측정

안면 인식 • 대량의 이미지에서 유사한 안면 추출 및 인덱스 생성

객체 및 장면 탐지• 차량, 애완동물, 가구 등 수천 개의 객체 식별 및 신뢰도 점수 제공• 일몰 또는 해변과 같은 이미지내의 장면 인지• 이미지 라이브러리 검색, 필터링 및 큐레이팅

유명 인사 인식 • 이미지내의 유명 인사 인지

Amazon Polly

• 딥 러닝 기술을 사용하여 실제 사람 목소리처럼 음성을 합성

• 다양한 음성 및 언어 지원 (24개 언어 47개 목소리)

• 빠른 실시간 합성 속도로 라이브 서비스 가능 (Amazon Lex 지원)

• 개발자가 합성된 파일, 무제한 저장 및 재생 배포 가능

• 글자당 과금 및 저렴한 비용 (허클베리핀의 모험 영어본 2.5달러 수준)

• 맥락에 따른 자동 음성 합성

• SSML 지원 (음성 합성 어플리케이션에 대한 W3C 표준 XML markup)

Amazon Lex

음성인식 자연어이해

Alexa와같은 딥 러닝 기술기반 서비스

Amazon Lex – 설정 인터페이스

Amazon AI

플랫폼 Amazon ML ECSSpark & EMR Kinesis Batch

인프라스트럭처 GPU MobileCPU IoT

서비스 Lex (Language) Polly (Speech) Rekognition (Vision)

프래임웍 Apache MXNet

TorchCognitive

ToolkitKerasTheano

Caffe2 & Caffe

TensorFlow

AWS Deep Learning AMI

모든프레임웍을지원함과 동시에 고객이 업무에 가장적합한도구를가장적절한시점에사용할 수있게하는 것입니다.

아마존의 경험을 바탕으로…

아마존의 경험

로봇기반의풀필먼트센터

새로운카테고리의제품

아마존은시작과함께인공지능에대한지속적인노력을이어오고있습니다.

이를바탕으로한축척된지식과역량을고객과함께공유하고있습니다.

20171995

자연어처리(클라우드 기반의콜센터)

머신러닝기반의서플라이체인/제고 관리 아마존고추천엔진

그리고 AWS

PollyLex Rekognition

딥러닝프레임웍머신러닝플랫폼아마존 AI/ML 서비스

자유도 : customer-specific models

검증되고확장가능한AWS제품및서비스와연계

AWS Greengrass

AWSIoT

AWSLambda

Amazon EC2(P2 and G2 GPUs)

AmazonS3

AmazonDynamoDB

Amazon Redshift

Amazon EC2(CPUs)

Amazon EC2(ENA)

Amazon ML

Spark & EMR

Kinesis

Batch

ECS

본강연이 끝난 후..

AWS 인공지능 : https://aws.amazon.com/ko/amazon-ai/

AWS AI 블로그 : https://aws.amazon.com/blogs/ai/

분산딥러닝환경 : https://github.com/awslabs/deeplearning-cfn

Apache MXNet

https://aws.amazon.com/ko/mxnet/

https://mxnet.io

http://gluon.mxnet.io

https://github.com/sunilmallya/dl-twitch-series

Amazon Polly를이용한간단한 개인 TTS 개발

https://aws.amazon.com/ko/blogs/ai/build-your-own-text-to-speech-applications-with-amazon-polly/

Amazon Rekognition을 이용한 서버리스사진인식서비스

https://aws.amazon.com/ko/blogs/ai/use-amazon-rekognition-to-build-an-end-to-end-serverless-photo-recognition-system/

S3 Image 대량분석하기

https://aws.amazon.com/ko/blogs/ai/classify-a-large-number-of-images-with-amazon-rekognition-and-aws-batch/

감사합니다.

top related