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

 

강의 11.5 — Boltzmann 기계가 데이터를 모델링하는 방법



강의 11.5 — Boltzmann 머신이 데이터를 모델링하는 방법 [머신 러닝을 위한 신경망]

이 비디오에서는 볼츠만 머신이 이진 데이터 벡터를 모델링하는 방법을 설명합니다. 먼저 이진 데이터 벡터를 모델링하는 이유와 그러한 모델의 잠재적인 응용에 대해 논의할 것입니다. 그런 다음 이진 데이터 벡터에 할당된 확률이 볼츠만 머신의 가중치에 의해 어떻게 결정되는지 살펴보겠습니다.

히든 유닛이 있는 확률적 홉필드 네트워크라고도 하는 볼츠만 머신은 이진 데이터를 모델링하는 데 효과적입니다. 은닉 유닛을 활용하여 이 기계는 이진 훈련 벡터 세트에 모델을 맞출 수 있고 가능한 모든 이진 벡터에 확률을 할당할 수 있습니다.

이진 데이터를 모델링하기 위한 몇 가지 실용적인 응용 프로그램이 있습니다. 예를 들어, 이진 벡터의 분포가 서로 다른 경우 새 이진 벡터가 속한 분포를 결정할 수 있습니다. 숨겨진 단위를 사용하여 각 문서 유형에 대한 분포를 모델링하면 주어진 이진 벡터에 대해 가장 가능성이 높은 문서 클래스를 식별할 수 있습니다.

또한 Boltzmann 기계는 복잡한 시스템을 모니터링하고 비정상적인 동작을 감지하는 데 유용할 수 있습니다. 발전소의 상태를 나타내는 다양한 다이얼의 이진법 판독값이 있는 원자력 발전소가 있다고 가정합니다. 위험한 상태의 예가 필요한 감독 학습에 의존하는 대신 정상 상태의 모델을 구축하고 표준에서 벗어난 편차를 감지할 수 있습니다. 이러한 방식으로 이러한 상태에 대한 사전 지식 없이 비정상적인 상태를 식별할 수 있습니다.

특정 분포가 관찰된 데이터를 생성한 사후 확률을 계산하기 위해 베이즈 정리를 사용할 수 있습니다. 관찰된 데이터가 주어지면 특정 모델에서 나올 확률은 모델이 해당 데이터를 생성할 확률을 모든 모델에 대해 동일한 수량의 합계로 나눈 값입니다.

데이터 모델, 특히 이진 벡터를 생성하는 두 가지 주요 접근 방식이 있습니다. 인과 모델 접근 방식은 먼저 잠재 변수의 상태를 생성한 다음 이진 벡터를 생성하는 데 사용됩니다. 이 모델은 잠재 단위와 가시 단위 사이의 가중 연결 및 편향에 의존합니다. 요인 분석은 연속 변수를 사용하는 인과 모델의 예입니다.

반면 볼츠만 머신은 인과적으로 데이터를 생성하지 않는 에너지 기반 모델입니다. 대신, 보이는 단위와 숨겨진 단위의 결합 구성 에너지 측면에서 모든 것을 정의합니다. 접합 구성의 확률은 에너지 측면에서 직접 정의되거나 열 평형에 도달할 때까지 확률적 이진 단위를 업데이트한 후 절차적으로 계산됩니다. 관절 구성의 에너지는 바이어스 항, 보이는-보이는 상호 작용, 보이는-숨겨진 상호 작용 및 숨겨진-숨겨진 상호 작용으로 구성됩니다.

서로 다른 보이는 벡터의 확률을 계산하기 위해 예제를 통해 작업할 수 있습니다. 보이는 단위의 모든 가능한 상태를 기록하고, 음의 에너지를 계산하고, 해당 에너지를 지수화하고, 확률을 정규화함으로써 관절 구성 및 개별 가시 벡터의 확률을 결정할 수 있습니다.

대규모 네트워크의 경우 기하급수적인 용어 수로 인해 파티션 함수를 계산할 수 없게 됩니다. 이러한 경우 Markov chain Monte Carlo 방법을 사용하여 모델에서 샘플을 얻을 수 있습니다. 에너지 갭을 기반으로 단위를 확률적으로 업데이트함으로써 고정 분포에 도달하고 모델에서 샘플을 얻을 수 있습니다. 표본의 확률은 음의 에너지의 거듭제곱에 비례합니다.

또한 학습에 필요한 데이터 벡터가 주어진 숨겨진 구성에 대한 사후 분포에서 샘플을 얻는 데 관심이 있을 수 있습니다. 데이터 벡터에 고정된 가시적 단위와 함께 Markov 체인 Monte Carlo를 사용하여 숨겨진 단위만 업데이트하고 사후 분포에서 샘플을 얻을 수 있습니다. 이 정보는 관찰된 데이터에 대한 좋은 설명을 찾고 학습 프로세스를 안내하는 데 중요합니다.

Boltzmann 기계에서 학습하는 과정에는 훈련 데이터에 대한 모델의 적합도를 개선하기 위해 가중치와 편향을 조정하는 작업이 포함됩니다. 이 학습 프로세스는 일반적으로 Contrastive Divergence라는 알고리즘을 통해 달성됩니다.

Contrastive divergence는 로그 우도 함수의 기울기를 추정하는 데 사용되는 근사 방법입니다. 이를 통해 Boltzmann 기계의 가중치와 편향을 효율적으로 업데이트할 수 있습니다. Contrastive divergence의 기본 아이디어는 Gibbs 샘플링의 몇 단계를 수행하는 것입니다. 여기에는 데이터 벡터에서 시작하여 숨겨진 단위 업데이트와 보이는 단위 업데이트 간에 번갈아 가며 수행됩니다.

은닉 유닛을 업데이트하기 위해 가시 유닛과 은닉 유닛의 공동 구성 에너지에 의해 결정된 확률을 기반으로 상태를 샘플링할 수 있습니다. 그런 다음 숨겨진 유닛의 새로운 상태를 기반으로 보이는 유닛을 업데이트합니다. 이 프로세스는 Markov 체인이 대략적인 평형에 도달할 때까지 몇 번 반복됩니다.

숨겨진 구성에 대한 사후 분포에서 샘플을 얻은 후에는 이를 사용하여 보이는 유닛과 숨겨진 유닛 간의 긍정적 및 부정적 연관성을 계산할 수 있습니다. 양의 연관성은 데이터 벡터와 샘플링된 숨겨진 구성의 외부 제품을 취하여 계산됩니다. 음의 연관성은 유사한 방식으로 계산되지만 Gibbs 샘플링 프로세스에서 얻은 가시적 단위를 사용합니다.

양의 연관성과 음의 연관성 사이의 차이를 취함으로써 로그 우도 함수의 기울기를 계산할 수 있습니다. 그런 다음 이 그래디언트는 확률적 그래디언트 디센트와 같은 학습 규칙을 통해 볼츠만 머신의 가중치와 편향을 업데이트하는 데 사용됩니다.

학습 프로세스는 대조적 발산을 반복적으로 적용하고, 사후 분포에서 샘플링하고, 가중치와 편향을 업데이트하여 계속됩니다. 시간이 지남에 따라 Boltzmann 기계는 교육 데이터에 있는 기본 패턴 및 분포를 캡처하는 방법을 학습합니다.

