아키텍쳐는 단위 개수나 단위들의 연결 방식 등을 포괄하는, 신경망의 전반적인 구조를 뜻한다.
대부분의 신경ㅁ아은 층이라고 부르는 단위들의 묶음으로 조직화된다.
대부분의 신경망 아키텍처는 다수의 층을, 각 층이 그 이전 층의 함수로서 작용하는 형태의 사슬 구조로 조직화한다.
이러한 사슬 기반 아키텍처에서 신경망의 구조에 관한 주된 고려사항은 신경망의 깊이와 각 층의 너비를 선택하는 것이다.
은닉층이 하나만 있어도 충분하지만 층이 더 많은 신경망은 각 층의 단위와 매개변수가 훨신 적고 시험 집합으로 일반화되는 경우가 많지만 대신 최적화가 어려운 경향이 있다.
6.4.1 보편 근사 정리와 신경망의 깊이
특징들을 행렬 곱셈을 통해서 출력들에 사상하는 선형 모형은 선형 함수만 표현할 수 있다.
선형 모형은 훈련하기 쉽다는 장점이 있는데, 이는 많은 손실함수들이 선형 모형에 적용하면 볼록함수 최적화 문제가 되기 때문이다.
학습 시스템이 비선형 함수를 배워야 할 때가 많다.
은닉층이 있는 순방향 신경망은 하나의 보편적인 근사의 틀을 제공한다.
구체적으로 보편 근사 정리에 따르면, 선형 출력층이 있는 임의의 squashing 활성화 함수를 사용하는 은닉층이 적어도 하나는 있는 순방향 신경망은 한 유한 차원 공간을 다른 유한 차원 공간으로 사상하는 모든 보렐 가측함수를우리가 원하는 정확도로 근사할 수 있다.
또한, 순방향 신경망의 미분들은 해당 함수의 미분들을 임의의 정확도로 잘 근사할 수 있다.
신경망은 임의의 유한차원 이산 공간을 다른 유한차원 이산 공간으로 사상하는 임의의 함수도 근사할 수 있다.
근사 정리는 배우고자 하는 함수가 어떤 것이든 큰 MLP 로 그 함수를 표현할 수 있음을 뜻한다. 그러나 훈련 알고리즘이 그 함수를 학습할 수 있다는 보장은 없다.
MLP 가 함수를 표현할 수 있어도 그 함수를 배우지 못하는 이유는 두 가지
첫째로, 훈련에 쓰이는 최적화 알고리즘이 원하는 함수에 해당하는 매개변수 값들을 찾아내지 못할 수 있다.
둘째로, 과대적합 때문에 훈련 알고리즘이 엉뚱한 함수를 선택할 수도 있다.
보편적으로 우월한 기계 학습 알고리즘 같은 것은 없다. 순방향 신경망은 함수들을 표현하는 하나의 보편적인 체계를 제공한다. 이는 단지, 주어진 함수를 근사하는 하나의 순방향 신경망이 존재한다는 뜻일 뿐이다.
구체적인 견본들로 이뤄진 훈련 집합을 조사해서 그 훈련 집합에 존재하지 않는 점들로까지 일반화되는 함수를 선택하는 보편적인 절차는 없다.
보편 근사 정리에 따르면, 주어진 함수를 우리가 원한느 정확도로 근사하기에 충분한 크기의 신경망이 존재한다. 그러나 그러한 신경망이 얼마나 큰 지를 정리가 말해주지는 않는다.
정리하자면, 단층 순방향 신경망은 임의의 함수를 표현하기에 충분하지만, 그 층이 감당할 수 없을 정도로 크고 학습와 일반화가 제대로 일어나지 않을 가능성이 있다. 많은 경우 더 깊은 모형을 사용하면 원하는 함수를 표현하는 데 필요한 단위 개수가 줄어들고 일반화 오차의 양도 줄어든다.
깊이가 d 를 넘은 아키텍처를 이용해서 효율적으로 근사할 수 있는 함수들의 종류는 다양하지만, 만일 깊이를 d 이하로 제한한다면 모혀잉 훨씬 더 커야 한다.
많은 경우, 얕은 모형에 필요한 은닉 단위 개수는 n 의 거듭제곱 규모이다.
'심층 학습' 카테고리의 다른 글
7. 심층 학습을 위한 정칙화 (1) | 2023.06.08 |
---|---|
6.5 역전파와 기타 미분 알고리즘 (1) | 2023.06.08 |
6.3 은닉 단위 (0) | 2023.06.05 |
6.2 기울기 기반 학습 (0) | 2023.06.05 |
6.1 예제: XOR 의 학습 (0) | 2023.06.05 |