Neural stream

38
Neural Stream and IoT around Connected Car 2014.11.21 비아이큐브 김민경 [email protected] BICube Machine Learning Meetup

description

Bigdata Intelligence Platform and IoT Neural Stream is + Machine Learning + Real Network + Graph Theory + Message Passing + Stream

Transcript of Neural stream

Page 1: Neural stream

Neural Streamand IoT

around Connected Car

2014.11.21

비아이큐브 김민경[email protected]

BICube

Machine Learning Meetup

Page 2: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamV. Conclusions (Demo)

Page 3: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamV. Conclusions (Demo)

Page 4: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

I. IoT

Internet access to other devices both inside as outside the vehicle

Page 5: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

I. IoT

Page 6: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

IoT & 오픈소스 -김형채

I. IoT

PREDICTIVE MAINTENANCEImproving owner experience

• real-time using sensor data, time-series• proactive service, i.e. brake issue• driving better customer service

Page 7: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

I. IoT

Problem

Page 8: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

I. IoT

Pheromone update :  

whereif ant k uses curve xy in its tourotherwise

Edge selection :  

Examplepseudo-codeand formulae :

procedure ACO_MetaHeuristicwhile (not_termination)

generateSolutions()daemonActions()pheromoneUpdate()

end whileend procedure

Complex

 

Page 9: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

I. IoT

• 차량측정 정보주행 시간차량 앞뒤방향 가속도(3축 가속도 센서)차량 좌우방향 가속도(3축 가속도 센서)차량 상하방향 가속도(3축 가속도 센서)차량 중심 좌우회전 각속도(3축 자이로 센서)차량 중심 앞뒤회전 각속도(3축 자이로 센서)차량 중심 평행회전 각속도(3축 자이로 센서)차량 주행 정보(위도)차량 주행 정보(경도)차량 주행 정보(속도)차량 주행 정보(진행 방향각)GPS 정보 받는 위성 사용수GPS 위치정보 중 수평 위치에 대한 오차의 수치(낮을 수록 좋음)GPS 기준 시간 정보(시각)GPS 기준 시간 정보(분)GPS 기준 시간 정보(초)측정 시간 정보(년)측정 시간 정보(월)측정 시간 정보(일)측정 시간 정보(시)측정 시간 정보(분)측정 시간 정보(초)측정 시간 정보(1/1000초)

• 운전자 정보시선 인지 장치가 운전자의 시선 감지 유무운전자 눈 깜빡임 유무운전자 머리위치 x값(world 좌표계)운전자 머리위치 y값(world 좌표계)운전자 머리위치 z값(world 좌표계)x축 기준으로 운전자 머리 회전값(world 좌표계)y축 기준으로 운전자 머리 회전값(world 좌표계)z축 기준으로 운전자 머리 회전값(world 좌표계)운전자 머리가 향하는 방향 x값(world 좌표계)운전자 머리가 향하는 방향 y값(world 좌표계)운전자 머리가 향하는 방향 z값(world 좌표계)운전자 우측 눈위치 x값(world 좌표계)운전자 우측 눈위치 y값(world 좌표계)운전자 우측 눈위치 z값(world 좌표계)운전자 좌측 눈위치 x값(world 좌표계)운전자 좌측 눈위치 y값(world 좌표계)운전자 좌측 눈위치 z값(world 좌표계)운전자 우측 눈동자 위치 x값(world 좌표계)운전자 우측 눈동자 위치 y값(world 좌표계)운전자 우측 눈동자 위치 z값(world 좌표계)운전자 좌측 눈동자 위치 x값(world 좌표계)운전자 좌측 눈동자 위치 y값(world 좌표계)운전자 좌측 눈동자 위치 z값(world 좌표계)운전자 머리 정보에 대한 신뢰도운전자 우측 눈 응시방향 x값(world 좌표계)운전자 우측 눈 응시방향 y값(world 좌표계)운전자 좌측 눈 응시방향 x값(world 좌표계)운전자 좌측 눈 응시방향 y값(world 좌표계)

Examples

자료제공:교통안전공단

Page 10: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamingV. Conclusions (Demo)

Page 11: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

CONNECTED CAR IS BIG DATA• cars produce 2GB sensor data every 90 min• 60M cars manufactured each year• If driven 4 hours a day ..103 exabytes

