Machine learning 스터디 (18) Neural Network Introduction - README (2015)
http://sanghyukchun.github.io/74/
{
다루는내용대충요약, del ok
// Model of NN 문단
뉴런,neuron들이
노드,node이고
시냅스,synapse가
edge인
네트워크,network(
그래프,graph, esp
유향그래프,directed_graph)로 model할 수 있고... edge마다
가중값,weight이 있다. 그래서
정보전파,information_propagation가 한 방향으로 고정되어 있다. 만약 undirected edge라면 information propagation이 recursive하게 일어나서 복잡해진다 - 이것은 RNN recurrent_neural_network(curr at
신경망,neural_network#s-3)
여기선 가장 간단한 multi layer perceptron (MLP) { directed_simple_graph 구조이며, 같은 layer 안에서는 연결되지 않았다. 이 경우 information_propagation이 forward방향으로만 일어나므로 feedforward_network라고 부른다 } 만 다룬다
(암튼,) 일반적인 NN에서는 (다음 neuron의
활성화,activation여부를 판정??)
활성화함수,activation_function가 있으며... (skip)
// Inference via Neural Network 문단
그래서 그런 방식으로
추론,inference(sub:
분류,classification etc.)을 한다.
// Backpropagation Algorithm 문단
그렇다면
가중값,weight parameter를 어떻게 찾는가? 활성화함수가 nonlinear이고 layer들로 얽혀있어서 이건 non-convex optimization이다(opp.
볼록최적화,convex_optimization? chk) - 그래서 일반적으로 global_optimum을 찾는 것은 불가능하다. 보통
기울기하강,gradient_descent(curr at
기울기,gradient#s-1) 방법을 써서 적당한 값을 찾는다.
parameter를 update하기 위해
역전파,backpropagation(writing) algorithm을 주로 쓴다. 이건 NN에서
기울기하강,gradient_descent을
연쇄법칙,chain_rule을 써서 단순화시킨 것에 지나지 않는다. ... 마지막 decision_layer에서 (우리가 실제로 원하는) target output과 (현재 네트워크가 만든) estimated output끼리의
손실함수,loss_function를 계산하여 그 값을
최소화,minimization하는 방식을 쓴다.
... 이후
기울기하강,gradient_descent 등등 언급(skipped, or 해당페이지에 적음)
}