머신 러닝 및 신경망 - 페이지 57

 

강의 9.6 — MacKay의 빠르고 더러운 방법



강의 9.6 — MacKay의 빠르고 더러운 방법 [머신 러닝을 위한 신경망]

이 비디오에서는 검증 세트에 의존하지 않고 신경망에서 가중치 페널티를 결정하기 위해 1990년대 David MacKay가 개발한 방법에 대해 설명합니다. MacKay의 접근 방식은 최대 사후(MAP) 추정으로서 가중치 페널티의 해석을 기반으로 하며, 여기서 가중치 페널티의 크기는 가중치에 대한 사전 분포의 견고성과 관련됩니다.

MacKay는 가중치 페널티와 가정된 노이즈를 신경망 출력에 경험적으로 맞출 수 있음을 입증했습니다. 이를 통해 유효성 검사 세트가 필요하지 않은 가중치 페널티를 맞추는 방법을 얻을 수 있으므로 네트워크 내의 연결 하위 집합에 대해 서로 다른 가중치 페널티를 허용할 수 있습니다. 이러한 유연성은 유효성 검사 세트를 사용하여 달성하는 데 계산 비용이 많이 듭니다.

이제 David MacKay가 개발한 간단하고 실용적인 방법을 설명하여 무게 패널티를 두 변수의 비율로 해석하는 방법을 설명하겠습니다. 제곱 오차를 최소화하기 위해 모델을 학습한 후 출력 분산에 대한 최상의 값을 결정할 수 있습니다. 이 값은 잔차 오차의 분산을 사용하여 얻습니다.

또한 가중치에 대한 가우스 사전의 분산을 추정할 수 있습니다. 처음에는 이 분산에 대해 추측하고 학습 프로세스를 진행합니다. 여기에 경험적 베이즈라는 "더러운 속임수"가 있습니다. 사전 분산을 모델이 학습한 가중치의 분산으로 설정했습니다. 가중치가 가장 가능성이 높기 때문입니다. 이것은 베이지안 접근 방식의 일부 가정을 위반하지만 데이터를 기반으로 사전을 결정할 수 있습니다.

가중치를 학습한 후 학습된 가중치의 1차원 분포에 제로 평균 가우시안 분포를 맞춥니다. 그런 다음 이 가우시안의 분산을 가중치 사전 분산으로 사용합니다. 특히, 다른 레이어와 같이 가중치의 다른 하위 집합이 있는 경우 각 레이어에 대해 다른 분산을 학습할 수 있습니다.

MacKay 방법의 장점은 검증 세트가 필요하지 않아 훈련을 위해 테스트가 아닌 모든 데이터를 사용할 수 있다는 것입니다. 또한 검증 세트를 사용하여 달성하기 어려운 여러 가중치 페널티를 통합할 수 있습니다.

방법을 요약하기 위해 잡음 분산과 가중치 사전 분산의 비율을 추측하는 것으로 시작합니다. 그런 다음 가중치를 개선하기 위해 경사 하강 학습을 수행합니다. 다음으로 잡음 분산을 잔차 오차의 분산으로 업데이트하고 가중치 사전 분산을 학습된 가중치 분포의 분산으로 업데이트합니다. 이 루프는 반복적으로 반복됩니다.

실제로 MacKay의 방법은 효과적으로 작동하는 것으로 나타났으며 그는 이 접근 방식을 사용하여 여러 대회에서 성공을 거두었습니다.

 

10.1 — 모델 결합이 도움이 되는 이유



10.1 — 모델 결합이 도움이 되는 이유 [머신 러닝을 위한 신경망]

이 비디오에서는 예측을 위해 여러 모델을 결합하는 것의 중요성에 대해 설명합니다. 단일 모델을 사용할 때 적절한 용량을 선택해야 하는 문제에 직면합니다. 용량이 너무 낮으면 모델이 훈련 데이터의 규칙성을 포착하지 못합니다. 반면에 용량이 너무 높으면 모델이 특정 교육 세트의 샘플링 오류를 과대적합합니다. 여러 모델을 결합하여 진정한 규칙성을 맞추는 것과 과적합을 피하는 것 사이에서 더 나은 균형을 잡을 수 있습니다. 모델을 함께 평균화하면 단일 모델을 사용하는 것보다 더 나은 결과를 얻을 수 있습니다. 이 효과는 모델이 다양한 예측을 할 때 특히 중요합니다. 모델이 서로 다른 예측을 하도록 장려하는 것은 다양한 기술을 통해 달성할 수 있습니다.

제한된 훈련 데이터를 다룰 때 과적합은 일반적인 문제입니다. 그러나 여러 모델의 예측을 고려하여 과적합을 완화할 수 있습니다. 이것은 모델이 서로 다른 예측을 할 때 특히 그렇습니다. 회귀에서는 제곱 오차를 편향 항과 분산 항으로 분해할 수 있습니다. 바이어스 항은 모델이 실제 함수에 얼마나 근접하는지를 나타내는 반면 분산 항은 훈련 세트에서 샘플링 오류를 캡처하는 모델의 능력을 측정합니다. 고용량 모델은 종종 낮은 편향을 나타내므로 모델을 평균화하면 낮은 편향을 유지하면서 분산을 줄일 수 있습니다. 이를 통해 평균화의 이점을 활용하여 오류를 줄일 수 있습니다.

개별 모델을 특정 테스트 케이스의 평균 모델과 비교할 때 일부 개별 예측자가 결합된 예측자를 능가할 수 있습니다. 그러나 다른 개별 예측 변수는 다른 경우에 탁월합니다. 또한 개별 예측 변수가 서로 크게 동의하지 않는 경우 결합된 예측 변수는 일반적으로 평균적으로 모든 개별 예측 변수보다 성능이 뛰어납니다. 따라서 목표는 정확성을 유지하면서 서로 뚜렷한 오류를 만드는 개별 예측 변수를 갖는 것입니다.