Boltzmann 기계를 훈련시키는 것은 특히 숨겨진 단위가 많은 대규모 네트워크의 경우 어려운 작업이 될 수 있다는 점에 유의하는 것이 중요합니다. 계산 복잡도는 단위 수에 따라 기하급수적으로 증가하여 정확한 계산을 수행하기 어렵습니다. 그러나 Contrastive divergence와 같은 근사 방법은 Boltzmann 기계 학습을 위한 실용적인 솔루션을 제공합니다.

볼츠만 머신에서 학습하는 것은 대수 우도 함수의 그래디언트를 근사화하는 대조 발산을 통해 가중치와 편향을 조정하는 것과 관련됩니다. 사후 분포에서 반복적으로 샘플링하고 모델 매개변수를 업데이트함으로써 Boltzmann 기계는 이진 데이터의 기본 패턴을 모델링하는 방법을 학습할 수 있습니다.

 

강의 12.1 — Boltzmann 기계 학습



강의 12.1 — Boltzmann 기계 학습 [기계 학습을 위한 신경망]

이전 비디오에서 볼츠만 기계를 이진 데이터 벡터의 확률 모델로 사용할 수 있는 방법을 시연했습니다. 이제 Boltzmann 기계 학습 알고리즘에 대해 자세히 살펴보겠습니다.

처음에 Boltzmann 기계 학습 알고리즘은 느리고 시끄러워서 비실용적이었습니다. 그러나 알고리즘의 속도를 크게 높여 보다 실용적이고 효과적으로 만들기 위해 몇 가지 기술이 개발되었습니다. 실제로 백만 달러 규모의 기계 학습 대회에서 성공적으로 사용되었습니다.

Boltzmann 기계 학습 알고리즘은 비지도 학습 알고리즘이므로 레이블이 지정된 데이터가 필요하지 않습니다. 대신 볼츠만 기계가 훈련 벡터에 할당한 확률의 곱을 최대화하여 입력 벡터(또는 출력 벡터) 세트의 모델을 구축하는 것을 목표로 합니다. 이는 로그 확률의 합 또는 학습 사례를 얻을 확률을 최대화하여 달성할 수도 있습니다.

Boltzmann 기계를 훈련하기 위해 외부 입력 없이 고정 분포로 여러 번 정착하는 과정을 따릅니다. 그런 다음 보이는 벡터를 샘플링하고 이 프로세스를 여러 번 반복하여 사후 분포에서 샘플을 얻습니다.

Boltzmann 기계에서 학습하는 것은 가중치 간의 상호 작용으로 인해 어려울 수 있습니다. 각 가중치는 적절한 변경 방향을 결정하기 위해 다른 가중치에 대해 알아야 합니다. 놀랍게도 로컬 정보만을 사용하는 간단한 학습 알고리즘으로 충분합니다. 학습 규칙은 가중치 업데이트에 필요한 정보를 캡처하는 두 상관 관계의 차이를 기반으로 합니다.

학습 규칙은 두 용어로 구성됩니다. 첫 번째 용어는 데이터를 제시할 때 관찰된 단위 활동의 곱에 비례하여 가중치를 증가시킵니다. 이 용어는 Hopfield 네트워크의 저장 용어와 유사합니다. 그러나 제어하지 않으면 가중치가 계속 증가하여 불안정해질 수 있습니다. 두 번째 항은 모델 분포에서 샘플링할 때 단위 활동의 곱에 비례하여 가중치를 줄입니다. 이 용어는 가짜 최소값을 제거하고 안정성을 유지하는 데 도움이 됩니다.

가중치에 대한 가시적 벡터의 로그 확률의 도함수는 매우 간단합니다. 두 개의 연결된 단위 활동의 산물로 표현할 수 있습니다. 이러한 단순성은 로그 확률과 에너지 함수 사이의 선형 관계에서 발생하며, 이는 다시 가중치에서 선형입니다.

학습 과정의 부정적인 단계는 특정 구성의 영향을 잊거나 줄이는 역할을 합니다. 분할 기능에 크게 기여하는 용어의 에너지를 줄이는 데 중점을 두어 영향을 줄입니다.

학습 규칙에 필요한 통계량을 수집하기 위해 Contrastive Divergence라는 방법을 많이 사용한다. 포지티브 단계에서 데이터 벡터는 보이는 단위에 고정되고 숨겨진 단위는 열 평형에 도달할 때까지 업데이트됩니다. 그런 다음 단위 쌍 간의 상관 관계를 샘플링하여 모든 데이터 벡터에 대해 평균화합니다. 네거티브 단계에서는 데이터가 고정되지 않고 네트워크가 외부 간섭 없이 균형을 이룰 수 있습니다. 단위 쌍 간의 상관 관계는 다시 여러 번 샘플링됩니다.

Boltzmann 기계의 에너지 환경에는 여러 모드가 포함될 수 있으므로 음수 단계에서 필요한 반복 횟수를 결정하는 것은 어려울 수 있습니다. 이러한 모드는 유사한 에너지 수준을 가진 다른 구성을 나타내며 이를 효과적으로 캡처하려면 반복 샘플링이 필요합니다.

볼츠만 머신을 다룰 때 네거티브 단계에서 필요한 반복 횟수를 고려하는 것이 중요합니다. 에너지 환경에 여러 모드가 존재하기 때문에 알고리즘은 모든 모드가 적절하게 표현되도록 광범위하게 샘플링해야 합니다.

Boltzmann 기계의 학습 프로세스에는 양수 및 음수 단계에서 얻은 상관 관계를 기반으로 가중치를 반복적으로 업데이트하는 작업이 포함됩니다. 이러한 단계에서 상관 관계를 비교함으로써 알고리즘은 가중치를 조정하여 모델의 데이터 표현을 개선할 수 있습니다.

주목해야 할 한 가지 중요한 측면은 Boltzmann 기계 학습 알고리즘이 Hebbian 학습의 한 형태라는 것입니다. 그것은 1940년대 또는 1950년대에 Donald Hebb가 제안한 원리를 따르며 뇌의 시냅스가 공동 활성화를 기반으로 뉴런 간의 연결을 강화한다고 제안합니다. Boltzmann 기계에서 양의 위상은 Hebb의 아이디어와 유사하게 데이터 프레젠테이션 중에 관찰된 단위 활동의 곱에 비례하여 가중치를 높입니다.

그러나 균형 조정 메커니즘이 없으면 가중치가 무한정 계속 증가하여 불안정하게 됩니다. 음수 단계는 모델 분포에서 샘플링할 때 단위 활동의 곱을 기반으로 가중치를 줄임으로써 이 목적을 수행합니다. 이 균형은 Boltzmann 기계가 학습 과정 중에 안정적으로 유지되도록 합니다.

Boltzmann 기계 학습 알고리즘에는 에너지 함수 및 확률 분포와 관련된 이론적 토대가 있다는 점을 언급할 가치가 있습니다. 열 평형 상태에서 전체 구성의 확률은 에너지의 지수 함수를 따릅니다. 가중치와 로그 확률 사이의 선형 관계는 간단한 파생 계산을 허용하고 효율적인 가중치 업데이트를 용이하게 합니다.

