최근 딥러닝에 관심을 가지게 되면서 공부를 하고있는 발자취를 남깁니다! 

처음 공부하시는 분들을 이렇게 따라가시면 좋을 것 같습니다.

1. 딥러닝 시작하기

https://www.youtube.com/playlist?list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm

: 홍콩 과기대 교수님 강의로써, 굉장히 짜임새 있게 구성된 강의입니다. 

: 머신러닝과, 딥러닝에 대한 역사적 흐름부터 배울 수 있고, 실제 코드를 구현해보는 것까지(NN,CNN,RNN...) 실습해볼수 있습니다.


2. 텐서플로우 시작하기

https://tensorflowkorea.gitbooks.io/tensorflow-kr/g3doc/get_started/basic_usage.html

: 딥러닝을 할 때 가장 많이 사용되어지는 프레임워크인 텐서플로우 한글 문서입니다.

: 한국 텐서플로우 사용자들이 모여 텐서플로우를 번역하고 있습니다.

: 최근에 등장한 API인 만큼 문서가 명료하고 간결하게 작성되어 보기 편하게 되어있습니다.


3. 추후 업데이트 하겠습니다.


Regression 모델

: 해당 모델을 학습한다는 것은 선형의 기울기를 찾는 것

: 세상의 많은 것들이 Linear하게 표현될 수 있기 때문에 의미가 있음.

1. 어떤 선이 가장 좋은가?를 찾아야함.

: 실제 데이터와 가설과의 거리를 계산한다. Cost Function(Loss Function)

: (H(x)-y)^2


:



아래 URL의 강의를 필기한 내용입니다.

https://www.youtube.com/watch?v=Hax03rCn3UI&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&index=4

시작과 XOR 문제

궁금적인 꿈 : 생각하는 기계

: 인간의 뉴런을 지켜보니 생각보다 너무 단순하다.

: 신호가 임계치를 넘지 못하면 활성화되지 않고 넘으면 활성화되는 단순함.

: 이걸 본 사람들이 기계적으로, 수학적으로 만들었다.- Activation Functions

AND / OR Problem : Linearly Separable?

: 문제가 선형적으로 구분할 수 있을 때에는 해결할 수 있어서 큰 가능성을 보았지만,

XOR Problem

: XOR과 같은 비 선형적 문제는 해결할 수 없음.

: XOR는 수학적을오 풀수없다라고 정의하고 MLP를 통해 해결할 수 있다고 주장. 하지만, 이때는 MLP를 학습시킬 수 없다고 주장하여 찬물을 끼얻음.(50년대)

: 그러나, Backpropagation (1974,1982 Paul Werbos 이때는 각광받지 못했지만, 1986 Hinton 다시 발표함으로써 주목받음) 이 개발되어 해결할 수 있게됨.

: Convolutional Neural Networks - Hubel&Wiesel(1959) 교수가 고양이가 그림을 볼 때 뇌가 부분적으로 작동한다는 것에 착안하여 그림을 쪼개어 점점 합쳐가는 식의 기법이 나옴.

: 그러나, Backpropagation 이 10개 이상의 MLP에서는 학습이 잘 안됨에 따라 문제점이 발생

: 또, SVM이나 RandomForest 와 같은  머신러닝 알고리즘이 다양하게 나옴에 따라 MLP는 찬바람을 맞게됨 

Back-propagation 과 2006/2007 '딥'의 출현

CIFAR

: 돈이 안되더라도 딥러닝에 대해 연구하라고 밀어준 단체

Breakthrough 

: 초기값을 잘 주면 MLP도 좋은 성능을 낼 수 있다.

: 이를 딥러닝으로 이름을 바꾸자

: 이 후 그림을 맞추는 문제에 대해 사람보다 더 낮은 오류를 보이게 되었다.

: 엄청난 발전을 이루게 되었다.

왜 지금 공부해야 하는가?

: 학생/연구자

: 지금도 세계적 전문가가 되기에 늦지 않았다.

: 수학적으로 너무 복잡하지는 않다.

: 실용자

: 충분히 실생활에 쓸 수 있다.

: 텐서플로우 같은 툴들이 많다.

: 파이썬같은 많은 간단한 프로그래밍 언어로 가능하다.




아래 URL을 필기한 내용입니다.

https://www.youtube.com/watch?v=n7DNueHGkqE&feature=youtu.be

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

1. 머신러닝

: 일종의 소프트웨어이자 프로그램이다.

: 스팸필터나 자동 주행 같이 너무 많은 규칙들이 필요한 프로그램들이 있다.

: 직접 프로그래밍하지말고, 직접 학습하여 작동하는 프로그램을 제안.

2. Supervised/Unsupervised Learning

: Supervised Learning