수학적으로 네트워크를 결합할 때 두 개의 예상 제곱 오차를 비교합니다. 첫 번째 오류는 하나의 예측 변수를 무작위로 선택하고 모든 예측 변수에 대한 예측을 평균화하는 것에 해당합니다. 두 번째 오류는 모델의 예측을 평균화하여 얻습니다. 모델을 임의로 선택하여 예상되는 제곱 오차는 평균화를 통해 얻은 제곱 오차보다 크며, 이는 오차를 줄이는 데 있어 평균화의 이점을 나타냅니다. 방정식의 추가 항은 평균화를 통해 효과적으로 감소되는 모델 출력의 분산을 나타냅니다.

모델 간의 다양한 예측을 달성하기 위해 다양한 접근 방식을 사용할 수 있습니다. 여기에는 다양한 유형의 모델 사용, 모델 아키텍처 변경, 다양한 학습 알고리즘 사용, 다양한 데이터 하위 집합에 대한 교육 모델이 포함됩니다. 배깅(bagging), 부스팅(boosting)과 같은 기술도 다양한 모델을 만드는 데 효과적입니다. 배깅은 데이터의 서로 다른 하위 집합에서 서로 다른 모델을 훈련하는 것과 관련되며 각 모델에 대해 훈련 사례에 가중치를 다르게 부여합니다. 이러한 방법은 모델을 결합할 때 성능 향상에 기여합니다.

여러 모델을 결합하면 예측 작업에 유리합니다. 모델을 평균화하여 규칙성을 캡처하고 과적합을 방지하는 것 사이의 균형을 맞출 수 있습니다. 모델 간의 다양한 예측은 결합된 예측기의 성능을 향상시킵니다. 다양한 예측을 장려하기 위해 다양한 기술을 적용하여 전반적으로 더 나은 결과를 얻을 수 있습니다.

 

강의 10.2 — 전문가 혼합



강의 10.2 — 전문가 혼합 [머신 러닝을 위한 신경망]

1990년대 초에 개발된 전문가 혼합 모델은 각각 데이터의 다른 부분을 전문으로 하는 여러 신경망을 훈련합니다. 아이디어는 입력 데이터를 기반으로 할당할 전문가를 결정하는 관리자 신경망과 함께 데이터 체제당 하나의 신경망을 갖는 것입니다. 이 접근 방식은 광범위한 데이터를 활용하여 예측을 개선할 수 있으므로 더 큰 데이터 세트에서 더 효과적입니다. 학습 중에 모델의 가중치가 향상되어 성능이 더 좋은 경우에 집중합니다. 이 전문화로 인해 개별 모델은 특정 영역에서 뛰어난 반면 다른 영역에서는 성능이 저하됩니다. 핵심은 각 전문가가 다른 전문가를 능가하는 경우에 대한 정답 예측에 집중하는 것입니다.

모델의 스펙트럼에는 로컬 및 글로벌 모델이 있습니다. 가장 가까운 이웃과 같은 로컬 모델은 특정 교육 사례에 초점을 맞추고 예측을 위해 해당 값을 저장합니다. 하나의 다항식을 모든 데이터에 맞추는 것과 같은 글로벌 모델은 더 복잡하고 불안정할 수 있습니다. 그 사이에는 체제가 다르고 입력-출력 관계가 다양한 데이터 세트에 유용한 중간 복잡성 모델이 있습니다.

다양한 모델을 다양한 체제에 맞추려면 훈련 데이터를 각 체제를 나타내는 하위 집합으로 분할해야 합니다. 입력 벡터만을 기반으로 하는 클러스터링은 이상적이지 않습니다. 대신 입력-출력 매핑의 유사성을 고려해야 합니다. 입력-출력 매핑을 기반으로 한 파티셔닝을 통해 모델은 각 체제 내의 관계를 더 잘 포착할 수 있습니다.

두 가지 오류 함수가 있습니다. 하나는 모델이 협력하도록 장려하고 다른 하나는 전문화를 장려합니다. 협력을 장려하는 것은 모든 예측 변수의 평균을 대상과 비교하고 예측 변수를 함께 훈련하여 차이를 최소화하는 것을 포함합니다. 그러나 모델이 각 예측 변수를 개별적으로 교육하는 것보다 더 강력한 경우 이는 과적합으로 이어질 수 있습니다. 반대로 전문화를 촉진하는 오류 함수는 각 모델의 출력을 대상과 개별적으로 비교합니다. 관리자는 해당 모델을 선택할 확률을 나타내는 각 모델에 할당된 가중치를 결정합니다. 대부분의 전문가는 대부분의 목표를 무시하고 그들이 잘 수행하는 훈련 사례의 하위 집합에만 집중하게 됩니다.

전문가 혼합 모델의 아키텍처는 여러 전문가, 관리자 및 소프트맥스 계층으로 구성됩니다. 관리자는 입력 데이터를 기반으로 각 전문가를 선택할 확률을 결정합니다. 오류 함수는 전문가의 출력과 관리자의 확률을 사용하여 계산됩니다. 오차함수를 미분하여 전문가와 관리자를 훈련시키기 위한 기울기를 얻을 수 있다. 특정 사례에 대해 확률이 낮은 전문가는 매개변수를 유지하면서 작은 기울기를 갖게 됩니다. 게이팅 네트워크의 출력과 관련하여 미분하면 확률 기반 특수화가 제공됩니다.

혼합 모델을 기반으로 하는 더 복잡한 비용 함수가 있으며 여기에는 가우시안 예측 및 최대 우도 추정이 포함됩니다. 이 함수는 전문가의 예측 분포가 혼합된 상태에서 목표 값의 로그 확률을 최대화합니다. 목표는 음의 로그 확률을 비용 함수로 최소화하는 것입니다.

전문가 모델의 혼합은 다양한 데이터 영역에 대해 전문화된 신경망을 활용하고 향상된 예측을 위해 대규모 데이터 세트를 효과적으로 활용합니다.

 

강의 10.3 — 완전 베이지안 학습의 개념



강의 10.3 — 완전한 베이지안 학습의 개념 [머신 러닝을 위한 신경망]

이 비디오에서는 전체 베이지안 학습과 작동 방식에 대해 설명합니다. 전체 베이지안 학습에서는 단일 최적 설정을 검색하는 대신 가능한 모든 매개변수 설정에 대한 완전한 사후 분포를 찾는 것을 목표로 합니다. 그러나 이 분포를 계산하는 것은 신경망과 같은 복잡한 모델에 대해 계산 집약적입니다. 사후 분포가 있으면 사후 확률로 가중된 다양한 매개변수 설정의 예측을 평균화하여 예측을 수행할 수 있습니다. 이 접근 방식은 계산적으로 까다롭지만 제한된 데이터로도 복잡한 모델을 사용할 수 있습니다.

