Deep Learning 공부 자료


Deep Learning at NAVER

Naver Deview 강연

Imagenet contest
매년 정해진 이미지를 가지고 얼마나 더 잘 분류하는지를 경쟁하는 대회이다.
이 대회에서 1990년대 이미 흥망성쇠를 경험 했던 Deep neural network이 다시 엄청난 성능을 나타내며
부활하자 사람들이 Deep neural network으로 돌아오게 됬다.

Back propagation.
미분값을 전이하게 된다.
결국 layer가 뒤로 전이 되면서 weight vector를 찾아 내기 때문에
초기의 작은 에러가 큰 에러를 생성할 수 있다.
결국 레이어가 깊어지면 학습하기 어렵다. 작은 변화도 크게 작용하기 때문이다.
아무렇게나 막 쌓는다고해서 동작하는게 아니다.

딮 러닝의 키는 데이터인데
결국 서비스가 막강해야 데이터를 많이 모으고 그래야 또 서비스가 좋아진다.
학습 Data를 그대로 모사하게 된다. 
overfitting의 문제: 학습 데이터를 그대로 모사하게 된다.
데이터가 적을때는 오버피팅 문제가 바로 발생한다.

결국이 overfitting이 DeepLearning의 최대 장점이자 최대 단점이다.
양날의 칼날이다. 데이터가 많으면 최대의 장점이고 적으면 크리티컬한 단점이다.
노이즈를 추가해서 본질적인 부분이 계속 떠오르도록 할 수도 있다.
이말의 의미는 결국 고양이를 학습할떄 좌우 반전을 하던가 고양이 발과 같은 것들을 일부러 가려주는 방식으로
오버피팅이 잃어나지 않도록 하는 것이다.
학습이 좀더 고양이 본질에 다가설수 있도록 한다.
그렇다고 고양이 얼굴을 가려버리면 안된다.

해당 Domain에 대한 어느정도 학습을 수행하는 사람의 지식이 필요하다고 할 수 있다.

이전에는 오버피팅을 막기위해서
priori 지식이 필요했다.
이래야 됬었다.

하지만 요즘은 데이터가 많으니
필터조차 학습을 통해서 만들어 내게 된다.

예전에는 피터 익스트렉션을 사람이 해줬다.
하지만 필터를 이제 기계가 만들어준다.

그럼 아래와 같은 그림 처럼
예전에 인간이 만들어준 prior knowledge 보다 더 좋은 성능을 Big-data를 통해서 달성 할 수 있게 된다.

그럼 무작정 Data가 많으면 되는 것인가?
아무리 빅 데이터라도 분명히 커버하지 못하는 부분이 존재 한다. 따라서 그러한 부분에 대해서는 Prior knowledge를 통해서 커버를 해야한다. 하지만 빅 데이터가 커버하지 못하는 영역이므로 찾아내기란 그렇게 쉽지는 않다.

Big Data

기본적으로 Neural network에서 사용하는 Data는 supervised learning의 데이터이다.
따라서 정답이 존재하는 Data를 사용해야 한다.

정답이 있는 데이터를 모으기란 너무 어렵다.

흔이 쓰는 데크닉이 크라우드 소싱이다.
캡차 같은것이 그것이다.

semi-supervised learning
클러스터링 한다음 그다음 지도학습

스타트업에서의 Deep learning을 하기 위한것

데이터가 적은 상황에서의 딥러닝
일단 만들고 beta 서비스를 통해서 데이터를 모아야한다.

Transfer learning
지식의 전이

데이터를 공유한다.
한국어 학습 데이터를
일본어 학습 데이터로 활용 한다.

비슷한 도메인을 재활용 한다.

Speed (hardware)

모든 weight가 다 필요하지는 않다.

차원의 감소를 수행 한다.

다 필요하지만, 모든것이 필요하지는 않다 항상

GPU, CuNet (Nvidia)에서 개발됨
딮러닝이 될 수 있다.
몇줄만 써도 할 수 있다.
툴로써는 쓰기 쉽게 되어있다.

Deep Learning이 최종 솔루션인가?

이제 시작이다.
아직 인간의 뉴런갯수와 비교하면 한참 멀었다.

하지만 좋은것은 이제 시작인것에도 불구하고 성능이 다른 Machine Learning 알고리즘들을 압도하고 있다.

Deep Mind

https://www.youtube.com/watch?v=EfGD2qveGdQ

nature letter. Human-level control through deep reinforcement learning
해당 논문은 Deep neural network과 reinforcement learning algorithm을 적용함.

2014년 1월에 650만 달러에 구글에 DeepMind는 인수 합병댐

Deep Learning 자료

쉽게 풀어쓴 딥 러닝의 모든 것
http://slownews.kr/41461

구글 - Deep mind 인수
페이스북 - 뉴욕대학 얀 러쿤(Yann LeCun) 교수
바이두 - 스탠포드 앤드류 응(Andrew Ng) 교수

캐나다 토론도 대학: 제프리 힌튼 (Geoffrey Hinton) 교수 (Deep Learning의 1등 공신)

Andrew Ng (사이트)
http://ufldl.stanford.edu/wiki/index.php/UFLDL_Tutorial

Deep Learning (python site)
http://deeplearning.net/

머신러닝 기초 정리잘된 블로그
http://www.whydsp.org/237

관련기사 스크랩

인공지능과 딥러닝 8-1: 사람의 뇌에 '구글'을 이식하다
일자리 둘러싼 인간과 컴퓨터의 생존경쟁
인공지능과 딥러닝 빅데이터 안고 부활하다.

MOOC 자료

Google Launches Deep Learning with TensorFlow MOOC (Udacity)
Udacity 강의
해당 강의는

강사는 Vincent Vanhoucke로 Google’s deep learning infrastructure team 팀의 책임연구원이다.
박사학위를 스탠포드에서 받았다.
이력: http://research.google.com/pubs/VincentVanhoucke.html

Google Research Blog 공식 발표:
http://googleresearch.blogspot.kr/2016/01/teach-yourself-deep-learning-with.html

With interest in both deep learning and TensorFlow reaching remarkable heights, Google has just announced a new Deep Learning Course developed in partnership with Udacity.

The course is made up of four lectures, covering the following:

  • Lecture 1 - Focuses on machine learning basics, including setting up data and experiments, and training simple classification models.

  • Lecture 2 - Builds on the fundamentals, exploring how to make models deeper, and exploring scalability issues such as hyperparameter tuning and regularization.

  • Lecture 3 - All about convolutional networks and image recognition.

  • Lecture 4 - Explores models for text and sequences in general, with embeddings and recurrent neural networks.


'Data Science > Theory' 카테고리의 다른 글

Anomaly Detection  (0) 2015.06.07
Unsupervised Learning: Cluster Analysis  (3) 2015.06.03
Deep Learning  (0) 2015.06.03
Association Analysis Basic Concepts and Algorithms  (0) 2015.04.27
Bayesian Classifiers  (0) 2015.04.23
K Nearest Neighbors - Classification  (0) 2015.04.23

+ Recent posts