• Gigabyte (1 000 000 000 Bytes)• Terabyte (1 000 000 000 000 Bytes)• Petabyte (1 000 000 000 000 000 Bytes)• Exabyte (1 000 000 000 000 000 000 Bytes)• Zettabyte (1 000 000 000 000 000 000 000 Bytes)• Yottabyte (1 000 000 000 000 000 000 000 000 Bytes)

SummaryII. Bigdata

Page 12: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Bigdata headache or opportunity?

SummaryII. Bigdata

Page 13: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

암달의 법칙과 구스타프손 법칙-CPU 기술의 한계?

http://en.wikipedia.org/wiki/Amdahl's_law

• Deadlock : several participants are waiting on each other to reach a specific state to be able to progress

• Livelock : though is that instead of being frozen in a state of waiting for others to progress, the participants continuously change their state.

• Thread starvation - when the execute threads are either all busy, or have all become deadlocked, so there's literally no one to

service any new requests, this effectively shuts down the server (though it probably still looks to an admin like it's up and running).

• Race conditions - when shared data is being changed by multiple threads while a given method is executing, it can cause the internal logic to be subverted and produce unexpected results

II. Bigdata Summary

병렬 컴퓨팅에서 멀티 프로세서를 사용할 때 프로그램의 성능향상은 프로그램의 순차적인 부분에 의해 제한된다. 예를 들면, 프로그램의 95%가 병렬화 할 수 있다면 이론적인 최대 성능 향상은 아무리 많은 프로세서를 사용하더라도 최대 20배로 제한된다.

Page 14: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Why Bigdata?

II. Bigdata Summary

분산 저장(HDFS)

분산 처리(Mapreduce)

DATA

DATA

DATA

DATA

DATA

DATA

DATA

Hadoop SuperComputer DATA

저장

분산 처리 MPP

Page 15: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Why Bigdata?

• Central limit theorem

the arithmetic mean of a sufficiently large number of iterates of

independent random variables

Overfitting, Six sigma

So bigdata is not necessary !

Large data is enouph

But ….

Why Markov Assumtions?

Why Independent Assumptions?

II. Bigdata Summary

Page 16: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Hadoop Ecosystem

II. Bigdata Ecosystem

Page 17: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Hadoop Ecosystem

II. Bigdata Ecosystem

Page 18: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamV. Conclusions (Demo)

Page 19: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

III. Machine Learning

기계학습(Machine Learning) 이란?• 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술

• 문제를 해결하기위한 일련의 컴퓨터 프로세스.

• 정확한 미래를 예측하기 위한 컴퓨터 알고리즘.

• 컴퓨터가 스스로 학습하는 예측모형

연습데이터(Training Data)

ML Algorithms 예측모델

실데이터(Actual Data)

Forecast Prediction ClassificationClusteringProactive

• Optical character recognition• Face detection• Spam filtering• Topic spotting• Spoken language understanding• Medical diagnosis• Customer segmentation• Fraud detection• Weather prediction

SupervisedUnsupervisedSemi-supervised

Summary

StructuredUnstructuredSemi-structured

Page 20: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

왜? 기계학습인가!

• 가능하면 더 정확한 예측을 하기 위하여.• 복잡한 데이터를 프로그램만으로 처리하기 어렵기에.• 가끔 전문적인 인간보다 더 이해하기 쉬운 결과를 낸다• 직접적인 프로그램을 만들지 않아도 된다. • 프로그램으로 만든 것보다 더 정확한 결과를 낼 수 있다.• 데이터를 통한 의사결정을 할 수 있다.• 인간도 가끔 잘못된 표현과 판단을 한다. • 분석된 결과를 컴퓨터에 이식하여 자동화할 수 있다.• 빅데이터에는 기계학습이 포함되어 있는 개념이다.

기계학습이 없는 빅데이터는 앙꼬 없는 찐빵이다!

III. Machine Learning Summary

Page 21: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

ML Modeling

ML Deploy

ML Optimization&Simulation

New Data

Decision Making

Self Alert

ML Lifecycle

Anomaly Store

Hadoop DFS/NoSQl/Hive

III. Machine Learning Summary

Page 22: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Batch

Delploy Flow

Validate Deploy/Active

Back-line Near-line On-line

모델 개발SVMlogisticregressionFDSAnomalyOptimization

모델 검증개발된 모델이 잘 적용되는지 검증

모델 적용검증된 모델이 실환경에적용하여 실행

New Data

III. Machine Learning Summary

Page 23: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamV. Conclusions (Demo)

Page 24: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

IV. Neural Stream

• High throughput• Machine Learning• Power Computing3마리 토끼?

50billion Device

Summary

Page 25: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

IV. Neural Stream Summary

Neural Steam?

Neuron + Machine Learning+ Real Network + Graph Theory+ Message Passing+ Stream

Page 26: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Min, Max, Sum, Avg,Join 등으로 만족할 수 있을까?주식이 10% 떨어지고 3회 이상 5% 오른다는 패턴만으로 예측할 수 있을까?

IV. Neural Stream CEP

Need more Algorithoms and more ML puzzle

Page 27: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Near Real-time

Seconds 수준의 지연(latency) 시간 보장

Real-time

Real Real-time

Milliseconds 수준의 지연(latency) 시간 보장

Microseconds 수준의 지연(latency) 시간 보장 (16ms)

리얼타임 스트리밍의 종류

IV. Neural Stream

Page 28: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Giga Internet

Neural Stream

Neural Stream (External)

Beacon

Routing

Neural Cluster(Internal)

Neural Cluster

CEP

IV. Neural Stream

StreamBus

Page 29: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

BIP

Sharing Neural Stream

ML

Neural

Cortex

IV. Neural Stream

Cortex Streaming

Cortex Streaming

Cortex Streaming

Page 30: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Neural Stream

Beacon Neural Cluster

Modeling

Deploy Neurons (ML model)

BIP

IV. Neural Stream

Share Cortex Stream

CEP

Page 31: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

목차

I. IoTII. BigdataIII. Machine LearningIV. Neural StreamV. Conclusions

Page 32: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

IoT는 빅데이터가 리딩해야!

V. Conclusions

Page 33: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Neural Marketing

V. Conclusions

Page 34: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Neural Driving on Bigdata Intelligence Platform

V. Conclusions

3rd

Party API

Page 35: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

• Simple Learning algorithm만으로 부족하다• Rule Engine 만으로는 더욱 부족하다.• Machine Learning만의 구현을 위한 Intelligence Platform이 필요하다.• Intelligent Car가 필요하다면 그것은 기계학습을 통해서 이루어진다.• Cortex Streaming과 같은 뇌 기능을 가진 공유형 프로세스가 필요하다.• Embeded Gateway Device에 기반한 기계학습 모델의 공유가 필요하며 (Neural Streaming) 이는 Connected Car 시대의 필수 요소이다.• 그래픽 기반의 모델링과 분석, 프로비져닝,그리고 Deploy가 가능해야 한다. • DSL(Domain Specific Language)를 활용한 DIY(Do It Yourself)형 기계학습 모델 개발이 가능행야 하며 다양한 언어를 지원하는 Concurrent Platform이 필요하다.• 둘 이상의 모델이나 알고리즘을 자동적으로 실행함으로써 모델 개발자의 업무 생산성이 향상되어야 한다.• 비즈니스 환경에서 여러 가지 대안과 전략을 평가하고 최적의 대안을 선택할 수 있는 Decision making이 가능해야 한다.• 최적화(Optimization)모델, 설명(Descriptive)모델, 예측(Predictive)모델 그리고 실시간(real-time) 분석을 지원하는 통합 플랫폼이 필요하다.• 컴퓨팅 서비스 포트폴리오를 개편해야 할 필요가 있다.

• 대용량의 데이터 처리에 있어서도 기계학습이 필수이다.• 지능형 자원 공유가 미래 IoT 플랫폼을 선도할 것이다.

V. Conclusions

Page 36: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Sqoop Flume

HDFS (Hadoop Distributed File System)

Zookeeper

Yarn(2.0)

MapReduce

HivePig

Mahout

Mashup

RDB

Preprocess Classify Cluster Associate Visual

BICube

RDB Mashup SNS Crawler

Auth

entic

atio

n

CubeM

anager

Log Crawler

Machine Learning Engine

Spark

SparkSQL

SparkStream GraphXML

Storm Kafka Akka

BioinfoManipul

Tachyon

Mesos

BIP(Bigdata Intelligence Platform) Architecture

V. Conclusions Demo

Page 37: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

V. Conclusions Demo

DIY Machine Learning MartJava, Scala, Python, R, Spark 그리고 Hadoop 등을 직접컨트

롤할 수 있는 Concurrent Platform

Page 38: Neural stream

Bigdata Intelligence PlatformBICube Machine Learning Meetup

Thank you !감사합니다.

Questions?

[email protected]