2016.07.21. 최신 소프트웨어 기술에 대한...

54
/ 53 최최 최최최최최 최최최 최최 IoT, Big Data & Machine Learning 2016.7.21 박박박

Upload: chanjin-park

Post on 12-Apr-2017

173 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

최신 소프트웨어 기술의 이해IoT, Big Data & Machine Learning

2016.7.21

박찬진

Page 2: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

New Technologies

Page 3: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

ALPHAGO

3

Page 4: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

ALPHAGO

4

1202 CPUs, 176 GPUs

특별하고 비싼 컴퓨터가 아니다 ( 분산 / 병렬 컴퓨팅 )

Page 5: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

ALPHAGO

5

Value network - 현재 판세에서 이길 확률 값을 리턴Policy networks- 어디에 두어야 할 지 가이드- 둘 수 있는 자리 각각에 대해 가장 이길확률

https://www.tastehit.com/blog/google-deepmind-alphago-how-it-works/

학습 지능을 가진 SW 가 핵심

Tic Tac Toe Game Tree(Min-Max Algorithm)

def minimax(game) return score(game) if game.over? scores = [] # an array of scores moves = [] # an array of moves

# Populate the scores array, recursing as needed game.get_available_moves.each do |move| possible_game = game.get_new_state(move) scores.push minimax(possible_game) moves.push move end

# Do the min or the max calculation if game.active_turn == @player # This is the max calculation max_score_index = scores.each_with_index.max[1] @choice = moves[max_score_index] return scores[max_score_index] else # This is the min calculation min_score_index = scores.each_with_index.min[1] @choice = moves[min_score_index] return scores[min_score_index] endend

http://neverstopbuilding.com/minimax

Page 6: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

SELF-DRIVING CAR

6

운전대와 페달이 없고 , 소프트웨어와 센서로 운전

Page 7: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

AUTONOMOUS CAR

7

자동차가 다른 차 , 보행자 , 신호등을 인지하는 방식

차량의 지붕의 LIDAR 를 통해 , 주변에 대한 3D 맵을 구성 무인자동차가 초당 1GB 이상의 센서 데이터를 실시간으로 처리

Page 8: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

컴퓨팅 파워의 증가

8

‘ ’ 무어의 법칙 은 인텔 공동 창업자인 고든 무어가 지난 1965 ‘ ’ 년 일렉트로닉스 란 잡지에 게재한 글에서 처음 주장한 이론

18 개월마다 칩에 집적할 수 있는 트랜지스터 수가 2 배씩 증가할 것이라고 선언

머신러닝이나 자율주행이 가능해진 것은 기하급수로 증가한 컴퓨팅 파워가 기반이됨

Page 9: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

컴퓨팅 파워의 증가

9

GPU 멀티 코어

분산컴퓨팅

Data CenterCloud Computing

다양한 부분의 컴퓨팅 기술 발전으로 계산할 수 있는 능력이 계속 커지고 있음 ( 빅데이터 , 인공지능 )

Page 10: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

GARTNER’S HYPE CYCLE

10

현재 새로운 기술들과 발전 상태를 알아볼 수 있는 시각화 도구

기술 성숙도에 대한 시각적 표현 ( 과대광고주기 )

Page 11: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

IoT Platform

Smart Advisors Internet of Things

Machine Learning

Smart Robots

GARTNER’S 2015 HYPE CYCLE

11

Page 12: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

THE FOURTH INDUSTRIAL REVOLUTION

12

현재의 기술 발전이 점진적이라기 보다는 혁명적인 수준으로 이루어지고 있음

Page 13: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

THE FOURTH INDUSTRIAL REVOLUTION

13

The internet, communication technologies, and the digitalization of everything

Concept of blurring the real world with the technological world.

https://genesisnanotech.wordpress.com/2016/01/15/the-fourth-industrial-revolution-what-it-means-how-to-respond-will-you-be-ready/

연결과 지능화 기술이 증기기관의 발명 만큼 혁신적으로 세상을 변화시키고 있음

Page 14: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

CYBER PHYSICAL SYSTEMS

14

CPS 는 실세계와 디지털 세계의 경계가 사라지는 사회를 만들고 있고 , 핵심적인 기술로 IoT, 빅데이터 , 인공지능을 들 수 있음

Smart Home

Smart Factory