과대적합은 복잡한 모델을 작은 데이터 세트에 맞출 때 흔히 발생하는 문제입니다. 그러나 모수에 대한 전체 사후 분포를 얻음으로써 과적합을 피할 수 있습니다. 빈도주의적 접근법은 모델을 맞추는 것이 최상의 매개변수 설정을 찾는 것을 의미한다고 가정하고 제한된 데이터가 있을 때 더 간단한 모델을 사용할 것을 제안합니다. 그러나 전체 사후 분포에서는 데이터가 적더라도 중요한 사후 확률을 갖는 매개변수 설정이 다르기 때문에 예측이 모호할 수 있습니다. 더 많은 데이터를 수집할수록 사후 분포는 특정 매개변수 설정에 더 집중되어 더 정확한 예측으로 이어집니다.

과적합의 예는 5차 다항식을 6개의 데이터 포인트에 맞추는 것과 관련되며, 이는 데이터에 완벽하게 맞는 것으로 보입니다. 반대로 자유도가 2개인 직선은 데이터에 적합하지 않습니다. 그러나 5차 다항식에서 합리적인 사전으로 시작하여 전체 사후 분포를 계산하면 더 모호하지만 더 합리적인 예측을 얻을 수 있습니다. 사후 분포 내의 다른 모델은 주어진 입력 값에서 다양한 예측을 하고 평균적으로 녹색 선으로 만든 예측과 밀접하게 일치합니다.

베이지안 관점에서 수집된 데이터의 양은 모델 복잡성에 대한 이전 믿음에 영향을 미치지 않아야 합니다. 몇 가지 매개변수를 사용하여 신경망에서 전체 베이지안 학습을 근사화함으로써 그리드 기반 접근 방식을 사용할 수 있습니다. 매개변수 공간 위에 그리드를 배치하여 각 매개변수에 몇 가지 대체 값을 허용합니다. 이러한 값의 외적은 매개변수 공간에서 그리드 포인트를 제공합니다. 데이터 예측에서 각 그리드 포인트의 성능을 평가하고 사전 확률을 고려하여 사후 확률을 할당합니다. 계산 비용이 많이 들지만 이 방법은 경사 하강법 및 로컬 옵티마 문제를 방지합니다. 제한된 데이터가 있을 때 최대 우도 또는 최대 a-posteriori보다 성능이 좋습니다.

테스트 데이터에 대한 예측을 하기 위해 모든 그리드 포인트의 확률을 합산하여 테스트 입력이 주어진 테스트 출력의 확률을 계산합니다. 주어진 데이터 및 사전에 그리드 포인트의 확률에 입력 및 그리드 포인트가 주어진 테스트 출력을 얻을 확률을 곱하면 각 그리드 포인트의 예측 가중치가 결정됩니다. 또한 테스트 답변을 생성하기 전에 네트워크의 출력을 수정할 가능성도 고려합니다.

전체 베이지안 학습을 설명하는 제공된 이미지에는 4개의 가중치와 2개의 편향이 있는 작은 네트가 표시됩니다. 각 가중치와 편향에 대해 9개의 가능한 값을 고려하면 매개변수 공간은 9의 6 그리드 포인트의 거듭제곱이 됩니다. 각 그리드 포인트에 대해 모든 교육 사례에 대해 관찰된 출력의 확률을 해당 그리드 포인트에 특정한 사전 확률로 곱한 값을 계산합니다. 이러한 확률을 정규화하면 모든 그리드 지점에 대한 사후 확률이 제공됩니다. 마지막으로 이러한 그리드 포인트를 사용하여 예측을 수행하고 각 예측에 사후 확률을 적용합니다.

 

강의 10.4 — 완전한 베이지안 학습을 실용적으로 만들기



강의 10.4 — 완전 베이지안 학습 실용화 [머신 러닝을 위한 신경망]

이 비디오에서는 수천 또는 수백만 개의 가중치가 있는 대규모 신경망에 대해 완전 베이지안 학습을 실용적으로 만드는 방법을 설명합니다. 사용된 기술은 처음에는 이상하게 보일 수 있는 몬테카를로 방법입니다. 우리는 임의의 방식으로 가중치 벡터의 공간을 탐색하기 위해 난수 생성기를 사용하지만 비용 함수를 내림차순으로 편향합니다. 올바르게 수행되면 이 접근 방식은 놀라운 속성을 갖습니다. 즉, 사후 분포의 확률에 비례하여 가중치 벡터를 샘플링합니다. 많은 수의 가중치 벡터를 샘플링하여 전체 베이지안 방법의 좋은 근사값을 얻을 수 있습니다.

매개변수 수가 증가함에 따라 매개변수 공간의 격자점 수가 기하급수적으로 커집니다. 따라서 대부분의 매개변수 벡터를 가능성이 매우 희박하게 렌더링하기에 충분한 데이터가 있는 경우 몇 개 이상의 매개변수에 대한 그리드를 생성하는 것은 불가능합니다. 대신 예측에 크게 기여하는 그리드 포인트의 작은 부분을 평가하는 데 집중할 수 있습니다. 베이지안 학습을 실현 가능하게 만드는 아이디어는 사후 확률에 따라 가중치 벡터를 샘플링하는 것입니다. 방정식의 모든 항을 합산하는 대신 합계에서 항을 샘플링할 수 있습니다. 샘플링 여부에 따라 각 가중치 벡터에 1 또는 0의 가중치를 할당합니다. 샘플링될 확률은 가중치 벡터의 사후 확률에 해당하므로 올바른 예상 값이 생성됩니다.

