Yoshua Bengio 교수님의 Deep Learning 책이 드디어 도착했습니다.(2주동안이나 기다렸다...) 
이 글에서는 책을 읽으면서 내가 이해하고싶은데로 이해하는 내용을 정리해보도록 합니다. ( 영어가 매우 부족한 관계로 내용은 반만 믿으시길 바랍니다..)


이 책에서는 목차로는 20 Chapter가 존재하며

1) Introduction

1. Applied Math and Machine Learning Basics

2) Linear Algebra

3) Probability and Information Theory

4) Numerical Computation

5) Machine Learning Basics

2. Deep Networks : Modern Practices

6) Deep Feedforward Networks

7) Regularization for Deep Learning

8) Optimization for Training Deep Models

9) Convolutional Networks

10) Sequence Modeling : Recurrent and Recursive Nets

11) Practical Methodology

12) Applications

3. Deep Learning Research

13) Linear Factor Models

14) Autoencoders

15) Representation Learning

16) Structured Probabilistic Models for Deep Learning

17) Monte Carlo Methods

18) Confronting the Partition Function

19) Approximate Inference

20) Deep Generative Models


이러한 형식으로 진행이 되어집니다.

1장에서는  딥러닝에 필요한 수학과 머신러닝의 기초에 대해 1~5Chapter동안 설명하며,
2장에서는 Deep Learning 의 기초를 설명하기위해 
Deep Learning 의 기초인 Feedforward Networks 에서부터 Trainning 방법 이미지 특징 추출 최적화 네트워크인 Convolutional NeuralNetwork와 시간의 순서에 따른 처리의 최적된 Recurrent neural network순으로 진행합니다.

3장에서는 Deep Learning 관련 실험들에 대해 설명하는것 같습니다. ( 이부분은 저도 봐야 알것같습니다.)


이 책의 참조사이트 주소 : www.deeplearningbook.org

다양한 자료와 강의용 Slide 도 제공합니다. 


딥러닝으로 부르게 된 이유 

 복잡한 문제를 계층적으로 표현하여 간단하게 표현한 그래프를 위에서부터 아래로 그래프는 깊어지며 많은 레이어를 보유하게 된다. 이러한 이유로 

AI Deep Learning 이라 부르게 되었습니다.


지식 기반의 학습

 딥러닝의 나오기 이전부터 IBM의 딥블루는 체스세계챔피언을 이길수 있는 역량을 이미 가지고 있었습니다. 논리적인 약속에 기반해 하드코딩하여 구석하는 인공지능을 지식기반의 학습이라 합니다.


머신러닝

 이러한 지식기반의 학습의 직면한 문제점은 하드코드된 시스템이기 때문에 AI System을 구석하기 위해서는 그들의 보유한 지식의 패턴을 추출해야할 필요가 있었습니다. 이러한 과정을 기계에게 맡겨 기계가 데이터의 패턴속에서 특징을 추출하는 것을 머신러닝이라 부르게 됩니다.

기본적으로 머신러닝 알고리즘으로는 Logistic regression이 존재하는데 결정을 하는데 도움을 줄 수 있으며, Naive Bayes 알고리즘은 Spam 이메일을 분리하는데 쓰이기도 합니다. 


이러한 머신러닝을 이용하여 뭘 할 수 있을까

Feature를 추출하여 할 수 있는 작업의 예

사진속에서 자동차인지 찾기 ( 자동차의 바퀴, 전조등 )





                                                  

Posted by MIDDLE
,

A Step by Step Backpropagation Example

참조 : https://mattmazur.com/2015/03/17/a-step-by-step-backpropagation-example/


1. Backpropagation의 배경

Backpropagation은 뉴럴 네트워크를 학습시키기 위한 가장 일반적인 방법이다.

이 글에서는 이것이 어떻게 작동되어지는지 Backpropagation이 정확히 이해해보자.

2. Backpropagation Python Code
Python Script를 다운로드 받고 어떻게 구현하였는지에대해 설명이 적혀있다.

3. Backpropagation 시각화
Backpropagation이 어떠한 원리로 작동하는지에 대해 시각화를 제공한다. Neral Network visualization
각 논리 게이트의 종류에 따른 학습의 진행을 확인 가능하다.

4. 추가 정보
이 예제에서 유용한점을 찾게된다면 계속해서 뉴럴 네트워크 학습을 너희들의 어플리케이션에 사용가능하고, Adrian Rosebrock의 Deep Learning 과 python을 추천한다는데.. 어려워보이내

5.미리 보기
이번 튜토리얼에서는 2개 입력값, 2개 hidden layor, 2개 출력값.
추가적으로 hidden layor와 output은 bias 추가하여 계산한다. 

Here’s the basic structure:

neural_network (7)

6. 


Posted by MIDDLE
,

CS231n : Neural Networks Part 2: Setting up the Data and the Loss (한국어 번역)

http://ishuca.tistory.com/382


fundamental of Machine Learning

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



gaussian process regression 찾아보기