Smart Energy

Autonomous Car

Healthcare

Smart City

InternetIoT Big Data AI

연결 (Connected)

지능화 (Intelligent, Smart)

Page 15: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

SMART GRID

15

ICT 기술융합을 기반으로 한 국민발전소 비즈니스 플랫폼 개발

태양열 / 풍력 등의 분산된 소규모 에너지 생산자와 전기차 등 동적인 에너지 소비자 간의 에너지 수요 - 공급 균형을

맞추어야 함 (Micro Grid)

Page 16: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

PANGYO ZERO CITY

16

● Human-centered Smart Mobility City

● Real World Test-bed for Autonomous Vehicle

● IT-ITS Convergence Infrastructure for Autonomous System

● Open Platform based Autonomous Industry Support

Phase I

Phase II

무인 자율차 운행을 컨셉으로한 도시 설계

Page 17: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

Internet of Things

Page 18: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

IOT, INTERNET OF THINGS

18

각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술 (Pervasive, Ubiquotous)

“ 가장 심오한 기술은 눈에 보이지 않으며 , ” 이 기술은 자체로 매일의 일상에 활용된다“The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it”

- 마크 와이저 , 1988

Internet of Things is a term used to define adding Internet connectivity to formerly “dumb” devices, enabling them to communicate with users and other devices

Page 19: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

필립스 스마트 전구

19

Philips Hue Smart Bulb

색상 및 조도 변경 , 알람 , 알림 설정 , 원격으로On/Off

가로등 원격관리 CityTouch SW

Page 20: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

혈당 모니터링

20

Continuous Glucose Monitors

혈당 수준을 모니터링하기 위한 애플 와치 앱 혈당 모니터링 컨택렌즈 , 구글

2014

바늘없는 혈당측정기 특허 , 구글2015

Page 21: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

디즈니 매직 밴드

21

• 방문객이 디즈니 랜드 방문 전에 신청• 룸 키로 사용 , 놀이기구 사용 및 레스토랑 예약 , • 티켓팅 . 카드 지불 연계• 디즈니 캐릭터가 아이에게 이름 부르며 인사

매직밴드를 통해 디즈니랜드 내에서의 고객 경험을 개선함

Page 22: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

FITBIT

22

• 일일 활동을 모니터링 : 걸음 수 , 거리 , 소모 칼로리 , 활동 시간 ( 분 ) 의 일일 목표 진도를 확인하고 추세를 파악• 수면을 기록한 후 앱으로 수면의 질과 추세를 파악• 건강 정보 활용 : 건강 개선 상담사 , 의료 보험 , 직원의 건강 관리

2014 년에 천 백만 개 기기를 판매2007 년 설립 , 2015 년 3 월 까지 21M 개 기기판매

등록 사용자는 19M.

체중계 Aria - 몸무게 , 근육량 , 체지방 , 체질량 지수를추적

개인 활동을 모니터링하고 데이터에 기반한 건강 개선

Page 23: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

IOT FOR SMART CITY

23

Smart Parking, Santander (Spain), 2013

주차 안내 및 교통 신호 제어

Page 24: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

IOT FOR SMART CITY

24

Waste, Seoul (Korea), 2013

ECube실시간 모니터링 & 리포팅청소 수거 경로 최적화

쓰레기 수집 및 수거 최적화

Page 25: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

CONNECTED CAR

25

인터넷 사용이 가능하고 , 내부에 무선 LAN 을 가진 차량

• 모바일 핫스팟으로 AP 역할을 수행• OTA 업데이트 기능으로 차량 유지 보수• 인포테인먼트 (Netflix, Spotify…)• 운전 습관 기반 보험료 할인자동차 제조사들이 자신의 연결 플랫폼을 구축 중임• Audi Connect• GM Onstar• Chrysler Connect• Mercedes-Benz mbrace• BMW Connected Drive• Toyota Entune• …소프트웨어 회사의 플랫폼• Google Android Auto• Apple CarPlay (Dashboard)

Page 26: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

IOT 성장

26

IoT 를 가능하게하는 기술 변화• Cheap sensors : 지난 10 년 간 평균 가격 1.30$ => 0.60$ • Cheap bandwidth : 지난 10 년 간 네트워크 사용 가격 40 배

하락• Cheap processing : 지난 10 년 간 처리 용량 기준 가격 60 배

