본문 바로가기

머신러닝/[단단한 머신러닝]

인공 신경망 / 로컬 미니멈

 인공 신경망과 로컬 미니멈에 대한 내용을 다루는 글들은 많으니, 기본적은 내용은 기록하지 않고, 제가 이 책을 읽으며 인상깊은 내용만 기록하였습니다.

신경망 구조, 그러니까 네트워크 구조를 설명할 때, Bias는 Threshold라고 표현되기도 한다.

Activation function, Response function, Squashing function은 유사한 의미를 지닌다.

Feed-forword는 단순히 뒤로 전달할 수 없다는 뜻이 아니라, 단지 네트워크 구조상에 순환이나 회로가 없다는 것을 의미한다. 

[Hornik et al. 1989]는 은닉 노드가 충분히 많다면, 활성 함수로 무엇을 사용하든 다층 순방향 신경망은 어떤 함수라도 원하는 정확도만큼 근사화할 수 있다는 것을 증명했다. 그러나 은닉층의 뉴런 개수를 어떻게 설정하느냐는 아직도 해결되지 않은 문제이다. - 이는 결국 수 많은 시행착오를 거쳐 도달할 수 있다.

로컬 미니멈 탈출 방법 - 전역 최적화 문제에 대한 처리 방법

1. 무식한 방법

- 다양한 파라미터를 활용해 다양한 네트워크를 학습시키면, 당연히 다양한 해가 나올텐데, 이 중 가장 낮은 에러를 갖는 네트워크를 채택하는 방법입니다.

2. 담금질 기법, Simulated annealing.

- 금속재료를 가열하고, 냉각하는 과정을 반복진행함으로써, 내부 결정을 성장시켜 질 좋은 결과를 얻어내는 과정에 영감을 받아, 담금질-이라는 용어를 사용합니다. 재료를 가열하고, 냉각하는 행위는 물체 내의 내부에너지를 키웠다 줄였다 하는 행위인데, 생각해보면 물체를 가열시키면 - 내부에너지가 상승하고 - 이는 안정되어있던(내부에너지가 극소점에 놓여있던) 원자의 위치가 변화하게 되는데, 우리는 이를 이용할 것. 네트워크가 로컬 미니멈에 빠지면, 일정한 확률로 현재보다 나쁜 해를 얻는 과정을 추가해줌으로써, 로컬 미니멈에서 탈출할 기회를 마련합니다.

3. 확률적 경사 하강법, Stochastic gradient descent

- 일반적인 경사 하강법과는 달리, 랜덤적 요소를 추가함으로써, 로컬 미니멈에서 탈출할 기회를 마련합니다.

4. 유전 알고리즘, Genetic algorithm

- 이전에 휴리스틱 알고리즘에 대해 설명하였습니다.. 간단히 말하면, 해결하기 어려운 문제에 - 확률 모형에 기반한 다양한 집단을 생성하고 - 조합과 변이를 통해 근사한 답을 찾는 알고리즘입니다.

다만 이 모든 것들은 휴리스틱한 알고리즘이라서 이론적으로 완전한 해를 찾는다는 보장은 없습니다.