관리자

인터넷에 neural network를 검색해보면 정말 수 많은 정의가 나온다.
NN을 처음 접하는 사람이라면 이해할 수 없을 것 같은 정의가 많다.
formal한/수학적인 정의를 따르기보단, 나의 언어로 풀어보려고 한다.

 

Neural Network(인공 신경망)

내 나름대로 정의해본 neural network는 아래와 같다.

인간의 뇌가 neuron들이 연결되어 작동하는 것처럼
컴퓨터도 neuron 단위로 연산을 하고, neuron을 연결해서 문제를 해결하는 머신 러닝 기법.

NN의 목표는 문제를 잘 해결하는(원하는 목적을 달성하는) 최적의 neuron 연결 구조와 weight(연결의 가중치)를 찾는 것이다.
여기서 neuron 사이의 연결 구조를 Neural Architecture라고 부른다. 흔히 말하는 모델이 neural architecture이다.
일반적으로는 neural architecture를 고정시킨 상태에서 학습을 통해 weight를 찾는다.
고정시킨다는 것은 프로그래머가 결정한다는 의미이고, 학습을 한다는 것은 data를 input으로 넣어 연산을 수행한다는 것이다.


Neural Architecture의 종류

많은 연구를 통해 다양한 neural architecture가 제시되었다.
각 분야별로 좋은 성능을 보이는 neural architecture가 있다.
대표적으로 image recognition, image processing에는 CNN를 사용하며,
natural language processing에는 RNN이 많이 이용된다.
많이 이용되고 좋은 성능을 보인 경우가 많은 것일 뿐, 절대적인 답은 아니다.

CNN과 RNN에 대해서는 다음에 자세히 다룰 것이다.


neural architecture는 프로그래머/연구자가 시행착오와 휴리스틱으로 결정하는 경우가 일반적이었으나,
최근에는 neural architecture조차 머신 러닝으로 해결하려는 시도가 이루어지고 있다.
이러한 연구 분야를 NAS(Neural Architecture Search)라고 한다.

학습 과정

1. 데이터 인코딩
주로 벡터 / 행렬로 인코딩 한다

2. 학습
-1) feedforward
-2) backpropagation

3. validation
4. model tuning

 

 

참고:
https://en.wikipedia.org/wiki/Artificial_neural_network

artificial intelligence

인공 지능. => 직역하면 기계가 생각하도록 하는 것.
formal definition은 

agent(에이전트. 행동하는 주체)가 환경을 인지하고 목표를 성공적으로 이루기 위해 스스로 판단하고 행동하는 것

 

여기서 중요한 것은, 환경을 인지하고 스스로 판단한다는 것이다.

machine learning

기계 학습. 여러 데이터를 통해 기계가 스스로 판단 기준을 만들어 나가는 것.

 

(artificial) neural network(ANN) 

인공 신경망.

인간의 뇌가 neuron들이 연결되어 작동하는 것처럼
컴퓨터도 neuron 단위로 연산을 하고, neuron을 연결해서 문제를 해결하는 머신 러닝 기법.
NN의 목표는 문제를 잘 해결하는(원하는 목적을 달성하는) 최적의 neuron 연결 구조와 weight를 찾는 것이다.
neuron을 어떻게 연결할지는 프로그래머가 결정하고, 연결된 neuron 사이의 weight를 데이터를 통해 학습힌다.
neuron을 연결하는 방식에 따라 deep neural network, convolutional neural network, residual neural network 등 다양한 인공신경망 구조가 있다.


인공 지능, 머신 러닝, 인공 신경망은 비슷해보이지만, 
인공 지능 > 머신 러닝 > 인공 신경망 의 관계를 갖는다.

인공 지능은 인지/판단을 통해 목적을 이루는 agent, 지능을 가리키는 말이고,
머신 러닝은 스스로 학습을 통해서 인공 지능을 갖도록 하는 것이며,
인공 신경망은 머신 러닝을 구현하는 기법 중 하나이다.


인공 지능의 연구 분야에는 knowledge reasoning. planning, machine learning, natural language processing 등이 있고,
머신 러닝의 기법에는 인공 신경망, support vector machine, decision tree 등이 있다.

https://en.wikipedia.org/wiki/Artificial_intelligence
https://en.wikipedia.org/wiki/Machine_learning
https://en.wikipedia.org/wiki/Artificial_neural_network

+ Recent posts