하락• Smartphones : 센서 게이트웨이 역할 , 스마트홈및 스마트카의

원격 제어 및 허브 , 헬스 및 피트니스 기기• Ubiquitous wireless coverage: Wireless 연결이 거의 공짜 . • Big data : 대량의 IoT 데이터 처리 기술• IPv6 : 128 비트 주소 . 3.4 x 1038 개

IoT 는 인터넷 역사에서 제 3 의 물결• 90 년대 인터넷이 10억 명의 사람을 연결• 2000 년대 모바일 폰이 20억 개 기기를 인터넷에 연결• IoT 는 이보다 10 배 이상의 “ Things” 를 인터넷에 연결 (2020 년까지 280억 )

Page 27: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

Big Data

Page 28: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

AGRICULTURE - SENSORS

28

Vital Herd

소에 ePill 이라는 센서를 먹이고 실시간으로 Vital Sign 을 모니터링함 . 질병 , 영양상태 및 Heat stress 와 같은 환경 영향에 대한 Insight 를 제공

데이터에 기반한 가축 건강 관리

Page 29: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

PRECISION AGRICULTURE

29

Climate Corp

클라우드 기반 농업 정보 시스템• 매일 2.5M 개 위치의 날씨 정보 처리• 150B 토양 센서• 온도 , 강수 및 풍속 등 날씨 예측

농업에 필요한 다양한 정보의 수집 및 처리 (Seeding, Fertilizing, Harvesting)

Page 30: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

AMAZON 추천

30

Anticipatory Shipping (2014): Amazon Wants to Ship Your Package Before You Buy It.

Customers Who Viewed This Item Also Viewed

Recommended for you

Amazon 은 매출의 30%, Netflix 는 매출의 65% 가 추천으로부터 나옴

Page 31: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

T MOBILE

31

communities 노드 : 고객에지 : friendship

“Customer Link Analytics”SNA (Social Network Analysis)

Influencer 가 통신사를 바꿀 때 Follower 의 25% 가이탈

Influencer 에게 기기 업그레이드 시 50$ 제공 .

전체 이탈률을 50% 줄임

통화 기록 데이터에 기반한 소셜 네트워크 분석

고객 간 커뮤니케이션를 분석 통화 데이터 : 한달에 5 천만 노드 간 10 억 통화 =>

300 GB 커뮤니티에서 영향력을 가진 사람을 파악

Page 32: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

UBER DYNAMIC PRICING (SURGE PRICING)

32

“ 우버의 가장 중요한 혁신은 자동차 서비스가 아니라 가격 책정 알고리즘이다” – MIT Technology Review

트래픽 조건 , 콜 요청 수에 따라 가격을 조정 => 실시간 처리 및 예측 분석

콜 요청 수 , 가용 자동차 수

Page 33: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

빅데이터 정의

• Gartner’s Definition• 빅데이터는 크고 (Volume),

빠르게 증가하고 (Velocity), 다양한 형태의 정보 (Variety)

• 비용 효과적이고 혁신적인 정보 처리 방식이 필요

• 데이터에 기반한 인사이트 제공하여 의사결정

33

Page 34: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

데이터는 지속적으로 증가

34

Data Never Sleeps 매 일분 마다 694 명이 Uber 를 타고 , 416 만 Facebook Like 와 34 천 Twit 이

만들어짐

Facebook 2014 년 : 10 억 Active Users. 300 PB 저장 . 600TB/DayNetflix 2015 년 : 350 Active Users, 20 PB, 500 Billion Events/Day

https://www.domo.com/blog/2015/08/data-never-sleeps-3-0/

Page 35: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

BIG DATA SETS

35

Graph Data - Social Networks, Telecom Networks, …

Log Data - Web Server Logs (GET, PUT, …)

Clickstream - 방문자의 로그인 및 페이지 뷰 로그

Sensor Data - Humidity Sensor, Smart Meter, …

다양한 형태의 데이터들이 만들어지고 분석되고 있음

Page 36: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

분산 컴퓨팅 HADOOP

• 구글 검색 시스템이 해결한 문제• Google 웹 처리 정보는 10 PB + • HTML pages, PDFs, images, videos, ... • 1 TB 처리에 6 시간 걸림 : 웹 페이지 분석

(Text 분석 , Document Indexing)• 분산 컴퓨팅이 필요