오른쪽에 묘사된 표준 역전파는 기울기를 따라 이동하고 비용 함수를 내림차순으로 초기 지점에서 최종 단일 지점까지의 경로를 따릅니다. 대조적으로, 샘플링 방법은 각 가중치 업데이트에서 가우시안 노이즈를 도입하여 가중치 벡터가 지속적으로 가중치 공간을 탐색하고 탐색하도록 합니다. 이러한 방황하는 행동은 비용이 저렴한 지역을 선호하며 가능할 때마다 내리막길로 이동하는 경향이 있습니다. 중요한 질문은 가중치가 공간의 각 지점을 얼마나 자주 방문하는지입니다. 빨간색 점은 방황하는 동안 채취한 샘플을 나타내며 내재된 노이즈로 인해 비용이 가장 낮은 영역에 있지 않을 수 있습니다. 그러나 충분한 탐색 후에 Markov 체인 Monte Carlo의 놀라운 속성이 나타납니다. 가중치 벡터는 실제 사후 분포에서 편향되지 않은 샘플이 됩니다. 사후 확률이 높은 가중치 벡터는 확률이 매우 낮은 가중치 벡터보다 빨간색 점으로 표시될 가능성이 더 큽니다. Markov chain Monte Carlo로 알려진 이 기술을 사용하면 수천 개의 매개변수로 베이지안 학습을 사용할 수 있습니다.

앞에서 언급한 가우시안 노이즈를 추가하는 방법을 Langevin 방법이라고 합니다. 효과적이지만 가장 효율적인 접근 방식은 아닙니다. 신뢰할 수 있는 샘플을 얻기 전에 가중치 벡터가 공간을 탐색하는 데 더 적은 시간이 필요한 더 정교한 방법이 있습니다. 이러한 접근 방식 중 하나는 전체 베이지안 학습에서 미니 배치를 사용하는 것입니다. 임의의 미니 배치에서 비용 함수의 그래디언트를 계산할 때 샘플링 노이즈로 편향되지 않은 추정치를 얻습니다. 이 샘플링 노이즈는 Markov chain Monte Carlo 방법에 필요한 노이즈를 제공하는 데 사용할 수 있습니다. Welling과 공동 작업자의 영리한 아이디어는 미니 배치 방법을 사용하여 가중치에 대한 사후 분포에서 효율적인 샘플링을 허용합니다. 이러한 발전으로 인해 훈련 프로세스를 완료하기 위해 미니 배치를 사용한 훈련이 필요한 훨씬 더 큰 네트워크에서 전체 베이지안 학습을 실현할 수 있습니다.

전체 베이지안 학습에서 미니 배치를 사용하면 몇 가지 이점이 있습니다. 임의의 미니 배치에서 비용 함수의 기울기를 계산할 때 샘플링 노이즈로 편향되지 않은 추정치를 얻을 뿐만 아니라 미니 배치 방법의 효율성도 활용합니다. 이는 완전한 베이지안 학습으로 훈련하는 것이 불가능할 훨씬 더 큰 네트워크를 훈련시킬 수 있음을 의미합니다.

Welling과 그의 공동 작업자가 달성한 혁신은 미니 배치 방법을 사용하여 가중치에 대한 사후 분포에서 효율적인 샘플링을 허용합니다. 그들의 영리한 아이디어는 미니 배치 기울기 추정에 내재된 샘플링 노이즈를 활용하여 Markov 체인 Monte Carlo 방법에 필요한 노이즈 역할을 합니다. 이 노이즈를 적절하게 통합함으로써 그들은 사후 분포에서 신뢰할 수 있는 샘플을 성공적으로 얻었고 더 큰 네트워크에 대한 완전한 베이지안 학습을 실용적으로 만들었습니다.

이러한 발전으로 미니 배치를 사용하여 수천 또는 수백만 개의 가중치로 신경망을 훈련하고 가중치에 대한 사후 분포에서 샘플을 얻을 수 있습니다. 이는 광범위한 계산 리소스가 필요한 대규모 문제를 처리할 때 특히 유용합니다. 전체 베이지안 학습을 통해 불확실성을 통합하는 기능은 모델 예측에 대한 보다 포괄적인 이해를 제공하고 향상된 의사 결정으로 이어질 수 있습니다.

Markov chain Monte Carlo와 같은 Monte Carlo 방법을 활용하여 대규모 신경망에 Full Bayesian 학습을 실용화할 수 있습니다. 사후 확률에 따라 가중치 벡터를 샘플링하여 전체 베이지안 방법을 근사화하고 모델의 불확실성에 대한 귀중한 통찰력을 얻을 수 있습니다. 미니 배치 방법의 도입으로 이제 가중치에 대한 사후 분포에서 효율적인 샘플링을 달성할 수 있으므로 전체 베이지안 학습을 훨씬 더 큰 네트워크에 적용할 수 있습니다.

 

강의 10.5 — 탈락



강의 10.5 — 드롭아웃 [머신 러닝을 위한 신경망]

드롭아웃은 각 모델을 별도로 훈련하지 않고 많은 수의 신경망 모델을 결합하는 성공적인 방법입니다. 이 접근 방식에서는 숨겨진 단위의 임의 하위 집합이 각 교육 사례에 대해 삭제되므로 각 사례에 대해 서로 다른 아키텍처가 생성됩니다. 이것은 모든 학습 사례에 대해 고유한 모델을 생성하여 테스트 중에 이러한 모델을 학습하고 효율적으로 평균화하는 방법에 대한 질문을 제기합니다.

여러 모델의 출력을 결합하는 두 가지 방법은 출력 확률을 평균화하거나 확률의 기하 평균을 사용하는 것입니다. 가중치 공유는 이 방법에서 중요한 역할을 합니다. 드롭아웃은 신경망을 평균화하는 효율적인 방법을 제공하지만 올바른 베이지안 접근 방식만큼 성능이 좋지 않을 수 있습니다. 학습하는 동안 히든 유닛은 0.5의 확률로 무작위로 삭제되어 수많은 아키텍처가 가중치를 공유하게 됩니다. 드롭아웃은 대부분의 모델이 샘플링되지 않고 각 샘플링된 모델이 하나의 교육 예제만 받는 모델 평균화로 볼 수 있습니다. 모델 간의 가중치 공유는 모델을 효과적으로 정규화합니다. 테스트 시 모든 숨겨진 단위가 사용되지만 나가는 가중치는 가능한 모든 모델에서 예측의 기하 평균을 계산하기 위해 반으로 줄입니다. 드롭아웃은 각 레이어에 0.5의 드롭아웃을 적용하여 여러 숨겨진 레이어로 확장할 수 있습니다. 이 근사는 별도의 드롭아웃 모델을 평균화하는 것보다 빠르지만 좋은 근사를 제공합니다.