: 미리 정해진 데이터를 가지고 학습하는 것

: 미리 결과들을 알려줌

: 일반적인 문제를 다루기때문에 여기서는 Supervised Learning을 주로 다룬다

: 이미지 레이블링, 스팸메일...

: Training data set을 통해 학습 (특징과 레이블을 매칭해둔 데이터)

: 종류

: Regression - 점수를 예측하는 것

: Binary Classification - 두개중 하나로 분류하는 것

: Multi-Lable Classification - 여러 선택지 중 하나로 분류하는 것

: Unsupervised Learning : un-labled data

: 레이블이 없이 Grouping을 통해 해결


아래 URL의 필기 내용입니다.

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

1. 인공지능

* 지능

: 본능적이나 자동적으로 행동하는 대신에, 생각하고 이해하며 행동하는 능력

* 인공지능 (Artificial Intelligence)

: 인공적으로 만든 지능

: 튜링테스트

: 지능의 조작적 정의

- 조작적 정의 : 측정할 수 있는 조건으로 어떤 속성을 기술

: Alan Maithison Turing

: 학자마다 다른 정의가 있음.

* 강한 인공지능

: 사람과 같은 지능

: 마음을 가지고 사람처럼 느끼면서 지능적으로 행동하는 기계

: 추론, 문제해결, 판단, 계획, 의사소통, 자아, 의식, 감정, 지혜, 양심 등등..

: 튜링테스트

* 약한 인공지능

: 특정 문제를 해결하는 지능적 행동

: 사람의 지능적 행동을 흉내 낼 수 있는 수준

: 대부분의 인공지는 접근 방향

: 중국인 방 사고 실험

: 중국어로 된 질문지에 일정 메뉴얼에 따라 답변하는 것

: 사람이 하는 것처럼 흉내내는 것

2. 인공지능의 역사

1960년대 이전

: 애니악 개발, 매우 제한된 성공

: LISP 언어 개발

: Advice Taker : 공리 기반 지식 표현 및 추론

: Perceptron - 신경망 모델

: 수단-목표 분석 기법 

: 범용 문제해결을 목표로한 GPS 개발

: 현재 상태와 목표 상태의 차이를 계산하여 차이를 줄일 수 있는 조작자를 선택 적용하는 과정을 반복한다.

: 차이를 제거하는 과정임.

: 계획수립

1970년대에서 1980년대 초반

: 일반적인 방법 보다는 특정 문제 영역에 효과적인 방법을 찾는 연구

: 전문가 시스템

: 특정 영역 문제에 대해서는 전문가 수준으로 해답을 제공

: 상업적 성공 사례

: 전문가 시스템 개발도구 개발(추후 JESS 소개할 것임)

: Prolog 개발

초창기 전문가 시스템

: MYCIN - 전염성 혈액 질환 진단

: PROSPECTOR - 광물탐사 데이터 분석

: DENDRAL

1980년대 중반에서 1990년대

: 신경망 모델 발전

: 다중 퍼셉트론(MLP) : 신경망의 르네상스 - 2000년대 중반들어와서 딥러닝의 모습으로 다시 활성화됨

: 오차 역전파 알고리즘

: 퍼지이론

: 진화연산 : 유전자 알고리즘, 진화 프로그래밍

: 확률적 그래프 모델

: 베이지안 네트워크

: 마르코프 랜덤 필드

: 서포트 벡터 머신(SVM)

2000년대 이후

: 에이전트

: 시멘틱 웹 : 웹페이지를 보고 컴퓨터가 인식할 수 있도록 하는 것

: 기계학습

: 데이터 마이닝

: 심층학습 - 딥러닝 

: 상업적 성공사례 다수 출현

: 애플의 시리, 구글의 Now, MS Cortana, 자율주행 등등..

튜링 테스트 최초 통과 프로그램

: Eugene Goostman (2014.06)

인공지능 바둑 프로그램 알파고

: 구글 DeepMind 개발

: 기계학습과 병렬처리로 구현

3. 인공지능의 요소기술

탐색

: 문제의 답이 될 수 있는 것들의 집합을 공간으로 간주하고 문제에 대한 최적의 해를 찾기위해 공간을 체계적으로 찾아보는 것

: 무정보 탐색

: 너비우선 탐색, 깊이우선 탐색 등등..

: 휴리스틱 탐색

: A 알고리즘

: 게임트리 탐색

: 몬테카를로 탐색이 알파고가 사용했던 것



기계학습

: 지도학습

: 비지도학습

: 군집화

: 강화학습

: 기대보상이 최대가 되는 정책을 찾음



<KOCW 강의를 필기한 것입니다.>

URL : http://www.kocw.net/home/search/kemView.do?kemId=1170523

강의자료

1.pdf


+ Recent posts