• Hadoop = HDFS* + MapReduce• 오픈소스 빅데이터 분석 프레임워크 (2005년 )

36* Highly Distributed File System

Page 37: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

분산 처리 예 . WORDCOUNT

37

여러 대의 컴퓨터가 할 수 있도록 문제를 쪼개고 , 결과를 통합 정리하는 형태로 프로그래밍 되어야 함

Page 38: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

음악 추천 알고리즘• Spotify 의 추천 알고리즘

• Collaborative Filtering for Implicit Feedback Datasets

• 유사 음악을 듣는 사람을 그룹핑하여 음악을 추천

• 데이터 , 2015 년 8 월• 7 천 5 백만 고객 , 3 천만 개 음악• 하루에 1 TB 로그• 1200 개노드 클러스터

38

A

CDE

B

C

D

EA

B

Page 39: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

추천 알고리즘

39

3 천만 개 노래 (Item)

75

백만

고객(U

ser)

o o o o

Big Matrix!

Matrix Factorization

행렬 쪼개는 오퍼레이션을 여러 대의 컴퓨터에서 병렬로 진행

Page 40: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 5340

사용자로부터 음악재생 로그를 받아 추천 모델을 학습 (Matrix Factorization) 시켜 추천 목록 구성

Page 41: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

Machine Learning

Page 42: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

MACHINE LEARNING

42

스팸 메일 필터는 메일 텍스트로부터 Spam 인지 아닌지를 분류하는 문제로 단순화해볼 수 있음

단어 사용을 기반으로 Spam 일 확률을계산( 단어 모음 , Spam 여부 ) 데이터를 학습시킴

Page 43: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

MACHINE LEARNING

43

감성 분석은 긍정 문장들과 부정 문장들을 학습시켜 , 새로운 문장이 왔을 때 긍정 /부정으로 분류

Page 44: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

MACHINE LEARNING

44http://scikit-learn.org/stable/

기계학습이 푸는 문제에는 분류 외에 , 클러스터링 , 회귀 예측 , 차원 축소 등의 방법이 있음

Page 45: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

MACHINE LEARNING

45

Evaluation 실제값과 예측값의 차이가 일정 수준

이하 가 될 때까지 학습

Root Mean Square Error

기계학습은 주어진 데이터를 학습하여 잘 예측할 수 있는 모델을 구성하는 것 (Knowledge from Data)

Page 46: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

NEURAL NETWORKS (DIGIT RECOGNIZER)

46

신경망은 뇌의 신경망 구조를 모사한 계산 모델 (뉴런 간에 시냅스를 통해 신호 전달 )

Page 47: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

딥러닝

47

2 개 이상의 중간층을 가지고 있는 신경망모형

Page 48: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

REINFORCEMENT LEARNING

48

강화학습은 상태를 인지하고 행동을 취한 후 , Reward 를 받음 . Reward 를 최대로 하는 방식으로 학습

Page 49: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 5349

https://www.ted.com/talks/jeremy_howard_the_wonderful_and_terrifying_implications_of_computers_that_can_learn

The wonderful and terrifying implications of computers that can learn

Page 50: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

Future

Page 51: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

인류 발전 변화의 시기

51

(1) the technological trends of Artificial Intelligence, (2) the digitization of just about everything and (3) the exponential IT progress.

Human Social Dev. Index- 수명 , 교육지수 , 소득 및 소비

수준 등

산업 혁명 이후로 인구 수 및 인간 개발 지수가 기하급수적으로 증가함

Page 52: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

노동 인구가 줄어들고 있고 임금이 줄어든 결과

소득분배의 불공정성 확대

52

생산성의 향상이 노동자 소득의 증가로 이어지지 않음

Page 53: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

모든 기술이 완벽하게 준비되어 있지는 않다

53

Google’s Self-Driving Car Caused Its First Crash (2016.2)

2009 년부터 1.3 M 마일 이상을 운행 . 교통경찰관의 수신호를 인지할 수도있었음 .

이전의 구글 자율 주행차의 사고가 17 건 있었으나 , 모두 자율 주행 차의 잘못이아니었음2020 년에 자율 주행 차를 릴리스할 계획임

Page 54: 2016.07.21. 최신 소프트웨어 기술에 대한 이해

/ 53

감사합니다