또한 입력을 유지할 확률이 더 높은 입력 레이어에 드롭아웃을 적용할 수 있습니다. 이 기술은 이미 autoencoder의 노이즈 제거에 사용되었으며 좋은 결과를 보여주었습니다. 드롭아웃은 오류를 줄이고 심층 신경망에서 과적합을 방지하는 데 효과적인 것으로 나타났습니다. 그것은 숨겨진 단위의 전문화를 장려하고 새로운 테스트 데이터에 대한 일반화를 잘못할 수 있는 복잡한 공동 적응을 방지합니다. 숨겨진 유닛이 다른 숨겨진 유닛의 다양한 조합과 함께 작동하도록 강제함으로써 dropout은 개별적으로 유용한 동작을 촉진하고 특정 협업에 대한 의존도를 낮춥니다. 이 접근 방식은 각 단위가 고유하고 약간 유용한 방식으로 기여할 수 있도록 함으로써 드롭아웃 네트워크의 성능을 향상시켜 탁월한 결과를 이끌어냅니다.

드롭아웃은 신경망 모델을 훈련하고 결합하기 위한 강력한 기술입니다. 가중치 공유 및 히든 유닛의 무작위 드롭아웃을 통해 모델을 정규화하여 과적합 문제를 해결합니다. 각 교육 사례에 대해 다양한 아키텍처를 생성함으로써 dropout은 개별 단위 전문화를 장려하고 복잡한 공동 적응을 줄입니다. 모델의 출력 확률을 평균화하거나 기하 평균을 사용하는 프로세스는 앙상블과 같은 효과를 제공하여 네트워크의 전반적인 성능을 향상시킵니다. 드롭아웃은 올바른 베이지안 접근 방식과 동일한 수준의 성능을 달성하지 못할 수 있지만 실용적이고 효율적인 대안을 제공합니다. 여러 개의 히든 레이어에 적용할 경우 각 레이어에서 드롭아웃 확률 0.5로 드롭아웃을 사용할 수 있습니다. "평균 순"으로 알려진 이 근사는 드롭아웃의 이점과 더 빠른 계산을 효과적으로 결합합니다. 계산 리소스가 제한되어 있을 때 특히 유용합니다.

또한 입력을 유지할 확률이 더 높은 드롭아웃을 적용하여 드롭아웃을 입력 레이어로 확장할 수 있습니다. 이 기술은 과적합을 방지하는 데 도움이 되며 다양한 응용 프로그램에서 성공을 보여주었습니다. 드롭아웃은 훈련 데이터의 성능을 향상시킬 뿐만 아니라 보이지 않는 테스트 데이터에 대한 일반화를 향상시킨다는 점에 유의해야 합니다. 개별 단위 행동을 장려하고 복잡한 공동 적응을 줄임으로써 탈락 모델은 새롭고 보이지 않는 예에서 잘 수행되는 경향이 있습니다.

드롭아웃은 신경망 모델을 결합하는 실용적이고 효과적인 방법입니다. 은닉 유닛을 임의로 삭제하고 개별 유닛 동작을 장려함으로써 드롭아웃은 과적합을 완화하고 일반화를 개선합니다. 단순성과 효율성으로 인해 심층 신경망을 훈련하는 데 유용한 도구입니다.

 

강의 11.1 — Hopfield Nets



강의 11.1 — Hopfield Nets [기계 학습을 위한 신경망]

이 비디오에서 발표자는 Hopfield 네트워크와 1980년대 신경망에 대한 관심의 부활에서 그들의 역할을 소개합니다. Hopfield 네트워크는 메모리를 분산된 활동 패턴으로 저장하는 데 사용되는 간단한 장치입니다. 이진 임계값 단위와 반복 연결이 있는 에너지 기반 모델입니다.

비선형 장치 및 반복 연결이 있는 네트워크를 분석하는 것은 안정적인 상태로 정착, 진동 또는 혼돈과 같은 다양한 동작으로 인해 어려울 수 있습니다. 그러나 Hopfield와 다른 연구원들은 연결이 대칭이면 네트워크의 각 이진 구성에 대해 전역 에너지 함수를 정의할 수 있음을 깨달았습니다. 올바른 에너지 함수와 결합된 이진 임계값 결정 규칙은 네트워크가 에너지를 내리막길로 이동하여 결국 에너지 최소값에 도달하도록 합니다. 에너지 함수는 연결 가중치의 곱과 연결된 뉴런의 이진 상태를 나타내는 로컬 기여로 구성됩니다.

에너지 최소값을 찾기 위해 Hopfield net의 단위는 무작위 순서로 한 번에 하나씩 순차적으로 업데이트됩니다. 각 장치는 전체 에너지가 가장 낮은 구성을 기반으로 상태를 계산합니다. 이 순차적 업데이트는 장치가 에너지를 증가시키고 진동을 유발할 수 있는 동시 결정을 내리는 것을 방지합니다. Hopfield 네트워크는 메모리가 네트워크의 최소 에너지에 해당하므로 메모리를 저장하는 데 적합합니다. 메모리는 부분적이거나 손상될 수 있으며 이진 임계값 결정 규칙은 메모리를 정리하고 전체 메모리로 복원할 수 있습니다. 이 콘텐츠 주소 지정 가능 메모리를 사용하면 부분 콘텐츠 정보를 기반으로 저장된 항목에 액세스할 수 있습니다.

Hopfield 그물은 몇 개의 장치를 제거해도 여전히 제대로 작동할 수 있기 때문에 하드웨어 손상에 대해 견고하게 만드는 특성을 가지고 있습니다. 네트워크의 가중치는 몇 개의 뼈에서 공룡을 재구성하는 것과 유사하게 뉴런의 상태가 어떻게 함께 맞는지에 대한 정보를 제공합니다. Hopfield net의 메모리 저장 규칙은 간단합니다. 활동 결과에 따라 단위 사이의 가중치를 증가시키면 이진 상태 벡터를 저장할 수 있습니다. 이 규칙은 데이터를 한 번만 통과하면 되므로 온라인 규칙이 됩니다. 그러나 장점과 단점을 모두 가지고 있는 오류 정정 규칙은 아닙니다.

