SlideShare a Scribd company logo
1 of 36
Download to read offline
Apache Horn
a Large-scale Deep Learning
삼성전자
SW센터 윤진석
Apache Hama Creator,
and Member of ASF
Edward J. Yoon
Cloud, NoSQL, Big Data, ... , AI
그리고, Open Source Softwares
Software Software as a Service
예) 사진관리 같은 유틸들, 메모장, 한컴오피스 ..
Server Hosting Infra/Platform as a Service
예) 구글 앱엔진, 아마존 ..
Software Software as a Service
예) 사진관리 같은 유틸들, 메모장, 한컴오피스 ..
Server Hosting Infra/Platform as a Service
예) 구글 앱엔진, 아마존 ..
And, there’s a new kid,
TaaS (internet of Things as a Service)
제조품도 이제 그 자체만으로는 경쟁력 없음,
“스마트기기”들이 대표적인 예
e.g., Smart Home as a Service
Client-Side는 점점 가볍고 섹시해지고,
서비스를 위한 Server-Side는 무겁고 교활해짐
“스마트함”, 또는 “교활함”은 어디서?
Big Data and AI Technologies
Gartner ‘16: “방대한 데이터에 수작업 분류와 분석은 불가능해
지고 경제적이지도 않게 됐다. 이제 딥 러닝과 같은 고급 머신
러닝이 핵심”
마지막, Open Source Softwares 약진의 비밀!
서버-사이드
오픈소스
톰캣, 하둡,
오픈스택, ...
Transition to “as a Service”
Service = Software (돈 안됨) + α
Cloud, NoSQL, Big Data, ... , AI
그리고, Open Source Softwares
오늘 본론으로 Apache Hama에서 파생된
분산 “Deep Learning” 공개 프로젝트 소개
초기 빅데이터는 웹 문서 위주, 휴먼-드리븐 씨퀄
Since `08, Apache Hama: Matrix, Networks, ML
2012년, Distributed ANN on Apache Hama
By Yexi Jiang
2013, Caffe by Yangqing jia (UC Berkeley)
2014, Deeplearning4J by Adam Gibson
2014, DeepDist by Dirk Neumann (Facebook)
...
Yexi Jiang?
Facebook 입사 후 활동금지, 지못미 T_T
분산 처리가 중요한 만큼, 다시 살리기로 ..
온-오프라인에서 멤버 모집
삼성전자 3명, 네이버 라인 1명, 서울대 1명
클디 2명, Microsoft 1명, TUM 1명, 카이스트 1명
“목표는”
더 많은 사용자들이
더 다양한 목적으로
더 쉽게 사용가능한
분산 딥러닝 플랫폼
어떻게 달성하느냐,
뉴런-중심 프로그래밍 인터페이스
장점은 계산 병렬화가 유리하고 프로그램이 직관적임
현존
분산처리
기법들
- SandBlaster (Google Brain)
- AllReduce (Baidu DeepImage)
- Downpour (Google Brain)
- Distributed Hogwild (Caffe)
전부 단일 플랫폼에서 지원
그래서, 처리속도 및 메모리 제약없는,
Scale-out 분산 딥 러닝 플랫폼
Natively 하둡 위 에서 ..
Bringing Deep Learning to the Hadoop world
개사람
문제1: Training Set이 크다 (빅 데이터) => Data Parallel
문제2: Model이 커서 메모리에 안 올라간다 => Model Parallel
사람
개
Neuron-centric Programming APIs
User-defined neuron-centric
programming APIs:
The activation and cost
functions, and the upward
and downward functions that
computes the propagated
information, or error
messages, and sends its
updates to Parameter
Server (but not fully
designed yet).
Similar to Google’s Pregel.
class MyNeuron extends Neuron
method upward(messages [m1, m2, ..., ])
sum ← 0
for each w ∈ [m1, m2, ..., ] do
sum ← sum + m.input * m.weight
// propagate squashed output value to neurons of next layer
propagate(squashingFunction(sum));
method downward(messages [m1, m2, ..., ])
for each w ∈ [m1, m2, ..., ] do
gradient ← this.output * (1 - this.output) * m.delta * m.weight
propagate(gradient);
// weight collections
w ← w + Δw (α * this.output * m.delta)
// push updates to parameter server
push(weights);
Apache Hama: BSP framework
BSP framework
on Hama or YARN
Hadoop HDFS
Task 1 Task 2 Task 3 Task N...
Like MapReduce, Apache Hama
BSP framework schedules tasks
according to the distance between
the input data of the tasks and
request nodes.
BSP tasks are globally
synchronized after performing
computations on local data and
communication actions.
Global Regional Synchronization
BSP framework
on Hama or YARN
Hadoop HDFS
Task 1
Task 2
Task 3
Task 4
Like MapReduce, Apache Hama
BSP framework schedules tasks
according to the distance between
the input data of the tasks and
request nodes.
All tasks within the same
group are synchronized
with each others. Each
group works
asynchronously as
independent BSP job.
...
Task 6
Task 5
BSP framework
on Hama or YARN
Hadoop HDFS
Task 1
Task 2
Task 3
Task 6
Like MapReduce, Apache Hama
BSP framework schedules tasks
according to the distance between
the input data of the tasks and
request nodes.
...
Task 7
Task 8
One of group
works as a
Coordinator
Each group performs
minibatch in BSP
paradigm, and interacts
with Parameter Server
asynchronously.
Parameter Swapping
Async mini-batches per worker Group
Task4 PM Server Task5 PM Server
제안 제출 후, 아파치 재단 인큐베이터 투표 결과
18명으로부터 +1s 통과
(그중 Head of @TwitterOSS, Apache Lens, Apache Tez 창시자들도)
More details, visit “Apache Horn” website
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning

More Related Content

What's hot

Scalable web architecture
Scalable web architectureScalable web architecture
Scalable web architectureSteve Min
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for HadoopSeungYong Baek
 
빅데이터 인공지능 전략 및 로드맵
빅데이터 인공지능 전략 및 로드맵빅데이터 인공지능 전략 및 로드맵
빅데이터 인공지능 전략 및 로드맵r-kor
 
Spark Day 2017 Machine Learning & Deep Learning With Spark
Spark Day 2017 Machine Learning & Deep Learning With SparkSpark Day 2017 Machine Learning & Deep Learning With Spark
Spark Day 2017 Machine Learning & Deep Learning With SparkSangHoon Lee
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna현철 박
 
Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Teddy Choi
 
Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Channy Yun
 
Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?KSLUG
 

What's hot (8)

Scalable web architecture
Scalable web architectureScalable web architecture
Scalable web architecture
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
 
빅데이터 인공지능 전략 및 로드맵
빅데이터 인공지능 전략 및 로드맵빅데이터 인공지능 전략 및 로드맵
빅데이터 인공지능 전략 및 로드맵
 
Spark Day 2017 Machine Learning & Deep Learning With Spark
Spark Day 2017 Machine Learning & Deep Learning With SparkSpark Day 2017 Machine Learning & Deep Learning With Spark
Spark Day 2017 Machine Learning & Deep Learning With Spark
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna
 
Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)
 
Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)Realtime Big data Anaytics and Exampes of Daum (2013)
Realtime Big data Anaytics and Exampes of Daum (2013)
 
Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?
 

Similar to (소스콘 2015 발표자료) Apache HORN, a large scale deep learning

Distributed Programming Framework, hadoop
Distributed Programming Framework, hadoopDistributed Programming Framework, hadoop
Distributed Programming Framework, hadoopLGU+
 
Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Hyoungjun Kim
 
데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)SeungYong Baek
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Channy Yun
 
Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability흥배 최
 
서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료Teddy Choi
 
20120605 클라우드 컴퓨팅 서비스의 이해
20120605 클라우드 컴퓨팅 서비스의 이해20120605 클라우드 컴퓨팅 서비스의 이해
20120605 클라우드 컴퓨팅 서비스의 이해김호천
 
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처hoondong kim
 
엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화Kenneth Ceyer
 
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬2013 빅데이터 및 API 기술 현황과 전망- 윤석찬
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬Channy Yun
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대DaeHeon Oh
 
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기NAVER D2
 
[빅데이터 컨퍼런스 전희원]
[빅데이터 컨퍼런스 전희원][빅데이터 컨퍼런스 전희원]
[빅데이터 컨퍼런스 전희원]Jayoung Lim
 
Apache spark 소개 및 실습
Apache spark 소개 및 실습Apache spark 소개 및 실습
Apache spark 소개 및 실습동현 강
 
Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Wooseung Kim
 
[264] large scale deep-learning_on_spark
[264] large scale deep-learning_on_spark[264] large scale deep-learning_on_spark
[264] large scale deep-learning_on_sparkNAVER D2
 
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제NAVER D2
 
E-commerce BigData Scale AI Journey
E-commerce BigData Scale AI JourneyE-commerce BigData Scale AI Journey
E-commerce BigData Scale AI Journeyhoondong kim
 
Cloud Computing 이현남
Cloud Computing 이현남Cloud Computing 이현남
Cloud Computing 이현남LGU+
 
100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning Systemhoondong kim
 

Similar to (소스콘 2015 발표자료) Apache HORN, a large scale deep learning (20)

Distributed Programming Framework, hadoop
Distributed Programming Framework, hadoopDistributed Programming Framework, hadoop
Distributed Programming Framework, hadoop
 
Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218
 
데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
 
Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability
 
서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료
 
20120605 클라우드 컴퓨팅 서비스의 이해
20120605 클라우드 컴퓨팅 서비스의 이해20120605 클라우드 컴퓨팅 서비스의 이해
20120605 클라우드 컴퓨팅 서비스의 이해
 
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
 
엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화
 
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬2013 빅데이터 및 API 기술 현황과 전망- 윤석찬
2013 빅데이터 및 API 기술 현황과 전망- 윤석찬
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대
 
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기
[225]빅데이터를 위한 분산 딥러닝 플랫폼 만들기
 
[빅데이터 컨퍼런스 전희원]
[빅데이터 컨퍼런스 전희원][빅데이터 컨퍼런스 전희원]
[빅데이터 컨퍼런스 전희원]
 
Apache spark 소개 및 실습
Apache spark 소개 및 실습Apache spark 소개 및 실습
Apache spark 소개 및 실습
 
Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가Pag 빅데이터-한국에도필요한가
Pag 빅데이터-한국에도필요한가
 
[264] large scale deep-learning_on_spark
[264] large scale deep-learning_on_spark[264] large scale deep-learning_on_spark
[264] large scale deep-learning_on_spark
 
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제
[D2 COMMUNITY] Spark User Group - 스파크를 통한 딥러닝 이론과 실제
 
E-commerce BigData Scale AI Journey
E-commerce BigData Scale AI JourneyE-commerce BigData Scale AI Journey
E-commerce BigData Scale AI Journey
 
Cloud Computing 이현남
Cloud Computing 이현남Cloud Computing 이현남
Cloud Computing 이현남
 
100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System100% Serverless big data scale production Deep Learning System
100% Serverless big data scale production Deep Learning System
 

More from Edward Yoon

Introduction to apache horn (incubating)
Introduction to apache horn (incubating)Introduction to apache horn (incubating)
Introduction to apache horn (incubating)Edward Yoon
 
Apache Hama at Samsung Open Source Conference
Apache Hama at Samsung Open Source ConferenceApache Hama at Samsung Open Source Conference
Apache Hama at Samsung Open Source ConferenceEdward Yoon
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링Edward Yoon
 
Quick Understanding of NoSQL
Quick Understanding of NoSQLQuick Understanding of NoSQL
Quick Understanding of NoSQLEdward Yoon
 
The evolution of web and big data
The evolution of web and big dataThe evolution of web and big data
The evolution of web and big dataEdward Yoon
 
Apache hama @ Samsung SW Academy
Apache hama @ Samsung SW AcademyApache hama @ Samsung SW Academy
Apache hama @ Samsung SW AcademyEdward Yoon
 
Introduction of Apache Hama - 2011
Introduction of Apache Hama - 2011Introduction of Apache Hama - 2011
Introduction of Apache Hama - 2011Edward Yoon
 
MongoDB introduction
MongoDB introductionMongoDB introduction
MongoDB introductionEdward Yoon
 
Monitoring and mining network traffic in clouds
Monitoring and mining network traffic in cloudsMonitoring and mining network traffic in clouds
Monitoring and mining network traffic in cloudsEdward Yoon
 
Apache hama 0.2-userguide
Apache hama 0.2-userguideApache hama 0.2-userguide
Apache hama 0.2-userguideEdward Yoon
 
Usage case of HBase for real-time application
Usage case of HBase for real-time applicationUsage case of HBase for real-time application
Usage case of HBase for real-time applicationEdward Yoon
 
Apache HAMA: An Introduction toBulk Synchronization Parallel on Hadoop
Apache HAMA: An Introduction toBulk Synchronization Parallel on HadoopApache HAMA: An Introduction toBulk Synchronization Parallel on Hadoop
Apache HAMA: An Introduction toBulk Synchronization Parallel on HadoopEdward Yoon
 
Understand Of Linear Algebra
Understand Of Linear AlgebraUnderstand Of Linear Algebra
Understand Of Linear AlgebraEdward Yoon
 
BigTable And Hbase
BigTable And HbaseBigTable And Hbase
BigTable And HbaseEdward Yoon
 

More from Edward Yoon (16)

Introduction to apache horn (incubating)
Introduction to apache horn (incubating)Introduction to apache horn (incubating)
Introduction to apache horn (incubating)
 
Apache Hama at Samsung Open Source Conference
Apache Hama at Samsung Open Source ConferenceApache Hama at Samsung Open Source Conference
Apache Hama at Samsung Open Source Conference
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링
 
Quick Understanding of NoSQL
Quick Understanding of NoSQLQuick Understanding of NoSQL
Quick Understanding of NoSQL
 
The evolution of web and big data
The evolution of web and big dataThe evolution of web and big data
The evolution of web and big data
 
Apache hama @ Samsung SW Academy
Apache hama @ Samsung SW AcademyApache hama @ Samsung SW Academy
Apache hama @ Samsung SW Academy
 
Apache Hama 0.4
Apache Hama 0.4Apache Hama 0.4
Apache Hama 0.4
 
Introduction of Apache Hama - 2011
Introduction of Apache Hama - 2011Introduction of Apache Hama - 2011
Introduction of Apache Hama - 2011
 
MongoDB introduction
MongoDB introductionMongoDB introduction
MongoDB introduction
 
Monitoring and mining network traffic in clouds
Monitoring and mining network traffic in cloudsMonitoring and mining network traffic in clouds
Monitoring and mining network traffic in clouds
 
Apache hama 0.2-userguide
Apache hama 0.2-userguideApache hama 0.2-userguide
Apache hama 0.2-userguide
 
Usage case of HBase for real-time application
Usage case of HBase for real-time applicationUsage case of HBase for real-time application
Usage case of HBase for real-time application
 
Apache HAMA: An Introduction toBulk Synchronization Parallel on Hadoop
Apache HAMA: An Introduction toBulk Synchronization Parallel on HadoopApache HAMA: An Introduction toBulk Synchronization Parallel on Hadoop
Apache HAMA: An Introduction toBulk Synchronization Parallel on Hadoop
 
Understand Of Linear Algebra
Understand Of Linear AlgebraUnderstand Of Linear Algebra
Understand Of Linear Algebra
 
BigTable And Hbase
BigTable And HbaseBigTable And Hbase
BigTable And Hbase
 
Heart Proposal
Heart ProposalHeart Proposal
Heart Proposal
 

(소스콘 2015 발표자료) Apache HORN, a large scale deep learning

  • 3. Apache Hama Creator, and Member of ASF Edward J. Yoon
  • 4. Cloud, NoSQL, Big Data, ... , AI 그리고, Open Source Softwares
  • 5. Software Software as a Service 예) 사진관리 같은 유틸들, 메모장, 한컴오피스 .. Server Hosting Infra/Platform as a Service 예) 구글 앱엔진, 아마존 ..
  • 6. Software Software as a Service 예) 사진관리 같은 유틸들, 메모장, 한컴오피스 .. Server Hosting Infra/Platform as a Service 예) 구글 앱엔진, 아마존 .. And, there’s a new kid, TaaS (internet of Things as a Service)
  • 7. 제조품도 이제 그 자체만으로는 경쟁력 없음, “스마트기기”들이 대표적인 예 e.g., Smart Home as a Service
  • 8. Client-Side는 점점 가볍고 섹시해지고, 서비스를 위한 Server-Side는 무겁고 교활해짐
  • 9. “스마트함”, 또는 “교활함”은 어디서? Big Data and AI Technologies
  • 10. Gartner ‘16: “방대한 데이터에 수작업 분류와 분석은 불가능해 지고 경제적이지도 않게 됐다. 이제 딥 러닝과 같은 고급 머신 러닝이 핵심”
  • 11. 마지막, Open Source Softwares 약진의 비밀!
  • 12. 서버-사이드 오픈소스 톰캣, 하둡, 오픈스택, ... Transition to “as a Service” Service = Software (돈 안됨) + α
  • 13. Cloud, NoSQL, Big Data, ... , AI 그리고, Open Source Softwares
  • 14. 오늘 본론으로 Apache Hama에서 파생된 분산 “Deep Learning” 공개 프로젝트 소개
  • 15. 초기 빅데이터는 웹 문서 위주, 휴먼-드리븐 씨퀄 Since `08, Apache Hama: Matrix, Networks, ML
  • 16. 2012년, Distributed ANN on Apache Hama By Yexi Jiang
  • 17.
  • 18. 2013, Caffe by Yangqing jia (UC Berkeley) 2014, Deeplearning4J by Adam Gibson 2014, DeepDist by Dirk Neumann (Facebook) ...
  • 19. Yexi Jiang? Facebook 입사 후 활동금지, 지못미 T_T
  • 20. 분산 처리가 중요한 만큼, 다시 살리기로 .. 온-오프라인에서 멤버 모집
  • 21. 삼성전자 3명, 네이버 라인 1명, 서울대 1명 클디 2명, Microsoft 1명, TUM 1명, 카이스트 1명
  • 22. “목표는” 더 많은 사용자들이 더 다양한 목적으로 더 쉽게 사용가능한 분산 딥러닝 플랫폼
  • 23. 어떻게 달성하느냐, 뉴런-중심 프로그래밍 인터페이스 장점은 계산 병렬화가 유리하고 프로그램이 직관적임
  • 24. 현존 분산처리 기법들 - SandBlaster (Google Brain) - AllReduce (Baidu DeepImage) - Downpour (Google Brain) - Distributed Hogwild (Caffe) 전부 단일 플랫폼에서 지원
  • 25. 그래서, 처리속도 및 메모리 제약없는, Scale-out 분산 딥 러닝 플랫폼
  • 26. Natively 하둡 위 에서 .. Bringing Deep Learning to the Hadoop world
  • 27. 개사람 문제1: Training Set이 크다 (빅 데이터) => Data Parallel 문제2: Model이 커서 메모리에 안 올라간다 => Model Parallel 사람 개
  • 28. Neuron-centric Programming APIs User-defined neuron-centric programming APIs: The activation and cost functions, and the upward and downward functions that computes the propagated information, or error messages, and sends its updates to Parameter Server (but not fully designed yet). Similar to Google’s Pregel.
  • 29. class MyNeuron extends Neuron method upward(messages [m1, m2, ..., ]) sum ← 0 for each w ∈ [m1, m2, ..., ] do sum ← sum + m.input * m.weight // propagate squashed output value to neurons of next layer propagate(squashingFunction(sum)); method downward(messages [m1, m2, ..., ]) for each w ∈ [m1, m2, ..., ] do gradient ← this.output * (1 - this.output) * m.delta * m.weight propagate(gradient); // weight collections w ← w + Δw (α * this.output * m.delta) // push updates to parameter server push(weights);
  • 30. Apache Hama: BSP framework BSP framework on Hama or YARN Hadoop HDFS Task 1 Task 2 Task 3 Task N... Like MapReduce, Apache Hama BSP framework schedules tasks according to the distance between the input data of the tasks and request nodes. BSP tasks are globally synchronized after performing computations on local data and communication actions.
  • 31. Global Regional Synchronization BSP framework on Hama or YARN Hadoop HDFS Task 1 Task 2 Task 3 Task 4 Like MapReduce, Apache Hama BSP framework schedules tasks according to the distance between the input data of the tasks and request nodes. All tasks within the same group are synchronized with each others. Each group works asynchronously as independent BSP job. ... Task 6 Task 5
  • 32. BSP framework on Hama or YARN Hadoop HDFS Task 1 Task 2 Task 3 Task 6 Like MapReduce, Apache Hama BSP framework schedules tasks according to the distance between the input data of the tasks and request nodes. ... Task 7 Task 8 One of group works as a Coordinator Each group performs minibatch in BSP paradigm, and interacts with Parameter Server asynchronously. Parameter Swapping Async mini-batches per worker Group Task4 PM Server Task5 PM Server
  • 33. 제안 제출 후, 아파치 재단 인큐베이터 투표 결과 18명으로부터 +1s 통과 (그중 Head of @TwitterOSS, Apache Lens, Apache Tez 창시자들도)
  • 34. More details, visit “Apache Horn” website