머신러닝은 두가지종류

parametic (1차함수일거야 2차함수일거야 예측)

nonparametic(모형 예측 없이)

parametic하다보면 너무 복잡해짐을 줄이기 위해 regularization 한다.

팁은 데이터를 한번에 학습 시키는것이 아니라 일부를 떼서 먼저 학습시키고지속적으로 valid체크후 계속 학습


Nonparametic 에서는 SVM(Support Vector Machine)2차함수에서는 도저히 이데이터가 왜 이형태인지알수없지만 몇가지 Feature가 추가될때그함수가 이해가 될수 있다. 와 GPR(Gaussian process regression)에 대해 배웠다.


그리고 최종적으로는 demension reduction에 대해 배웠다.


PCA(principal component analysis)

여러 디멘션의 값들을 가장 빈도가높은 쪽으로 모아서 나타내 1차원형태로라도 보여준다는데 모르겠다.



칸아카데미의 선형대수 강의

https://www.khanacademy.org/math/linear-algebra/vectors_and_spaces

Posted by MIDDLE
,

기계 학습이란?

일반적으로 기계학습은 컴퓨터가 경험, 예, 유추를 통해 학습할 수 있게 하는 적응 메커니즘과 관련이 있다. 학습 능력은 시간이 흐르면서 지능형 시스템의 성능을 개선한다. 기계 학습 메커니즘은 적응형 시스템의 기초로 형성한다. 기계학습에서 가장 많이 알려진 접근법은 인공 신경망(artificial neural network)과 유전 알고리즘(genetic algorithm)이다. 이 장에서는 신경망에만 집중한다.


신경망이란 무엇인가?

신경망은 인간의 뇌를 기반으로 한 추론 모델로 정의할 수 있다. 인간의 뇌는 조밀하게 서로 연결된 신경세포의 집합으로 이루어져있는데, 이 신경세포는 뉴런(neuron)이라는 기본적인 정보 처리 단위이다. 인간의 뇌는 100억개의 뉴런과 각 뉴런을 연결하는 6조개의 연결부위, 즉 시냅스(synapse)의 집합체다. 여러개의 뉴런을 동시에 사용함으로써 인간의 뇌는 현존하는 어떤 컴퓨터보다 빠르게 그 기능을 수행할 수 있다.

복잡한 전기 화학 반응은 신호를 한쪽 뉴런에서 다른쪽 ㄴ런으로 전파한다. 시냅스에서 나온 화학물질은 세포체의 전위에 변화를 일으킨다. 전위가 임계치(threshold 또는 임계값(threshold value))에 이르면 전기 파동인 활동 전위(action potential)가 축색 돌기를 통해 내려 보내진다. 그 파동은 퍼져나가다가 마침내 시냅스에 도달하고, 시냅스의 전위를 증가시키거나 감소시킨다. 그러나 가장 흥미로운 발견은 신경망이 적응성을 나타낸다는점이다. 뉴런들 사이의 연결강도는 자극패턴에 반응하여 장기적인 변화를 나타낸다. 또한 뉴런은 다른 뉴런과 새롭게 연결할 수 있다. 어떤 때는 뉴런의 집합체가 이쪽에서 저쪽으로 통채로 이동할 수도 있다. 이러한 메커니즘은 인간의 뇌에서 일나는 학습의 기초를 형성한다.


인간의 뇌는 매우 복잡하고, 비선형적이며, 변렬적인 정보 처리 시스템으로 생각할 수 잇다. 정보는 신경망의 특정위치가 아니라 신경망 전체에 동시에 저장되고 처리된다. 즉 신경망에서는 데이터 저장과 처리가 일부지역이 아니라 전체에 이루어진다.


적응성에 따라 잘못된 답으로 이끄는 뉴런들 사이의 연결은 약화되는 반면, 올바른 답으로 이끄는 연결은 강화된다. 그 결과, 신경망에 경험을 통한 학습 능력이 생긴다.


생물학적인 신경망에서 학습은 기초적이고 필수적인 특성이다. 쉽고 자연스러운 학습 방법 때문에 컴퓨터도 생물학적인 신경망을 모방하도록 학습할 수 있다.


오늘날의 인공 신경망(ANN, Artificial Neural Network)이 인간의 뇌를 흉내낸 정도가 비록 종이비행기로 초음속 항공기를 흉내낸 수준에 불과하다 해도 이는 크게 진일보한 것이다. ANN에는 '학습' 능력이 있다. 즉 성능을 개선하는 데 경험을 활용한다. 표본이 충분히 주어지면 ANN은 아직 발견하지 못한 사실을 일반화할 수 있다.  손을 쓴 글씨를 인식할 수 있고, 인간의 대화에서 단어를 판별해낼 수 있으며, 공항의 폭발물을 탐지할 수 있다. 또한 ANN은 전문가가 인식해내지 못한 패턴을 찾아낼 수도 있다. 예를들어, 체이스 맨하탄 은행에서는 도난당한 신용카드들의 사용내역을 검사하기위해 인공신경망을 사용했으며, 가장 의심스러운 매출이 $40~$80 정도의 여성구두라는 점을 발견해냈다.