Hopfield 네트워크는 메모리 저장에 대한 간단한 접근 방식을 제공하며 다양한 애플리케이션에 가치를 부여하는 흥미로운 속성을 가지고 있습니다.

 

강의 11.2 — 스퓨리어스 최소값 다루기



강의 11.2 — 스퓨리어스 최소값 다루기 [머신 러닝을 위한 신경망]

이 비디오에서는 Hopfield nets의 저장 용량과 스퓨리어스 메모리에 의해 제한되는 방식에 대해 설명합니다. 가짜 기억은 근처의 최소 에너지가 결합하여 잘못된 위치에 새로운 최소 에너지를 생성할 때 발생합니다. 이러한 스퓨리어스 최소값을 제거하려는 노력으로 기본 Hopfield 네트워크보다 더 복잡한 시스템에서 흥미로운 학습 방법이 탄생했습니다.

나는 또한 Hopfield 그물의 용량 증가와 관련된 역사적 재발견에 대해서도 언급할 것입니다. 저장 용량을 향상시키려는 물리학자들은 Hopfield가 메모리 저장 장치로 Hopfield 그물을 발명한 후 처음 개발된 퍼셉트론 수렴 절차를 우연히 발견했습니다.

완전히 연결된 네트워크에 대한 Hopfield 저장 규칙을 사용하는 Hopfield 네트워크의 용량은 약 0.15n 메모리이며 여기서 n은 이진 임계값 단위의 수를 나타냅니다. 이 용량은 혼동 없이 저장할 수 있는 메모리의 수를 나타냅니다. 각 메모리는 N 비트의 정보를 제공하는 N 단위의 임의 구성으로 구성됩니다. 따라서 Hopfield net에 저장된 총 정보는 약 0.15N 제곱 비트입니다.

그러나 이 저장 방법은 가중치를 저장하는 데 필요한 비트를 효율적으로 활용하지 못합니다. 가중치를 컴퓨터에 저장하는 데 필요한 비트 수를 분석하면 0.15N 제곱 비트를 초과하여 로컬 에너지 최소값에서 분산 메모리가 효율적이지 않음을 보여줍니다.

Hopfield net의 용량을 개선하려면 용량을 제한하는 에너지 최소값의 병합을 해결해야 합니다. 바이너리 구성이 기억될 때마다 우리는 새로운 에너지 최소값을 생성하기를 희망합니다. 그러나 근처의 패턴은 최소값 병합으로 이어질 수 있으므로 별도의 메모리를 구분할 수 없습니다. 이 병합 현상은 Hopfield net의 용량을 제한하는 것입니다.

Hopfield nets의 용량을 개선하면서 떠오른 흥미로운 아이디어는 언러닝(unlearning)의 개념입니다. 언러닝은 네트워크가 임의의 초기 상태에서 안정화되도록 한 다음 스퓨리어스 최소값을 제거하기 위해 스토리지 규칙의 반대를 적용하는 것을 포함합니다. Hopfield, Feinstein 및 Palmer는 학습 해제가 효과적으로 기억 용량을 증가시킨다는 것을 입증했으며 Crick 및 Mitchison은 REM 수면 중에 학습 해제가 발생할 수 있다고 제안했습니다.

문제는 언러닝을 얼마나 많이 수행해야 하는지 결정하는 데 있습니다. 이상적으로, 학습 해제는 모델을 데이터에 맞추는 프로세스의 일부여야 합니다. 모델의 최대 가능성 피팅은 자동으로 학습 해제를 통합하여 필요한 학습 해제 양에 대한 정확한 지침을 제공합니다.

물리학자들은 친숙한 수학적 개념과 뇌 기능 사이의 연관성을 찾고자 하는 욕구에 힘입어 Hopfield 그물의 용량을 향상시키기 위해 노력했습니다. Elizabeth Gardner는 가중치의 전체 용량을 활용하는 보다 효율적인 저장 규칙을 제안했습니다. 이 규칙에는 교육 세트를 여러 번 순환하고 퍼셉트론 수렴 절차를 사용하여 각 유닛의 올바른 상태를 교육하는 것이 포함되었습니다.

이 기술은 다른 모든 차원의 값이 주어진 한 차원을 올바르게 얻는 것을 목표로 하는 통계에 사용되는 의사 우도 방법과 유사합니다. 퍼셉트론 수렴 절차는 Hopfield 네트워크의 대칭 가중치에 대한 일부 조정과 함께 보다 효율적인 메모리 저장을 허용합니다.

퍼셉트론 수렴 절차를 사용하고 데이터를 여러 번 반복함으로써 Hopfield 네트워크의 메모리 저장 효율성을 개선할 수 있습니다. 이 기술은 다른 모든 차원의 값을 기반으로 하나의 차원을 올바르게 가져오는 것이 목표인 통계에 사용되는 의사 우도 방법과 유사합니다. 퍼셉트론 수렴 절차는 Hopfield 네트워크의 대칭 가중치에 대한 적절한 수정과 함께 보다 효과적인 메모리 저장을 가능하게 합니다.

Gardner가 제시한 이 향상된 저장 규칙은 Hopfield 그물의 용량을 최대화하는 데 상당한 발전을 나타냅니다. 훈련 세트를 순환하고 퍼셉트론 수렴 절차에 따라 가중치를 반복적으로 조정함으로써 네트워크는 더 많은 메모리를 저장할 수 있습니다.

이 접근 방식은 한 번에 데이터를 처리할 수 있는 Hopfield 네트워크의 온라인 속성을 희생한다는 점은 주목할 가치가 있습니다. 그러나 분동의 전체 용량을 활용하여 달성한 저장 효율성 향상으로 절충이 정당화됩니다.

Hopfield, Feinstein 및 Palmer가 제안한 비학습 통합은 가짜 최소값을 제거하고 메모리 용량을 추가로 증가시키는 수단을 제공합니다. 언러닝을 사용하면 병합된 최소값을 분리하여 개별 기억을 더 잘 기억할 수 있습니다.