Boltzmann 기계 학습 알고리즘은 입력 또는 출력 벡터의 모델을 구축하는 것을 목표로 하는 감독되지 않은 학습 접근 방식입니다. 훈련 벡터에 할당된 확률을 최대화함으로써 알고리즘은 양의 상관과 음의 상관의 조합을 사용하여 가중치를 조정합니다. Contrastive divergence와 같은 기술과 함께 이 학습 프로세스는 Boltzmann 기계가 데이터에서 복잡한 패턴을 캡처하는 데 도움이 됩니다.

 

강의 12.2 — 통계를 얻는 더 효율적인 방법 [머신 러닝을 위한 신경망


강의 12.2 — 통계를 얻는 더 효율적인 방법 [머신 러닝을 위한 신경망

이 비디오에서 발표자는 Markov 체인을 평형 분포 근처에 유지하고 평균 필드 방법을 활용하는 영리한 기술을 사용하여 Boltzmann 기계 학습 알고리즘의 속도를 높이는 방법에 대한 자세한 정보를 제공합니다. 이 자료는 고급 자료이며 과정 커리큘럼의 일부가 아님을 인정하면서 연사는 시청자에게 Deep Boltzmann 머신을 최적화하는 데 큰 관심이 없다면 이 비디오를 건너뛸 수 있음을 보증합니다.

발표자는 임의의 상태에서 시작할 때 상당한 시간이 걸릴 수 있으므로 열 평형에 도달하는 것과 관련된 문제에 대해 논의합니다. 또한 열 평형에 도달했는지 여부를 쉽게 확인할 수 있는 방법이 없습니다. 이를 해결하기 위해 화자는 특정 데이터 벡터에 대해 이전 반복에서 얻은 상태에서 시작할 것을 제안합니다. "입자"라고 하는 이 저장된 상태는 히든 유닛의 데이터 벡터 해석 역할을 하여 웜 스타트 이점을 제공합니다. 가중치가 최소한으로 업데이트된 경우 입자의 단위를 몇 번만 업데이트하면 다시 평형 상태로 돌아갑니다. 입자는 포지티브 위상(데이터 요소가 클램핑된 경우)과 네거티브 위상(아무것도 클램핑되지 않은 경우) 모두에 사용할 수 있습니다.

통계를 효율적으로 수집하기 위해 발표자는 1992년 Radford Neal의 방법을 소개합니다. 긍정적인 단계에서는 데이터 특정 입자가 사용되며 각 입자는 관련 데이터 벡터와 함께 숨겨진 단위의 구성을 나타냅니다. 관련 데이터 벡터가 고정된 상태에서 각 입자의 숨겨진 유닛에 대해 순차적인 업데이트가 수행됩니다. 연결된 단위 쌍의 확률은 모든 입자에서 평균화됩니다. 네거티브 단계에서는 글로벌 구성을 나타내는 판타지 입자가 활용됩니다. 각 가중치 업데이트 후 각 판타지 입자의 단위가 순차적으로 업데이트됩니다. 다시 말하지만, 연결된 단위 쌍의 확률은 모든 판타지 입자에서 평균화됩니다. 학습 규칙은 데이터와 판타지 입자로 얻은 평균의 차이에 비례하는 가중치의 변화로 정의됩니다.

이 학습 규칙은 전체 배치 학습에 적합하지만 미니 배치에 적용하면 문제가 발생합니다. 미니 배치 학습의 여러 가중치 업데이트로 인해 각 데이터 벡터에 대해 저장된 데이터별 입자가 더 이상 열 평형에 가깝지 않을 수 있습니다. 이 문제를 극복하기 위해 화자는 데이터 벡터가 고정될 때 좋은 설명 세트(데이터 벡터를 해석하는 은닉 유닛의 상태)가 단봉이라는 가정을 제안합니다. 이 가정은 열 평형에 접근하기 위한 효율적인 방법을 제공하는 평균 필드 근사치의 사용을 가능하게 하거나 데이터로 그 근사치를 제공합니다.

볼츠만 머신에서 효율적인 미니 배치 학습을 구현하기 위해 발표자는 심층 볼츠만 머신이라는 특수 아키텍처를 사용할 것을 제안합니다. 이 아키텍처에서는 연결 없는 레이어를 허용하고 건너뛰기 레이어 연결을 생략하여 판타지 입자에 대해 교대 병렬 업데이트가 수행됩니다. 모든 유닛의 상태를 절반만 병렬로 업데이트하면 효율적인 업데이트가 가능합니다.

발표자는 포지티브 위상 학습을 위한 평균 필드와 네거티브 위상을 위한 레이어의 교대 업데이트를 사용하는 심층 볼츠만 머신의 성공적인 적용에 대해 논의합니다. 예를 들어 Russ Salakhutdinov는 이 접근 방식을 사용하여 MNIST 숫자를 모델링했으며 생성된 데이터는 실제 MNIST 데이터 세트와 매우 유사했습니다.

또한 화자는 제한된 수의 부정적인 예(판타지 입자)만으로 부정적인 통계를 추정하는 문제를 해결합니다. 일반적으로 흥미로운 문제에 대한 전역 구성 공간은 고도로 다중 모드입니다. 그러나 학습 프로세스는 음수 통계 수집에 사용되는 Markov 체인과 상호 작용하여 혼합 비율을 효과적으로 높입니다. 화자는 에너지 표면의 모드에서 판타지 입자가 긍정적인 데이터보다 많을 때 에너지가 상승하여 입자가 해당 모드에서 벗어나도록 유도한다고 설명합니다. 학습과 Markov 체인 간의 이러한 상호 작용을 통해 제한된 수의 입자로도 여러 모드를 탐색할 수 있습니다.

Markov 체인의 혼합 속도를 향상시키기 위해 에너지 표면이 조작되는 학습 알고리즘의 이러한 속성은 Boltzmann 기계의 효율성의 중요한 측면입니다. 학습 프로세스는 판타지 입자가 에너지 표면의 다양한 모드를 탐색하도록 적극적으로 유도하여 모델이 Markov 체인만으로는 합리적인 시간 내에 극복하기 위해 고군분투할 로컬 최소값에서 벗어날 수 있도록 합니다.

이 개념을 더 자세히 설명하기 위해 에너지 표면을 다양한 모드를 나타내는 계곡과 언덕이 있는 풍경으로 상상해 보십시오. 판타지 입자는 이 풍경을 탐색하는 탐험가 역할을 합니다. 초기에 일부 모드는 사용 가능한 데이터에 비해 판타지 입자의 농도가 더 높아 해당 지역의 에너지 표면이 높아질 수 있습니다. 학습 알고리즘은 이러한 불일치를 인식하고 에너지 표면을 높여 입자의 움직임을 방해하는 장벽을 효과적으로 만듭니다.

에너지 표면을 높임으로써 학습 알고리즘은 판타지 입자가 인구 과잉 모드에서 벗어나 더 적은 입자로 대체 모드를 찾도록 장려합니다. 에너지 지형의 다른 영역을 탐색함에 따라 입자는 결국 초기 지배적 모드에서 벗어나 데이터 분포에 따라 여러 모드에 걸쳐 분산됩니다.

이 프로세스를 통해 Boltzmann 기계는 에너지 표면의 다양한 모드를 발견하여 기본 데이터 분포의 복잡한 다중 모드 구조를 효과적으로 캡처할 수 있습니다. Markov 체인만으로는 로컬 최소값에서 벗어나는 데 어려움을 겪을 수 있지만 학습 알고리즘에 의한 에너지 표면의 능동적 조작을 통해 다양한 모드를 탐색할 수 있으므로 데이터를 보다 정확하게 표현할 수 있습니다.

요약하면 학습 알고리즘과 음의 통계를 수집하는 데 사용되는 Markov 체인 간의 상호 작용은 Boltzmann 기계의 효율성에 있어 핵심 요소입니다. 학습 프로세스는 에너지 표면을 동적으로 조정하여 판타지 입자가 다른 모드를 탐색하고 로컬 최소값에서 벗어나도록 장려합니다. 에너지 환경을 탐색하는 이 기능은 기본 데이터의 복잡한 분포를 캡처하는 모델의 용량을 향상시켜 성능을 향상시키고 데이터를 보다 정확하게 표현합니다.

 

강의 12.3 — 제한된 볼츠만 기계



강의 12.3 — 제한된 볼츠만 기계 [기계 학습을 위한 신경망]

Boltzmann 기계는 숨겨진 유닛 사이에 연결이 없는 단순화된 아키텍처를 가지고 있어 보이는 유닛이 클램핑될 때 숨겨진 유닛의 평형 분포를 쉽게 계산할 수 있습니다. 볼츠만 기계의 학습 알고리즘은 느리지만 1998년에 제한된 볼츠만 기계(RBM)에 대한 효율적인 학습 알고리즘으로 이어지는 지름길이 발견되었습니다. RBM은 숨겨진 단위의 한 계층과 숨겨진 단위 또는 보이는 단위 사이의 연결이 없는 제한된 연결성을 가지고 있습니다. RBM 아키텍처는 각 단위에 대해 독립적인 계산이 있는 이분 그래프입니다.

바로 가기를 사용하면 보이는 장치와 숨겨진 장치 사이의 예상 연결 값을 병렬로 빠르게 계산할 수 있습니다. 2008년에 도입된 RBM에 대한 학습 알고리즘은 가시적 단위에 데이터 벡터를 고정하고, 연결의 예상 값을 계산하고, 미니 배치의 데이터 벡터에 대해 평균을 구하는 것을 포함합니다. 네거티브 단계에서는 환상 입자(전역 구성)를 사용하여 각 입자를 몇 번 업데이트하고 연결의 예상 값을 환상 입자에 대해 평균화합니다. 이 알고리즘은 이진 벡터에 대해 우수한 밀도 모델을 구축합니다.

RBM에 대한 또 다른 학습 알고리즘은 더 빠르지만 밀도 모델을 구축하는 데 효과적이지 않습니다. 여기에는 보이는 유닛과 숨겨진 유닛 간에 번갈아 업데이트 체인을 실행하는 것이 포함됩니다. 학습 규칙은 체인의 시작과 끝에서 예상되는 연결 값의 차이를 기반으로 가중치를 업데이트합니다. 열 평형에 도달하기 위해 오랜 시간 동안 체인을 실행할 필요는 없습니다. 짧은 사슬이라도 효과적인 학습을 만들어냅니다.

바로 가기는 Markov 체인이 데이터에서 평형 분포를 향해 방황하기 때문에 작동합니다. 가중치를 변경하여 재구성 확률을 낮추고 전체 단계 후 데이터의 확률을 높임으로써 체인이 데이터에서 멀어지는 것을 멈춥니다. 데이터와 재구성이 동일한 분포를 가지면 학습이 중지됩니다. 글로벌 구성 공간의 에너지 표면은 학습 중에 데이터 포인트에서 에너지 최소값을 생성하도록 수정됩니다.

그러나 데이터에서 멀리 떨어진 지역에 대해서는 바로 가기가 실패합니다. 상태를 기억하고 추가 업데이트를 수행하는 영구 입자는 이 문제를 해결하는 데 도움이 될 수 있습니다. 속도와 정확성 사이의 절충안은 작은 가중치로 시작하여 가중치가 커짐에 따라 몇 단계(CD-1, CD-3, CD-5 등)로 대조 발산(CD)을 사용하는 것입니다. 이 접근 방식은 Markov 체인의 혼합 비율이 감소하더라도 효과적인 학습을 유지합니다.

이 접근 방식을 사용하여 RBM(Restricted Boltzmann Machine)에 대한 학습 알고리즘은 속도와 정확도 사이의 균형을 맞춥니다. 작은 가중치로 시작하여 가중치가 점차 증가함에 따라 CD-1과 같이 단계 수가 적은 CD(Contrastive Divergence)를 활용합니다. 이 전략은 Markov 체인의 혼합 속도가 느려지는 경우에도 학습 프로세스가 계속해서 합리적으로 잘 작동하도록 합니다.

모델이 선호하지만 실제 데이터 포인트와는 거리가 먼 데이터 공간의 영역을 고려하는 것이 중요합니다. 저에너지 구멍으로 알려진 이러한 영역은 정규화 항에 문제를 일으킬 수 있습니다. 이를 해결하기 위해 영구 입자라는 기술을 사용할 수 있습니다. 영구 입자는 상태를 유지하고 각 가중치 업데이트 후 추가 업데이트를 거칩니다. 그렇게 함으로써 그들은 이러한 저에너지 구멍을 탐색하고 궁극적으로 채워 모델의 성능을 향상시킬 수 있습니다.

단계 수가 다른 CD 및 영구 입자 사용과 같은 지름길 및 다양한 기술을 사용하는 RBM 학습 알고리즘은 효율적인 학습 및 이진 벡터 세트에 대한 효과적인 밀도 모델 구성을 허용합니다. 지름길은 최대 우도 학습에서 벗어나 이론적 한계가 있지만 실제로는 잘 작동하는 것으로 입증되어 볼츠만 머신 러닝에 대한 관심을 다시 불러일으켰습니다.

 

강의 12.4 — RBM 학습의 예



강의 12.4 — RBM 학습의 예 [머신러닝을 위한 신경망]

이 비디오에서는 필기 2자 모델을 학습하는 제한된 볼츠만 머신(RBM)의 간단한 예를 시연합니다. 모델이 훈련되면 2를 재구성하는 능력을 평가하고 재구성할 다른 숫자가 주어졌을 때의 동작을 관찰합니다. 또한 다양한 숫자 클래스를 재구성하고 모델링하는 데 효과적인 다양한 기능을 학습하는 모든 숫자 클래스에 대해 더 큰 RBM을 훈련하여 얻은 가중치를 검토합니다.

이 예에서 사용된 RBM에는 2개의 16x16 픽셀 이미지와 특징 감지기 역할을 하는 50개의 이진 히든 유닛이 있습니다. 데이터 사례가 제시되면 RBM은 가중치와 픽셀에서 특징 검출기로의 연결을 사용하여 특징 검출기를 활성화합니다. 각 이진 뉴런은 1 또는 0의 상태를 채택하기 위해 확률적 결정을 내립니다. 그런 다음 RBM은 이러한 활성화를 사용하여 각 픽셀에 대한 이진 결정을 만들어 데이터를 재구성합니다. 가중치는 데이터 처리 중에 활성 픽셀과 활성 피쳐 검출기 사이의 가중치를 증가시키고 재구성하는 동안 가중치를 감소시켜 업데이트됩니다.

처음에는 가중치가 무작위이며 재구성이 데이터보다 에너지가 낮습니다. 수백 개의 숫자 예제에 대한 학습과 가중치 조정을 통해 가중치가 점차 패턴을 형성합니다. 많은 기능 감지기는 전역 감지기로 시작하여 훈련이 진행됨에 따라 더욱 지역화됩니다. 최종 가중치는 각 뉴런이 서로 다른 특징 감지기가 되었으며 대부분의 감지기는 본질적으로 로컬임을 나타냅니다. 예를 들어, 특징 검출기는 2의 상단이 있을 때 흰색 픽셀을 활성화하고 아무것도 없을 때 검은 픽셀을 활성화하여 2의 상단을 감지할 수 있습니다.

모델을 학습한 후 재구성 능력을 평가할 수 있습니다. 2의 테스트 예제가 주어지면 재구성은 약간 흐릿하지만 일반적으로 충실합니다. 그러나 3과 같은 다른 숫자 클래스의 테스트 예제를 제공하면 RBM은 3이 아닌 2와 유사한 이미지를 재구성합니다. 이 동작은 RBM이 주로 2자리에 특정한 특징 감지기를 학습했고 다른 숫자의 특정 특성에 대한 감지기가 부족하기 때문에 발생합니다.

또한 모든 10자리 클래스에 대해 교육된 더 큰 RBM의 첫 번째 숨겨진 계층에서 학습된 기능 감지기를 보여줍니다. 이러한 특징 검출기는 다양한 패턴을 나타냅니다. 일부는 사선과 같은 특정 기능을 감지하는 반면 다른 일부는 데이터 정규화로 인해 도입된 장거리 또는 공간 규칙성을 캡처합니다. 전반적으로 RBM은 입력 데이터에서 기능을 표현하고 감지하는 복잡한 방법을 학습하는 기능을 보여줍니다.

또한 이 데모에서 사용된 RBM은 500개의 히든 유닛으로 구성되어 10자리 클래스를 모두 모델링할 수 있다는 점을 지적하고 싶습니다. 이 모델은 Contrastive Divergence라는 기술을 사용하여 광범위한 교육을 받았습니다. 그 결과 다양한 특징 검출기 세트를 획득했습니다.

은닉층의 특징 검출기를 조사하면서 흥미로운 패턴을 관찰했습니다. 예를 들어, 대각선의 존재를 감지하는 데 적합해 보이는 파란색 상자로 표시된 특징 감지기가 있습니다. 반면에 빨간색 상자의 특징 검출기는 독특한 특성을 나타냅니다. 이미지 하단에 매우 가까운 픽셀을 활성화하는 것을 선호하고 하단에서 21픽셀 위에 위치한 특정 행의 픽셀을 싫어합니다. 이 동작은 숫자가 20픽셀 높이를 초과할 수 없는 데이터의 정규화에서 비롯됩니다. 결과적으로 양의 가중치 영역에서 활성화된 픽셀은 음의 가중치 영역에서 동시에 활성화될 수 없으므로 이러한 장거리 규칙성이 학습됩니다.

또한 녹색 상자로 강조 표시된 또 다른 특징 탐지기는 흥미로운 속성을 보여줍니다. 수직 스트로크의 하단 위치를 감지하고 중간 위치를 무시하면서 여러 위치에서 감지할 수 있습니다. 이 동작은 이진수의 최하위 숫자와 유사하며 숫자의 크기가 증가함에 따라 활성 및 비활성이 번갈아 나타납니다. 이는 공간 관계 및 위치의 복잡한 표현을 개발하는 RBM의 능력을 보여줍니다.

이러한 예는 입력 데이터에서 의미 있는 기능을 학습하고 추출하는 RBM의 능력을 보여줍니다. 학습 과정에서 가중치를 조정함으로써 RBM은 재구성을 위해 더 높은 에너지를 유지하면서 데이터가 낮은 에너지를 갖도록 하는 것을 목표로 합니다. 이 학습 메커니즘을 통해 RBM은 숫자 이미지를 효과적으로 모델링하고 재구성하여 학습된 표현에서 숫자의 전역 및 로컬 기능을 모두 캡처할 수 있습니다.

 

강의 12.5 — 협업 필터링을 위한 RBM



강의 12.5 — 협업 필터링을 위한 RBM [머신 러닝을 위한 신경망]

이 비디오에서는 특히 Netflix 경쟁의 맥락에서 협업 필터링에 RBM(Restricted Boltzmann Machines)을 적용하는 방법에 대해 논의합니다. 협업 필터링은 사용자가 다른 제품에 대한 선호도와 다른 사용자의 선호도를 기반으로 제품을 얼마나 좋아할지 예측하는 것입니다. Netflix 경쟁에서는 참가자가 다른 영화에 대한 평가를 기반으로 사용자가 영화를 얼마나 좋아할지 예측해야 합니다.

이 경쟁을 위한 훈련 데이터는 50만 명의 사용자가 18,000개의 영화에 대한 1억 개의 평가를 가진 대규모 데이터 세트로 구성됩니다. 대부분의 영화에 대한 누락된 등급 문제를 해결하기 위해 RBM을 사용할 때 중요한 트릭이 사용됩니다. 이 트릭을 활용하면 모델을 효과적으로 훈련할 수 있으며 경쟁에서 우승한 항목에서 알 수 있듯이 실제로 유용함을 입증할 수 있습니다.

협업 필터링에 RBM을 사용하는 접근 방식은 각 사용자를 영화 등급의 벡터로 표시되는 교육 사례로 취급하는 것입니다. 각 동영상에 대해 이진 단위 대신 5개의 대체 값(5방향 softmax)이 있는 표시 단위가 사용됩니다. RBM 아키텍처는 영화를 나타내는 가시적 단위와 이진 숨겨진 단위로 구성됩니다. RBM은 동일한 영화를 평가한 사용자 간에 가중치를 공유하므로 가중치를 공유하고 매개변수 수를 줄일 수 있습니다. CD(contrastive divergence) 학습은 처음에는 CD1로, 나중에는 CD3, CD5 및 CD9로 RBM을 훈련하는 데 적용됩니다.

RBM 모델은 협업 필터링에서 일반적으로 사용되는 행렬 분해 방법과 유사하게 수행됩니다. 그러나 서로 다른 오류가 발생합니다. RBM의 예측과 행렬 분해 모델의 예측을 결합하면 상당한 개선이 이루어집니다. Netflix 경쟁에서 우승한 그룹은 앙상블에서 여러 RBM 모델과 행렬 분해 모델을 활용하여 더 나은 예측을 달성했습니다.

요약하면 Netflix 경쟁을 위한 협업 필터링에 RBM(Restricted Boltzmann Machines)을 적용하는 것은 영화를 나타내는 가시적 단위와 이진 히든 유닛이 있는 RBM을 사용하여 각 사용자를 교육 사례로 취급하는 것과 관련이 있습니다. RBM은 동일한 영화를 평가한 사용자 간의 가중치 공유를 활용하여 대규모 데이터 세트를 효과적으로 처리할 수 있습니다.

RBM은 CD1, CD3, CD5 및 CD9를 반복하는 CD 학습을 사용하여 훈련되었으며 협업 필터링에서 일반적으로 사용되는 행렬 분해 모델과 유사하게 수행되었습니다. 그러나 RBM과 행렬 분해 모델의 조합으로 예측이 크게 향상되었습니다. Netflix 경쟁에서 우승한 항목은 앙상블에서 여러 RBM 모델과 행렬 분해 모델을 사용하여 이 접근 방식의 효과를 보여주었습니다.

협업 필터링에서 RBM을 활용하면 수백만 개의 등급이 있는 Netflix 데이터 세트와 같은 크고 희소한 데이터 세트를 처리할 수 있는 기능을 보여줍니다. 사용자와 영화 간의 관계를 모델링함으로써 RBM은 정확한 예측을 하고 추천 시스템을 개선하기 위한 강력한 도구를 제공합니다.

협업 필터링에서 RBM의 성공적인 적용은 기계 학습 및 추천 시스템 분야에서 RBM의 유용성을 보여주고 예측 정확도를 더욱 향상시키기 위해 앙상블 접근 방식을 활용할 가능성을 강조합니다.

 

강의 13.1 — 역전파의 기복



강의 13.1 — 역전파의 기복 [머신 러닝을 위한 신경망]

비디오는 역전파의 역사에 대해 논의하고 1970년대와 1980년대의 기원과 1990년대에 역전파가 선호되지 않은 이유를 강조합니다. 이는 비선형 기능의 여러 계층을 처리할 수 없기 때문에 역전파가 실패했다는 대중적인 믿음에 도전합니다. 대신, 포기의 주된 이유는 제한된 컴퓨팅 성능과 당시 사용 가능한 작은 데이터 세트였습니다.

역전파는 1960년대 후반 Bryson과 Ho, 1974년 Paul Wallace, 1981년 Rama Hart와 Williams, 1985년 David Parker와 Youngocar를 포함하여 여러 연구자들에 의해 독립적으로 여러 번 발명되었습니다. 처음에는 특정 작업에 대해 잘 작동하지 않았습니다. 연구자들이 그것을 포기하게 만듭니다. 그러나 1986년에 한 논문에서 비선형 특징 검출기의 여러 계층을 학습할 수 있는 가능성을 보여주었습니다.

1990년대 후반까지 대부분의 기계 학습 연구자들은 역전파를 포기하고 대신 지원 벡터 기계(SVM)를 선호했습니다. 대중적인 설명은 역전파가 여러 숨겨진 계층과 순환 네트워크로 인해 어려움을 겪었다는 것입니다. 그러나 역사적 관점에서 실패의 진짜 이유는 제한된 컴퓨팅 성능과 작은 레이블이 지정된 데이터 세트로 인해 시각 및 음성과 같은 복잡한 작업에서 역전파가 빛을 발하지 못했습니다.

다양한 유형의 기계 학습 작업에는 서로 다른 요구 사항이 있습니다. 통계에서 잡음이 있는 저차원 데이터는 실제 구조를 잡음과 분리해야 합니다. 베이지안 신경망은 이를 잘 처리할 수 있는 반면 역전파와 같은 비 베이지안 신경망은 그다지 효과적이지 않습니다. 이러한 작업에는 서포트 벡터 머신과 가우시안 프로세스가 더 적합합니다. 인공 지능에서 복잡한 구조의 고차원 데이터는 적절한 표현을 찾아야 하며 역전파는 여러 계층과 충분한 계산 능력을 활용하여 학습할 수 있습니다.

서포트 벡터 머신의 한계에 대해 논의하며 커널 트릭이 있는 퍼셉트론의 확장으로 간주된다는 점에 주목합니다. 비적응 기능과 하나의 적응 가중치 계층에 의존합니다. 그들은 잘 작동하지만 여러 계층의 표현을 배울 수 없습니다. 비디오는 또한 1995년의 역사적 문서인 역전파로 훈련된 큰 신경망의 이론적 이해와 향후 사용에 관한 Larry Jackel과 Vladimir Vapnik 간의 내기를 간략하게 언급합니다. 궁극적으로 베팅의 양측 모두 잘못된 것으로 판명되었습니다. 한계가 이론적이라기보다는 실용적이었기 때문입니다.

1990년대 역전파의 실패는 고유한 능력보다는 컴퓨팅 능력의 한계와 작은 데이터 세트에 기인할 수 있습니다. 여전히 복잡한 작업에 대한 잠재력이 있었고 더 큰 데이터 세트와 더 강력한 컴퓨터를 사용할 수 있게 되면서 결국 성공했습니다. 이 비디오는 적절한 알고리즘을 선택할 때 다양한 기계 학습 작업과 특정 요구 사항을 고려하는 것의 중요성을 강조합니다.

 

강의 13.2 — 믿음의 그물



강의 13.2 - 신념망 [기계 학습을 위한 신경망]

나는 1990년대에 역전파가 그 당시에는 부족했던 수많은 레이블에 의존했기 때문에 포기했습니다. 그러나 명시적인 레이블이 거의 없는 학습의 성공에 영감을 받았습니다. 광범위한 레이블 없이 경사하강법 학습의 이점을 유지하기 위해 대체 목적 함수를 탐색했습니다. 레이블을 예측하기보다 입력 데이터를 모델링하는 것을 목표로 하는 생성 모델은 이러한 추구와 잘 일치합니다. 이산 그래프 구조와 실제 가치 계산을 결합한 개념인 그래픽 모델은 통계 및 인공 지능에서 유망한 접근 방식으로 부상했습니다. Boltzmann 기계는 무방향 그래픽 모델의 초기 예였지만 1992년 Bradford Neil은 Boltzmann 기계와 유사한 단위를 사용하는 Sigmoid Belief Nets라는 지시 그래픽 모델을 도입했습니다. 문제는 이러한 시그모이드 신념망을 학습하는 방법이었습니다.

학습 시그모이드 신념 Nets는 여러 문제에 직면했습니다. 숨겨진 레이어가 여러 개인 딥 네트워크는 느린 학습으로 인해 어려움을 겪었습니다. 잘못된 가중치 초기화가 이 문제에 기여한 것으로 밝혀졌습니다. 역전파는 또한 차선의 로컬 옵티마에 갇히는 경향이 있었는데, 이는 합리적으로 양호하지만 딥 넷에 대한 최적과는 거리가 멀었습니다. 볼록 최적화를 허용하는 더 간단한 모델로 후퇴하는 것이 가능했지만 실제 데이터의 복잡성을 해결하지는 못했습니다. 이러한 한계를 극복하기 위해 비지도 학습이 해결책으로 등장했습니다. 비지도 학습을 사용함으로써 가중치 조정을 위한 기울기 방법과 확률적 미니 배치 하강법의 효율성과 단순성을 활용할 수 있습니다. 그러나 초점은 입력-출력 관계가 아닌 감각 입력의 구조를 모델링하는 것으로 이동했습니다. 가중치는 관찰된 감각 입력을 생성하는 생성 모델의 확률을 최대화하도록 조정됩니다.

추론 문제와 학습 문제라는 두 가지 주요 문제가 발생했습니다. 추론 문제는 관찰되지 않은 변수의 상태를 추론하는 것과 관련이 있으며, 이러한 변수가 서로 독립적이지 않다는 점에서 이러한 변수에 대한 확률 분포를 유도하는 것을 목표로 합니다. 학습 문제는 네트워크가 훈련 데이터를 생성할 가능성을 높이기 위해 변수 간의 상호 작용을 조정하는 것과 관련이 있습니다. 어떤 노드가 다른 노드에 영향을 미치고 그 효과의 강도를 결정해야 했습니다.

그래픽 모델과 신경망의 결합에는 고유한 역학이 있었습니다. 초기 그래픽 모델은 추론 문제를 해결하기 위해 전문가가 정의한 그래프 구조와 조건부 확률에 의존했습니다. 반면에 신경망은 학습을 우선시하고 수동 배선 지식을 피했습니다. 신경망은 쉬운 추론을 위한 해석 가능성과 희소한 연결성이 부족했지만 훈련 데이터로부터 학습할 수 있는 이점이 있었습니다. 그러나 신념망의 신경망 버전이 개발되었습니다. 이상화된 뉴런을 사용하여 생성 모델을 구성할 때 에너지 기반 모델과 인과 모델의 두 가지 유형이 등장했습니다. 에너지 기반 모델은 이진 확률 뉴런 사이의 대칭 연결을 활용하여 Boltzmann 기계를 생성했습니다. Boltzmann 기계를 학습하는 것은 어려운 것으로 판명되었지만 연결을 제한하면 제한된 Boltzmann 기계에 대한 학습이 더 쉬워졌습니다. 그러나 이 접근 방식은 여러 숨겨진 레이어가 있는 신경망의 성능을 제한했습니다. 이진 확률 뉴런이 있는 방향성 비순환 그래프를 사용하는 인과 모델은 시그모이드 신념망을 생성했습니다. 1992년에 Neil은 시그모이드 신념망이 볼츠만 기계에 비해 약간 더 배우기 쉽다는 것을 보여주었습니다. 시그모이드 신념 네트워크에서 모든 변수는 이진 확률적 뉴런이며 데이터 생성에는 레이어별로 확률적 결정을 내리는 것이 포함되어 궁극적으로 눈에 보이는 값의 편향되지 않은 샘플을 생성합니다.

인과 모델 또는 하이브리드 접근 방식을 채택함으로써 역전파의 한계를 극복하고 감독되지 않은 학습을 활용하여 감각 입력의 구조를 효과적으로 모델링할 수 있습니다.

뉴런으로 구성된 인과적 신념망을 탐구하기 전에 인공 지능(AI)과 확률 사이의 관계에 대한 배경 지식을 제공하는 것이 필수적입니다. 1970년대와 1980년대 초반에는 AI 커뮤니티 내에서 확률에 대한 강한 저항이 있었습니다. 확률은 바람직하지 않은 것으로 간주되었으며 AI 연구원은 확률 요소를 통합하지 않고 개별 기호 처리를 선호했습니다. 그러나 주목할만한 예외는 형식 논리와 열역학, 특히 Boltzmann의 작업 사이의 연결 가능성을 인식한 John von Neumann이었습니다. 불행하게도, 폰 노이만의 아이디어는 그의 생애 동안 관심을 끌지 못했습니다.

결국 확률은 그래프 이론과 확률 이론을 결합한 그래픽 모델의 개발을 통해 AI에 적용되었습니다. 1980년대에 AI 연구원들은 의학적 진단이나 광물 탐사와 같은 불확실성과 관련된 실용적인 문제를 연구하고 있었습니다. 확률에 대한 혐오감이 있었지만 확률을 사용하는 것이 임시 방법보다 더 효과적이라는 것이 분명해졌습니다. Perl Hackerman Lauritzen 등이 도입한 그래픽 모델은 그래프 구조를 기반으로 불확실성을 나타내고 확률적 계산을 수행하기 위한 프레임워크를 제공했습니다.

그래픽 모델은 다양한 유형의 모델을 포함하며 하나의 하위 집합은 신념망입니다. 신념망은 확률적 변수로 구성된 방향성 비순환 그래프입니다. 이러한 그래프에는 노드가 희박하게 연결된 경우가 많으며 관찰되지 않은 노드의 확률을 계산하는 효율적인 추론 알고리즘을 허용합니다. 그러나 이러한 알고리즘은 조밀하게 연결된 네트워크에 적용될 때 기하급수적으로 복잡해집니다.

신념망은 생성 모델 역할을 하며 추론 문제는 관찰되지 않은 변수의 상태를 결정하는 것과 관련되어 이러한 변수에 대한 확률 분포를 초래합니다. 학습 문제는 관찰된 학습 데이터를 생성할 가능성을 높이기 위해 변수 간의 상호 작용을 조정하는 데 중점을 둡니다.

신경망의 맥락에서 그래픽 모델과 신경망 사이에는 연결이 있습니다. 초기 그래픽 모델은 전문가가 정의한 그래프 구조와 조건부 확률에 의존하여 주로 추론 문제를 해결했습니다. 반면 신경망은 훈련 데이터로부터의 학습을 강조하고 손으로 만든 지식을 피했습니다. 신경망은 해석 가능성과 희소한 연결성이 부족했지만 학습을 통한 적응성의 이점을 제공했습니다.

이상화된 뉴런으로 생성 모델을 구축하기 위해 두 가지 주요 유형을 고려할 수 있습니다. Boltzmann 기계와 같은 에너지 기반 모델은 이진 확률 뉴런을 대칭적으로 연결합니다. 그러나 Boltzmann 기계를 배우는 것은 어려운 일입니다. 또 다른 옵션은 이진 확률적 뉴런으로 구성된 방향성 비순환 그래프를 활용하는 인과 모델입니다. 1992년 Neil은 볼츠만 기계보다 배우기 쉬운 시그모이드 신념망을 도입했습니다. 시그모이드 신념망은 모든 변수가 이진 확률적 뉴런인 인과 모델입니다.

시그모이드 신념망과 같은 인과 모델에서 데이터를 생성하기 위해 최상위 계층에서 시작하여 눈에 보이는 효과까지 계단식으로 계층별로 확률적 결정을 내립니다. 이 프로세스는 신경망의 신념에 따라 눈에 보이는 값의 편향되지 않은 샘플을 생성합니다.

비지도 학습을 채택하고 인과 모델 또는 하이브리드 접근법을 활용함으로써 역전파의 한계를 극복하고 비지도 학습의 힘을 활용하여 감각 입력의 구조를 효과적으로 모델링할 수 있습니다. 이러한 발전은 심층 신경망이 제기하는 문제를 해결하고 보다 정교하고 효율적인 학습 알고리즘을 위한 길을 닦을 수 있는 유망한 방법을 제공합니다.

결론적으로, 신념망과 신경망과의 연결에 대한 탐구는 AI와 확률론적 모델링을 위한 새로운 가능성을 열었습니다. AI에서 확률에 대한 초기 저항은 극복되었으며 그래픽 모델은 불확실성을 나타내고 확률적 계산을 수행하기 위한 강력한 프레임워크로 등장했습니다.

Belief Nets, 특히 S자형 Belief Nets는 Boltzmann 머신과 같은 에너지 기반 모델과 비교하여 생성 모델링에 대한 대체 접근 방식을 제공합니다. 방향성 비순환 그래프와 이진 확률적 뉴런을 활용함으로써 시그모이드 신념 네트워크는 데이터를 생성하고 트레이닝 세트에서 보다 효과적으로 학습할 수 있는 수단을 제공합니다.

비지도 학습과 인과 모델 또는 하이브리드 접근법의 통합은 심층 신경망에서 역전파의 한계를 해결할 수 있는 잠재력을 가지고 있습니다. 감각 입력의 구조를 모델링하고 관찰된 데이터의 확률을 최대화함으로써 이러한 접근 방식은 그라디언트 방법의 효율성과 단순성을 활용하는 동시에 실제 데이터의 복잡성을 캡처하는 방법을 제공합니다.

AI의 진화와 확률의 수용은 이 분야를 재구성하여 연구자들이 보다 강력하고 적응 가능한 모델을 개발할 수 있도록 했습니다. 여정이 계속됨에 따라 확률적 모델링, 신경망 및 비지도 학습의 추가 발전이 등장하여 보다 정교하고 지능적인 AI 시스템으로 이어질 것입니다.

그래픽 모델과 신경망의 강점을 결합함으로써 연구자들은 계속해서 AI의 한계를 뛰어넘어 복잡하고 불확실한 환경에서 이해, 학습 및 의사 결정을 위한 새로운 가능성을 열 수 있습니다.

 

강의 13.3 — 시그모이드 신념망 학습



강의 13.3 — 시그모이드 신념망 학습 [기계 학습을 위한 신경망]

이 동영상은 시그모이드 신념망 학습의 어려움에 대해 논의하고 이러한 문제를 해결하기 위한 두 가지 다른 방법을 소개합니다. 볼츠만 기계와 달리 시그모이드 신념망은 학습을 위해 서로 다른 두 단계를 필요로 하지 않으므로 프로세스가 더 간단해집니다. 로컬로 정규화된 모델이므로 파티션 함수 및 그 파생물을 처리할 필요가 없습니다.

관찰된 데이터가 주어진 숨겨진 단위에 대한 사후 분포에서 편향되지 않은 샘플을 얻을 수 있다면 시그모이드 신념망에서 학습이 쉬워집니다. 그러나 사후분포에 영향을 미치는 "explaining away"라는 현상 때문에 편향되지 않은 표본을 얻기가 어렵습니다. 이 현상은 관찰된 효과가 발생할 때 숨겨진 원인 간의 상관관계가 없기 때문에 발생합니다.

여러 계층의 숨겨진 변수가 있는 깊은 시그모이드 신념망에서 학습하는 것은 훨씬 더 어려워집니다. 숨겨진 변수의 첫 번째 계층에 대한 사후 분포는 설명이 없기 때문에 계승이 아니며 숨겨진 변수 간의 상관 관계는 사전 및 사후 모두에 존재합니다. 첫 번째 계층에 대한 이전 용어를 계산하려면 상위 계층에서 가능한 모든 활동 패턴을 통합해야 하므로 학습 프로세스가 복잡해집니다.

심층 신념망을 학습하는 두 가지 방법인 몬테카를로 방법과 변이 방법에 대해 설명합니다. Monte Carlo 방법은 사후 분포를 근사화하고 샘플을 얻기 위해 Markov 체인을 실행하는 것을 포함합니다. 그러나 크고 깊은 신념 네트워크의 경우 속도가 느릴 수 있습니다. 반면에 변이 방법은 사후에 근사하는 다른 분포에서 근사 샘플을 얻는 것을 목표로 합니다. 편향되지는 않았지만 이러한 샘플은 최대 우도 학습에 계속 사용할 수 있으며 로그 확률의 하한을 높임으로써 데이터 모델링을 개선할 수 있습니다.

시그모이드 신념망에서 학습하는 것은 특히 심층 네트워크에서 문제를 제기하지만 Monte Carlo 방법과 변형 방법은 이러한 어려움을 해결하고 학습을 실현할 수 있는 접근 방식을 제공합니다.

 

강의 13.4 — 깨우기 수면 알고리즘



강의 13.4 — 깨우기 수면 알고리즘 [머신 러닝을 위한 신경망]

깨우기-수면 알고리즘은 시그모이드 신념망과 같은 방향성 그래픽 모델에 사용되는 학습 방법입니다. 각성 단계와 수면 단계의 두 단계로 구성됩니다. 무방향 그래픽 모델에 사용되는 Boltzmann 기계와 달리 깨우기-수면 알고리즘은 S자형 신념망을 위해 특별히 설계되었습니다.

이 알고리즘은 복잡한 그래픽 모델을 학습하기 위해 사후 분포를 근사화하는 기계 학습 접근 방식인 변형 학습의 일부입니다. 종종 어려운 정확한 사후 분포를 계산하는 대신 변이 학습은 더 저렴한 근사치로 이를 근사화합니다. 그런 다음 이 근사값을 기반으로 최대 우도 학습이 적용됩니다.

놀랍게도 학습 프로세스는 두 가지 요인에 의해 여전히 효과적으로 작동합니다. 관찰된 데이터를 생성하는 모델의 능력을 개선하고 실제 사후에 대략적인 사후를 맞추는 것입니다. 이 효과는 변이 학습이 시그모이드 신념망에 잘 작동하도록 합니다.

깨우기-수면 알고리즘은 생성 가중치와 인식 가중치라는 두 세트의 가중치를 사용합니다. 웨이크 단계에서 데이터는 가시층으로 공급되고 인식 가중치를 사용하여 정방향 통과가 수행됩니다. 확률적 바이너리 결정은 각 숨겨진 유닛에 대해 독립적으로 이루어지며 확률적 바이너리 상태를 생성합니다. 이러한 상태는 실제 사후 분포의 샘플로 처리되며 생성 가중치에 최대 우도 학습이 적용됩니다.

수면 단계에서는 과정이 반대로 진행됩니다. 최상위 숨겨진 계층의 임의 벡터에서 시작하여 생성 가중치를 사용하여 각 계층에 대해 이진 상태가 생성됩니다. 목표는 데이터에서 숨겨진 상태를 복구하는 것입니다. 인식 가중치는 이를 달성하기 위해 훈련됩니다.

wake-sleep 알고리즘은 올바른 기울기를 따르지 않는 인식 가중치 및 독립 근사로 인한 잘못된 모드 평균과 같은 결함이 있습니다. 이러한 한계에도 불구하고 Karl Friston과 같은 일부 연구자들은 그것이 뇌가 작동하는 방식과 유사하다고 믿습니다. 그러나 다른 사람들은 미래에 더 나은 알고리즘이 발견될 것이라고 생각합니다.

깨우기-수면 알고리즘은 사후 분포를 근사화하고 깨우기 단계와 수면 단계를 번갈아 가며 생성 모델을 학습합니다. 한계에도 불구하고 기계 학습 분야에서 영향력을 발휘했습니다.

사유: