SlideShare une entreprise Scribd logo
1  sur  30
Télécharger pour lire hors ligne
Tensorflow Dev
Summit 2018
2018. 04. 05. 민규식
오늘의 발표
2
Self Introduction
3
민규식
- 한양대학교 MMC연구실 석박사 통합과정 재학중
- 운전자 보조 시스템 (ADAS) & 자율주행 자동차
- 차량 관련 기술에 딥러닝 적용하기!
- 강화학습 이론 공부
- 강화학습 환경 제작
Tesorflow.js
4
Tesorflow.js
5
Tesorflow.js
6
Tesorflow.js
7
웹페이지의 구성요소
- HTML: 웹페이지의 큰 뼈대를 제공 (Hyper Text Markup Language)
- CSS: 색, 글씨체 등 디자인 요소를 관리 (Cascading Style Sheets)
- Java Script: 객체지향 스크립트 언어로 웹페이지의 동작을 담당
- 웹을 풍부하게 만들어주는 작고 가벼운 언어
Tesorflow.js
8
- Google brain 팀에 의해 개발, 2017년 8월 공개
- Java script 라이브러리로 인터넷 브라우저에서 deep learning inference, training이 가능
- WebGL을 통해 GPU 연산 가능
- WebGL: 웹 기반 그래픽 라이브러리 -> 웹 브라우저 내부에서 3D 그래픽을 사용할 수 있도록 제공
- 다양한 딥러닝 관련 기능들을 웹 상에서 제공 가능 (Style transfer, Generative model, Machine translation)
Tesorflow.js
9
Playground
playground.tensorflow.org
Tesorflow.js
10
In-browser ML
- No driver / no installs -> 웹 페이지에 접속만 하면 실행
- 링크를 통해 간편하게 공유 가능
- Highly interactive
- 핸드폰 등을 이용하는 경우 내장 센서를 input 으로 제공 가능
- Sensor data는 client 에 남고 web 에 올리지 않음 -> Privacy
Tesorflow.js
11
Tensorflow.js
Tesorflow.js
12
Tensorflow.js
Tesorflow.js
13
Tensorflow.js
- Browser 내에서 모델을 생성, 학습, 테스트 할 수 있음
- Python으로 training 을 수행하고 저장된 변수들을 불러와서 browser 내에서 inference 가능
- 불러온 모델을 browser 내에서 retrain 하는 것도 가능
- Conversion: TF나 Keras로 제작 -> model을 저장 -> JS 모델로 변환 -> JS에서 사용!
- Conversion에 제공되는 기능
- Graph optimization: Prediction을 할 때 사용하지 않는 node들 제거
- Weight optimization
- Support 90+ Tensorflow ops -> control flow ops (coming soon)
- Support 32+ Keras layers
- Node.js 를 통해 서버를 이용한 연산이 가능하도록 제공할 예정
Tesorflow.js
14
Example (Training)
Tesorflow.js
15
Example (Webcam controller PacMan)
- Controller의 방향에 이용할 이미지를 각각 촬영
- Parameter 들을 결정하고 Train 버튼을 누른다!
- Loss가 줄어든 것을 확인하고 play를 눌러 게임을 실행한다!
- 웹페이지 상에서 training 과 inference 모두 가능
Tesorflow.js
16
Example (Conversion)
- python + tensorflow 를 이용하여 mobileNet을 구성
- Object detection 을 수행하도록 학습
- 학습된 model을 JS 로 변환 -> 브라우저 상에서 inference를 하도록 구현
Tesorflow.js
17
Example (Conversion)
Tesorflow.js
18
Example (Conversion)
Tesorflow.js
19
Example (Conversion)
Tesorflow.js
20
Emoji Scavenger Hunt
- emojiscavengerhunt.withgoogle.com
- Webcam을 통해 플레이 -> 일정 시간 내에 물건을 찾는 게임!
Tesorflow.js
21
참고!
- js.tensorflow.org
- Github.com/tensorflow/tfjs
Coca-Cola
22
Applied AI at the Coca-Cola Company
Coca-Cola
23
Proof of Purchase
- 소비자는 제품 구매의 증거를 회사측에 전달 (barcode, proof of purchase seal, …) -> 회사는 보상을 지급
- Sales promotion, loyalty marketing, 소비 데이터 수집
Coca-Cola
24
Digital Engagement Marketing
- 기술의 발전으로 인해 web 이나 mobile 플랫폼을 이용한 proof of purchase 가능
- 소비자에게 즉각적인 보상 제공이 가능하며 접근성 향상
- 코카콜라의 경우 병뚜껑에 있는 14 character 로 구성된 pin code 를 이용
- 모든 제품에 unique 하게 할당된 코드 -> 하지만 이것도 손으로 치기 귀찮지요…
≈
Coca-Cola
25
Training 의 과정
- Processing time: 1초 이내, 정확도 95% 이상- Active learning UI를 제작 -> 소비자가 라벨링
- 작은 크기의 모델, update 수행 가능
Coca-Cola
26
Training
Coca-Cola
27
Training
- Character probability matrix 계산
- Every character in every position
- Matrix size: 글자 수 x 라벨 수
Top 10 prediction 선택
Valid: Pincode 제출
Invalid: Active learning
Coca-Cola
28
Training
Improving the Model in 3 Phases
Made the model too large Prevented the model from converging Gets the model to converge
(5mb model with acc > 95%)
Coca-Cola
29
Result
http://coke.com/rewards
App 공개: 3월 28일!
Thank You!!
30

Contenu connexe

Tendances

알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
YunWon Jeong
 
Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅
Chanwoong Kim
 
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
NAVER Engineering
 

Tendances (20)

파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
파이콘 한국 2019 - 파이썬으로 서버를 극한까지 끌어다 쓰기: Async I/O의 밑바닥
 
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
 
Hot Trend Lambda Expressions, Compare C# With Java
Hot Trend Lambda Expressions, Compare C# With JavaHot Trend Lambda Expressions, Compare C# With Java
Hot Trend Lambda Expressions, Compare C# With Java
 
PyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challengePyCon2020 NLP beginner's BERT challenge
PyCon2020 NLP beginner's BERT challenge
 
[devil's camp] - Crack me (김민재)
[devil's camp] - Crack me (김민재)[devil's camp] - Crack me (김민재)
[devil's camp] - Crack me (김민재)
 
How to use Python in Video streaming service - PyCon Korea 2020
How to use Python in Video streaming service - PyCon Korea 2020How to use Python in Video streaming service - PyCon Korea 2020
How to use Python in Video streaming service - PyCon Korea 2020
 
Go로 새 프로젝트 시작하기
Go로 새 프로젝트 시작하기Go로 새 프로젝트 시작하기
Go로 새 프로젝트 시작하기
 
인생은 짧아요, 엑셀 대신 파이썬
인생은 짧아요, 엑셀 대신 파이썬인생은 짧아요, 엑셀 대신 파이썬
인생은 짧아요, 엑셀 대신 파이썬
 
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
 
파이썬(Python) 소개
파이썬(Python) 소개파이썬(Python) 소개
파이썬(Python) 소개
 
파이썬을 배워야하는 이유 발표자료 - 김연수
파이썬을 배워야하는 이유 발표자료 - 김연수파이썬을 배워야하는 이유 발표자료 - 김연수
파이썬을 배워야하는 이유 발표자료 - 김연수
 
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)
 
Slipp clojure-1212
Slipp clojure-1212Slipp clojure-1212
Slipp clojure-1212
 
도도와 파이썬: 좋은 선택과 나쁜 선택
도도와 파이썬: 좋은 선택과 나쁜 선택도도와 파이썬: 좋은 선택과 나쁜 선택
도도와 파이썬: 좋은 선택과 나쁜 선택
 
Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅
 
안드로이드 Oreo의 변화와 모바일 앱/플랫폼의 적합한 성능 측정 방법
안드로이드 Oreo의 변화와  모바일 앱/플랫폼의 적합한 성능 측정 방법안드로이드 Oreo의 변화와  모바일 앱/플랫폼의 적합한 성능 측정 방법
안드로이드 Oreo의 변화와 모바일 앱/플랫폼의 적합한 성능 측정 방법
 
Pycon Korea 2018 - 비개발자에게 파이썬 가르치기
Pycon Korea 2018 - 비개발자에게 파이썬 가르치기Pycon Korea 2018 - 비개발자에게 파이썬 가르치기
Pycon Korea 2018 - 비개발자에게 파이썬 가르치기
 
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
[TECHCON 2019: MOBILE - Android]7.20분만에 만들어보는 라이브 방송 앱
 
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
 
모두의 클라우드 딥러닝
모두의 클라우드 딥러닝모두의 클라우드 딥러닝
모두의 클라우드 딥러닝
 

Similaire à TensorFlow.js & Applied AI at the Coca-Cola Company

Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012
Daum DNA
 
Rss+reader+n스크린+적용기
Rss+reader+n스크린+적용기Rss+reader+n스크린+적용기
Rss+reader+n스크린+적용기
caley2
 

Similaire à TensorFlow.js & Applied AI at the Coca-Cola Company (20)

프론트엔드 개발자의 자바스크립트
프론트엔드 개발자의 자바스크립트 프론트엔드 개발자의 자바스크립트
프론트엔드 개발자의 자바스크립트
 
피니엔진
피니엔진피니엔진
피니엔진
 
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
200819 NAVER TECH CONCERT 01_100만 달러짜리 빠른 앱을 만드는 비법 전수
 
100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법100만 달러짜리 빠른앱 만드는 비법
100만 달러짜리 빠른앱 만드는 비법
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
 
NAVER TECH CONCERT_FE2019_빠르게 훑어보는 웹 개발 트렌드
NAVER TECH CONCERT_FE2019_빠르게 훑어보는 웹 개발 트렌드NAVER TECH CONCERT_FE2019_빠르게 훑어보는 웹 개발 트렌드
NAVER TECH CONCERT_FE2019_빠르게 훑어보는 웹 개발 트렌드
 
Pp3 devweb
Pp3 devwebPp3 devweb
Pp3 devweb
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
 
Node.js in Flitto
Node.js in FlittoNode.js in Flitto
Node.js in Flitto
 
Tensorflow service & Machine Learning
Tensorflow service & Machine LearningTensorflow service & Machine Learning
Tensorflow service & Machine Learning
 
20131217 html5
20131217 html520131217 html5
20131217 html5
 
NAVER의 웹/HTML5환경 대응 현황
NAVER의 웹/HTML5환경 대응 현황NAVER의 웹/HTML5환경 대응 현황
NAVER의 웹/HTML5환경 대응 현황
 
Rss+reader+n스크린+적용기
Rss+reader+n스크린+적용기Rss+reader+n스크린+적용기
Rss+reader+n스크린+적용기
 
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212
 
What's new in IE11
What's new in IE11What's new in IE11
What's new in IE11
 
JS Game Engines
JS Game EnginesJS Game Engines
JS Game Engines
 
오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5
 
Embedded project presentation
Embedded project presentationEmbedded project presentation
Embedded project presentation
 

Plus de Modulabs

Plus de Modulabs (7)

Debugging with tensor board
Debugging with tensor boardDebugging with tensor board
Debugging with tensor board
 
Rear-World Robot Learning
Rear-World Robot LearningRear-World Robot Learning
Rear-World Robot Learning
 
TF.data & Eager Execution
TF.data & Eager ExecutionTF.data & Eager Execution
TF.data & Eager Execution
 
Machine Learning on Your Hand - Introduction to Tensorflow Lite Preview
Machine Learning on Your Hand - Introduction to Tensorflow Lite PreviewMachine Learning on Your Hand - Introduction to Tensorflow Lite Preview
Machine Learning on Your Hand - Introduction to Tensorflow Lite Preview
 
Machine learnig with ModuLABS
Machine learnig with ModuLABSMachine learnig with ModuLABS
Machine learnig with ModuLABS
 
쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전
 
[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝
 

TensorFlow.js & Applied AI at the Coca-Cola Company