흥미롭게도, Crick과 Mitchison은 REM 수면 동안의 학습 해제에 대한 기능적 설명을 제안했습니다. 그들은 꿈을 꾸는 목적이 스퓨리어스 최소값을 쉽게 제거하고 네트워크를 무작위 상태로 효과적으로 재설정하고 이전 패턴을 학습 해제하는 것이라고 제안했습니다.

최적의 학습 해제 양을 결정하는 수학적 문제를 해결하기 위한 잠재적인 해결책은 모델 적합 프로세스의 일부로 학습 해제를 처리하는 것입니다. 최대 우도 피팅을 사용하면 학습 해제가 자동으로 통합되어 모델 성능을 최적화하는 데 필요한 학습 해제 정도에 대한 정확한 지침을 제공할 수 있습니다.

Hopfield nets의 용량을 개선하기 위한 탐구는 메모리 저장 및 학습 프로세스에 대한 귀중한 통찰력을 제공했습니다. 비학습 탐색과 함께 퍼셉트론 수렴 절차의 개발로 효과적인 메모리 저장 및 검색을 위한 Hopfield 네트워크의 잠재력을 최대한 활용할 수 있게 되었습니다.

 

강의 11.3 — 은닉 유닛이 있는 홉필드 그물



강의 11.3 — 히든 유닛이 있는 Hopfield net [머신 러닝을 위한 신경망]

이 비디오에서는 Hopfield 그물과 그 에너지 기능을 활용하는 새로운 접근 방식을 소개합니다. 은닉 유닛을 네트워크에 통합함으로써 이러한 은닉 유닛의 상태를 기반으로 지각 입력의 해석을 도출하는 것을 목표로 합니다. 핵심 개념은 단위 사이의 가중치가 유리한 해석에 제약을 가하고 에너지가 낮은 상태를 찾음으로써 입력 데이터에 대한 좋은 해석을 발견할 수 있다는 것입니다.

Hopfield 그물은 대칭적으로 연결된 이진 임계값 단위를 사용하여 로컬 에너지 최소값을 찾는 기능과 이러한 로컬 에너지 최소값이 메모리에 해당할 수 있다는 개념이라는 두 가지 기본 아이디어를 결합합니다. 그러나 로컬 최소값을 찾는 기능을 활용하는 다른 방법이 있습니다. 네트워크를 메모리 저장에만 사용하는 대신 감각 입력의 해석을 구성하는 데 사용할 수 있습니다. 이 아이디어를 설명하기 위해 3차원 세계에 대한 이미지의 2D 선에서 정보를 추론하는 세부 사항을 살펴보겠습니다. 2D 라인을 관찰할 때 세계의 다양한 3차원 가장자리에서 발생할 수 있습니다. 이미지의 깊이 정보 손실로 인해 여러 3D 가장자리가 망막에서 동일한 모양으로 이어질 수 있습니다. 이 모호함은 줄의 각 끝에서 깊이에 대한 지식이 부족하기 때문에 발생합니다.

이 문제를 해결하기 위해 세계의 직선 3D 가장자리가 이미지에 직선 2D 선을 생성한다고 가정합니다. 그러나 이 가정은 3D 모서리의 각 끝에서 깊이와 관련된 두 자유도를 제거합니다. 결과적으로 3D 모서리의 전체 제품군은 동일한 2D 선에 해당하지만 한 번에 그 중 하나만 인식할 수 있습니다. 이제 감각 입력을 해석하는 데 도움이 되는 이진 단위 네트워크에서 낮은 에너지 상태를 찾는 기능을 활용하는 방법을 보여주는 예를 살펴보겠습니다. 선 그림이 있고 그것을 3차원 개체로 해석하려고 한다고 가정합니다. 각 잠재적 2D 라인에 대해 해당 뉴런을 할당합니다. 주어진 이미지에서 몇 개의 뉴런만 활성화되어 현재 라인을 나타냅니다.

해석을 구성하기 위해 가능한 각 3D 가장자리에 하나씩 3D 라인 단위 세트를 도입합니다. 각 2D 라인 단위는 여러 3D 라인에 해당할 수 있으므로 한 번에 하나의 3D 라인만 활성화되어야 하므로 이들 간의 경쟁을 보장하면서 모든 관련 3D 라인을 자극해야 합니다. 이를 달성하기 위해 경쟁을 가능하게 하는 억제 연결과 함께 2D 라인 단위에서 모든 후보 3D 라인으로 흥분 연결을 설정합니다.

그러나 신경망의 배선은 아직 완료되지 않았습니다. 3D 가장자리가 연결되는 방식에 대한 정보를 통합해야 합니다. 예를 들어, 이미지에서 두 개의 2D 선이 수렴하는 경우 접합점에서 깊이가 같은 가장자리에 해당할 가능성이 높습니다. 이러한 일치하는 3D 에지를 지원하는 추가 연결을 도입하여 이러한 기대치를 나타낼 수 있습니다.

또한 직각으로 결합되는 3D 모서리의 일반적인 발생을 활용할 수 있습니다. 깊이가 일치하고 직각을 형성하는 두 개의 3D 가장자리 사이에 더 강력한 연결을 설정하여 응집력 있는 관계를 나타낼 수 있습니다. 두꺼운 녹색 선으로 표시되는 이러한 연결은 세계의 가장자리가 어떻게 연결되고 일관된 3D 개체의 형성에 기여하는지에 대한 정보를 제공합니다. 이제 우리의 네트워크에는 세계의 가장자리 배열에 대한 지식과 이미지에서 선을 만들기 위해 투영하는 방법에 대한 지식이 포함되어 있습니다. 이 네트워크에 이미지를 입력하면 해석이 생성되어야 합니다. 내가 제시하는 이미지의 경우 Necker 큐브로 알려진 두 가지 뚜렷한 해석이 있습니다. 네트워크는 각각 네커 큐브의 가능한 해석 중 하나에 해당하는 두 개의 에너지 최소값을 나타냅니다.

이 예는 지각 데이터의 해석으로 낮은 에너지 상태를 사용하는 개념을 파악하기 위한 비유 역할을 합니다. Necker 큐브의 뒤집기를 정확하게 설명하는 포괄적인 모델을 구성하는 것은 여기에 설명된 단순화된 시나리오보다 훨씬 더 복잡합니다. 건전한 지각 해석을 나타내기 위해 낮은 에너지 상태를 사용하기로 결정하면 두 가지 주요 과제가 나타납니다. 먼저 숨겨진 유닛이 열악한 로컬 에너지 최소값에 갇히는 것을 방지하는 방법인 검색 문제를 해결해야 합니다. 불량한 최소값은 현재 모델과 가중치를 기반으로 한 최적이 아닌 해석을 반영합니다. 임의의 시작 상태에서 에너지가 단순히 하강하는 것보다 더 나은 접근 방식이 있습니까?