인공신경망은 뇌를 어떻게 모델링 하는가?

인공신경망은 뉴런이라고 하는 아주 단순하지만 내부적으로 매우 복잡하게 연결된 여러 프로세서로 이루어져 있다. 이는 생물학적인 뇌의 뉴런과 유사하다. 뉴런은 이쪽뉴런에서 저쪽뉴런으로 신호가 지나가는 가중치가 있는 링크들로 연결되어 있다. 각각의 뉴런에서 저쪽 뉴런으로 신호가 지나가는 가중치가 있는 링크들로 연결되어 있다. 각각의 뉴런은 연결을 통해 여러 입력 신호를 받지만, 출력 신호는 오직 하나만 만든다. 출력신호는 뉴런에서 나가는 연결( 생물학적으로는 축색돌기에 해당을 통해 전달 된다. 나가는 연결은 같은 신호를 전달하는 여러가지 순서대로 퍼져나간다.( 신호하나가 가지들 사이에서 나뉘지않는다.) 나가는 가지들은 신경망 내 다른 뉴런의 입력과 연결된다. 


인공 신경망은 어떻게 '학습'하는가?

뉴런은 링크(link)로 연결되어 있고, 각 링크에는 그와 연관된 수치적인 가중치(numercial weight)가 있다. 가중치는 ANN에서 장기 기억을 위한 기본적인 수단으로, 각 뉴런 입력 강도, 즉 중요도를 표현한다. 신경망은 가중치를 반복적으로 조정하여 학습한다.




Posted by MIDDLE
,

지금까지의이야기는 인공지능, 특히 특징표현 학습에 기인한 기술의 발전을 기초로 생각한 5년에서 20년정도의 기간의 사회변화에 대해서였다. 그렇다면 인공지능을 통해 앞으로 새로운 사업을 만들어 낼 수는 없는것일까?

표는 미국불룸버그 애널리스트가 최근 세계의인공지능벤처를 정리한 자료이다. 약 2000개 회사를 조사해서 만든자료인데 이것을보면 인공지능에 관한 새로운 사업의 시도가 다양한영역으로 확대되어 가고있는것을알 수 있다.

서두에서 다룬바와 같이 현재 인공지능은 붐의 시대를 맞이하고 붐이 되고 있다. 인공지능과 관련된 사업은 미국에서도 아주빠르게 늘어나고 있지만, 필자가 나름대로 검토한 결과 급격하게성장하는 사업은 똑바로 일어서지 않을지도 몰라서 신중한편이 좋다.


코어 테크놀로지는 기계학습자체를 제공하는 비즈니스이다. 이미지 인식과 음성인식은 특징표현 학습이 가장 앞서 진행되고 있는 기술 분야이므로 그2개의 분야도 거론되고 있다. 툴이나 API 의 형태로 제공되는것이 많다. 하지만 비즈니스 확대로는 어려울지도 모른다. 왜냐하면 기계학습의 알고리즘은 학술커뮤니티가 앞서고 있어서 기업이 그규범을 뒤집어 고유한 기계학습의 기술을 실용화 하고 강한 경쟁력을 가진다는것은 생각하기 어렵고, 그것을 툴로써 제공한 곳에서 사용할 수 있는 기업도 많지 않다. 또 인재를 획득하려 해도 이미 높은 수준의 기계학습의 지식이나 기능을 가진 연구자와 기술자의몸값은 급등하고 있다. 


두번째표는 기업내의 활동을 한번더생각하자 라는 사업으로 영업, 보안, 인사, 마케팅등이 나열되어 있다. 이미 많은 기업이 참여하고 있는중이며 그들 기업이 조금씩 인공지능을 사용한 제품을 제공해가는 형태로 진화해 갈것이다.


세번째표는 각 산업을 한번더 생각하자이다. 많은 산업분야에서 조금씩 빅데이터 활용이 진행된 후 인공지능의 활용도 시작될 것이다. 그러나 인공지능의 활용 그자체가 경쟁에서 결정적 우위에연결되는 일은 적고 고객에 제공하는 제공 하는 상품 서비스의 부가가치 구축, 조직의 구축, 거래처와의 관계 구출, 사업의 오퍼레이션 효율화 같은 요소가 중요한 포인트를 차지하는 것에는 변함이 없을 것이다. 예를들어 인공지능을 사용하면, 고객 대응할때 고객 한사람 한사람 따라서 섬세하고 치밀하게 바꾸어 가는것도 가능하지만, 이러한 변화는 정보시스템 혹은 데이터 분석시스템을 제공하는 기업이 서서히 인공지능을 이용한 서비스를 제공함으로 실현된다고 생각한다. 혹은 정보 시스템보다도 더 경영에 가까운 곳에서 빅데이터의 분석, 그위에 인공지능과 발전해나가는 컨설팅 비즈니스도 충분히 있을수있다.


네번째로 인간과 인간 인간과 기계의 상호작용을 생각하자라는 그룹이다. 


다섯번째는 인고지능을 보조하는 기술로는 예를들면 데이터의 사전처리를 하는 기술제공, 데이터를 모으는 기술 제공등으로 이른바 골드러시 시대에 청바지를파는것과 같은 기술이다. 이중에서 우릭 가장이해하기 쉽고 변화가 급속도로 일어나는 분야는 바로 각 산업을 한번더 생각하자이다. 그룹안의 이료 법무 재무일것이다.

전문가를 대체하는 경제적인 장점이 많고 많은 사람이 그 서비스를 잠재적으로 필요로 하고 있기 때문이다. 각각의 전문 분야에 대해서 대답해주는 IBM의 왓슨과 같은 시스템이 완성도 높은 형태로 마켓에 투입되면 단숨에 실용단계로 오를 가능성이 있다. 그때는 기존의 업계구조를 크게 변화시켜버릴지도 모른다.




지식의 전이 사진 올리기




'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

유용한 사이트  (0) 2016.04.11
인공지능 신경망  (0) 2016.02.24
차근차근 확장되는 인공지능의 영향  (0) 2016.01.24
딥러닝과 산업효과  (0) 2016.01.24
딥러닝에서의 기술발전  (0) 2016.01.22
Posted by MIDDLE
,

물론 이러한 변화가 하루아침에 일어나는 것은 아닌다. 먼저 연구개발이 선행되고 처음에는 어떤일이 가능하게 되었다는 뉴스가 세상에 퍼지고, 이어서 조금 늦게 비즈니스로 전개되는 것이다.

예를 들어 인공지능에 의한 방범과 가미로 카메라에 비치는 개인을 식별할 수 있게 될지도 모른다. 이미 일부는 실현되고 있지만 방범은 사회적인 의견일치를 보기쉬우므로 먼저 기업이 그것을 도입하고, 학교도 도입하는 형태로 방범카메라에 의한감시 네트워크가 완성되어 갈가능성은 충분히 있다. 이러한 감시 네트워크와 과거 범죄 이력의 데이터베이스가 세트가 되면 범죄예방도 될것이고, 범죄가 일어났을때 범인 체포와 연결될 수 있는 정보를 가져올 가능성이 높아지며 치안도 좋아 질것이다.

하지만 편리성이 늘어나는 반면에 작정하면 얼마든지 개인의 행동이력을 더듬에 찾아낼수있기 때문에 프라이버시와의 균형문제도 생길것이다.



'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

인공지능 신경망  (0) 2016.02.24
인공지능이 낳은 신규 사업  (0) 2016.01.24
딥러닝과 산업효과  (0) 2016.01.24
딥러닝에서의 기술발전  (0) 2016.01.22
딥러닝 다계층  (0) 2016.01.22
Posted by MIDDLE
,

산업에 미치는 파급 효과

제 3차 AI붐을 맞이하는 인공지능은 앞으로 우리들의 생활에어떤 영향을 초래하게 될 것인가?

다음 페이지의 그림은 딥러닝 이후의 인공지능 발달과 그로인해 영향받는 산업을 정리한 미래 예상도이다. 그림에서 1부터 6은 전 글에 실려있다.

주의 해야할것은 시간축이다. 기술의 진전은 산업에서 응용하거나 사회에서 실제로 사용될 때까지 상당한 시간이 걸리는 경우도 있다. 어디까지나 이정도의 스피드로 진행되어도 이상하지 않을 것이다. 라는 의미로 시간축을 적용시켜 본 것이다. 지금까지 인공지능의 기술에 관한 예상이 어느시대에서나 빗나갔고, 지나치게 빨리 잡아 맞지 않았던적도 있었다는 것을 명심하자.


기술의 발전과 사회에 미치는 영향 그림 올리기


1. 광고, 이미지 진단, 인터넷 기업

딥러닝으로 인해 화상인식의 정밀도가 향상하면서 종래의 미디어에 적합한 획일적인 광고로부터 개인의 취미와 기호에 따른 타켓팅 광고가 일반화 될것이다. 또 X-레이나 CT등 이미지를 바탕으로한 진단을 자동으로 내릴 수 있게된다.

더욱이 기계학습을 활용하고 있는 검색, 소셜 네트워크등의 인터넷 업계가 가장 먼저 영향을 받는다. 실제로 지금 현재 우리들이 경험하고 있는것이다.


2.퍼스널 로봇, 방법(경비 회사+ 경찰) , 빅데이터 활용기업

앞으로 수년안에 음성이나 감촉등 멀티모달한 인신 정밀도가 극적으로 향상할 것이라고 예상된다. 그렇게 되면 소프트뱅크가 2014년에 발표한사람형 로봇 페퍼와 같이 인간의 감정을 인식해서 정형된 커뮤니케이션을 하거나, 점포내에서 손님을 접대하는 로봇이 보급될 가능성도 있다.

또 동영상 인식의 정밀도가 향상되면서 양질의 방범 카메라가 장착된 방법 시스템의 구축으로 범죄 검거율이 향살될지도 모른다. 다양한 빅데이터의 특성에 맞추고 특징이 잘생성되는것도 이 단계이다. 따라서 최근 빅데이터 활용을 진척시키고 있는 각 기업이 더욱 경쟁력을 확대해 갈 것이다.


3. 자동차 메이커, 교통, 물류, 농업

주위를 관찰하는 것뿐이었던 인공지능이 자신의 행위 결과가 주위에 어떤 영향을미칠지 인식할 수 있게 되면 로봇의 계획의 정밀도가 오르게된다. 예를 들면 현재 구글이앞서서 테스트를 되풀이 하고있는 자율주행 기술이 실용화 되면 상품을 소비자에게 보내는 라스트 1마일(물류센터와 소비자를 맺는 최후의 구간)은 어쩌면 무인 헬리콥터의 드론이 짊어지고 있을지도 모른다.

농업의 자동화를 비롯해서 주로 신체를 움직이는 노동분야에서 인간 대신 일하는 로봇이 보급되는 것도 이쯤일것이다. 인간 대신 일하는 로봇이 보급되는 것도 이때쯤일 것이다. 인간이 어떠한 판단을 담당하고 컨트롤하는 분야이다.

기존의 제1차 AI붐으로 인해 실행된 계획이 아니고 특징표현 학습이 갖추어진 계획에서는 다양한 환경에서 범용적으로 사용가능한 환경의 변화에도 대응할 수 있는 예외에 강한 등등의 특징이 있을것이다.


4. 가사, 의료.간병, 접수.콜 센터

행동에 근거하는 추상화가 가능하게되면 어떤 일이 벌어질까?

예를 들어 로봇이 인간은 손을 강하게 쥐면 아픔을 느낀다 라는것을 이해하고 아프지 않도록 손을 잡거나, 상처를 입히지 않도록 하는 등 인간밖에 할 수 없었던 섬세한 행동을 할 수 있게 된다. 그 결과 물류나 농업등 지금까지 물건만을 대상으로 해온 로봇의 활동 범위가 대인적인 서비스로 넓어질 수 있다. 예를 들면 가사, 의료.간병등의 분야로 진출 할 수 있다. 또, 어떤 표현을 하면 상대가 기뻐 한다는 것을 알게되면 감정을 컨트롤하는 대응도 할 수 있게 된다. 그렇게 되면 인공지능이 접수나 콜 센터 업무를 하는 것도 가능해질지 모른다.


5. 통역. 번역, 글로벌화

인류가 가지고 있는 개념의 상당한부분을 획득한 인공지능은 각각의 개념에어울리는 언어를 할당하면서 그 언어를 이해하게 된다. 시리와 같은 음성대화 시스템도 인간이 준비한 기술에 근거해서 대답하는 것이 아니고 인공지능이 외부세계를 시뮬레이트 하면서 생각한 후 대답할 수 있게된다.

동시에 기계번역도 실용적인 수준에 도달하기 위해서 번역이나 외국어 학습이라는 행위 그자체가 없어질지도 모른다. 자신이 이야기 한것, 쓴것이 순차적으로 영어와 중국어로 번역된다면 일부러 시간을 들여서 외국어를 배울 필요가 없어질 것이다. 언어의 벽이 사라지면 더욱 수준이 높은 비즈니스 글로벌화가 진행 될것이다. 예를 들어 현재 국내 대상으로 물품을 판매하고 있는 EC사이트의 해외진출이 당연해질 수있다.


6. 교육, 비서, 화이트 칼라 지원

인간의 언어를 이해하게 되면 인류가 과거에축적해온 지식을 인공지능에 흡수 시킬수 있다. 그결과 인공지능의 활동범위가 인간의 지적 노동 분야로 확대될것이다. 교육분야 에서도 초등교육이나 수험등 정해진 단계외에 필요에따라 인공지능이 지식을 익힌후 가르쳐주는것도 가능할 수 있다 또 임기 응변 상황을판단하고 필요할때에는 학습해서 대응하는 비서 업무나 화이트칼라 전반의 지원도 가능하다. 2030년 이후에는 이러한 일들이 실현될수도있다.



'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

인공지능이 낳은 신규 사업  (0) 2016.01.24
차근차근 확장되는 인공지능의 영향  (0) 2016.01.24
딥러닝에서의 기술발전  (0) 2016.01.22
딥러닝 다계층  (0) 2016.01.22
딥러닝  (0) 2016.01.22
Posted by MIDDLE
,

1. 이미지 특징의 추상화가 가능한 AI -> 2. 멀티 모달한 추상화 가능한 AI

이미지를보고 특징을 추출해서 분별한다는 것은 인간의 시각에 가깝지만 인간은청각이나 촉각과 같은 감각기도 가지고있다. 예를들면 소리에는색이나형태가 없듯이 본래 시각과 청각은 데이터의 종류가 완전히 다른것이다. 뇌가 재미있는것은 이러한 데이터의 종류에 의존하지 않고 같은 처리 기구에서 처리가 이뤄지고 있다는 점이다. 딥러닝에서도 동일하게 다양한데이터에 대하여 같은 방법을 적용할 수 있을 것이다. (혹은 그렇게 개량될 필요가있다.)

그경우에 큰것은 먼저 시간을 다루는것, 즉 이미지로 말하면 동영상이다. 동영상으로도 한장 한장의 플립북같은이미지에낱개 처리로 할수있지만 그것은 본질적인 방식이 아니다. 시간을 두고 대국적인 문맥을 이해할 필요가 있고, 특히 시간의 취급은 의외로 어렵다. 그리고 시각뿐만 아니라 음성이나 촉가등 이미지 이외의 정보를 받아들이는 것으로 멀티 모달한 추상화가 가능하게 될것이다.

예를 들면 만지는 감각이라는것은 압력센서의 시계열 변화이다. 인간이 고양이의 움직임, 울음소리, 닿는 느낌등 다양한 정보를 조합시켜서 고양이라고 인식하는것을 컴퓨터가 처리할 수 있도록 해야 한다.


3. 행동과 결과가의 추상화가 가능한 AI

다음에 필요한 것은 컴퓨터 스스로 행위와 그결과를 합쳐서 추상화 하는것이다. 인간의 뇌에서 보면 자기 자신의 신체가 움직이고 그결과 무엇인가 눈에 들어오는 것에 변화가 일어나지만 뇌의 일부에서 들어오는 데이터라는의미에서는 동일하다. 그런데 인간은 생물이므로 자신이 명령을 내렸기 때문에 신체가 움지깅고, 그것에 의해서 눈으로 보이는것이 변화 되었다라는 데이터가 들어오는것인지, 그렇지 않으면 신체는 움직이지 않는데 눈으로 보이는 것이 바뀐것인지 구별할 필요가 있다. 즉 문을 열었기 때문에 문이 열린것인지, 제멋대로 문이 열린것인지는 인간의 생존에 있어서 대단히 중요한 차이다. 어딘가에 적이 숨어있을지 모르기 때문이다.

인간은 자신을 둘러싼 환경에서 다양한 정보를 읽어내고 있지만, 단지 가만히 앉아서 관찰을 계속하는것이 아니다. 아기때 물건을 움켜쥐거나 장래를 약속하거나 여러가지 일을 하고이다. 그안에서 물건을 움직인다. 물건을 누른다라는 개념을 획득해간다.

이렇게해서 자신의 행동과 결과를 세트로 추상화시키는 것의 메리트는 먼저 의자를 움직이고, 그위에서 올라가고, 높은곳에 있는 바나나를 가져가자라는것과 행동 계획이 세워지는것이다.

1과 2에서는 인공지능이 외부세계에 있는것을 관찰하고 있을뿐이었다. 3에서는 자신도 그안에 억지로 들어가고 외부세계와 상호작용을하면서 관계성을 배우게 된다. 이단계에서 네비게이션이나 외부세계의 시뮬레이션혹은 보다 일화 한것으로 사고라는 프로세스가 필요하게 될것이다.


4.행동을 통한 특징을 획드하는 AI

계속해서 그러한 행동을 할 수 있게 되면행동한결과에 대해서도 추상화가 진행된다. 사실 외부세계와의 상호갖ㄱ요에 의한 동작개념 획득은 새로운 특징을 꺼내는데 있어서 중요하다. 

과거부터 필자가 사용하는 예가 있는데, 소수인가 아닌가 라는 특징을 어떻게 획득하면 좋을까라는 문제가 있다. 2는 소수, 3도 소수, 4는 소수가 아님, 5는 소수이다. 예를 들어 퍼즐게임으로 주인공이 가지는 아이템의 수가 소수라면 적을 쓰러뜨릴수 있거, 소수가 아니면 쓰러뜨릴수 없다는 상황이 있을때 아이템의 수가 소수일것인가 아닌가라는 특징을 만들수 있으면 이문제는 풀기 쉬워진다.

수학문제하면서 쉬운지 어려운지, 장기판을 보고 형세가 좋은지 나쁜지는 자신이 동작해본 결과에 반해서 자체 자신의 성질을 취하게 된다. 이러한 형용사적인 개념은 몇번을 해본뒤에야 획득가능한 추상적인 개념이다. 깨지기쉬운 컵이라고 하면 누르면 깨진다, 떨어뜨리면 같은 결과가 나올것이란것을 추상가능하다.

컴퓨터는 3. 의 학습을 진행할때 그러한 추상적인 개념도 배우게 된다. 한 묶음의 동작이 사물의 새로운 특징을 끌어내는데, 인간으로 말하면 '생각을 한후, 앗 하고 깨닫는다' 또는 하다보면 요령을 안다라는것과 같은 일이 발생한다.

일단 동작을 통한 특징을 얻을수 잇따면 다음부터는 본순간 깨지기 쉬운컵이기에 주의해서 취급하고, 부드러운 소파이기에 앉으면 어느정도 신체가 가라앉을것을 예측한다.


5. 언어이해. 자동번역이 가능한 AI
지금까지 살펴본 내용에서 우리들이 일상적으로 사용하는 개념은 거의 나왔다. 물론 이러한 인공지능이 존재하는 환경에서 가능하다. 인간정도의 신체를 가진 인공지능이라면 인간이만들어 내는 개념에 어느정도 가까운 것을 획득할 수 있을것이다. 그결과 컴퓨터는 스스로 언어를 획득하는 준비가 정돈된다. 먼저 개념을 획득할 수 있으면 뒤에 말을 결부시키는 것은 간단하기 때문이다. 고양이, 야옹하고 운다, 부드럽다 개념은 이미 각각되어 있기때문에 여기에 고양이 야옹하고운다. 부드럽다 결부시키면 그말과 그것이 의미하는 개념을 세트로 이해한다. 여기에서는 개념을 말과 결부시킬수 있는것이 중요하기때문에 그 말이 단어가 몇개인지는 문제되지않는다. 즉 어떤 개념에 영어 결부시키는것도, 일본어, 한국어 하는것도 노동력에서는 변함이 없다. 컴퓨터로 번역하는것이 생활에 충분히 활용되려면 이단계가 지나야한다. 기계번역이라는것은 친근한만큼이나 간단한 기술로 생각될지도 모르지만 상당히고도의 기술이다.


6. 지식획득이 가능한 AI
컴퓨터가 인간의 말을 이해할 수 있게 된다는 것은 컴퓨터안에 어떠한 시뮬레이터가 준비됭 인간의 문장을 읽으면 거기에 어떠한 정경을 재현할 수 있다는 것을 의미한다. 그렇게되면 컴퓨터도 책을 읽을수 있게된다, 다양한 소설을 읽은후 망원경으로 들여다보는것은 대체로 남자들이 많다는 것을 이해할지도 모른다. 또 위키피디아를 비롯한 방대한 웹정보도 읽을수 있게된다. 그정도에이르면 컴퓨터는 빠른기세로 지식을 습득할것이다. 


예전에는 인공지능에대한 벽이 느껴졌고 특징표현을 어떻게획득할까라는것이 최대관문이었고, 그산을 넘을수가 없었다. 그런데 지금 빅데이터와 기계학습사이에 작은길(딥러닝)인데이고을 빠져나가면 정말 비옥한 세계가 펼쳐질것이다. 그러나 인공지능이 긴정체의 시간을 넘어서 비로소 움직인것이다.

'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

차근차근 확장되는 인공지능의 영향  (0) 2016.01.24
딥러닝과 산업효과  (0) 2016.01.24
딥러닝 다계층  (0) 2016.01.22
딥러닝  (0) 2016.01.22
뉴럴 네트워크  (0) 2016.01.21
Posted by MIDDLE
,

출력과 입력을 될 수 있는한 가깝게 하기 위해서는 어떻게 하면 좋을까? 이에대한 답은 정보량을 사용하면 된다. 예를들어 어떤 화소가 흑일때 옆의 화소도 반드시 흑이라면 그 2개의 화소는 합쳐서 취급해버리면된다. 즉 2개의 화소를 따로따로 숫자로써 은닉층에 건네주는것이 아니고 그 2개의 숫자가 합쳐져서 흑인지 백인지를 은닉층에 건네주면 되는 것이다. 간토우 지방의 날씨는 비슷하기 때문에 하나로 정리해서 취급하라는것과 같다.


여기에서 어디를 합치면 결과에 영향을 주지 않을것인지, 반대로 어디를 취급하면 크게 다른 결과가 나올것인지, 컴퓨터는 압축포인트를 오차역전파를 통해 스스로 학습하게 된다. 즉 복원에러가 최소가 되는 적절한 특징표현을 발견하는것이다.


수학이나 통계에 익숙한 오토인코더를 할때에는 앙케이트 분석 등으로 익숙한 주성분 분석과 같다고 보면된다.

주성분 분석이란 많은 변수를 가장 큰분산을 나타내는 주성분을 축으로 압축하는 방법으로 마케팅 분야에서 자주 사용된다. 실제로 오토인코더에 선형 가중치를 이용하고 최소 자승오차를 복원에러의 함수로 하면 주성분 분석과 일치하는 결과를 얻을 수 있다.


오토인코더의 경우에는 다양한 형태로 노이즈를 주고 그것을 통해 아주 신뢰도 높은 주성분을 꺼낼 수 있다. 이것이 딥, 즉 다계층으로 하는것을 가능하게 하고 그결과 주성분 분석에서는 꺼낼수 없는 높은 차원인 특징을 꺼낼수 있다.


딥러닝에서는 위와같은 작업을 한단한단 포개 간다. 첫 번째 단의 은닉층을 두번째 단의 입력으로 컴퓨터가 컴퓨터에 학습시키는것이다. (end-to-end learning 이라고 부른다.)


계층 포개어 탐구하다. 이미지 올리기

'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

딥러닝과 산업효과  (0) 2016.01.24
딥러닝에서의 기술발전  (0) 2016.01.22
딥러닝  (0) 2016.01.22
뉴럴 네트워크  (0) 2016.01.21
기계 학습  (0) 2016.01.21
Posted by MIDDLE
,

2012년 세계적인 인식 컴피티션 대회에서 처음 출전한 토론토 대학에서 압도적인 점수로 우승하게 되었다.

이것은 오랜 세월 이미지 인식 연구를 진행시켜온 다른 연구자들을 혼란스럽게하였다.

그승리의 원인은 대학교수 제프리 힌톤이 중심이 되어서 개발한 새로운 기계학습 방법 딥러닝(심층 학습)이었다.

딥러닝의 연구자체는 2006년부터 시작되었지만, 그때까지 이미지 인식의 연구자들이 각자가 쌓아온 노하우와 전혀 다른 방식으로 접근하였고, 갑작스럽게 정상에 오른것이라서 충격이었다.

딥러닝이란 데이터를 바탕으로 컴퓨터가 스스로 특징을 만들어 낸다. 인간이 특징을 설계하는것이 아니고 컴퓨터가 스스로 높은 차원인 특징을 획득하고, 그것을 바탕으로 이미지를 분류할 수 있게 된다. 딥러닝으로 인해 지금까지 인간이 관여해야만 했던 영역에 인공지능이 깊이 파고들 수 있게된 것이다.


딥러닝을 인공지능 연구에있어서 50년간의 혁신이라고 칭하고 싶다. 좀더 정확하게는 앞에서 살펴본것과 같이 인공지능의 주요한 성과가 대부분 인공지능의 여명기, 즉 1956년 부터 최초의 10년 내지는 20년사이에 태어났다고 본다. 그 후 몇가지 큰 발명은 있었지만 발전 방향에 대해 마한다면 마이너 체인지 였다.

그러나 딥러닝에 대표되는 특징표현 학습은 여명기의 혁신적인 발명, 발견에 필적할 만한 대발명이다. 컴퓨터가 스스로 특징표현을 만들어 내는것은 그자체만으로 큰비약인것이다. 


사실대부분의 딥러닝이 딥뉴럴 네트워크를 의미하지만 그렇지 않은 경우도 있다. (예 딥가우시안프로세스

인간의 뇌는 겹친 구조를 하고있어서 뉴럴네트워크 연구 초기부터 깊은층 의 뉴럴네트워크를 만드는것을 당연한 시도로 생각했지만, 아무리 노력해도 잘되지 않았다.


층이 늘어날 수록 자유도는 올라가고, 뉴럴네트워크로 표현할 수 있는 함수의 종류는 층을 거듭하면 포갠만큼 늘어난다 여겼지만, 정작 해보면 그렇게 되지 않고. 정밀도가 오르지 않는것이다. 왜냐하면 깊은층에는 오차반대전파 (가중치 수정)가 아래쪽까지 도달하지 않기 때문이다.


그런데 딥러닝은 그 다층의 뉴럴네트워크를 실현했다. 어떻게 실현한것일까?

딥러닝이 종래 기계학습과 다른점이 크게 2가지가 있다. 하나는 한층씩 계층마다 학습해 가는점, 또하나는 오토 인코더라는 정보 압축기를 사용했다는 점이다.

오토 인코더에서는 조금 바뀐 처리를 하는데, 뉴럴 네트워크를 만들기 위해서는 정답을 주어서 학습시키는 학습페이즈가 필요하다.

예를들면 손으로쓴 3이라는 이미지를 보여주면 정답데이터로 3을 준다. 그런데 오토인코더에서는 출력과 입력을 같이한다. 다음의 그림에서 볼 수 있듯이 손글씨3의 이미지를 입력하고 같은 손글씨 3의 이미지로 서로 답하기를 하는것이다.

손글씨3의 이미지를 입력하고 이것이 3입니다 라고 가르치는 것이 아니고, 손글씨 3의 이미지를 입력하고 정답은 같은 손글씨 3의 이미지라고 가르치는 것이다. 

제프 호킨스의 그의 저서 생각하는 뇌 생각하는 컴퓨터(진짜 재미 보장)에서 이방식을 예상하고 있었다.

오토인코더 사진 올리기

'Artificial Intelligence > Deep Learning' 카테고리의 다른 글

딥러닝에서의 기술발전  (0) 2016.01.22
딥러닝 다계층  (0) 2016.01.22
뉴럴 네트워크  (0) 2016.01.21
기계 학습  (0) 2016.01.21
인공지능 발전 역사  (0) 2016.01.21
Posted by MIDDLE
,