두 번째 과제는 숨겨진 유닛과 보이는 유닛과 숨겨진 유닛 사이의 연결 가중치를 학습하는 훨씬 더 어려운 문제입니다. 학습 과정을 안내하는 외부 감독자가 없다는 점을 고려할 때 이러한 가중치를 조정하는 간단한 학습 알고리즘이 있습니까? 우리의 목표는 네트워크가 합리적인 해석을 나타내는 숨겨진 단위에서 입력을 받고 의미 있는 활동 패턴을 구성하는 것입니다. 이는 상당한 도전 과제입니다.

요약하면 Hopfield 네트워크와 그 에너지 기능을 새로운 방식으로 활용하는 것은 숨겨진 단위를 통합하여 지각 입력의 해석을 도출하는 것과 관련됩니다. 단위 사이의 가중치는 좋은 해석에 대한 제약을 나타내며 낮은 에너지 상태를 찾으면 유리한 해석을 발견할 수 있습니다.

그러나 극복해야 할 과제가 있습니다. 첫 번째 과제는 열악한 지역 에너지 최소값에 갇히는 것을 피하는 검색 문제입니다. 이러한 최소값은 최적이 아닌 해석을 나타내며 효율적인 검색 방법을 찾는 것이 중요합니다. 두 번째 과제는 은닉 유닛 간, 보이는 유닛과 은닉 유닛 간의 연결에 대한 가중치를 학습하는 것입니다. 이 작업은 감독자나 외부 지침이 없기 때문에 복잡합니다. 네트워크가 감각 입력의 의미 있는 해석을 구성할 수 있도록 가중치를 조정하려면 적절한 학습 알고리즘이 필요합니다. 2D 라인 드로잉을 3D 객체로 해석하는 것과 관련된 제공된 예는 해석을 위해 저에너지 상태를 사용하는 개념을 설명하기 위한 비유라는 점에 유의해야 합니다. 보다 복잡한 지각 현상을 처리하기 위한 포괄적인 모델을 구성하려면 보다 복잡한 접근 방식이 필요합니다.

다음 비디오에서는 검색 문제를 탐구하고 에너지 함수의 열악한 로컬 최소값에 갇히지 않도록 잠재적 솔루션을 탐색합니다.

 

강의 11.4 — 확률적 단위를 사용하여 검색 개선



강의 11.4 — 확률적 단위를 사용하여 검색 개선 [머신 러닝을 위한 신경망]

이 비디오에서는 시스템에 노이즈를 추가하여 로컬 최소값을 벗어나는 데 어떻게 도움이 되는지 설명합니다. 특히 노이즈를 적절한 방식으로 Hopfield net의 단위에 통합하는 방법을 보여드리겠습니다.

Hopfield net은 항상 에너지를 줄이는 결정을 내립니다. 이로 인해 로컬 최소값에서 벗어나기가 어렵습니다. 로컬 최소값에 갇히면 더 나은 최소값에 도달하기 위해 에너지 장벽을 극복할 수 없습니다.

그러나 랜덤 노이즈를 추가하면 열악한 최소값, 특히 얕고 상당한 에너지 장벽이 부족한 최소값에서 벗어날 수 있습니다. 가장 효과적인 전략은 높은 수준의 노이즈로 시작하여 거친 규모로 공간을 탐색하고 일반적으로 양호한 영역을 찾는 것입니다. 소음 수준이 감소함에 따라 초점은 가장 근접한 최소값으로 이동합니다.

모의 어닐링은 소음 수준을 점진적으로 줄여 시스템을 최소 수준으로 유도하는 기술입니다. 물리적 또는 시뮬레이션 시스템에서 온도를 활용합니다. 온도가 높을수록 에너지 환경이 평평해져 장벽을 쉽게 넘을 수 있고 온도가 낮을수록 최소값에서 다른 최소값으로의 전환을 선호하는 확률의 비율이 향상됩니다.

Hopfield 네트워크에 노이즈를 도입하기 위해 이진 임계값 단위를 편향된 무작위 결정을 내리는 이진 확률 단위로 대체합니다. 소음 수준은 온도라는 매개변수로 제어됩니다. 소음 수준을 높이면 구성 간의 에너지 격차가 줄어듭니다.

볼츠만 기계의 맥락에서 열 평형의 개념을 이해하는 것이 중요합니다. 고정된 온도에서 열평형은 에너지 함수에 의해 결정되는 고정 분포로 안정화되는 확률 분포를 나타냅니다. 열 평형 상태의 구성 확률은 에너지 마이너스의 거듭제곱에 비례합니다.

열 평형에 도달하려면 동일한 가중치로 여러 확률적 시스템을 실행하고 확률적 업데이트 규칙을 적용해야 합니다. 개별 시스템이 구성을 계속 변경하더라도 각 구성의 시스템 비율은 일정하게 유지됩니다. 이는 대규모 카지노에서 카드 팩을 뒤섞어 초기 주문이 무의미해지고 가능한 각 주문에 같은 수의 팩이 있을 때까지 섞는 것과 유사합니다.

모의 어닐링은 로컬 옵티마를 극복하기 위한 강력한 방법이지만 Boltzmann 기계를 이해하는 데 방해가 될 수 있으므로 이 과정에서는 더 이상 논의하지 않습니다. 대신 온도가 1인 이진 확률 단위(표준 로지스틱 함수)가 사용됩니다.

Hopfield net 및 Boltzmann 기계와 같은 시스템에 노이즈를 추가하면 로컬 최소값을 벗어나 더 유리한 영역을 탐색하는 데 도움이 될 수 있습니다. 소음 수준은 온도에 의해 제어되며 열 평형에 도달하는 것은 개별 시스템이 상태를 계속 변경하는 동안 일정하게 유지되는 각 구성의 시스템 비율을 포함합니다.