Linear Regression의 기본개념 중 일부를 알아보고자 한다. 이전 장에서 다항식곡선 fitting맥락에서 간단히 다뤘었다.
Linear Regression모델은 학습가능한 parameter를 갖는 Single Layer 신경망으로 비록 단일 레이어 신경망이 실제 응용에서는 매우 제한적일지라도, 이들은 간단한 분석적 특성을 갖기에 후속 장에서 심층신경망에 대한 논의를 위해 핵심 개념을 알아보자.
1. Linear Regression
prev.
회귀의 목표는 D-차원 벡터 x의 값이 주어졌을 때 하나 이상의 연속적인 목표 변수 t의 값을 예측하는 것입니다. 일반적으로는 N개의 관측치 {xn}, 여기서 n = 1, . . . , N 및 해당하는 목표 값 {tn}으로 이루어진 교육 데이터 세트가 주어지며, 목표는 x의 새로운 값에 대한 t의 값을 예측하는 것입니다.
이를 위해 훈련 데이터에서 학습할 수 있는 매개변수 벡터 w를 나타내는 함수 y(x, w)를 정의합니다. 회귀에 대한 가장 간단한 모델은 입력 변수들의 선형 조합을 포함하는 것입니다: y(x, w) = w0 + w1x1 + ... + wDxD (4.1), 여기서 x = (x1, . . . , x1)T입니다.
때로는 이 형태의 모델을 특별히 선형 회귀라고 합니다. 이 모델의 주요 특성은 w0, ..., wD 매개변수의 선형 함수임입니다. 그러나 이는 또한 입력 변수 xi의 선형 함수이기도 하며, 이는 모델에 중요한 제한을 부여합니다.
1.1 Bias Functions
우리는 (4.1)로 정의된 모델 클래스를 확장함으로써 입력 변수의 고정 비선형 함수의 선형 결합을 고려할 수 있습니다. 이는 다음과 같은 형태의 것입니다. (4.2) 여기서 φj (x)는 기저 함수라고 불립니다. 지수 j의 최대값을 M - 1로 표시하면이 모델의 총 매개 변수 수는 M이 될 것입니다. 매개 변수 w0는 데이터에서 임의의 고정 오프셋을 허용하며 때로는 편향 매개 변수라고도 합니다 (통계적 의미의 편향과 혼동해서는 안 됨). 종종 편의상 값이 φ0(x) = 1인 추가적인 더미 기저 함수를 정의하여 (4.2)가 (4.3)이 되도록 할 수 있습니다. 여기서 w = (w0, ..., wM-1)T 및 φ = (φ0, ..., φM-1)T입니다. 우리는 모델 (4.3)을 Figure 4.1에 나타낸 것처럼 신경망 다이어그램을 사용하여 표현할 수 있습니다. 비선형 기저 함수를 사용함으로써 함수 y(x, w)가 입력 벡터 x의 비선형 함수가 될 수 있도록 허용합니다. 그러나 (4.2) 형태의 함수는 w에 대해 선형이라고 불립니다. 이 매개 변수의 선형성은 이러한 모델 클래스의 분석을 크게 단순화시키는 역할을 합니다. 그러나 이것은 몇 가지 중요한 제한도 야기합니다. 딥 러닝의 출현 이전에 머신 러닝에서는 입력 변수 x의 고정된 전처리 또는 특성 추출이라고도 하는 {φj (x)} 기저 함수 세트를 사용하는 것이 일반적이었습니다. 목표는 결과 학습 작업을 간단한 네트워크 모델을 사용하여 해결할 수 있는 충분히 강력한 기저 함수 세트를 선택하는 것이었습니다. 불행히도 간단한 응용 프로그램 이외의 것에는 적합한 기저 함수를 수동으로 만드는 것은 매우 어려웠습니다. 딥 러닝은 데이터 집합 자체에서 데이터의 필요한 비선형 변환을 학습함으로써 이 문제를 피합니다. 우리는 이미 다항식을 사용한 곡선 피팅을 통해 회귀 문제의 예를 만났습니다. 다항식 함수 (1.1)은 x가 단일 입력 변수이고 기저 함수가 φj (x) = xj로 정의되는 경우 (4.3)의 형태로 표현될 수 있습니다. 기저 함수의 여러 가능한 선택지가 있습니다. 예를 들어 (4.4) 여기서 μj는 입력 공간에서 기저 함수의 위치를 지배하고 매개 변수 s는 공간적 규모를 지배합니다. 이러한 것들은 일반적으로 '가우시안' 기저 함수라고 불리지만 확률적 해석을 갖추어야 하는 것은 아닙니다. 특히 정규화 계수는 중요하지 않습니다. 이러한 기저 함수는 학습 가능한 매개 변수 wj에 의해 곱해지기 때문입니다. 또 다른 가능한 기저 함수 선택은 (4.5)와 같은 시그모이드 기저 함수입니다. 여기서 σ(a)는 (4.6)으로 정의된 로지스틱 시그모이드 함수입니다. 동등하게 로지스틱 시그모이드와 관련이 있는 탄젠트 기저 함수를 사용할 수도 있습니다. 왜냐하면 tanh(a) = 2σ(2a) - 1이기 때문에 로지스틱 시그모이드 함수의 일반적인 선형 조합은 입력-출력 함수의 동일한 클래스를 나타낼 수 있기 때문입니다. Figure 4.2에서 이러한 기저 함수의 다양한 선택지가 설명되어 있습니다. 또 다른 가능한 기저 함수 선택은 삼각 함수의 확장인 푸리에 기저입니다. 각 기저 함수는 특정 주파수를 나타내며 무한한 공간 범위를 가집니다. 반면에 입력 공간의 유한한 영역에 국한된 기저 함수는 다양한 공간 주파수로 이루어져야 합니다. 신호 처리 응용에서는 공간과 주파수 모두에 국한된 기저 함수를 고려하는 것이 흔히 있으며 이는 웨이블릿 (Wavelets)이라는 함수 클래스로 이어집니다(Ogden, 1997; Mallat, 1999; Vidakovic, 1999). 이들은 또한 단순화를 위해 상호 직교로 정의됩니다. 웨이블릿은 입력 값이 시간 순서의 연속적인 시간 점이거나 이미지의 픽셀과 같은 정규 격자 위에 있는 경우에 가장 적합합니다. 그러나 이 장의 대부분의 토론은 기저 함수 세트의 선택과 관련이 없으며, 특별한 기저 함수 형태를 지정하지 않겠습니다. 수치적 설명을 위한 것을 제외하고 표기법을 간단하게 유지하기 위해 여기에서는 단일 대상 변수 t의 경우에 중점을 둘 것입니다. 그러나 간단히 여러 대상 변수를 처리하는 데 필요한 수정 사항을 간략히 소개할 것입니다.
1.2 Likelihood Function
우리는 데이터에 다항 함수를 맞추는 문제를 해결하기 위해 제곱합 오차 함수를 최소화하는 방식으로 접근했으며, 또한 이 오차 함수를 가우시안 노이즈 모델을 가정한 최대 우도 해법으로 도출할 수 있다는 것을 보였습니다. 이제 이 토론으로 돌아가 최소 제곱 방법과 최대 우도와의 관계를 더 자세히 살펴보겠습니다. 이전과 마찬가지로 대상 변수 t가 결정론적 함수 y(x, w)에 가우시안 노이즈가 첨가된 형태로 주어진다고 가정합니다. (4.7)이고, 여기서 ε는 평균이 0이고 분산이 σ2인 가우시안 랜덤 변수입니다. 따라서 (4.8)로 쓸 수 있습니다. 이제 입력값 X = {x1, ..., x1}과 해당하는 대상 값 t1 ..., t1의 데이터 세트를 고려해 봅시다. 대상 변수 {tn}을 t로 나타내는데, 여기서 서체를 사용하여 단일 다변량 대상의 단일 관측값과 구별하도록 합니다. 이러한 데이터 포인트가 (4.8) 분포에서 독립적으로 추출된다는 가정을 하면 매개변수 w와 σ2에 대한 우도 함수의 표현을 얻을 수 있습니다. (4.9)이며, 여기서 (4.3)을 사용했습니다. 우도 함수에 대한 자연로그를 취하고, 단일 변수 가우시안에 대한 표준 형식(2.49)을 사용하면 (4.10)이라는 결과를 얻을 수 있습니다. 여기서 제곱합 오차 함수는 (4.11)에 의해 정의됩니다. (4.10)의 첫 두 항은 w를 결정할 때 상수로 처리될 수 있습니다. 따라서 앞서 본 것처럼 가우시안 노이즈 분포 하에서 우도 함수를 최대화하는 것은 제곱합 오차 함수 (4.11)를 최소화하는 것과 동등합니다.
1.3 Maximum Likelihood
우리가 우도 함수를 작성한 후, 최대 우도를 사용하여 w와 σ2를 결정할 수 있습니다. 먼저 w에 대한 최대화를 고려해 봅시다. 로그 우도 함수 (4.10)의 w에 대한 기울기는 (4.12) 형태를 가집니다. 이 기울기를 제로로 설정하면 (4.13)이 됩니다. w에 대해 풀어주면 (4.14)가 되는데, 이는 최소 제곱 문제에 대한 정규 방정식으로 알려져 있습니다. 여기서 Φ는 N×M 행렬로, 디자인 행렬이라고 불리며 그 원소는 Φnj = φj(xn)로 주어지므로 (4.15)입니다. 양이 (4.16)은 Moore-Penrose 유사 역행렬(Moore–Penrose pseudo-inverse)로 알려져 있습니다 (Rao and Mitra, 1971; Golub and Van Loan, 1996).
이는 정사각형이 아닌 행렬에 대한 행렬 역행렬의 개념을 일반화한 것으로 볼 수 있습니다. 실제로 Φ가 정사각형이고 가역적이면 성질 (AB)−1 = B−1A−1을 사용하여 Φ† ≡ Φ−1임을 알 수 있습니다. 이 시점에서 편향 매개 변수 w0의 역할에 대한 어떤 통찰력을 얻을 수 있습니다. 편향 매개 변수를 명시적으로 만들면 오차 함수 (4.11)는 (4.17)이 됩니다. w0에 대한 도함수를 0으로 설정하고 w0에 대해 풀면 (4.18)이 되며 여기서 (4.19)를 정의했습니다. 따라서 편향 w0은 대상 값의 평균과 기저 함수 값의 가중 평균 간의 차이를 보상합니다. 우리는 또한 분산 σ2에 대한 로그 우도 함수 (4.10)를 최대화할 수 있으며, 이는 (4.20)을 주고 있습니다. 그래서 분산 매개 변수의 최대 우도 값은 회귀 함수 주변의 대상 값의 잔차 분산에 의해 주어집니다.
1.4 Geometry of Least Squares
이 시점에서 최소 제곱 해법의 기하학적 해석을 고려하는 것이 유익합니다. 이를 위해 tn으로 주어진 N 차원 공간을 고려하면 t = (t1, ..., tN)T는 이 공간의 벡터입니다. 각 기저 함수 φj(xn), N 데이터 포인트에서 계산된 것,은 또한 동일한 공간에 벡터로 표현될 수 있으며 이를 φj로 표시합니다. Figure 4.3에서 설명된 것처럼 φj는 Φ의 j번째 열에 해당하며, φ(xn)은 Φ의 nth 행의 전치에 해당합니다. 기저 함수의 수 M이 데이터 포인트 수 N보다 작은 경우, M 개의 벡터 φj(xn)는 차원이 M인 선형 부분 공간 S를 구성합니다. y를 n = 1, ..., N일 때 y(xn, w)로 주어진 N 차원 벡터로 정의합니다. y는 벡터 φj의 임의의 선형 조합이므로 M 차원 부분 공간 어디에든 위치할 수 있습니다. 제곱합 오차 (4.11)는 따라서 y와 t 사이의 제곱 유클리드 거리에 해당합니다(1/2의 배수를 제외하고). 따라서 w에 대한 최소 제곱 해법은 subspace S 내에 위치하고 t에 가장 가까운 y의 선택에 해당합니다. 직관적으로 Figure 4.3에서 이 해법이 t를 subspace S로의 수직 투영에 해당함을 예상할 수 있습니다. 이는 실제로 ΦwML로 y에 대한 해법이 주어지고 이것이 수직 투영의 형태를 취함을 확인함으로써 쉽게 확인할 수 있습니다. 실제로 정규 방정식의 직접적인 해법은 ΦTΦ가 특이에 가까울 때 수치적인 어려움을 야기할 수 있습니다. 특히 두 개 이상의 기저 벡터 φj가 공선성을 띄거나 거의 공선성을 띌 때 결과적인 매개변수 값은 큰 크기를 가질 수 있습니다. 실제 데이터 세트를 다룰 때 이러한 근접한 퇴화는 흔하지 않지 않습니다. 결과적인 수치적인 어려움은 특이 값 분해 또는 SVD (Deisenroth, Faisal, and Ong, 2020) 기술을 사용하여 해결할 수 있습니다. 정규화 항을 추가하면 행렬이 퇴화가 있더라도 특이하지 않음이 보장됩니다.
1.5 Sequential Learning
최대 우도 해법(4.14)은 전체 훈련 세트를 한 번에 처리하는 일괄 처리 방법으로 알려져 있습니다. 이는 대규모 데이터 세트에 대해 계산 비용이 많이 들 수 있습니다. 데이터 세트가 충분히 크다면, 데이터 포인트가 하나씩 고려되고 각 제시 후에 모델 매개변수가 업데이트되는 순차 알고리즘인 순차 알고리즘, 또는 온라인 알고리즘을 사용하는 것이 가치 있을 수 있습니다. 순차 학습은 데이터 관측이 연속적으로 발생하고 모든 데이터 포인트가 볼 때까지 예측이 이루어져야 하는 실시간 응용 프로그램에도 적합합니다. 확률적 경사 하강법, 또는 순차 경사 하강법이라고도 알려진 기술을 적용하여 순차 학습 알고리즘을 얻을 수 있습니다. 오차 함수가 데이터 포인트에 대한 합인 경우 E = ∑nEn, 데이터 포인트 n이 제시된 후 확률적 경사 하강법 알고리즘은 (4.21)을 사용하여 매개변수 벡터 w를 업데이트합니다. 여기서 τ는 반복 횟수를 나타내며, η는 적절히 선택된 학습 속도 매개변수입니다. w의 값은 어떤 시작 벡터 w(0)로 초기화됩니다. 제곱 오차 함수 (4.11)의 경우 이는 (4.22)를 주어지며, 여기서 φn = φ(xn)입니다. 이는 최소 평균 제곱 또는 LMS 알고리즘으로 알려져 있습니다.
1.6 Regularized Least Squares
과적합을 제어하기 위해 오차 함수에 정규화 항을 추가하는 개념을 이전에 소개했습니다. 이로 인해 최소화해야 하는 총 오차 함수는 다음과 같은 형태를 가집니다 (4.23), 여기서 λ는 정규화 계수로 데이터 종속적 오차 ED(w)와 정규화 항 EW(w)의 상대적 중요성을 제어합니다. 정규화 항의 가장 간단한 형태 중 하나는 가중치 벡터 요소들의 제곱의 합으로 주어집니다 (4.24). 만약 우리가 또한 (4.25)에 주어진 제곱 합 오차 함수를 고려한다면, 전체 오차 함수는 다음과 같아집니다 (4.26). 통계에서 이 정규화 항은 매개변수 값을 제로로 수축시키기 때문에 매개변수 수축 방법의 한 예를 제공합니다. 그것은 오차 함수가 여전히 w의 이차 함수로 유지되는 장점이 있으며, 따라서 그 정확한 최소화 값은 닫힌 형식으로 찾을 수 있습니다. 특히 (4.26)의 w에 대한 기울기를 제로로 설정하고 이전과 같이 w에 대해 해결하면 (4.27)을 얻습니다. 이는 최소제곱 솔루션 (4.14)의 간단한 확장을 나타냅니다.
1.7 Multiple Outputs
지금까지 단일 대상 변수 t가 있는 상황을 고려했습니다. 어떤 응용 프로그램에서는 K > 1 대상 변수를 예측하고 싶을 수 있으며, 이들은 대상 벡터 t = (t1 , . . . , tk )T로 통칭합니다. 각 t 구성 요소에 대해 다른 기저 함수 집합을 도입하여 여러 독립적인 회귀 문제로 진행할 수 있습니다. 그러나 더 일반적인 접근 방식은 대상 벡터의 모든 구성 요소를 모델링하는 데 동일한 기저 함수 집합을 사용하는 것입니다. 이로 인해 다음과 같은 형태가 됩니다 (4.28), 여기서 y는 K 차원 열 벡터이고, W는 매개변수의 M × K 행렬이며, φ(x)는 이전과 같이 요소가 φj(x)인 M 차원 열 벡터입니다. 이는 다시 한 계층의 매개변수를 가진 신경망으로 나타낼 수 있습니다. Figure 4.4에 표시된 것처럼입니다. 대상 벡터의 조건부 분포를 형식 (4.29)의 등방성 가우시안으로 취한다고 가정해 봅시다. t1, . . . , t1의 관측치 세트가 있다면 이를 tTn이 주어지는 행렬 T로 결합할 수 있으며, 크기가 N × K인 행렬 X로 x1, ..., xN의 입력 벡터를 결합할 수 있습니다. 그런 다음 로그우도 함수는 (4.30)으로 주어집니다. 이전과 마찬가지로 W에 대해 이 함수를 최대화할 수 있으며, 이는 (4.31)을 제공합니다. 여기서 입력 특징 벡터 φ(x1 ), . . . , φ(xN )을 행렬 Φ로 결합했습니다. 각 대상 변수 tk에 대해 이 결과를 조사하면 (4.32)가 나오며, 여기서 tk는 n = 1, . . . N의 구성 요소 tnk를 갖는 N 차원 열 벡터입니다. 따라서 회귀 문제의 해결은 서로 다른 대상 변수 간에 분리되며 모든 벡터 wk에 공유되는 단일 의사 역행렬 행렬 Φ†만 계산하면 됩니다. 임의의 공분산 행렬을 갖는 일반적인 가우시안 노이즈 분포로의 확장은 간단합니다. 다시 한 번 K 개의 독립적인 회귀 문제로 분리됩니다. 이 결과는 W 매개변수가 가우시안 노이즈 분포의 평균만을 정의하고 있으며, 다변량 가우시안의 평균에 대한 최대 우도 솔루션이 공분산과 독립적이라는 사실을 알고 있기 때문에 예상 가능합니다. 이제부터는 편의상 단일 대상 변수 t만을 고려할 것입니다.
2. Decision Theory
prev.
우리는 회귀 작업을 조건부 확률 분포 p(t|x)를 모델링하는 것으로 정의했으며, 조건부 확률의 특정 형태로는 매개변수 w에 의해 조절되는 x-의존적 평균 y(x, w)과 매개변수 σ2에 의한 분산을 가지는 가우시안(4.8)을 선택했습니다. w와 σ2는 최대우도를 사용하여 데이터에서 학습될 수 있습니다. 결과적으로 (4.33)으로 표현되는 예측 분포가 됩니다. 예측 분포는 새로운 입력 x에 대한 t의 값에 대한 불확실성을 나타냅니다. 그러나 많은 실용적인 응용 프로그램에서는 전체 분포를 반환하는 대신 특정 값을 예측해야 하는 경우가 많습니다. 특히 특정 작업을 수행해야 하는 경우입니다. 예를 들어 종양을 치료하기 위한 방사선의 최적 레벨을 결정하려면 모델이 방사선 용량에 대한 확률 분포를 예측하고, 그 분포를 사용하여 특정 용량을 결정해야 합니다. 이런 경우 우리의 작업은 첫 번째 단계에서는 추론 단계로 나뉩니다. 추론 단계에서는 훈련 데이터를 사용하여 예측 분포 p(t|x)를 결정합니다. 두 번째 단계는 의사 결정 단계로, 이 예측 분포를 사용하여 일정 기준에 따라 최적의 특정 값을 f(x)로 결정합니다. 이를 위해 예측 분포 p(t|x)와 f에 의존하는 손실 함수를 최소화합니다. 직관적으로 우리는 조건부 분포의 평균을 선택할 것입니다. 따라서 f(x) = y(x,w_ML)을 사용할 것입니다. 이 직관이 어떤 경우에는 맞을 수 있지만, 다른 상황에서는 매우 나쁜 결과를 낼 수 있습니다. 따라서 이것이 언제 적용되며 어떤 가정 하에서 적용되는지를 이해하기 위해 이를 공식화하는 것이 유용하며, 이를 수행하는 프레임워크를 의사 결정 이론이라고 합니다. 우리가 예측에 대한 최적값 f(x)를 선택할 때 실제 값이 t일 때 일종의 패널티 또는 비용이 발생합니다. 이는 손실로 나타내며 L(t, f(x))로 표기합니다. 물론 우리는 t의 실제 값을 모르기 때문에 L 자체를 최소화하는 대신 (4.34)에서 주어진 것처럼 입력과 대상 변수의 결합 분포 p(x, t)에 가중치를 부여하여 평균 또는 기대 손실을 최소화합니다. 회귀 문제에서 일반적으로 사용되는 손실 함수의 선택은 L(t, f(x)) = {f(x) - t}2로 주어집니다. 이 경우 기대 손실은 (4.35)로 표현됩니다. E[L]을 최소화하기 위해 우리의 목표는 f(x)를 선택하는 것입니다. 완전히 유연한 함수 f(x)를 가정한다면, 우리는 미분 가변의 계산을 사용하여 이를 형식적으로 수행할 수 있습니다. (4.36)으로 주어진 결과를 얻습니다. f(x)에 대해 풀어나가고 확률의 합과 곱 규칙을 사용하여 (4.37)을 얻습니다. 이는 x에 대한 조건부 평균이며 회귀 함수로 알려져 있습니다. 이 결과는 Figure 4.5에서 설명된 것과 같습니다. 이는 다변수 대상 변수를 나타내는 벡터 t로 확장할 수 있으며, 이 경우 최적 해는 조건부 평균 f⋆(x) = E[t|x]입니다. 가우시안 조건부 분포의 경우 (4.8) 형태로, 조건부 평균은 단순히 (4.38)입니다. (4.37)를 유도하는 또 다른 방법으로는 회귀 문제의 본질을 더 잘 이해할 수 있는 방식으로 유도할 수 있습니다. 최적 해가 조건부 기대값인 지식을 바탕으로 제곱 항을 다음과 같이 확장할 수 있습니다. {f(x) - t}2 = {f(x) - E[t|x] + E[t|x] - t}2 = {f(x) - E[t|x]}2 + 2{f(x) - E[t|x]}{E[t|x] - t} + {E[t|x] - t}2 표기를 단순하게 유지하기 위해 E[t|x]를 Et[t|x]로 사용합니다. 손실 함수 (4.35)에 대입하고 t에 대한 적분을 수행하면 교차 항이 없어지고 손실 함수를 (4.39) 형태로 얻습니다. 우리가 결정하려는 함수 f(x)는 첫 번째 항 에만 나타나며, 이 항은 f(x)가 E[t|x]와 같을 때 최소화됩니다. 이 경우 이 항은 없어집니다. 이는 우리가 이전에 유도한 결과일 뿐이며, 최적의 최소제곱 예측자는 조건부 평균으로 주어집니다. 두 번째 항은 x에 대해 평균화된 t의 분포의 분산이며 대상 데이터의 내재적 변동성을 나타내며 손실 함수의 기본 최솟값으로 간주될 수 있습니다. 제곱 손실은 회귀를 위한 손실 함수의 유일한 선택이 아닙니다. 여기서 우리는 제곱 손실의 간단한 일반화 중 하나인 민코프스키 손실을 간단히 검토합니다. 그 기대값은 (4.40)으로 주어지며 q = 2의 경우 예상된 제곱 손실로 감소합니다. 여러 q 값에 대한 f - t에 대해 |f - t|q 함수는 Figure 4.6에서 플로팅됩니다. E[Lq]의 최솟값은 q = 2의 경우 조건부 평균, q = 1의 경우 조건부 중앙값 및 q → 0의 경우 조건부 모드입니다. 가우시안 노이즈 가정은 x가 주어졌을 때 t의 조건부 분포가 단일 모양임을 의미하며, 이는 일부 응용 프로그램에는 부적절할 수 있습니다. 이 경우 제곱 손실은 매우 나쁜 결과로 이어질 수 있으며 더 정교한 접근 방식이 필요합니다. 예를 들어 우리는 가우시안의 혼합을 사용하여 다중 모드 조건부 분포를 만들어 이를 해결할 수 있습니다. 이는 역 문제의 해결에서 자주 발생합니다. 이 섹션에서는 회귀 문제에 대한 의사 결정 이론에 중점을 두었으며, 다음 장에서는 분류 작업에 대한 유사한 개념을 개발할 것입니다.
3. Bias-Variance Trade-off
prev.
지금까지 회귀에 대한 선형 모델에 대한 논의에서 우리는 기저 함수의 형태와 개수가 모두 주어진 것으로 가정했습니다. 또한 최대우도를 사용하면 데이터 세트 크기가 제한된 경우 복잡한 모델을 훈련시킬 때 심각한 과적합이 발생할 수 있음을 보았습니다. 그러나 과적합을 피하기 위해 기저 함수의 개수를 제한하면 모델이 데이터의 흥미로운 경향을 캡처하는 유연성이 제한되는 부작용이 발생합니다. 많은 매개변수를 가진 모델에 대한 과적합을 제어하는 정규화 항이 있더라도 정규화 계수 λ에 적절한 값을 어떻게 결정할지에 대한 문제가 발생합니다. 가중치 벡터 w 및 정규화 계수 λ에 대한 정규화된 오류 함수를 최소화하는 해를 찾는 것은 분명히 옳지 않은 접근 방식입니다. 왜냐하면 이는 λ = 0의 정규화되지 않은 해로 이어지기 때문입니다.
모델 복잡성 문제에 대한 빈도주의적 관점인 편향-분산 균형을 고려하는 것이 유익합니다. 우리는 이 개념을 선형 기저 함수 모델의 맥락에서 소개할 것이며, 여기서 간단한 예제를 사용하여 아이디어를 설명하기가 쉽습니다. 그러나 이 논의는 매우 일반적으로 적용될 수 있습니다. 다만, 오버피팅은 실제로 최대우도의 불행한 속성이며 베이지안 환경에서 매개변수에 대한 주변화를 수행할 때는 발생하지 않습니다(Bishop, 2006).
우리가 회귀 문제에 대한 의사 결정 이론을 논의할 때 우리는 다양한 손실 함수를 고려했고, 각각은 조건부 분포 p(t|x)가 주어진 경우에 대응하는 최적의 예측을 제공합니다. 인기 있는 선택은 제곱 손실 함수이며, 이 경우 최적의 예측은 조건부 기대치로 주어지며, 이를 h(x)로 표시하고 (4.41)로 주어집니다. 또한 기대되는 제곱 손실은 (4.42) 형태로 표현될 수 있습니다. 두 번째 항은 f(x)에 독립적인 인트린직 데이터 노이즈에서 발생하며 예상 손실의 최솟값입니다. 첫 번째 항은 함수 f(x)의 선택에 따라 달라지며 이 항을 최소화하는 f(x)의 해를 찾을 것입니다. 이 항이 음이 아니기 때문에 이 항의 가장 작은 값은 0입니다. 우리가 무한한 데이터 공급이 있다면 (그리고 무한한 계산 자원이 있다면) 원하는 정도의 정확도로 회귀 함수 h(x)를 원칙적으로 찾을 수 있으며, 이것이 f(x)에 대한 최적의 선택일 것입니다. 그러나 실제로는 유한한 수의 데이터 포인트 N만 포함된 데이터 세트 D가 있고, 따라서 우리는 회귀 함수 h(x)를 정확하게 알 수 없습니다. 만약 매개 변수 벡터 w에 의해 지배되는 함수로 h(x)를 모델링한다면 베이지안 관점에서는 모델의 불확실성이 w에 대한 사후 분포를 통해 표현됩니다. 그러나 빈도주의적 처리는 데이터 세트 D를 기반으로 w의 점 추정치를 생성하고, 이 추정치의 불확실성을 다음과 같은 사고 실험을 통해 해석하려고 시도합니다. N 크기의 각 독립적으로 추출된 데이터 세트 D가 분포 p(t, x)에서 독립적으로 그려진 것으로 가정합니다. 특정 데이터 세트 D에 대해 우리의 학습 알고리즘을 실행하고 예측 함수 f(x; D)를 얻을 수 있습니다. 앙상블의 다른 데이터 세트는 다른 함수를 제공하며 결과적으로 제곱 손실의 다른 값들을 얻게 됩니다. 특정 학습 알고리즘의 성능은 데이터 세트의 이러한 앙상블에 대한 평균을 취함으로써 평가됩니다. (4.42)의 첫 번째 항의 적분 피감이 N 크기의 특정 데이터 세트 D에 대해 (4.43)의 형태를 취합니다. 이 양은 특정 데이터 세트 D에 따라 다르기 때문에 데이터 세트 앙상블에서 이를 평균을 취합니다. 중괄호 안에 ED[f(x; D)]를 더하고 빼면서 확장하면 (4.44)를 얻을 수 있습니다. 이제 D에 대한 이 표현식의 기대값을 취하고 최종 항이 사라지게 하
면 (4.45)를 얻을 수 있습니다. f(x; D)와 회귀 함수 h(x) 간의 예상 제곱 차이는 두 항의 합으로 표현될 수 있습니다. 첫 번째 항은 제곱 바이어스라고 불리며 모든 데이터 세트에 대한 평균 예측이 원하는 회귀 함수에서 얼마나 다른지를 나타냅니다. 두 번째 항은 분산이라고 불리며 개별 데이터 세트에 대한 솔루션이 평균 주변에서 얼마나 다른지를 측정하며 따라서 f(x; D) 함수가 특정 데이터 세트의 특정 선택에 민감한 정도를 나타냅니다. 이러한 정의를 지지하는 몇 가지 직관을 곧 간단한 예제를 통해 고려할 것입니다. 지금까지 x의 단일 입력 값을 고려했습니다. 이 확장을 (4.42)로 되돌리면 기대 제곱 손실의 다음 분해를 얻습니다. (4.46), 여기서 (4.47 ~ 4.49)이고 이제 바이어스 및 분산 용어는 통합된 양으로 참조됩니다. 우리의 목표는 기대 손실을 최소화하는 것인데, 이는 (제곱) 바이어스, 분산 및 상수 노이즈 항의 합으로 분해되었습니다. 보게 될 것처럼 바이어스와 분산 간에는 트레이드 오프가 있으며, 매우 유연한 모델은 낮은 바이어스와 높은 분산을 가지며, 비교적 강건한 모델은 높은 바이어스와 낮은 분산을 가지게 됩니다. 최적의 예측 능력을 가진 모델은 바이어스와 분산 간의 최상의 균형을 찾는 것입니다. 이는 앞서 소개한 사인 데이터 세트를 고려하여 설명됩니다. 여기서 우리는 N = 25 데이터 포인트를 포함하는 각각 100 개의 데이터 세트를 독립적으로 생성하고 사인 곡선 h(x) = sin(2πx)에서부터입니다. 데이터 세트는 l = 1,...,L로 색인되며, 여기서 L = 100입니다. 각 데이터 세트 D(l)에 대해 총 25 개의 매개 변수를 제공하기 위해 M = 24 개의 가우시안 기저 함수와 상수 '바이어스' 기저 함수를 사용하여 모델을 적합시킵니다. 정규화된 오류 함수 (4.26)를 최소화함으로써 예측 함수 f(l)(x)를 얻습니다. Figure 4.7에 표시된 것처럼 상단 행은 낮은 분산(왼쪽 그림에서 빨간 곡선이 유사하게 보이기 때문)과 높은 바이어스(오른쪽 그림에서 두 곡선이 매우 다르기 때문)를 가진 정규화 계수 λ의 큰 값에 해당합니다. 반면에 아래 행은 λ가 작은 경우로 큰 분산(왼쪽 그림에서 빨간 곡선 간의 높은 변동성으로 나타남)과 낮은 바이어스(평균 모델 적합과 원래 사인 함수 간의 좋은 적합이 나타남)를 가집니다.
복잡한 모델에 대한 M = 25의 여러 해를 평균하는 결과는 회귀 함수에 매우 잘 맞는 것으로 나타나며, 이는 평균화가 유익한 절차일 수 있다는 것을 시사합니다. 실제로 가중 평균화는 베이지안 접근의 핵심에 놓여 있으나, 이 평균화는 매개변수의 사후 분포에 대한 것이며 다수의 데이터 집합에 대한 것은 아닙니다. 이 예제에 대해 편향-분산 트레이드오프를 양적으로 조사할 수도 있습니다. 평균 예측은 (4.50)에서 추정되며, 그런 다음 통합 제곱 편향과 통합 분산은 (4.51~4.52)에서 주어집니다. 여기서 x에 대한 적분은 분포 p(x)로 가중된 상태에서 해당 분포에서 뽑은 데이터 포인트를 통한 유한한 합으로 근사화됩니다. 이러한 양은 Figure 4.8에서 ln λ의 함수로 플로팅됩니다. 우리는 λ의 작은 값들이 각 개별 데이터 세트의 노이즈에 민감하게 조정되어 큰 분산을 초래하는 것을 볼 수 있습니다. 반대로, 큰 λ 값은 가중치 매개변수를 제로로 끌어당겨 큰 편향을 초래합니다. 편향-분산 분해는 데이터 집합의 앙상블에 대한 평균에 기초하므로 실제로는 단일 관측된 데이터 세트만 가지고 있습니다. 주어진 크기의 독립적인 교육 세트가 많다면 이를 단일 큰 교육 세트로 결합하는 것이 더 좋을 것이며, 물론 주어진 모델 복잡성에 대한 오버핏 수준을 감소시킬 것입니다. 그러나 편향-분산 분해는 종종 모델 복잡성 문제에 대한 유용한 통찰을 제공하며, 이 장에서는 회귀 문제의 관점에서 소개했지만 근본적인 직관은 광범위한 적용 가능성을 가지고 있습니다.
[확률밀도 추정: Density Estimation] 유한한 관측값 집합 x1, . . . , xN이 주어졌을 때, 확률 변수 x의 확률 분포 p(x)를 모델링하는 것 기본적으로 밀도추정은 불균형하며, 무한히 많은 확률분포가 유도될 수 있기에 적절한 분포를 선택하는 것이 기계학습의 fitting측면에서 중요하다 할 수 있다.
[Main Interest]: Gaussian Distribution with discrete variables Maximum Likelihood 이때, 기본적으로 관찰된 data는 i.i.d로 가정한다. [non-parametric density estimation]: ∙ 매개 변수 접근법의 한계점: 특정한 분포의 기능 형태를 가정한다는 것 → 이는 특정 응용에 부적절 → 대안적인 접근법으로 "비매개변수 밀도추정법" 사용: Dataset의 크기에 따라 분포의 형태가 달라지는 것으로 분포형태가 아닌, "모델복잡성을 제어" ex) Histogram, nearest neighbors and kernels에 기반한 3가지 non-parametric방법에 대해 고려.
∙ 비매개 변수 접근법의 한계점: 모든 훈련 데이터를 저장한다는 것
∙Deep Learning: 매개 변수 모델(유연한 분포를 고려하는 효율성) +비매개 변수 방법(일반성) → 많지만 고정된 수의 매개 변수를 가진 신경망에 기초, 다양한 분포를 고려.
1. Discrete Variables
1.1 Bernoulli distribution
이진확률변수 x ∈ {0, 1}에 대해, x = 1의 확률은 매개 변수 μ이라 하자. x = 1의 확률: p(x=1 | μ) = μ이다. (0 ≤ μ ≤ 1). x = 0의 확률: p(x=0 | μ) = 1 − μ. ∴ x에 대한 확률 분포 = 베르누이분포:
이 분포가 정규화되어 있고, 평균 및 분산 아래와 같다:
Maximum Likelihood Estimation
[Bernoulli distribution의 likelihood함수] 이제 x의 관측값으로 이루어진 데이터 집합 D = {x1,...,xN}에 대해 μ에 대한 관측치가 p(x|μ)에서 독립적으로 추출되었다는 가정 하에 아래와 같다: [Maximum Likelihood Estimation] 이제, 이 likelihood함수 최대화로 μ값을 추정해보자.
위 likelihood of Bernoulli distribution 함수의 핵심은 관측치 x가 ∑x를 통해서만 의존한다는 점이다. ∴ ln p(D|μ)를 μ에 대해 미분하여 0으로 놓으면 MLE값을 얻을 수 있다:
이를 μML로 표시하며 sample mean이라 한다.
1.2 Binomial distribution
Dataset size: N binary variable: x x의 관측치 수: m
이 m에 대한 분포를 이항분포라 하며, 이는 아래와 같다:
여기서 (N m) ≡ N! / (N-m)!m!은 N개의 동일한 객체 중에서 m개의 객체를 교체없이 선택하는 방법의 수이다. 아래 그림은 N = 10 , μ = 0.25에인 이항분포 그래프이다.
cf) 이 결과는 미적분을 사용하여 직접 증명할 수도 있다.
1.3 Multinomial distribution
이진변수: 둘 중 하나를 갖는 양을 설명 시 사용.
One-hot Encoding:
다만, 우린 K가지 상태 중 하나를 갖는 이산변수와 훨씬 근접함. 이때, 변수표현을 위해 1-of-K scheme = "One-Hot Encoding" 방법이 사용됨.
이 방법에서 변수는 K차원 벡터 x에 의해 나타나며, 여기서 요소 xk 중 하나는 1이 되고 나머지 요소는 모두 0이 된다. ex) K = 6이고 ,변수의 특정 관측치가 x3 = 1에 해당한다면?
xk = 1의 확률을 매개 변수 μk로 표시하면 x의 분포는 p(x|μ)로 주어지며, 여기서 μ = (μ1, . . . , μk)T이다. μk ≥ 0 및 ∑k μk = 1 제약을 따를 때, 분포는 아래와 같다:
이 분포는 Bernoulli분포를 2개 이상의 결과로 일반화 한 것으로 볼 수 있는데, 이 분포가 정규화 되어있음은 아래 식으로 확인 가능하다:
Sufficient Statistics (충분통계량):
이제 N개의 독립적인 관측치 x1,...,xN의 데이터 집합 D에 대해 Likelihood함수 p(D|μ)는 아래와 같다:
이 식에서 Likelihood함수가 N개 data point를 통해서만 K개 양을 나타내는 것을 이 분포에 대한 충분통계량이라 하며 아래와 같이 표현한다:
MLE with Lagrange multiplier:
이제, μ에 대한 MLE를 위해 μk에 대한 ln p(D|μ)를 최대화를 해야하는데, 이때 μk는 합이 1이라는 제약 조건을 고려해야한다. 이는 라그랑지 승수 λ를 사용하여 최대화 가능하다:
위 식에서 μk에 대한 도함수를 0으로 놓으면:
이제 위 식에을 제약 조건 ∑k μk = 1에 대입하여 라그랑지 승수 λ를 구할 수 있다. 따라서 우리는 μk에 대한 최대 우도 해를 다음과 같이 얻는다:
Multinomial Distribution:
위의 μk는 xk = 1인 경우의 관측값 N에 대한 비율이며, 이때, μ와 총 관측 수 N에 대한 조건부 m1, ..., mk의 결합 분포도 고려할 수 있는데 좌측 식에 따르면, 이 결합분포는 아래와 같다.
위의 m에 대한 결합분포를 다항분포, Multinomial Distribution이라 한다. cf) 이진변수는 이항분포에 의해 표현하거나 K=2로 두고 1-of-2변수로 표현가능하다. cf) K≥2인 경우에 Multinoulli Distribution이라고도 부른다.
2. The Multivariate Gaussian
prev.
D차원 벡터 x에 대해 다변량 Gaussian분포는 아래와 같다: μ: D차원의 평균 벡터. Σ: D × D 의 Covariance Matrix. det Σ: Σ의 행렬식.
Gaussian Distribution은 최대 엔트로피, CLT 등에서 많이 확인할 수 있었다. 이는 다변량에서도 성립하기에 이에 대해 알아보자.
2.1 Geometry of the Gaussian
Gaussian분포에 대해 기하학적으로 고려해보자. x에 대한 함수적 의존성은 아래 2차 형태로 나타난다: ∆: μ에서 x까지의 Mahalanobis Distance (cf. Σ=I 일 때, euclidean distance로 축소.)
Σ가 대칭행렬일 때, 손실이 없다. 이제, Σ에 대한 고유벡터 방정식을 고려하자:Σ가 실수이고 대칭 행렬이므로 ∙ eigen value는 실수 ∙ eigen vectors는 orthonormal set을 만족. (cf. orthonormal: 정규직교) ∴ Σ는 고유벡터를 사용하여 다음과 같은 형태로 표현될 수 있다:마찬가지로 공분산 행렬의 inverse도 다음과 같은 형태로 표현될 수 있다:Σ-1을 Mahalanobis Distance 제곱식에 대입하자:{yi}: 기존 xi좌표에 대해 shift 및 rotate된 orthonormal vectors ui로 정의된 새로운 좌표계. 이제, 벡터 y = (y1,...,yD)T를 형성하면여기서 U는 행이 uiT로 주어지는 행렬로. uiTuj = Iij식으로부터 U가 orthogonal matrix임을 알 수 있다. ∴ Gaussian Density는 ∆2가 일정표면상일 때 일정. 모든 고유값 λi가 양수 → 이러한∆2는 타원체를 나타냄. 이때, 그 중심은 μ에 있으며 축은 ui를 따라 정렬. 축의 방향으로의 스케일링 요소는 λi1/2로 주어진다.
정부호 행렬과 반정부호 행렬
→ Gaussian분포가 잘 정의되려면 Σ의 모든 고유값 λi가 무조건 양수! 이때, λ가 모두 양수인 대칭행렬을 positive definite(양의 정부호)라 한다. if not) 분포가 올바르게 정규화❌
→ latent variable model에서 λi 중 하나 이상이 0인 경우, 분포는 특정 차원의 부분 공간으로 제한되고 특이하게 되는데, 모든 고유값이 비음수인 공분산 행렬을 positive semidefinite(양의 반정부호)라 한다. 이제 yi에 의해 정의된 새로운 좌표계의 Gaussian분포형태를 살펴보자. x→y계로 갈 때, Jacobian Matrix J에 대해 요소는 다음과 같다:행렬 U의 정규직교성(orthonormality)을 사용하면 J의 제곱은:∴ |J|=1이고, 공분산 행렬의 행렬식 |Σ|은 그 고유값들의 곱이므로:∴ yj 좌표계에서의 Gaussian분포 = 독립된 D개의 단변량 Gaussian분포의 곱: ∴ eigen vector는 결합확률분포를 새로운 shift 및 rotated좌표로 정의. 이를 통해 결합확률분포가 독립적인 분포의 곱으로 분해된다. → y좌표계 분포의 적분은 다음과 같다:이는 다변량 가우시안N (x | μ,Σ)가 실제로 정규화되어 있음을 의미한다.
2.2 Moments
cf) 요약: 1차 모멘트 = 평균 μ, 2차모멘트 = 분산 E[xxT]
이제 Gaussian분포의 moments와, moments로 μ와 Σ를 알아보자.
위 식은 x에 대한 기댓값 식이며, z = x - μ를 사용해 변수를 변경했다.
지수가 z의 구성 요소에 대한 짝수 함수, (-∞, ∞)에서 적분이 수행 → (z + μ)의 항은 대칭에 의해 사라진다.
이로써 μ를 Gaussian분포의 평균이라 부른다.
∙ Gaussian의 1차 moments:μ (= 평균) 이제 Gaussian의 2차 moments를 고려해보자. cf) 단일 변수의 경우 E[x2]가 2차 moments. 다변량 가우시안의 경우 E[xixj]로 주어지는 D2의 2차 moments로 행렬 E[xxT]를 형성. 이 행렬은 다음과 같이 쓸 수 있다:
여기서도 z = x - μ를 사용하여 변수를 변경. μzT 및 μTz를 포함하는 교차 항은 다시 대칭에 의해 사라진다. μμT 항은 상수이며 정규화된 가우시안 분포이기 때문에 적분 자체는 1이다.
zzT를 포함하는 항을 고려해보면, 다시 한번 공분산 행렬의 고유벡터 전개식인 (3.28)과 고유벡터 집합의 완성을 사용하여 다음과 같이 쓸 수 있다:
여기서 중간 라인의 적분은 i = j가 아닌 경우에는 대칭에 의해 사라지므로 결과적으로 아래 식을 얻는다.
단일 랜덤 변수의 분산을 정의할 때 두 번째 모멘트를 가져가기 전에 평균을 뺐으므로 다변량 경우에도 평균을 뺀 채로 정의된 랜덤 벡터 x의 공분산을 고려하는 것이 편리하다:
특정한 경우인 가우시안 분포의 경우, E[x] = μ와 E[xxT]결과를 함께 사용하면:
행렬 Σ가 가우시안 분포에서 x의 공분산을 지배하므로 이를 공분산행렬이라한다.
2.3 Limitations.
[Gaussian분포의 주요 한계점]: 일반 공분산 대칭행렬 Σ: ∙ D(D + 1)/2개의 독립적인 매개 변수를 가짐. ∙ μ에서 또 다른 D개의 독립적인 매개 변수가 존재. ∴ 총 D(D + 3)/2개의 매개 변수가 존재, 행렬 조작 cost⇧
→ sol) Σ의 제한된 형태의 사용.
i) 공분산 대각행렬을 갖는 경우( Σ = diag(σi2)) 이 모델에서는 총 2D개의 독립적인 매개 변수가 존재하며, 해당 모델의 밀도등고선은 축에 정렬된 타원형으로 주어진다. (b)에 해당
ii) Σ을 I행렬에 비례하도록 제한할 수도 있는데, 이를 등방성 공분산이라고한다. (c)에 해당 모델에서 D + 1개의 독립적인 매개 변수가 생성되며 등방성 표면의 등고선이 된다. 일반, 대각 및 등방성 공분산 행렬의 세 가지 가능성은 아래그림에 설명되어 있다.
장점) 분포의 자유도 수를 제한, 공분산 행렬의 역을 빠르게 계산 단점) ∙ 확률 밀도의 형태 및 데이터의 흥미로운 상관 관계를 제한. ∙ Gaussian분포는 그자체로 본질적인 단일최댓값(= uni-modal) → multi-modal distribution에 좋은 근사치 제공이 불가능. (= 유연하지 않음.) → 다만 이는 latent variable의 도입으로 해결가능.
2.4 Conditional distribution
다변량 Gaussian의 주요특성: 두 변수가 jointly Gaussian이라면, 다른 것을 기준으로 한 조건부분포와 주변분포가 Gaussian이라는 것.
① 조건부 분포의 경우: x ~ N (x|μ, Σ)의 D차원 벡터 x를 두 부분집합 xa와 xb로 분할하고 일반성을 잃지 않을 때, xa를 x의 첫 M개 구성 요소로, xb를 나머지 D - M개의 구성 요소로 가질 수 있으므로 우측과 같다.
또한 평균 벡터 μ와 공분산행렬 Σ의 해당 분할을 아래와 같이 정의하자.
공분산 행렬의 대칭성 ΣT = Σ는 다음을 의미한다: Σaa와 Σbb가 대칭이므로 , Σba = ΣabT이다. 많은 상황에서 공분산 행렬의 역인 정밀도 행렬을 사용하는 것이 편리하다:
실제로 Gaussian 분포의 몇 가지 속성은 공분산을 통해 가장 자연스레 표현. 다른 속성은 정밀도를 통해 더 간단한 형태를 가지므로 정밀도 행렬의 분할된 형태는 아래와 같다:
이때, 벡터 x의 분할 x = [xa, xb]T에 해당한다. 여기서 대칭 역행렬도 대칭이므로 Λaa와 Λbb가 대칭이고 Λba = ΛabT이다.
유의점: Λaa가 단순히 Σaa의 역이 아니다. (분할된 역행렬과 그 분할의 역에 대한 구분이 중요.)
ex) Gaussian분포의 지수항을 정의하는 2차식을 고려. for. 조건부 Gaussian 분포 p(xa|xb)의 평균과 공분산을 찾기 위해 이때, 관측 값으로 xb를 고정, 결과 식을 정규화→ xa에 대한 유효한 확률 분포를 얻음 위 방식은 조건부 분포를 평가할 수 있음을 확률의 곱셈 법칙으로 알 수 있다.
명시적으로 정규화하는 대신에는 Gaussian분포의 지수항에서 완전제곱수를 통해 더 효율적으로 고려하여 정규화 계수를 얻을 수 있는데, 일반적인 이차형식을 사용하면 아래와 같다:
xa에 대한 함수로 볼 때 이는 다시 이차형식이므로 해당 조건부 분포 p(xa|xb)는 Gaussian이다. 이 분포는 그 평균과 공분산에 의해 완전히 특성화되므로 위 식으로 p(xa|xb)의 평균과 공분산을 식별해보자.
이를 보통 "완전제곱수(Completing the Square)"라 하는 Gaussian분포와 관련된 일반적인 도식으로 여기서 Gaussian의 지수항에서 지정된 계수행렬을 x의 공분산역행렬로 결정해야 하는 일이라고 하는데, 이때 문제는 그 결과로 평균과 공분산을 얻는 것이다.
이런 문제는 일반적인 가우시안 분포 N (x|μ, Σ)의 지수항을 아래처럼 사용할 수 있으므로 간단히 해결가능하다.
Σ의 대칭성에 따라 일반적인 이차식으로 위 식처럼 표현하면 즉시 x의 이차항에 있는 계수행렬을 공분산 역행렬 Σ-1로 x의 일차항의 계수를 Σ-1μ로 동일하게 할 수 있으므로 μ를 얻을 수 있다. 이제 이 절차를 조건부 가우시안 분포 p(xa|xb)에 적용하여 지수항이 아래와 같이 주어진 경우의 결과를 알아보자:
이 분포의 평균과 공분산을 각각 μa|b와 Σa|b라 하자. 위 식에서 지수항의 이차형식을 고려해 보. xb를 상수로 간주할 때 ,xa에 대한 이차항을 모두 추출하면 아래와 같다:
이때, p(xa|xb)의 공분산(정밀도의 역)은 아래와 같다:
이제 xa에 대한 1차항을 모두 포함하는 위 식의 모든 항을 고려해보자: (이때, ΛTba = Λab.)
아래 일반적인 형태 식의 논의에서 이 표현의 xa에 대한 계수는 Σa|b-1μa|b와 같아야 하므로 아래와 같다:
위 결과는 원래 joint distribution, p(xa, xb)의 분할된 정밀도 행렬로 표현되므로 해당 분할된 공분산 행렬의 용어로도 표현가능하다. 이때, 아래처럼 분할된 역행렬에 대한 다음 항등식을 사용하자:
여기서 M은 아래와 같다:
M-1은 왼쪽에있는 행렬에 대한 행렬 D에 대한 Schur complement이다.
아래 정의에 따라 위의 [A B C D]-1에 적용하면,
다음을 얻는다:
이때, 조건부 분포 p(xa|xb)의 평균과 공분산에 대한 다음 식:
이제, 도출된 아래 두 식을 비교해보자:
조건부 분포 p(xa|xb)는 분할된 공분산 행렬 용어로 표현될 때, 더 간단한 형태를 가짐을 알 수 있다. 조건부 분포 p(xa|xb)의 평균인 μa|b는 xb의 선형 함수이며 위 식의 아래항에서 주어지는 공분산은 xb와 독립적이다. 이것은 선형 가우시안 모델의 예이다.
2.5 Marginal distribution
if) 결합 분포 p(xa, xb)가 Gaussian →조건부 분포 p(xa|xb)도 Gaussian 이제 우리는 주변분포에 대해 알아보도록 하자.
위 식에서 알 수 있듯, 주변분포 역시 Gaussian이다. 즉, 이 분포 계산 시, 결합 분포 지수항의 이차형식에 중점을 두어 주변 분포 p(xa)의 평균과 공분산을 알아보기위해 분할된 정밀도 행렬을 사용하면 아래 식과 같다:
이제, xb와 관련된 항을 고려한 후, integration을 용이하게 하기 위해 완전한 제곱을 수행하는 것으로 xb에 대해 integration을 하자. 여기서 xb를 포함하는 항만 추출하면 아래와 같다:
이때, m은 좌측과 같이 정의된다.
이를 통해 xb에 대한 의존성이 Gaussian분포의 표준 이차형식으로 표현되었음을 알 수 있다. 이는 위 식의 우항 중 첫항에 해당하며 xb에 의존하지 않는 항(다만 xa에 의존)이 추가적으로 존재한다. 따라서 이 이차형식의 지수를 취하면 위 식에서 필요한 xb에 대한 적분은 아래 식과 같다:
이 적분은 정규화되지 않은 Gaussian의 적분이다. ∴ 이 식의 결과는 정규화 계수의 역수가 된다.
Multivariate Gaussian분포 식에서 주어진 정규화된 Gaussian형태에서 이 계수가 평균과 무관하며 공분산 행렬의 행렬식에만 의존한다는 것을 알고 있으므로 xb에 대한 완전제곱을 통해 xb를 적분하여 Marginal distribution식의 좌측항의 contribution 중 xa에 의존하는 유일한 항으로 남게된다.
이는 위 식의 오른쪽 마지막 항이며 이때 m은 위와 같습니다.
이 항을 좌측식에서 나온 xa에 의존하는 나머지 항들과 결합하면 아래와 같다.
이때, 'const'는 xa에 독립적인 양을 나타낸다.
이때, 공분산은 아래와 같다:
위 공분산은 분할된 정밀도 행렬을 이용하여 표현되는데, 우리는 분할된 공분산 행렬의 대응하는 분할로 다시 쓸 수 있다.
이러한 분할된 행렬들은 위의 행렬과 관련되어있다.
이제, 위의 관계식을 이용하면, 아래 식을 얻는다:
따라서 주변 분포 p(xa)가 주어진 평균과 공분산을 가지게 됨을 아래 식으로 직관적으로 이해할 수 있다:
주변 분포의 경우에는 평균과 공분산이 분할된 공분산 행렬의 용어를 사용하여 가장 간단하게 표현되며, 조건부 분포의 경우에는 분할된 정밀도 행렬이 더 간단한 표현을 얻을 수 있도록 한다. 우리가 분할된 가우시안의 주변 및 조건부 분포에 대한 결과는 다음과 같이 요약될 수 있다. 주어진 결합 가우시안 분포 N (x|μ, Σ)가 있고 Λ ≡ Σ-1 및 다음 분할을 가지면, 아래와 같다:
조건부 분포는 아래와 같고:
주변 분포는 아래와 같다:
우리는 이러한 조건부 및 주변 분포의 아이디어를 두 변수를 포함하는 예제를 사용하여 다변수 가우시안에 관련된 조건부 및 주변 분포를 설명하는데, 이에 대해 아래그림에서 확인가능하다.
2.6 Bayes' theorem
3.2.4 및 3.2.5 절에서는 우리가 벡터 x를 두 하위 벡터 x = (xa, xb)로 분할한 가우시안 p(x)를 고려했고, 조건부 분포 p(xa|xb) 및 주변 분포 p(xa)에 대한 식을 찾았으므로 조건부 분포 p(xa|xb)의 평균이 xb의 선형 함수임을 주목했었다.
이제 주어진 Gaussian Marginal Distribution p(x)와 가우시안 조건부 분포 p(y|x)를 가정해보자. p(y|x)의 평균은 x의 선형 함수이고, 공분산은 x와 독립인 선형-가우시안 모델의 예이다(Roweis와 Ghahramani, 1999).
이때, 주변 분포 p(y)와 조건부 분포 p(x|y)를 찾아보자. 이는 몇 가지 종류의 생성 모델에서 발생하는 구조이며 여기에서 일반적인 결과를 유도하는 것이 편리하다. 주변 및 조건부 분포를 아래처럼 가정했다 하자:
이때, μ, A, b는 평균을 조절하는 매개변수이고, Λ 및 L은 정밀도 행렬이다. x의 차원이 M이고 y의 차원이 D이면 행렬 A의 크기는 D × M이다.
먼저 x와 y에 대한 결합 분포를 찾아보기 위해 z = [x, y]로 정의한 후, 결합분포의 log를 취하자: (이때, const는 x와 y에 대해 독립적인 항)
이전과 마찬가지로 z의 구성 요소에 대한 제곱 함수이기 때문에 p(z)는 가우시안 분포입니다.
이 가우시안의 정밀도는 아래와 같다:
따라서 z에 대한 가우시안 분포의 정밀도 행렬은 아래와 같다:
정밀도행렬에 역을 취함으로써 공분산 행렬을 찾을 수 있다:
유사하게 우리는 z에 대한 가우시안 분포의 평균을 찾을 수 있는데, lnp(z) 식의 선형 항을 식별하여 주어진다.
이는 위 식에서 주어진 것과 같다. 다변수 가우시안의 이차형식에 대한 완전제곱 결과로 얻은 이전의 결과인 아래 식을 사용해보자.
이를 이용하면, z의 평균은 아래 식으로 주어진다:
이제, cov[z]를 사용하면, 아래 식을 얻는다:
이제, x를 제거하고 y에 대해 주변 분포 p(y)의 식을 찾아보자. Gaussian Random Vector의 부분집합에 대한 주변분포 → 분할된 공분산 행렬을 사용하여 특히 간단한 형태를 취할 수 있다. 좀 더 구체적으로, 평균과 공분산은 각각 아래와 같다:
여기에 아래 식을 사용하면
주변 분포 p(y)의 평균과 공분산은 아래와 같이 주어진다:
이 결과의 특별한 경우는 A = I인 경우로 주변 분포는 두 가우시안의 합성으로 축소되며, 여기서 convolution의 평균은 두 가우시안의 평균의 합이고 convolution의 공분산은 그들의 공분산의 합이다. 마지막으로 조건부 p(x|y)에 대한 표현을 찾아보자. 조건부 분포에 대한 결과는 주로 분할된 정밀도 행렬의 용어를 사용하여 가장 쉽게 표현된다. 이때, 조건부 분포 p(x|y)가 주어진 경우 평균 및 공분산은 아래와 같이 주어진다:
이 조건부 분포의 평가는 Bayes의 정리의 한 예시로 이때, p(x)를 x에 대한 사전 분포(prior)로 해석된다. 변수 y가 관측되면 조건부 분포 p(x|y)는 x에 대한 사후 분포(posterior)이다. 주변 및 조건부 분포를 찾은 후에는 효과적으로 결합 분포 p(z) = p(x)p(y|x)를 p(x|y)p(y)의 형태로 나타낸다. [결과 요약] x에 대한 주변 가우시안 분포와 x가 주어진 경우 y에 대한 조건부 가우시안 분포가 아래와 같이 주어질 때:
y의 주변 분포와 y가 주어진 경우 x의 조건부 분포는 아래와 같다:
2.7 Maximum Likelihood
다변량 가우시안 분포에서 i.i.d의 {xn} Dataset: X = (x1,...,xN )T와, Log Likelihood함수가 아래와 같이 주어질 때,
해당 분포의 매개변수에 대한 MLE를 진행해보자.
먼저, Likelihood함수는 Dataset에 대해 아래 두 값에 의존한다. 이때, 두 값은 Gaussian Distribution의 Sufficient Statistics로 알려져있다.
참고식 1.에 의해 μ에 대한 Log Likelihood도함수는 다음과 같다: MLE: μ: 이 도함수를 0으로 설정, ML의 평균에 대한 해를 얻는다. 최대 우도 추정의 평균에 대한 해를 얻을 수 있다: 이는 Dataset point의 평균값이다. Σ: Log Likelihood함수식을 Σ에 대해 최대화하는 것은 더 복잡하다. 가장 간단한 방법은 대칭 제약 조건을 무시하고 결과적인 해가 요구되는 대로 대칭인지를 보여주는 것이다. → [Magnus&Neudecker의 대안적 유도방법]: 명시적으로 대칭 및 양의 정부호 제약 조건을 부과.
결과는 위와 같이 μ 및 Σ에 대한 결합 최대화의 결과이므로 μML이 포함되어 있다. 이때, μML은 ΣML에 의존하지 않으므로 먼저 μML을 계산한 다음 이를 사용하여 ΣML을 평가해야한다.
따라서 ML값의 기댓값을 실제분포하에서 계산하면 위와 같다.
[❗️유의할 점❗️]: 평균에 대한 MLE기댓값은 실제 평균과 같지만, 공분산에 대한 MLE 기댓값이 실제 값보다 작기 때문에 편향되어 있다는 것. 이 편향을 수정하려면 다른 추정량을 정의하면 된다:
2.8 Sequential estimation
MLE는 전체 Dataset을 한번에 고려하는 일괄처리(batch)방법이다. Sequential방법은 Data point를 한번에 하나씩 처리 후 버리는 방법이다. 평균 μ에 대한 최대 우도 추정치의 결과를 고려해보자:
μML(N):관측값 N을 기반 평균. 이제, 최종 datapoint xN의 contribution을 분리하면 아래와 같다:
해석) (N-1)개의 데이터 포인트를 관측한 후, μ을 μML(N −1)로 추정 이제 data point xN을 관측 → 우리는 오래된 추정치를 '에러 신호' (xN − μML(N−1))의 방향으로 작은 양만큼 이동 → 수정된 추정치 μML(N)를 얻음.
이때, N이 증가함에 따라 연속적인 data point에서의 contribution이 줄어든다는 점에 유의해야한다. 즉, data point수가 증가함에 따라 각각의 data point가 전체 결과에 미치는 영향이 작아진다는 것이다.
2.9 Mixtures of Gaussians
[Gaussian분포의 주요한계] 아래 Figure 3.6(a)에 나와 있는 예시를 보자. (Old Faithful Dataset: Yellowstone National Park의 Old Faithful 지옥 화구의 폭발을 272번 측정한 데이터; (가로 축): 폭발지속시간, (세로 축): 다음 폭발까지의 시간)
이때, Dataset은 2개의 cluster를 형성하는데, 단순 Gaussian분포는 이 구조를 포착할 수 없다. 2개의 Gaussian을 합성한 것이 이 Dataset구조를 훨씬 더 잘 나타낼 것으로 기대하는데, 이는 Figure 3.6(b)에서 확인가능하다.
합성 Gaussian 모델: Gaussian처럼 기본적인 분포의 선형조합으로 이뤄진 확률적 모델. 보다 일반적으로 혼합 모델은 이진 변수에 대한 베르누이 분포의 혼합과 같이 다른 분포의 선형 조합으로 구성될 수 있는데, Figure 3.7에서 Gaussian의 선형조합이 매우 복잡한 밀도를 생성함을 확인가능하다:
∙ 충분한 수의 가우시안을 사용하고 ∙ 평균 및 공분산뿐만 아니라 선형 조합에서의 계수를 조정 → 거의 모든 연속 분포를 원하는 정확도로 근사화할 수 있다.
따라서 아래와 같은 K개의 Gaussian밀도의 합으로 표현되는 형식의 Mixture Gaussian을 고려가능하다.
각 가우시안 밀도 N (x|μk , Σk )는 혼합의 구성 요소이며 각각 자체의 평균 μk 및 공분산 Σk를 갖는다. 아래 Figure 3.8은 3가지 구성 요소가 있는 2차원 Gaussian Mixture의 등고선 및 표면을 볼 수 있다.
이때, 위 p(x) 식의 πk를 혼합 계수라고하는데, 이 식의 양변을 x에 대해 적분하고 p(x)와 개별 가우시안 구성 요소가 모두 정규화되어 있다는 사실을 고려하면 아래 식이 된다:
N(x|μk , Σk) ≥ 0이고 모든 k에 대해, πk ≥0이 p(x) ≥ 0의 충분조건. 이때, 이 조건을 위 조건과 결합하면 아래와 같다:
따라서 혼합 계수가 확률로 해석될 수 있는 조건을 충족시키고 혼합 분포의 이러한 확률적 해석이 매우 강력하다는 것을 보여준다. 합과 곱의 법칙에서 주변 밀도는 아래와 같은데, 이는 p(x)식과 같음을 볼 수 있다:
이때, πk = p(k)를 k번째 구성 요소를 선택할 사전 확률로 볼 수 있고 N(x|μk,Σk) = p(x|k)를 k에 조건을 둔 x의 확률로 볼 수 있는데, 이는 posterior 확률 p(k|x) 또는 책임이라고도 불리는 사후 확률이라 한다.
Gaussian Mixture는 π, μ, Σ에 의해 결정되는데, 이 값 결정방법 중 하나는 MLE이다. (이때 π ≡ {π1,...,πK}, μ ≡ {μ1,...,μK}, 및 Σ ≡ {Σ1,...ΣK} 로 표기됨.) p(x)에서 Log Likelihood는 아래와 같이 주어진다:
이때, 단번에 single Gaussian보다 훨씬 복잡함을 알 수 있기에 매개 변수에 대해 MLE의 해는 더 이상 닫힌 형태의 해가 아니다.
3. Periodic Variables
prev.
Gaussian: 기본 골조로써 중요하긴 하나 연속확률밀도모델로써 부적절한 상황이 존재. ex) 주기성을 갖는 변수일 때. (ex. 풍향, 달력시간, ...)
이런 주기적 변수의 양은 편의성을 위해 각도좌표(극좌표) 0 ≤ θ < 2π를 사용한다.
이때, 주기변수에 대한 명확하고 특별한 접근방식이 필요한데, Gaussian같은 전통적인 분포의 적용의 접근은 원점의 임의적인 선택에 강하게 의존하는 결과를 제공하기 때문이다: ex)예를 들어 θ1 = 1° 및 θ2 = 359°에서 두 관측치에 대해 표준 단변량 가우시안 분포를 사용하여 모델을 만든다면 원점을 0°: 표본 평균=180°, 표준 편차=179° 원점을 180°: 표본평균=0°, 표준 편차=1°
3.1 Von Mises distribution
주기변수 θ의 관측치 Dataset D = {θ1, . . . , θN}의 평균을 평가하는 문제를 살펴보자. (이때, θ는 라디안 단위로 측정) 이미 간단한 평균인 (θ1 + · · · + θN)/N이 좌표에 강하게 의존함을 위에서 보였으므로 평균의 불변 측정을 찾기위해 관측치를 단위원 위의 점으로 볼 수 있다. ∴ 대신 ∥xn∥ = 1 (n = 1,...,N)인 두 차원 단위 벡터 x1,...,xN로 설명될 수 있는데, 아래 그림처럼 나타낼 수 있다:
대신 이 벡터들 {xn}의 평균을 계산하면 아래와 같다:
이제, 이 평균의 해당 각도 ˉθ를 찾을 수 있다. 명백히 이 정의는 둘 사이(평균의 위치, 각도좌표의 원점)가 독립적임을 보장한다.
주의할 점: x가 일반적으로 단위원 안에 위치한다는 것. 관측치의 직교 좌표는 xn = (cos θn, sin θn)으로 주어지며, 우리는 샘플 평균의 직교 좌표를 x = (rcos ˉθ, rsin ˉθ)로 쓸 수 있다. 이를 위 평균 ˉx식에 대입하고 x1 및 x2 성분을 동등하게 하면 아래 등식을 도출할 수 있다:
여기에 tan θ = sin θ/ cos θ 항등식을 사용하면 ˉθ를 구할 수 있다:
이제, 이 결과가 MLE로 자연스레 도출되는 것을 살펴보자.
Von Mises Distribution = 원형 정규분포
Von Mises분포는 Gaussian의 주기적일반화 분포이다. 관례적으로 주기=2π 분포 p(θ)를 고려한다. θ에 대한 정의된 어떤 확률 밀도 p(θ)는 단순히 비음수이고 1로 적분되어야 할 뿐만 아니라 주기적이어야하므로 p(θ)는 아래 3조건을 만족해야 한다:
p(θ+2π)=p(θ)에 따라 p(θ + M2π) = p(θ)이며 여기서 M은 임의의 정수이다. 이 3가지속성을 만족하는 Gaussian과 유사한 분포를 쉽게 얻을 수 있다. 다음과 같이 두 변수 x = (x1 , x2)에 대한 Gaussian분포를 고려하자. 이때, 평균 μ = (μ1, μ1)이고, 공분산 행렬 Σ = σ2I이며, 여기서 I 는 2 × 2 항등 행렬이다:
이때, 상수 p(x)의 등고선은 원형으로 아래 그림과 같다.
이제 일정 반지름의 원 위에서의 이 분포값을 고려해 보자. 이 분포는 구성에 따라 주기적이지만 정규화되지 않을 것이다. 이 분포의 형태를 결정하려면 직교 좌표 (x1, x2)에서 극좌표 (r, θ)로 변환하여 x1 = rcosθ, x2 = rsinθ로 작성해야하고, 또한 평균 μ를 극좌표로 변환하여 μ1 = r0 cosθ0, μ2 = r0 sinθ0로 작성해야 한다. 그 후 이러한 변환을 아래 이차원 Gaussian분포에 대입하자.
이제, 단위 원 r = 1에서만 관심이 있으므로 θ에 대한 의존성에만 주의하자. Gaussian분포의 지수에 중점을 두면 아래와 같다:
이때, 'const'는 θ에 독립적인 항이다. 또한, 아래 삼각함수 항등식을 사용했다:
이제 m = r0/σ2로 정의하면 p(θ)의 단위원 상의 분포에 대한 최종 표현을 얻는다:
이것이 바로 폰 미제스 분포 또는 원형 정규분포라 불리는 분포이다!
θ0: 분포의 평균, m: 집중(concentration) 매개 변수(≒ Gaussian 역분산(= 정밀도)) I0(m): 정규화 계수(이는 첫 번째 종류의 수정된 베셀 함수로 알려져 있다.) 이 함수는 큰 m에 대해서는 분포가 근사적으로 Gaussian이 된다.
Figure 3.11: 폰 미제스 분포
이제 폰 미제스 분포의 매개 변수 θ0 및 m에 대한 MLE값을 구해보자. Log Likelihood함수:
θ0에 대한 도함수를 0으로 놓으면 아래와 같다.
θ0를 구하기 위해 삼각 함수 항등식 sin(A-B) = cosBsinA - cosAsinB를 사용하면, 아래 등식을 얻는다:
이는 앞서 이차원 카테시안(Cartesian) 공간에서 관측치의 평균으로 볼 때 얻은 결과인
임을 알아차릴 수 있다.
마찬가지로 Log Likelihood함수를 m에 대해 최대화하고 I0′ (m) = I1(m) (Abramowitz and Stegun, 1965)을 사용하면 아래와 같다:
이때, θ0ML에 대한 MLE 해로 대체하면, (θ 및 m에 대한 합동 최적화):
함수 A(m)은 Figure 3.12에 나와있다. 따라서 삼각 함수 항등식 cos(A-B)로 A(mML)의 우항을 아래처럼 쉽게 계산할 수 있다:
이때, 함수 A(m)은 숫자로 뒤집을 수 있다.
폰 미제스 분포의 한 가지 한계점: 단봉성 다중모양을 처리할 수 있는 주기 변수를 모델링하기 위해서 → 폰 미제스 분포의 혼합체를 형성함으로써, 유연한 프레임워크를 얻는다.
4. The Exponential Family
prev.
혼합 모델를 제외하면, 이번 장에서의 모든 분포들을 "지수족"이라 부른다. 지수족의 특성에 대해 알아보자.
x에 대한 지수족 분포는 매개 변수 η가 주어진 경우 아래 분포로 정의된다:u(x): x함수 g(η): 분포 정규화(normalized) 계수이므로 아래를 만족:
[Bernoulli Distribution]:
위와 같이 정의되는데, 이를 μ에 대해 풀면 아래 식을 얻는데, 이를 Logistic Sigmoid함수라 부른다. 얻을 수 있으며, 여기서 (3.143)은 로지스틱 시그모이드 함수로 불립니다. 따라서 Bernoulli 분포에 1 - σ(η) = σ(−η)를 이용하면, 표준 표현은 아래와 같다:
[Multinomial Distribution]:
여기서의 μk식을 Softmax함수 혹은 정규화지수(normalized exponential)라 부른다.
[Gaussian Distribution]:
때로는 u(x) = x를 통해 제한된 Gaussian사용이 가능하다.
그러나 이는 f(x)가 정규화된 밀도일 때 아래 식도 정규화된 밀도가 됨을 고려하면, 다소 일반화 될 수 있다:이를 결합하면 아래 형태로 표현되는 제한된 지수족 클래스 조건부밀도를 얻는다.주의할 점: 각 클래스가 자체의 매개변수 벡터 λk를 가지고 있지만 클래스가 동일한 스케일 매개변수 s를 공유한다고 가정한다는 것.
4.1 Sufficient statistics
MLE로 일반 지수족 식의 매개 변수 벡터 η를 추정해보자:
식 2 양변을 η에 대해 미분:
이후 식 재배열하고 다시 식 2를 사용하면:
u(x)의 공분산: g(η)의 이계도함수로 표현가능. ∴ 지수족분포 정규화 시, 간단한 미분으로 모멘트를 찾을 수 있다. i.i.d의 dataset X = {x1 , . . . , xn}에 대한 Likelihood함수:
lnp(X|η)의 η에 대한 gradient = 0이라 하면, 아래와 같은 조건을 얻을 수 있다:
이는 원칙적으로 ηML을 얻기 위해 해결할 수 있는 조건으로 MLE의 해가 식1의 충분통계량(sufficient statistics)인 ∑n u(xn)을 통해 데이터 자체를 저장할 필요가 없다는 점에 주목하자.
이때, N → ∞의 극한을 고려하면 식 4의 오른쪽 항은 E[u(x)]가 되며, 식 3과 비교하여 이 극한에서 ηML이 실제 값 η와 동일하게 됨을 알 수 있다.
ex) Bernoulli Distribution: 함수 u(x)는 x만으로 주어지므로 데이터 포인트 {xn}의 합만 유지하면 됨.
Gaussian Distribution: u(x) = (x, x2)T이므로 {xn} 및 {x2n}의 합을 모두 유지한다.
5. Nonparametric Methods
prev.
[밀도모델링에 대한 모수적(parametrix) 접근]: Dataset에서 결정되는 소수의 parameter들로 규정되는 특정기능적형태의 확률분포를 알아보자.
위 접근의 중요한 한계점: 선택한 밀도가 데이터를 생성하는 분포의 모형으로부터 벗어날 수 있음. → 부정확한 예측 성능을 초래 가능.
ex) Multi-modal의 Data일 때, Gaussian으로는 분포의 측면을 포착하기 힘들다. (∵ Gaussian은 uni-modality) 이에 대해 분포의 형태에 대한 적은 가정을 하는 밀도추정의 몇가지 비모수적 방법(Histogram, KDE 등)을 고려해볼 것이다.
5.1 Histograms
단일 연속 변수 x에 대한 histogram밀도모델의 특성을 살펴보자.
표준 히스토그램: x를 폭 ∆i로 구분, 다음 i번째 bin에 속하는 x의 관측치 수 ni를 count. 🤔 이 count를 정규화 된 확률 밀도로 변환하려면? → 간단히 총 관측 수 N과 bin의 폭 ∆i로 나누어 각 bin에 대한 확률 값을 얻는다: 이때, ∫p(x)dx = 1인 것이 쉽게 확인가능하며, 종종 bin은 동일한 폭 ∆i = ∆를 가지도록 선택된다. cf) bins: 막대기 개수를 의미.
위 그림은 히스토그램 밀도 추정의 예시로 2개의 혼합 Gaussian의 녹색 곡선분포에서 Data 추출, 세 가지 다른 bin 폭 ∆에 해당하는 히스토그램 밀도 추정의 예가 표시. ∙ ∆가 매우 작은 경우: 밀도 모델은 매우 뾰족 = 기본 Dataset에 없는 구조 ∙ ∆가 너무 큰 경우: 너무 매끄럽고 결과적으로 녹색 곡선의 이중 모양 특성을 포착❌ ∙ ∆의 최적 값은 원칙적으로 ∆의 중간 값에서 얻어진다 원칙적으로 히스토그램 밀도 모델은 bin의 가장자리 위치의 선택에도 의존하지만 이는 일반적으로 bin 폭 ∆보다 훨씬 중요하지는 않다.
장단점 (feat. 차원의 저주)
히스토그램 방법은 후술되는 방법들과 다른 특성을 갖기에 histogram계산 이후 Dataset자체가 필요없어진다. → Dataset이 큰 경우 유리 & Data point가 순차적으로 도착 시 쉽게 적용 가능. → 이는 빠른 시각화에는 유리하나 대부분의 밀도추정응용 시에는 부적합함을 의미.
Prob) 추정 된 밀도가 데이터를 생성 한 기본 분포의 특성이 아닌 bin 가장자리에 의한 이산성을 갖는다는 것. Limit) 차원에 따른 스케일링: D 차원 공간의 각 변수를 M 개의 bin으로 나누면 총 bin 수는 MD. D와의 이 지수적인 스케일링은 차원의 저주(Curse of dimensionality)의 한 예시로 고차원 공간에서 지역 확률 밀도의 의미 있는 추정치를 얻기 위해 필요한 데이터 양이 방대 할 것임을 의미한다.
important Lesson)
① 특정 위치에서 확률 밀도를 추정시, 해당 지점의 일부 근처에 있는 Data point를 고려해야함. 이런 locality개념은 어떤 종류의 거리 측정을 가정해야 함을 의미. (ex) 여기서는 유클리드 거리를 가정.) locality 속성은 bin에 의해 정의, bin 폭은 local영역의 공간범위를 나타내는 자연스러운 'smoothing' 매개 변수가 존재.
② 좋은 결과를 얻으려면 smoothign매개 변수의 값이 너무 크지 않아야 하며 너무 작지 않아야 한다. 다항식의 차수 M 또는 정규화 매개 변수 값 λ이 중간 값에 최적화된 것과 비슷. 그렇기에 Dimension Scaling에 좀 더 나은 2가지 nonparametric기술인 Kernel Density와 K-NN에 대해 알아보자.
5.2 Kernel Densities
가정에 따르면 어떤 알려지지 않은 확률 밀도 p(x)에서 D-차원 공간(유클리드 공간으로 가정.)으로부터 관측치가 추출되고 p(x)의 값을 추정해보자. Locality에 대한 이전 논의에서 x를 포함하는 작은 영역 R을 고려해 볼 때, 이 영역과 연관된 확률 질량은 아래와 같다:
이제 p(x)에서 추출 된 N개의 관측치로 구성된 Dataset을 수집했다 가정하자. 각 Data point가 R 영역 내에 위치할 확률 P가 있으므로 영역 R 내에 위치한 점의 총 수 K는 이항 분포를 따른다:
점의 평균 비율이 E[K/N] = P이고, 이 주변의 분산이 var[K/N] = P(1 - P)/N이므로 큰 N에 대해서 이 분포는 평균 주변에 날카롭게 피크될 것이므로 아래와 같다:
그러나 영역 R이 확률 밀도 p(x)가 대략적으로 해당 영역 전체에서 상수일 만큼 충분히 작다고 가정하면 P ≃ p(x)V로 표현할 수 있다. 여기서 V는 R의 부피이므로 위의 K에 대한 등식과 아래 P에 대한 등식을 결합하면,
밀도 추정치는 다음과 같은 형태로 얻을 수 있다:
위의 p(x)의 유효성은 R 영역이 밀도가 대략적으로 해당 영역 전체에서 상수이며 동시에 R 내에 떨어지는 점의 수 K가 이항 분포가 날카로운 피크를 가지도록 충분히 크다는 두 가지 모순된 가정에 의존한다. 위의 p(x)결과를 2가지 방법으로 활용가능하다. ① Data에서 V의 값을 결정→K의 값을 얻는 것으로 고정. (이는 아래 5.3의 K-NN기법을 도출한다) ② 우리는 V를 고정하고 데이터에서 K를 결정. (이는 커널 접근을 도출한다.)
K-NN과 Kernel밀도 모두 V가 N과 함께 축소되고 K가 N과 함께 적절한 속도로 증가함에 따라 N → ∞로 수렴한다. (Duda 및 Hart, 1973). 먼저 Kernel방법에 대해 자세히 알아보자. 일단 영역 R을 x를 중심으로 한 작은 초입방(hypercube)으로 취한다. 이 영역 내에 있는 점의 수 K를 세기 위해 아래와 같은 함수를 정의하는 것이 편리하다.
위 함수는 원점을 중심으로 하는 단위 큐브를 나타내는 것으로 커널 함수의 예시이며 이 문맥에서는 Parzen window라고도 한다. 위 함수에서 (x - xn)/h의 양이 1이 될 것이며, 그렇지 않으면 0이 되므로 이 cube내의 Data point 총 수는 아래와 같다:
이 식을 k(u)에 대입하면 x에서 추정 된 밀도에 대한 아래와 같은 결과를 얻는다:
이때, 차원 D에서 한 변이 h인 초입방의 부피로 V = hD를 사용하며, 함수 k(u)의 대칭성을 사용하여 이 방정식을 이제 x를 중심으로 하는 단일 큐브 대신 N 데이터 포인트 중심의 N 큐브로 해석할 수 있다.
위의 커널 밀도 추정기식 p(x)는 히스토그램 방법이 겪었던 문제(= 즉 큐브의 경계에서의 인위적인 불연속성 문제와 동일한 문제)가 발생한다. 더 부드러운 커널 함수를 선택하면 더 부드러운 밀도 모델을 얻을 수 있으며, 흔히 선택하는 것은 Gaussian이므로 다음과 같은 커널 밀도 모델이 생성된다:
여기서 h는 가우시안 구성 요소의 표준 편차이므로 우리의 밀도 모델은 각 데이터 포인트 위에 가우시안을 배치하고 전체 데이터 세트에서 기여를 합산 한 다음 N으로 나누어 밀도가 올바르게 정규화된다.
위 그림에서는 이 모델 위의 p(x)식을 히스토그램을 적용하기 위해 이전에 사용한 Dataset에 적용한다.
이를 통해 h가 평활화 매개 변수의 역할을 하며, 작은 h에서의 잡음 감도와 큰 h에서의 과도한 평활화 간의 균형을 유지하는 것을 볼 수 있다. 즉, h의 최적화는 모델 복잡성 문제로 히스토그램 밀도 추정에서 bin 폭의 선택이나 곡선 맞춤에 사용되는 다항식의 차수와 유사하다.
위 p(x)식에 커널 함수 k(u)를 사용하여 p(x)를 선택할 수 있으며, 결과적으로 얻어진 확률 분포가 어디에서나 음수가 아니며 1로 적분되도록하는 아래 조건에 따라야 한다.
p(x)식에 의해 주어진 밀도 모델 클래스를 Kernel밀도 추정기 또는 Parzen 추정기라고한다. [장점]: 'train' 단계에서 계산이 필요하지 않아 저장소만 필요. [단점]: Dataset크기가 선형으로 증가, 평가 비용이 크게 증가.
5.3 Nearest-neighbors
Kernel기반의 밀도추정의 단점: 하나는 커널 폭을 제어하는 매개변수 h가 모든 커널에 대해 일정하게 고정된다는 것
데이터 밀도가 높은 지역: 큰 h 값이 과도한 스무딩을 유발→데이터에서 추출할 수 있는 구조를 희석. But❗️ h 값을 줄이면: 데이터 공간의 밀도가 작은 곳에서는 노이즈가 많은 추정값을 얻을 수 있다. ∴ h의 최적 선택은 데이터 공간 내 위치에 따라 다를 수 있다. 이 문제는 밀도 추정을 위한 Nearest Neighbors 방법으로 해결된다.
따라서 로컬 밀도 추정에 대한 일반적인 결과인 p(x) = K/NV 식으로 돌아가 V를 고정하고 데이터에서 K의 값을 결정하는 대신에, 고정된 값 K를 가지고 V의 적절한 값을 찾기 위해 데이터를 사용한다.
이를 위해 x 주변에 위치한 작은 구를 고려하고 해당 구에 정확히 K개의 데이터 포인트가 포함될 때까지 구의 반지름을 증가시킨 후, V를 해당 구의 부피로 설정하여 밀도 p(x)를 추정하는 이 기술을 K-Nearest Neighbors라 한다.
위 그림에서는 매개변수 K의 여러 선택을 사용하여 동일한 데이터 세트에 대해 Figures 3.13 및 3.14에서 사용된 것과 같이 설명되어 있. K의 값이 이제 스무딩의 정도를 결정하고 K가 너무 크지 않고 너무 작지 않은 최적의 선택이 있음을 다시 확인가능하다. K -NN에 의해 생성된 모델은 전체 공간에 걸쳐 통합되지 않으므로 실제로 밀도 모델은 아니다.
이 장을 이후, 밀도 추정의 K-최근접 이웃 기술을 classification task로 확장하는 방법을 살펴볼 것이다. 이를 위해 K-최근접 이웃 밀도 추정 기술을 각 클래스에 별도로 적용하고 베이즈 이론을 사용합니다.
Nk 점으로 구성된 클래스 Ck의 데이터 세트가 있을 때 새로운 점 x를 분류하려면? → 해당 클래스에 대한 K-NN추정 기술을 적용, 베이즈 이론을 사용.
x를 포함하는 정확히 K개의 점이 포함 된 구를 그리면 이 구의 부피를 V로 사용하여 각 클래스와 관련된 밀도의 추정치를 얻는다(3.187). 비조건부 밀도는 (3.188)로 주어지고 클래스 사전 확률은 (3.189)로 주어집니다.
이제 베이즈 이론을 사용하여 (3.187), (3.188) 및 (3.189)를 결합해 클래스 소속의 사후 확률(posterior)을 얻을 수 있다.
[Step 1] 오분류 확률을 최소화하려면 새로운 점 x를 K-최근접 점을 식별하고 그 중에서 대표자가 가장 많은 클래스Kk/K에 할당한다.
[Step 2] 따라서 테스트 포인트를 분류하려면 훈련 데이터 세트에서 K 개의 가장 가까운 포인트를 식별하고 그 세트 중에서 대표자가 가장 많은 클래스에 새로운 포인트를 할당한다.
이때, 동점은 임의로 해결할 수 있는데, K = 1인 특별한 경우는 Nearest Neighbor 규칙이라고하며 test point는 단순히 훈련 세트에서 가장 가까운 포인트와 동일한 클래스에 할당된다. 이런 개념은 아래 그림에서 볼 수 있다:
(K = 1)의 K-NN classifier의 주요점: N → ∞일때의 오류율*2 < 최적 분류기의 최소 오류율 이 최적의 classifier는 실제 클래스 분포를 사용하는 것이다.(Cover and Hart, 1967) 지금까지 K-NN방법과 Kernel밀도추정기의 단점: 전체 Train Dataset을 저장해야하므로 Dataset이 크면 Cost가 많이 발생.
이러한 효과는 (근사적인) 근접 이웃을 데이터 세트를 체계적으로 검색하지 않고 효율적으로 찾기 위해 트리 기반 검색 구조를 구축하여 상쇄할 수 있지만, 이런 비모수적 방법은 여전히 심각한 제약이 있다.
반면 간단한 모수적 모델은 표현할 수있는 분포의 형태에 있어서 매우 제한적이므로 따라서 매우 유연하면서도 모델의 복잡성을 훈련 세트의 크기와 독립적으로 제어할 수 있는 밀도 모델을 찾아야 하는데, 이를 위해 Deep Learning을 활용할 수 있다.
cf. Hypothesis Testing (가설 검정)
Statistical Hypothesis Testing
∙ 통계적 가설검정:통계적 추론의 일종으로 귀무가설과 대립가설로 나타낸다. 모집단의 실제 값에 대해 "표본정보로 가설의 합당성 여부를 검정하는 과정"
∙ Null Hypothesis:귀무가설(H0)은 처음부터 버릴 것을 예상하는 가설. → 의미없는 경우의 가설.
∙ Alternative Hypothesis:대립가설(H1)은 귀무가설에 대립되는 명제. → 귀무가설처럼 검정을 직접수행이 불가 → 귀무가설을 기각함으로써 반증의 과정을 거쳐 증명.
가설검정 예시
ex)전국 만 20세 이상의 평균키가 170cm라는 주장을 통계적으로 검증하자.
Step 1. H0, H1 설정.
∙ Null Hypothesis: 20세 이상의 성인남성평균키는 170cm와 같다(= 차이가 없다). ∙ Alternative Hypothesis: 20세 이상의 성인남성평균키는 170cm와 다르다. 이제, 수집된 표본 데이터로 귀무가설의 accept/reject여부를 판단해야한다.
Step 2. 유의수준(significance level) α 결정.
accept / reject할 "유의수준" 설정. (보통 1%나 5% 즉, α값을 0.01이나 0.05로 설정.) 또한, 양측검정할 것인지 단측검정할 것인지도 설정해야한다. (양측일 때는 α/2값을 적용.)
Step 3. 표본수집, 검정통계량계산, p-value계산.
표본 수집 후, 검정통계량을 계산한다.
[검정통계량; Test Statistics]: 수집데이터로 계산한 "확률변수" ex) 정규분포의 Z값. 이때, Z값은 표본 수, 표본 평균, 표본표준편차로 구할 수 있다.
[p-value]: 검정통계량으로 계산된 확률 즉, 추출한 표본통계량이 나타날 확률 = 귀무가설을 accept할 지 안할지의 확률.
이런 검정통계량은 분포함수에 따라 Z, t, F, ꭓ2통계량 등이 사용될 수 있고, 이에 상응하는 p-value(= 검정통계량이 나올 확률)를 계산할 수 있다.
Step 4. p-value ≤ α면 H0기각, p-value >α면 H0 채택.
Step 3에서 계산된 p-value와 유의수준 α를 비교.
if p_value < α:
H1 accept
else:
H0 accept
다만, p-value > α일 때, 관측확률이 유의수준보다 크다는 뜻은 귀무가설분포내에서 표본을 추출하다 우연히 발생하는 차이라 볼 수 있기에 귀무가설을 기각할 수 없는 것이다.
t-Test : 두 Sample그룹의 평균 비교.
∙ t-Test: t-분포를 따르는 통계적 가설검정법. - 귀무가설: 두 집단 평균이 동일 - 대립가설: 두 집단 평균이 다름
∙ t-Test 종류 - 단일표본 t-Test: 표본과 모집단의 평균이 다른지를 판다. - 독립 t-Test: 두 독립표본의 평균을 비교 -대응표본 t-Test:동일표본대상으로 일정시간간격으로 2번 data수집, 데이터평균의 차이를 검증.
ꭓ2-Test: 적합도∙독립성∙동질성 검정
∙ 적합도 검정(Goodness of fit)
1개 변수에 대해, 이 변수가 기대되는 분포를 따르는지 아닌지에 대한 검정.
즉, 실제로 관측된 값과 곧 일어날 것으로 기대하는 값을 비교하는 것.
주사위를 6번 던져 1자(점 한 개), 2자(점 두 개), 3자, 4자, 5자, 6자가 나온 비율은
귀무가설: 변수 x의 관측분포와 기대분포가 같다.
대립가설: 변수 x의 관측분포와 기대분포가 다르다.
∙ 독립성 검정(Test of Independence)
2개 변수가 서로 상관이 없고 독립적이라고 기대.
즉, 관찰빈도와 비교해 서로 연관되어 있는지 기대빈도의 진위 여부를 판단.
[예 1]
기침약 브랜드 A B C.
150명 환자를 대상으로
기침약의 효과가 있는지 없는지 측정
귀무가설: 변수 x, y는 서로 독립
대립가설: 변수 x, y는 독립이 아님
∙ 동질성 검정(Test of Homogeneity)
2개의 변수 관계를 검정하는 독립성 검정와 달리,
동질성 검정은 각 그룹들이 동질성을 가진 것인지에 대한 검정
[예]
남자와 여자의 흡연율 차이에 대해 흡연 조사.
귀무가설: 남자와 여자의 흡연율 확률분포가 동일
대립가설: 남자와 여자의 흡연율 확률분포가 다름
카이제곱 검정을 수행하기 전에 다음 가정이 충족되어 검정이 유효한지 확인해야 한다.
1. 무작위
무작위 표본 또는 무작위 실험을 사용하여 두 표본에 대한 데이터를 수집
2. 범주형 / 카테고리(categorical) 데이터
변수는 범주형 데이터
위 조건이 충족되면 카이제곱 검정.
F-value와 ANOVA: 분산 분석
ANOVA(Analysis of Variance)
통계학에서 2개 이상 다수의 집단을 서로 비교할 때
집단의 분산, 총 평균, 각 집단의 평균차에 의해 생긴 집단 간 분산의 비교를 통해 만들어진 f 분포를 사용해 가설을 검정하는 방법.
F-value: 잔차 오차로 인한 분산과 그룹평균의 분산에 대한 비율로 계산한 '분산'의 비율을 척도로 이용한다.
ANOVA의 가설
귀무가설(H0): 모든 샘플 평균이 동일
대립가설(Ha): 적어도 1개의 샘플 평균이 다름
[예]
7일 동안 4명의 판매원의 판매를 기록, 각 판매원의 하루 판매는 아래와 같다
※ 영업 사원들 서로 다른 요일의 판매 차이가 있는지 판단
d
ꭓ2-Test: 적합도∙독립성∙동질성 검정
∙ 적합도 검정(Goodness of fit)
1개 변수에 대해, 이 변수가 기대되는 분포를 따르는지 아닌지에 대한 검정.
즉,실제로 관측된 값과 곧 일어날 것으로 기대하는 값을 비교하는것.
주사위를 6번 던져 1자(점 한 개), 2자(점 두 개), 3자, 4자, 5자, 6자가 나온 비율은
어떤 동네의 주민 1,000명의 흡연 여부, 폐암 여부에 따른 분포(관찰 빈도)가 다음과 같다고 하자.
관찰 빈도
흡연자
비흡연자
총합
폐암 환자
75
125
200
정상인
225
575
800
총합
300
700
1000
이 표를 보고 폐암 환자가 더 많다고 할 수 있는지에 대한 검정이 카이 제곱 검정이다. 카이 제곱 검정을 하는 과정은 다음과 같다.
1) 기대 빈도 산출
2) 카이 제곱 검정량 산출
3) 자유도 산출
4) p-value 계산
1) 기대 빈도 산출
2) 카이 제곱 검정량 산출
이 값을 잘 생각해보면, 관찰 빈도와 기대 빈도의 차이가 클수록 카이 제곱 검정량이 커진다는 것을 알 수 있다. 즉, 아무 관련성이 없다고 가정했을 때 예상되는 기대 빈도보다 더 많은 양이 관찰되거나, 훨씬 적은 양이 관찰된다면 카이 제곱 검정량이 커진다는 것이다. 따라서너무나도 당연한 소리지만, 카이 제곱 검정량이 클수록 예상하지 못했던 결과라는 뜻이고, 유의미한 관련성이 있다는 뜻이다. (따라서, 카이 제곱 검정량이 클수록 p-value가 작아지는 방식의 디자인이 필요하다.)
3) 자유도 산출
자유도=(열의개수−1)×(행의개수−1)=1자유도=(열의 개수−1)×(행의 개수−1)=1
4) p-value 계산
다음 두 가지 과정을 생각해보도록 한다.
i) ɑ=0.05로 하였을 때 유의미한 관련성이 있다고 할 수 있는가?
자유도가 1인 카이 제곱 분포에서 카이 제곱 검정량이 0~3.84 사이일 때 적분 값이 0.95다. 즉, 아래 그림에서 빨간색 영역의 면적이 0.95, 파란색 영역의 면적이 0.05다.따라서, 자유도가 1일 때, 카이 제곱 검정량이 0에서 3.84 사이로 관찰될 확률은 95%라는 뜻이고, 동시에 3.84 이상 관찰될 확률은 5%라는 뜻이다. 그러므로, 산출된 카이 제곱 검정량이 3.84보다 크면 유의미한 관련성이 있다는 것인데, 위 폐암-흡연의 카이 제곱 검정량은 6.6964였으므로 유의미한 관련성이 있다고 결론 내릴 수 있다.
ii) 그래서 p-value가 몇인데?
0부터 산출된 카이 제곱 검정량인 6.6964까지의 자유도가 1인 카이 제곱 함수의 적분 값(아래 그림 초록색 영역)은 0.9903394이다. 따라서 p-value는 1에서 초록색 영역 넓이를 뺀 0.0097 (아래 그림 보라색 영역)이다. 즉, p-value는 산출된 카이 제곱 검정량에서부터의 카이 제곱 함수의 적분 값을 의미한다.
ML의 적용은 "불확실성을 다루는 것"이 필수적: uncertainty에는 다음 2가지 종류가 있음.
∙ Epistemic uncertainty
= systematic uncertainty 인식론적 불확실성은 다음 특성을 갖는다. - 유한한 dataset size - 즉, 무한한 large data에 대해 우연적인 불확실성이 존재 → model이 data를 충분히 해결❌
∙ Aleotoric uncertainty
= intrinsic uncertainty = stochastic uncertainty = noise 이런 우연성(aleotoric)은 data에 포함된 고유 noise로 인해 발생한다.
→ noise는 세상정보의 일부만 관찰하기에 발생하는 것. → 이 불확실성을 줄이려면 다른 종류의 data수집이 필요.
이런 불확실성을 다루기 위한 Tool로써 "확률론"을 사용함. 이 확률론에는 단순하지만 강력한 2가지 법칙이 존재. ∙ 합의 법칙 ∙ 곱의 법칙
합∙곱법칙 + 결정이론(decision theory)를 이용하면, 정보가 모호 = uncertainty가 있더라도 optimal prediction에 도달할 수 있다.
∙How to deal with uncertainty?
i) 빈도주의적 관점에서의 확률 사용: 많이 해보면(= frequency↑), 확률은 특정 값에 수렴한다. 즉, 불확실성의 양적평가로써 확률을 사용할 수 있음.
ii) Bayesian 관점에서의 확률 사용. 빈도주의 확률을 포함하는 보다 일반적인 Bayesian 관점. 불확실성의 양적 평가로써의 확률 사용. 즉, 관측된 결과가 많아질수록 해당 확률에 대한 불확실성은 낮아진다.
1. The Rules of Probability
1.1 의학적 선별검사 예제
[문제]: 암 조기 발견을 위한 인구 스크리닝 [가정]: 가정컨대 인구의 1%가 실제로 암에 걸려 있다 [이상적 상황]: 암이 있는 사람에게 양성, 암이 없는 사람에게 음성. [실제적 가정]: 암이 없는 사람에게 3%가 양성이라 나올 것 (= FP) 암이 있는 사람에게 10%가 음성이라 나올 것(= FN) 🤔 [질문] 1) '인구를 스크리닝하면 누군가가 양성일 확률은? 2) '누군가가 양성 결과를 받았을 때, 실제로 암에 걸려 있을 확률은?
이러한 질문에 일반적인 확률 법칙, 즉 합의 법칙과 곱의 법칙을 유도해보자.
1.2 합∙곱의 법칙
확률 법칙 유도를 위해 아래 예제를 살펴보자. 이 예제에서는 두 변수 X와 Y가 관련되어 있습니다. 이 변수는 바뀔 수 있기에 이를 "random variable"이나 "stochastic variable"이라 한다.
[가정]: X가 i = 1, ..., L 값을 갖고 Y가 j = 1, ..., M 값을 갖을 수 있으며, X와 Y를 모두 샘플링하는 N번의 시도할 때, ∙ nij : X = xi 및 Y = yj인 경우의 시도 수 ∙ ci :X가 값을 xi로 취하는 시도 수(Y가 어떤 값을 취하든지 상관없이) ∙ rj:Y가 값을 yj로 취하는 시도 수 ∙ p(X = xi, Y = yj): X가 값 xi를 취하고 Y가 값 yj를 취할 확률 이를 X = xi 와 Y = yj의 결합확률(joint probability)라한다. 이는 셀 i,j에 속하는 점의 수를 전체 점의 수로 나눈 비율로 주어진다: 이때, 암시적으로 lim N → ∞을 고려한다; 비슷하게 Y의 값과는 무관하게 X가 값을 xi로 취할 확률은 p(X = xi)로 표시된다. 이는 열 i에 속하는 전체 점의 수로 주어진다:이때, ∑i ci = N이므로
🤔 Sum Rule
따라서 확률은 요구사항에 따라 합이 1이 됩니다. Figure 2.4의 i 열에 대한 인스턴스 수는 해당 열의 각 셀의 인스턴스 수의 합일 뿐이며, 따라서 ci= ∑jnij이므로 (2.1)과 (2.2)에 의해 아래 식이 성립한다:
이것이 바로 확률의합의 법칙이다.
🤔 조건부 확률
∙ p(X = xi) : marginal probability, 이는 다른 변수들(여기서는 Y)을 주변화하거나 sum out하여 얻는다. ∙ p(Y = yj | X = xi) : 만약 X = xi인 경우만을 고려한다면, 그 중 Y = yj일 확률이다. 이를 X에 대한 Y의 조건부 확률이라 한다.
이는 열 i에 속하는 그 점 중 셀 i,j에 속하는 점의 비율을 찾아 얻을 수 있으며, 따라서 다음과 같이 주어진다:
양변을 j에 대해 모두 합하고, ∑j nij = c를 사용하면 아래와 같다:
이로써 조건부 확률이 올바르게 정규화되었음을 보여준다.
🤔 Product Rule
이제 (2.1), (2.2), (2.5)에서 아래를 유도할 수 있는데, 이를 확률의 곱의 법칙이라 한다:
🤔 Sum & Product Rule
다만, X가 xi값을 취할 확률을 p(X=xi)로 표기하기는 다소 번거롭기에 p(X)로 random variable X에 대한 분포를 나타낼 것이며, 문맥 상 명확하게 특정값 xi에 대한 분포를 p(xi)로 표기하자.
이제, 이렇게 간단한 표기법을 이용하면 합과 곱의 법칙은 아래와 같이 표현가능하다: ∙ p(X,Y): 결합확률(joint probability), 'X와 Y의 확률'. ∙ p(Y|X): 조건부 확률(conditional probability),'X가 주어진 상황에서 Y의 확률'. ∙ p(X): 주변 확률(marginal probability), 단순히 'X의 확률'
1.3 Bayes' theorem
곱의 법칙과 결합확률의 대칭성 성질을 이용해 조건부 확률로부터 아래 수식을 얻을 수 있는데, 이를 베이즈 정리(Bayes' Theorem)이라 한다.
좌변의 조건부분포 P(Y|X)와 우변의 p(X | Y)간의 관계를 나타낸다는 것에 주목할 때, 합의 법칙을 사용, 베이즈 정리의 분모를 분자에 나타난 양으로 표현할 수 있다: 즉, 베이즈 정리의 분모는 p(Y|X)에서 모든 Y의 값에 대한 조건부 확률 분포의 합이 1이 되도록 보장하기 위해 필요한 정규화 상수로 볼 수 있다. 좌상단) N = 60의 유한한 data point sample이 결합분포에서 추출 우상단) 각각의 두 값 중 하나를 가지는 data point비율 historgram. 하단) p(X)와 p(X|Y=1)의 해당 histogram 추정치. 확률의 정의에 따라 N → ∞일 때, data point 비율=해당 확률 p(Y)
1.4 의학적 선별검사 재방문
1.1 예제에 대한 조건부 확률합과 곱의 법칙 적용
∙ 변수 C: 암의 존재 여부 (C = 0은 '암이 없음', C = 1은 '암이 있음') [가정]:가정컨대 인구의 1%가 실제로 암에 걸려 있다 [이상적 상황]:암이 있는 사람에게 양성, 암이 없는 사람에게 음성.
∙ 변수 T: 검진 테스트 결과. T = 1: 암을 나타내는 양성 결과, T = 0: 암의 부재를 나타내는 음성 결과
[실제적 가정]:암이없는 사람에게 3%가양성이라 나올 것(=FP) 암이있는 사람에게 10%가음성이라 나올 것(=FN) 따라서 우측처럼 네 가지 조건부 확률을 모두 쓸 수 있다:
다시 한 번, 이런 확률은 정규화되어 아래를 만족한다:
이에 대한 합과 곱의 확률법칙 적용
첫 번째 질문에 답하고 임의로 테스트 받은 사람이 양성 테스트 결과를 가질 전체적인 확률:
random test시, 실제 암확률=1%, test가 양성일 확률=4%이므로 이데 합의 법칙을 사용하면 p(T = 0) = 1 − 387/10, 000 = 9613/10, 000 = 0.9613
가 되고, 따라서 암이 없을 확률은 대략 96%이다.
이제 test=positive일 때, TP일 확률은? 이는 테스트 결과에 조건을 걸은 상황에서 암에 걸릴 확률을 평가해야 한다. p(T=1|C=1)~p(T=0|C=0)까지의 확률은 해당 사람이 암에 걸렸을 때 테스트 결과의 확률 분포를 제공한다. 하지만, 우리가 원하는 것은 테스트 결과에 따른 암에 걸릴 확률이므로 이런 조건부확률을 반전시키는 문제에 대해 Bayes' Theorem을 적용시켜 아래 식을 얻을 수 있다.
따라서 임의로 검사를 받아 양성이 나온 경우, 실제로 암에 걸린 확률은 23%이다. 합의 법칙을 이용하면, p(C = 0|T = 1) = 1 - 90/387 = 297/387 ≈ 0.77이 되어, 암이 없다는 확률은 77%가 된다.
1.5 Prior와 Posterior 확률
Bayes' Theorem의 중요해석
① prior(사전확률): 어떤 사람이 테스트를 받기 전에 해당 사람이 암에 걸릴 가능성을 묻는다면, 우리가 가지고 있는 가장 완전한 정보는 확률 p(C)를 사전확률이라 한다. 즉, 테스트 결과를 관찰하기 전에 사용할 수 있는 확률이다.
② posterior(사후확률): 이 사람의 test결과로 Bayes' Theorem으로 (p(C|T)를 계산할 수 있는데, 이를 사후 확률(posterior probability)이라고 한다. 즉, 테스트 결과 T를 관찰한 후에 얻은 확률이다.
1.1 예제를 살펴보자. ∙ 암에 걸릴 prior = 1%. ∙ 양성결과를 관찰 후, 암에 걸릴 posterior = 23% 상당히 높아진 것을 확인가능한데, 이는 직관적으로 예상할 수 있는 암의 높은 확률이다.
But❗️Figure 2.3에서 보이듯, 테스트가 상당히 '정확'해 보일지라도 양성 테스트를 받은 사람은 여전히 실제로 암에 걸릴 확률이 23%이다. 이는 보편적인 시각에서 직관에 어긋나 보일 수 있다. (∵ prior가 낮기 때문)
비록 테스트가 암에 강력한 증거를 제공하더라도, Bayes' Theorem으로 사전 확률과 결합되어 올바른 사후 확률에 도달해야 한다.
1.6 독립 변수
[독립(independent)]: 두 변수의 결합 분포가 주변의 곱으로 나타날 때 독립이라 한다.
즉, 좌측 식에 대해 X와 Y는 독립이라 한다.
ex-1) 동전을 연속으로 던질 때, 곱의 법칙에 따라 (p(Y|X) = p(Y)이므로 X의 값에 독립적인 Y의 조건부 분포를 갖는다.
ex-2) 1.1 예제에서 양성 테스트의 확률이 해당 사람이 암에 걸렸는지에 독립이라면? (p(T|C) = p(T)가 성립 → Bayes' Theorem에 따라 p(C|T) = p(C) 즉, 테스트 결과를 관찰해도 암의 확률이 변하지 않음을 의미. (= test결과가 쓸모 없음.)
2. Probability Densities
preview
이제, discrete말고 continuous변수에 대한 확률을 알아보자.
ex) 환자에게 어떤 약물을 투여해야 할지 예측하고자 한다면? → 이 예측에는 불확실성이 존재, 이를 양적화하려면 확률이 필요. 이 확률개념을 직접적으로 적용하는 방법은 다루지 않았기에 "확률밀도함수"개념을 소개.
[확률 밀도 함수(probability density)]: 연속 변수 x에 대해, p(x)δx = 확률 밀도 함수 p(x)를 x가 (x, x + δx) 구간에 속할 확률 (이때, δx → 0).
(위 그림 참고) 구간 (a, b)에 속할 확률:
확률은 비음수이며, x의 값은 어딘가에 실수 축 상에 위치해 있기 때문에, 확률 밀도 함수 p(x)는 아래 두 가지 조건을 만족해야 한다: x가 구간 (-∞, z)에 속할 확률은 누적 분포 함수(cumulative distribution function, CDF)에 의해 정의되는데, 이는 Figure 2.6에 나와 있는 것처럼 P′(x) = p(x)를 만족하는 누적 분포 함수이다: x1, ..., xD의 여러 연속 변수에 대해, 이들을 모두 포함하는 벡터 x로 나타낼 수 있고, 이 벡터에 대한 결합 확률 밀도 함수를 p(x) = p(x1, ..., xD)로 정의할 수 있다. p(x)δx: x가 속한 δx에 대한 확률 (δx: 무한소 체적; infinitesimal volume)
이 다변량 확률 밀도는 아래 조건을 만족한다:
cf) 이때, 적분값이 발산하면 정규화될 수 없는데, 이 정규화될 수 없는 분포를 부적절한(improper) 분포라 한다.
더 일반적으로, 이산 및 연속 변수의 조합에 대한 결합 확률 분포도 고려할 수 있다: 합과 곱의 법칙, 베이즈 정리는 이산∙연속 변수의 조합, 확률 밀도에도 적용가능하기에 만약 x와 y가 두 실수 변수라면, 합과 곱의 법칙은 다음과 같은 형태를 갖는다.
마찬가지로, 베이즈 정리는 다음과 같은 형태로 쓸 수 있다.
분모는 다음과 같이 주어집니다. 연속 변수에 대한 합과 곱의 법칙의 형식적인 근거는 측도론(measure theory)이라는 수학 분야를 필요로 하며, 이는 본 책의 범위를 벗어나지만, 이의 유효성은 각 실수 변수를 폭이 ∆인 구간으로 나누어 이들 간의 이산 확률 분포를 고려함으로써 비형식적으로 확인할 수 있으며 이 구간의 폭을 ∆로 한계를 취하면 합이 적분으로 변하고 원하는 결과를 얻을 수 있습니다.
2.1 분포 예시
[Laplace Distribution]
지수 분포의 변형으로, 정점을 위치 μ로 이동시킬 수 있다. 상수, 지수 및 라플라스 분포는 Figure 2.7에서 설명되어 있다.
[Dirac delta function]
디랙 델타 함수는 x = μ에서만 0이 아닌 값을 가지며 p(x)적분 시, 1이 되도록 정의된다. (면적이 1인 특성) 직관에 의거, 이를 x = μ에서 무한히 좁고 무한히 높은 스파이크로 생각할 수 있으며 만약 D = {x1, ..., xN}로 주어진 x의 유한한 관측값 집합이 있다면, 델타 함수를 사용하여 다음과 같은 경험적 분포를 구성할 수 있다. 위 식에 정의된 경험적 분포는 각각 데이터 포인트를 중심으로 하는 디랙 델타 함수로 구성되며, 이를 통해 정의된 확률 밀도는 필요에 의해 적분 시 1이다.
2.2 기댓값과 공분산
Expectation
확률과 관련된 가장 중요한 작업 중 하나는 함수의 가중 평균을 찾는 것이다. E[f] : 기대값(expectation), 이때, x의 다른 값들의 상대적 확률에 따라 "가중"된다. = 확률 분포 p(x) 하에서 함수 f(x)의 가중 평균두 경우 모두 확률 분포나 확률 밀도로부터 뽑힌 유한 개수의 N개의 점이 주어진 경우, 기대값은 이러한 점들을 이용한 유한 합으로 근사화될 수 있다. 이때, 위의 근사식은 N → ∞로 수렴할 때 더 정확해진다. (즉, sample이 많아질수록 근사값이 실제 함수의 가중평균값에 더 수렴한다는 의미.) 때로는 여러 변수의 함수에 대한 기대값을 고려할 것이며, 이 경우 어떤 변수에 대한 평균을 나타내기 위해 우측처럼 하위 첨자를 사용할 수 있습니다: 이는 x의 분포에 대한 함수 f(x, y)의 평균을 나타내는데 여기서 Ex[f(x, y)]는 y의 함수이다. 또한 조건부 분포에 대한 조건부 기대값은 아래와 같으며 이 역시 y에 대한 함수이다. 이때, 함수 f(x)의 분산은 아래와 같이 정의된다: 이는 f(x)가 그 평균값 E[f(x)]주변에서 얼마나 변하는지를 측정하는 지표를 제공한다. 제곱을 풀어서 표현하면 분산은 f(x)와 f(x)2의 기대값으로도 나타낼 수 있다. 특히 변수 x 자체의 분산을 고려하면 아래와 같다:
Covariance
두 확률 변수 x와 y에 대해, 공분산은 두 변수가 함께 얼마나 변하는지를 측정한다:
만약 x와 y가 독립이라면: Cov[x,y]=0
두 벡터 x와 y에 대해, 그들의 공분산은 다음과 같은 행렬이다:
만약 벡터 x의 구성 요소들 간의 공분산을 고려한다면, 더 간단한 표기법으로 cov[x] ≡ cov[x, x]를 사용한다.
3. The Gaussian Distribution 🌟
prev.
연속변수분포예시들 중, 가장 중요한 분포를 꼽으라면 단연 Gaussian Distribution(= 정규분포)이다:
정규분포는 평균(μ)과 분산(σ²)에 의해 지배되는 x에 대한 확률 밀도이다. 이때, 표준편차(σ)를 이용해 precision을 구할 수 있다. ∙ precision(β) = 1/σ² = 분산의 역수
Gaussian 분포는 최대 엔트로피의 개념과 중심 극한 정리의 관점에서 자연스럽게 나타난다. Gaussian 분포는 아래조건을 만족하며, 정규화되어있음을 증명할 수 있다. 따라서 Gaussian분포 식이 유효함을 증명가능하다:
3.1 평균과 분산
Gaussian분포 하에서 x에 대한 함수의 기댓값: 이때, 분포의 평균값(μ)을 나타내서 매개 변수 μ를 평균이라고 한다. 위 식의 적분은 분포의 x를 1승으로 제곱한 것의 기대값이라고 알려진 제1순 적률(first-order moment)로 비슷하게 2차 moment에 대해 평가를 할 수 있다: 위 식들을 이용해 구해진 분산값은 다음과 같다:
따라서 σ2는 분산 매개 변수로 알려져 있으며, 분포의 최댓값을 최빈값이라고 한다. (Gaussian의 경우, mode=mean)
3.2 Likelihood 함수
[가정]: μ와 σ2이 알려지지 않은 정규분포에서 독립적으로 추출된 N개의 관측 dataset에 대해 μ와 σ값을 결정하고자 한다. 이때, 관측치 집합에서 확률 분포를 추정하는 문제는 밀도 추정(density estimation)으로 알려져 있으며 밀도 추정의 문제는 기본적으로 잘 정의되지 않는다. (∵ 관측된 유한한 Dataset에서 발생가능한 무한한 확률분포가 존재해서.)
[방법]: 사실, x1,...,xN 각각의 데이터 포인트에서 0이 아닌 모든 p(x)는 잠재적인 후보. 여기서는 가능한 후보들을 가우시안으로 제한하면, 명확하게 정의된 해결책에 도달한다.
i.i.d (independent & identically distributed)
data point가 동일분포에서 독립적으로 추출된 것. 이때, Joint probability는 두 event간의 곱으로 표현. x가 i.i.d이고 μ와 σ2가 주어진 경우, Dataset의 확률은 우측과 같다:
Likelihood Function
Gaussian에 대한 Likelihood함수: 그림 2.9처럼만약 μ와 σ2의 함수로 볼 때의 Gaussian function Maximum Likelihood: 이때 관찰된 Dataset으로 확률분포의 매개변수를 결정하는 방법. Likelihood Function을 최대화하는 parameter를 찾는 방법.
Step 1. Gaussian에서 Gaussian Likelihood함수를 최대화하여 알려지지 않은 매개 변수 μ와 σ2의 값을 결정. (실제로 Likelihood함수의 log를 최대화 하는 것이 편리.) (실용적으로도, 큰 수의 작은 확률의 곱은 컴퓨터의 숫자 정밀도를 손상시킬 수 있기에, 이는 로그 확률의 합을 계산함으로써 해결가능.) 이에 따라서 로그 가능도 함수는 다음과 같다: 위 식을 μ에 대해 최대화하면 다음과 같은 Maximum Likelihood 해를 얻을 수 있다. 이를 sample mean, 표본평균이라 하며, 이는 관측된 값 {xn}들의 평균을 의미한다. 비슷하게 σ2에 대해 최대화 시, 분산에 대한 최대 우도해를 얻을 수 있다. 이를 표본 평균 μML에 대한 sample variance, 표본 분산이라 한다.
주의할 점은 우리가 μ와 σ2에 대해 (2.56)을 동시에 최대화하지만, Gaussian분포는 μ에 대한 해가 σ2에 대한 해에서 독립되어 계산될 수 있기에 따라서 먼저 μML을 평가하고 이 결과를 사용하여 나중에 σML2을 평가할 수 있다.
3.3 Maximum Likelihood의 Bias
Maximum Likelihood, 본 Section에서는 ML이라 부르겠다. ML은 딥러닝에서 널리사용되어 기계학습알고리즘의 근간이 되지만, 몇가지 제한사항이 있는데, 이를 단일 변수 가우시안을 사용한 예제를 통해 알아보자.
Maximum Likelihood의 제한사항(feat. bias)
[가정]: μML과 σ2은 Dataset(x1, ..., xN)의 함수로 이 값들이 실제로 μ와σ2가 μML과σML2로 추정된 정규분포에서 i.i.d로 생성됨. 이 Dataset에 대한 μML과σ2의 기대값을 고려해 보자: [결과]: 이러한 결과는 아래 2가지를 보여준다. μML =μ의 불편 추정량 σML2 ≠ σ2의 불편 추정량. (N-1 / N) ∴ ML방법은 따라서 최대 우도 방법은 모집단 추정에 완벽하지 않다. 이것은 바이어스(bias)라고 불리는 현상의 예시이다.
[Bias]: random한 추정량이 실제값과 체계적으로 다른 것.
[Bias발생원인]: 분산이 데이터에 맞게 조정된 MLE기준으로 측정되기 때문 아래 그림을 통해 직관적인 이해가 가능하다. 대신 실제 평균 μ에 접근하여 아래처럼 분산을 결정하는데 사용했다 가정하자: 이렇게 되면 unbiased된 분산 추정치 값을 찾을 수 있는데, 이는 실제 분산과 같아진다: 물론 우리는 실제 평균에 접근할 수 없고 관측된 데이터 값에만 접근할 수 있기에 실제 분산과 같아지긴 어렵다.
다만, ML분산의 평균에 따라 Gaussian분포에 대한 분산의 다음 추정치의 경우, 편향이 없어진다:
다만, 신경망처럼 복잡한 모델에서는 ML의 bias보정이 쉽지 않다. 또한, MLE의 bias는 Data point N이 많아지면, 덜 중요해지진다.(lim N → ∞, σML2 = σ2)
Gaussian의 경우, 너무 N이 적지 않은 이상 이 bias가 큰 문제가 되진 않지만 본 저서는 Deep Learning 즉, 많은 parameter를 갖는 모델에 초점을 두었기에 ML과 관련된 bias문제는 보다 심각하다.(Overfitting문제와 밀접한 관련성을 가짐.)
3.4 Linear Regression
Linear Regression에서 Error function과 Regularization에 대해 알아보자.
Regression의 목표: input x에 대한 target t의 예측을 가능케 하는 것.
[가정]: training data= input x = (x1, ..., xN) & target t = (t1, ..., tN) x가 주어질 때, t의 불확실성을 확률분포로 나타내고자 함. 이때, data는 i.i.d 이를 위해 주어진 x에 대한 t의 값이 y(x, w) 값과 동일한 평균 μ와 분산 σ2을 갖는 Gaussian 분포를 가짐: train data {x, t}를 사용해 ML로 알 수 없는 매개변수 w와 σ2의 값을 결정하자. i.i.d이므로 ML방법을 통해 w를 결정할 수 있다. 위 도식의 분포와 i.i.d로 data추출되었다 가정시 likelihood함수: 가우시안 분포식으로 ML을 수행시 Log-Likelihood함수: wML: 다항식 계수에 대한 MLE값으로 이 값은 w에 대해 위의 식을 최대화하여 결정되므로 다음과 같은 trick을 사용해보자.
① 위의 식의 우변에서 마지막 두 항을 생략할 수 있다. (∵ w에 의존하지 않기 때문)
② Log-Likelihood를 양의 상수계수로 스케일링 (∵w에 대한 최대값의 위치를 변경하지 않으므로 1/2σ2 대신 1/2로 계수를 대체)
③ MLE → NLL 최소화 (= w 결정 시 MSE와 동일하게 됨) ∴ Gaussian Noise Distribution을 가정, MLE의 결과가 MSE로 바뀌어 버린 것! 또한, MLE를 이용해 σ2를 결정할 수도 있는데, σ2에 대한 최대화는 아래의 식과 같다: 평균을 지배하는 매개변수 벡터 wML를 먼저 결정하고, 간단한 가우시안 분포의 경우와 마찬가지로 이를 사용해 σML2을 찾을 수 있다. w와 σ2 결정 이후, 에는 새로운 x값에 대한 예측도 가능한데, probabilistic모델이 있기에 이런 예측은 단순한 point 추정이 아닌, t에 대한 확률 분포로 표현되며, 최대 우도 매개변수를 우측 위쪽식에 대입하면 우측 아래식을 얻는다:
4. Transformation of Densities
변수간의 비선형변환
변수의 비선형변환에 대해 확률밀도가 어떻게 변할까? Chapter 18. Normalizing flow라는 생성모델클래스를 다룰때 중요한 역할.
위 식에 대한 확률밀도 px(x)를 생각해보자. 또한, x=g(y)를 이용해 새로운 변수 y에 대한 밀도 py(y)를 생성하자.
매우 작은값 δx에 대해 (x, x+δx)범위안에 있는 x=g(y)에 대해 (y, y+δy)범위로 변환될 수 있다. 따라서 px(x)δx ≃ py(y)δy가 성립한다. 또한, δx→0일 때, 아래 식을 얻는다.
즉, f라는 비선형함수, x→y로 변환된 변수의 확률밀도가 어떻게 변하는지에 대해 설명하고 있음.
위에서 설명한 밀도변환방법은 매우 강력할 수 있다.
모든 밀도 p(y)는 모든곳에서 0이아닌 고정된 밀도 q(x)를 얻을 수 있기 때문. 이때, q(x)는 x=f(y)인 비선형변수변환으로 얻어진 값. ˆx이 극값인 f(x)함수에 대해 위 식에서의 절댓값으로 인해 f'( ˆx)=0이 되어버린다. 즉, 아래식이 성립한다. 즉, 이는 x와 y에 대한 극값의 위치가 ˆx = g(ˆy)로 관련되어 있음을 의미. 그렇기에 서로간의 mode(극값)찾기는 서로에게 의존하게 된 것.
(다만, 아래 예제를 보면 완전히 완벽하게 서로간의 mode를 찾을 수 있는 느낌은 아닌듯.) Ex) 아래 그림으로 설명을 추가해보자. 빨간곡선: x에 대한 정규분포 px(x) 이 분포에서 N=5만개 점 추출, histogram을 그림. → px(x)와 거의 일치할 것.
x→y로의 비선형변수변환을 고려해보자. x = g(y) = ln(y)-ln(1-y)+5
이 함수의 역함수는 Sigmoid함수로 파란곡선이다.
px(g(y)): 만약 단순히 px(x)를 x의 함수로 변환한다면 얻는 분포, 곡선의 mode가 변환된 것을 확인가능.
다만, y에 대한 밀도는 좌측 식에 의해 변형되기에
좌측의 핑크 곡선(right-skewed)으로 나타난다. 이에 대한 정확한 측정은 5만개의 sample을 이용해 변환 후 histogram으로 확인가능한데, 초록색곡선과는 일치하지 않음을 알 수 있다.
4.1 다변량 분포 with Jacobian Matrix
좌측 식의 결과를 D차원 변수에 대해 정의된 밀도에 확장해보자. 즉, 단변량의 비선형변수변환→다변량에 적용
[가정] D차원 변수 x = (x1, . . . , xD)T에 대한 밀도 p(x)를 새로운 변수 y = (y1,...,yD)T로 변환한다 가정. 이때, x와 y는 동일한 차원을 가진다고 가정.
변환된 밀도는 위 식처럼 일반화된 형태로 표현: py(y) = px(x) |det J| (J는 쟈코비안 행렬(Jacobian matrix)이며, 그 요소들은 Jij = ∂gi/∂yj처럼 편미분으로 주어진다.) J는 공간의 일부를 확장하고 다른 부분을 압축하는 것으로 직관적으로 이해가능하다. x 주변의 무한소 영역 ∆x가 점 x를 중심으로 y = g(x) 주변의 영역 ∆y로 변환된다 볼 수 있다.
위 J행렬식은 영역 ∆x의 확률 질량이 영역 ∆y의 확률 질량과 동일하다는 사실로부터 도출된다.
이때, x→y로의 변환은 아래 식에 의해 주어진다.
x, y가 다변량분포일 때, 비선형변환을 적용하려면 Jacobian Matrix를 사용 (py(y) = px(x) |det J|). 추가적으로 무한소영역 어쩌구 저쩌구 말이 많은데 단변량과 유사하다 보여짐.
해당 그래프를 보면 y의 주변분포로 떨어지는데 이를 공간상으로 확장한것이나 진배없음. 즉, 주변 "영역"으로 변환 된다는 것을 의미. (완전히 변환되는 것을 의미하지 않음을 위 사진에서 y의 분포가 정확하게 원형이 아닌 마치 혜성처럼 주변에 분포가 존재하는 것으로 알 수 있음)
cf) J의 역할: 공간의 일부를 확장하고 다른 부분을 압축하는 것 (= 해당 변수의 변화량이 다른 변수에 얼마나 영향을 주는지를 의미; 이를 모든 영역에 대해 고려하면 전체 공간이 어떻게 변화하는지 알 수 있음)
cf) 사실 단변량일때도 미분 후 함수의 mode를 봤던 것을 보면, 편미분의 집합체를 행렬식으로 만든 Jacobian의 경우, 그냥 차원을 늘렸다라고 생각하면 편할 것 같다.
5. Information Theory: Dataset에 포함된 정보를 측정
5.1 Entropy
먼저 discrete random변수 x에 대해 이 변수의 특정값을 관찰 시 얻는 정보량을 알아보자. 정보량 = x값을 알았을 때의 '놀람의 정도' 만약 우리에게 매우 드물게 발생한 사건이 발생했다고 알려진다면, 매우 가능성이 높은 어떤 사건이 발생했다고 알려진 것보다 더 많은 정보를 받게 될 것이며, 그 사건이 반드시 일어날 것이라고 알고 있다면 우리는 어떠한 정보도 받지 않을 것이기 때문. 정보내용의 측정은 확률 분포 p(x)에 의존, 따라서 h(x)를 찾는것이 목표. h(x): p(x)의 단조 함수인 정보 내용을 나타내는 양
🤔 h(x, y) = h(x) + h(y)인 이유
h(·)의 형태: 두 독립사건 x,y에 대해 아래 성질을 만족. 함께 관찰함으로써 얻는 정보 = 각각 따로 관찰한 정보의 합 또한, p(x, y) = p(x)p(y)를 만족한다.
[정리]: 두 독립사건 x,y에 대해 아래가 성립. ∙ h(x,y) = h(x) + h(y) ∙p(x,y) = p(x)p(y) h는 p의 정보량이기에 위 식이 만족하려면 h는 log로 주어져야한다. ∴h(x) = -log2p(x)로 주어진다. (이때, - 는 정보가 양수or0이 되도록 보장.) 낮은확률의 사건 x = 높은정보이며, 이때 log 밑은 임의로 선택가능.
정보론: log2가 관례적, 이는 곧 h(x)의 단위가 bit('binary digits')임을 의미.
🤔 H[x] : x의 entropy (평균정보량 즉, p(x)의 기댓값)
이제 발신자가 랜덤 변수 값을 수신자에게 전송한다 가정하자. 이 과정에서 전송되는 평균 정보의 양 = 분포 p(x)에 대한 기대값. 이를 H[x]로 나타내며, 이 중요한 양을 random 변수 x의 "entropy"라 한다. H[x]는 random variable x의 Entropy = state x의 평균정보량 = p(x)의 기댓값 을 의미.
cf) limε→0(ε ln ε) = 0이므로, p(x) = 0인 어떤 x의 값에 대해 p(x)lnp(x) = 0 이 성립한다.
Example)
8가지 가능한 상태를 갖는 random변수 x에 대해 이 변수의 entropy가 아래와 같을 때, (이때, 각 상태는 동일한 확률로 발생.) 이제 8개의 상태를 갖는 변수: {a, b, c, d, e, f, g, h}에 대해 각 확률이 (1/2, 1/4, ,1/8, 1/16,1/64, 1/64,1/64, 1/64)로 주어진다 하자. 이 경우의 entropy는 다음과 같이 주어진다:
비균일분포는 균일분포보다 더 작은 entropy를 갖는 것을 볼 수 있다. (물리의 평형열역학의 맥락에서 entropy는에 대한 무질서도 관점이기 때문.) 먼저, 변수상태를 수신자에게 전송하는 예제에 대해 생각해보자. 전처럼 3-bits숫자를 사용해 이를 할 수 있다.
불균일한 분포를 활용해 더 가능성이 높은 사건에 대해 더 짧은 코드를 사용하고, 그에 따른 적은 가능성의 사건에 대해 더 긴 코드를 사용해 평균 코드 길이를 줄이려고 할 때, (약간 JPEG느낌인듯?)
이를 위해 {a, b, c, d, e, f, g, h} 상태를 다음과 같은 코드 문자열 집합을 사용하여 나타낼 수 있다: 0, 10, 110, 1110, 111100, 111101, 111110, 111111. 이에 대해 전송해야 하는 코드의 평균 길이는 아래와 같은데, 이는 random 변수의 entropy와 동일하다. 더 짧은 코드 문자열을 사용할 수 없는 이유: 이런 문자열의 연결을 해당 구성 요소로 명확히 구분할 수 있어야 하기 때문.
ex) 11001110은 c, a, d 상태 순열로 고유하게 해석됨. entropy와 가장 짧은 인코딩 길이 간의 관계는 일반적인 것.
noiseless coding theorem(Shannon, 1948)은 entropy가 random변수의 상태를 전송하는 데 필요한 비트 수의 하한값임을 명시.
cf) 본 책의 다른 곳의 아이디어와 더 편리하게 연결되도록 entropy정의 시 자연로그 ln을 사용. 이 경우, 엔트로피는 비트 대신 네이트(nats, '자연로그') 단위로 측정. 이 두 단위는 단순히 ln 2의 배수로 차이가 있습니다.
5.2 물리학관점 예시
ex) entropy에 대한 추가적인 시각확보를 위한 예시 i번째 바구니마다 서로 같은 ni개의 물체가 각각 들어있는 서로다른 총 N개의 바구니에 대해 "물체를 바구니에 할당하는 방법의 경우의 수를 고려해보자."
N개의 물체를 바구니에 할당하는 방법의 총 수는 N!이다. 즉, i번째 바구니에는 ni!의 방법으로 물체를 재배치할 수 있다. (바구니 내의 구별X) ∴ N개의 물체를 바구니에 할당하는 방법의 총 수: 이를multiplicity라 부른다.이때, Entropy(H)는 다양성(W)의 로그에 1/N(정규화 상수)를 곱한것으로 정의된다: 이제 N → ∞의 한계를 고려하며 ni/N의 분수를 고정시키고 스털링 근사를 적용해 보면, 이며, 이를 엔트로피 방정식에 대입하면 아래와 같다. N이 무한대로 접근함에 따라 lnN항이 우세해지고, 한계값은 -∞이 된다. 따라서 물체의 수가 증가함 = 물체에 대한 무질서도 증가 = 물체에 대한 구체적인 배열에 대한 정보 부족이 증가.
이때, pi = limN→∞(ni/N)는 i번째 바구니에 물체가 할당될 확률이다.
[Macro와 Micro] - in physics 물체를 바구니에 할당하는 특정 방법은 미크로상태(micro state)라고 하며, ni/N의 비율을 통해 표현된 전체적인 배치는 매크로상태(macro state)라고 한다. 매크로상태에서의 미크로상태의 수를 나타내는 다양성 W은 macro의 가중치(weight)로도 알려져 있다. 바구니를 이산형 확률 변수 X의 상태 xi로 해석해보면, p(X = xi) = pi이다. 이때, 확률 변수 X의 entropy는 아래와 같다. 위 그림에서 알 수 있듯, 몇 개의 값 주변에 날카롭게 피크한 분포 p(xi)는 상대적으로 낮은 엔트로피를 가질 것이고, 여러 값에 고르게 퍼져 있는 분포는 높은 엔트로피를 가질 것이다.
0 ≤ pi ≤ 1이므로 entropy는 음이 아니며, pi = 1이고 pj≠i = 0인 경우에 최소값, 0이 된다.
[Lagrange승수로 최대화: 이산형 분포] Maximum Entropy는 확률에 대한 정규화 제약을 강제하기 위해 Lagrange승수를 사용하여 H를 최대화함으로써 찾을 수 있는데, 이는 아래와 같이 최대화한다. 이때, 모든 p(xi)는 동일하고 p(xi) = 1/M이며, 여기서 M은 상태 xi의 총 수이고 entropy의 해당 값은 H = ln M이다. 이 결과는 추후 짧게 논의되는 Jensen 부등식에서도 유도될 수 있다. 도함수가 0이 되는 지점이 실제로 최대값인지 확인하기 위해 엔트로피의 이계도함수를 구하면, 여기서 Iij는 항등 행렬의 원소로 이 값들이 모두 음수이므로 도함수가 0이 되는 지점은 실제로도 최댓값임을 알 수 있다.
5.3 Differential Entropy
entropy의 정의를 점점 확장하는 방향으로 나아가고 있다. 정의를 확장시켜 continuous변수 x에 대한 확률분포 p(x)를 포함시켜보자.
먼저 x를 폭이 ∆인 구간으로 나눈 후, p(x)가 연속적일 때 평균값정리에 따라 각 구간 i∆ ≤ xi≤ (i+1)∆ 범위에서 xi가 존재해야 한다.
이제 연속변수 x를 양자화하여 x가 i번째 구간에 속할 때 어떤 값 x를 값 xi에 할당한다 하자. 이를 통해 값 xi를 관측할 확률은 p(xi)∆이므로 entropy는 아래와 같은 이산형 분포를 얻는다:
여기서 ∑ip(xi)∆ = 1는 평균값정리와 확률밀도함수의 AUC=1에서 도출된 것이다. 위 식의 두 번째 항인 - ln ∆를 생략 (∵이 항은 p(x)와 독립적) 이제 lim∆ → 0을 고려해 보면 위 식의 첫항은 이 lim에서 p(x) ln p(x)의 적분에 근접한다.
이 때 우측 항에 있는 양을 미분 엔트로피(Differential Entropy)라 한다.
🤔 이산∙연속형 entropy차이가 발생이유?
이산형과 연속형 엔트로피 형태의 차이는 ln ∆라는 양에 의해 발생 이는lim∆ → 0에서 발산하는데, 이는 연속 변수를 매우 정밀하게 지정하는 데는 많은 bit가 필요함을 대변한다. 여러 연속 변수에 대한 밀도를 정의하는 경우, 이를 벡터 x로 표기하면 미분 엔트로피는 아래와 같다.
5.4 Maximum Entropy
[Lagrange승수로 최대화: 연속형 분포] 최대 엔트로피가 명확하게 정의되기 위해서는 p(x)의 1,2번째 모멘트, 즉 평균과 분산값을 제한하고 정규화 제약을 유지해야 하므로 아래 3가지 제약조건으로 Differential Entropy를 최대화한다. Lagrange 승수를 사용해 아래 함수를 p(x)에 대해 제한된 최대화를 수행: 이제 변분법으로 이 함수의 도함수를 0으로 설정하면: (변분법: 범함수의 최대/최소를 다루는 방법.) 이 때 Lagrange 승수는 이 결과를 세 제약 조건 방정식에 역대입하여 찾을 수 있으며, 최종 결과는 아래와 같다: 즉, 미분 엔트로피를 최대화하는 연속확률변수분포는 Guassian Distribution임을 알 수 있다. 만약 가우시안의 미분 엔트로피를 평가하면 위와 같은데, 이는 분포 폭이 증가하면, entropy 또한 증가함을 볼 수 있따. 또한, 이는 이산 entropy와 달리미분 entropy값이 음수일 수 있음을 보여준다. (∵ σ2 < 1/(2πe) 일 때, H[x] < 0 )
5.5 KL Divergence🌟
앞서 말한 entropy의 핵심 개념들을 기계 학습과 연관지어보자! 모르는 분포 p(x)와 근사분포 q(x)에 대해 q(x)를 사용하여 x의 값을 수신자에게 전송하기 위한 코딩 체계를 구축한다 가정하자. q(x)를 사용하면 실제 분포 p(x) 대신 x의 값을 지정하는 데필요한 평균 추가 정보량(단위: nats)은 아래와 같다: [KL-Divergence]: 분포 p(x)와 q(x) 간의 상대 엔트로피(relative entropy) (단, 양방향적인 양이 아니기에, KL(p∥q) ≠ KL(q∥p)임에 주의) KL(p∥q) ≥ 0 를 만족한다. (단, 등호는 p(x) = q(x)일 때 성립.)
[KL(p∥q)≥ 0 증명] ① 볼록함수(convex)의 개념: 아래 그림처럼 함수 f(x)는 모든 chord가 함수 위에 있거나 일치할 때, 이를 convex라 한다. (a,b)사이 임의의 x값을 λa + (1 − λ)b 형태로 사용하자. chord상의 해당 지점은 λf(a) + (1 − λ)f(b)로 주어지며 함수의 해당 값은 f(λa + (1 − λ)b)이다.
이는 f(λa + (1 − λ)b) ≤ λf(a) + (1 − λ)f(b)임을 의미하므로 함수의 이계도함수가 항상 양수임을 의미한다.
[Jensen's Inequality]
만약 λi≥ 0이고 ∑iλi=1 일 때, 모든 점 {xi}에 대해 convexf(x)는 증명에 의해 아래를 부등식을 만족함을 수학적 귀납법(induction)으로 증명가능하다: 이때, 위의 결과를 Jensen's inequality, Jensen부등식이라 한다. cf) [Jensen's inequality의 확률분포]
∙ λi는 {xi}를 값으로 갖는 이산 변수x에 대한 확률 분포: ∙ 연속 변수 x에 대한 확률분포: Jensen's inequality의 연속확률분포에 KL-Divergence를 적용하면 아래의 같다: (이때, -lnx는 convex이므로 정규화 조건 ∫q(x) dx = 1를 함께 사용.) (또한, 등호는 x에 대해 q(x)=p(x)일때만 성립.) ∴ KL-Divergence는 두 분포 p(x)와 q(x)간의 비유사성의 측정 Data compression과 Density Estimation(알려지지 않은 확률 분포를 모델링하는 문제) 간에 밀접한 관련이 있음을 알 수 있는데, 가장 효율적인 압축은 실제 분포를 알 때 얻을 수 있다.
실제 분포와 다른 분포를 사용하면 반드시 덜 효율적인 코딩이 필수적이 되어비려 평균적으로 추가 전송해야 할 정보는 최소한 두 분포 간의 KL-Divergence와 동일하다.
[Negative Log-Likelihood]
6.4.2 Binary classification절에서 Softmax와 NLL의 관계에 대해 상세히 다룸. Data: 알려지지 않은 분포 p(x)에서 생성 목표:이 분포를 모델링
방법:몇 개의매개변수 θ로 제어되는 근사 분포 q(x|θ)를 사용. (이때,θ는p(x)와 q(x|θ) 간의 KL-Divergence을 θ에 대해 최소화하여 결정.) (∵ p(x)를 모르기에직접적으로 이 작업을 수행할 수는 없기 때문.)
ex) p(x)에서 뽑은 한정된 양의 training point xn을 관찰 이후 p(x)에 대한 기대값은 xn을 사용한 유한한 합으로 근사될 수 있음:
🔍 위 식 우측을 살펴보자. 1번 항: trainset을 사용해 평가된 q(x|θ)의 분포에 대한 Negative Log-Likelihood함수.(보통 이를 NLLLoss라 함) 2번 항: θ에 독립적. ∴ 이 KL-Divergence를 최소화하는 것 = NLL 최대화
cf) Log-Likelihood
[cross-entropy와 NLL-Loss의 관계]
target변수 t가 있을 때, (이때 t = 1은 클래스 C1을 나타내고 t = 0은 클래스 C2를 나타내는 이진 분류이다.) canonical link함수(자연 파라미터의 함수의 분포 평균의 함수: 가우시안족에 대한 canonical response function은 identify 함수, 베르누이 분포에 대한 canonical response function은 logistic함수) 정의에 따라 sigmoid activation function을 갖는 단일출력신경망을 고려할 때, 0 ≤ y(x, w) ≤ 1 이다. 이때, y(x, w)를 조건부 확률 p(C1|x)로 해석할 수 있으며, p(C2|x) = 1 - y(x, w)가 성립한다. input에 대한 조건부 분포는 아래와 같은 Bernoulli Distribution이다.
독립적으로 관찰한 trainset에 대해 오차함수는 NLL로 주어진 Cross-Entropy 형태이다: 이때, yn은 y(xn, w)이다.
(Simard 2003)는 Classification에서 MSE대신 Cross-Entropy Loss가 빠른 훈련과 향상된 일반화를 이끌어낸다 하였다.
식 1.의 Noise 분산 σ2는 불연속적이기에 (∵ target은 label이 지정되어 불변값) 그러나 모델은 t가 잘못된 값으로 뒤집힌 확률 ε를 도입, 라벨링 오류를 허용하도록 쉽게 확장될 수 있다(Opper and Winther, 2000).
K 개의 별도 이진 분류를 수행해야 하는 경우 각각에 logistic sigmoid activation function이 있는 K 개의 출력을 가진 신경망에 대해 각 출력에는 k = 1, ..., K에 해당하는 이진클래스 라벨 tk가 있다하자. 클래스 라벨이 입력 벡터가 주어진 경우, 독립가정시, 대상의 조건부 분포:
해당 Likelihood함수에 Negative Log를 씌우면 아래와 같다.
이때, ynk는 yk(xn,w)로 즉, 특정 output에 대한 오차함수의 pre-activation에 대한 도함수는 Regression처럼 좌측 형태를 갖기 때문이다.
5.6 Conditional Entropy🌟
이제 변수 x와 y의 두 집합 간의 결합 분포 p(x,y)를 고려해보자. (두 변수는 ) 만약 x의 값을 알고 있다면, 해당하는 y값을 지정하기 위한 추가정보량은 -lnp(y|x)이다. 따라서 y지정 시, 필요한 평균추가정보는 아래와 같다: 이때, 주어진 y를 주어진x의 조건부 엔트로피(conditional entropy)라 한다. 곱의 법칙을 사용하면 조건부 entropy는 아래관계를 만족한다: H[x, y] : p(x,y)의 미분 entropy , H[x] : 주변 분포 p(x)의 미분 entropy.
∴ x와 y를 설명하는 데 필요한 정보 = 주어진 조건에서 y를 지정하는 데 필요한 추가 정보 + x만을 설명하는 데 필요한 정보
종속변수 x, y에 대해 결합분포와 주변분포의 곱 사이의 KL-Divergence를 고려하면, 근사적으로 독립인지 or 얼마나 가까운지를 평가할 수 있다: 이때, 이를 변수 x와 y 간의 상호 정보(mutual information)라 한다.
KL-Divergence의 성질에 의해, x와 y가 독립인 경우에만 I[x,y]≥0이 성립. (단, 등호는 독립일 때 성립.) 확률의 합과 곱의 법칙을 사용하면 상호정보가 조건부 entropy와 관련있음을 알 수 있다. 즉, 상호정보는 새로운 관측 y로 인한 주어진 x에 대한 불확실성감소를 의미 (반대도 성립.) 🤔 Bayesian 관점: p(x) : x에 대한 prior 분포 p(x|y) : 새로운 데이터 y를 관찰한 후의 posterior
6. Bayesian Probabilities
Bayesian 확률: 불확실성의 양적표현
∙ [고전적(= 빈도론적) 확률]: 휜 동전의 경우 동전이 오목한 면으로 떨어질 확률처럼 무작위, 반복 가능한 사건의 빈도에 대한 확률 개념.
∙ [Bayesian 확률]: 불확실성의 양적표현, prior가 자연스레 발생하여 포함된다. "불확실성 표현을 위해 확률을 사용하지 않으면, 이성적이고 일관된 추론을 할 수 없다." ex) 불확실성 = 동전의 오목한 면이 앞면 or 뒷면인지 파악하는 것 예를 들어, 동전이 뒷면으로 더 많이 떨어지는 횟수가 많다면? 동전이 오목한 면이 뒷면일 가능성이 더 높다는 증거를 제시하고, 실제로 이런 직관은 맞기에 이를 확률규칙으로 사용해 양적으로 표현가능하다 → Bayes정리에 의해 동전 던지기로 제공된 데이터를 통합하여 오목한 면이 앞면일 사전 확률을 사후 확률로 변환할 수 있다. 과정이 반복가능하기에, 새로운 동전 던지기에서의 데이터를 통합하는 데에는 이전의 사후 확률이 사전으로 사용된다.
6.1 Model parameters
[Machine Learning 예제]: sine Regression예제.
D : train dataset (이때, Linear Regression맥락에서 parameter는 maximum likelihood를 사용해 선택가능) (이때, w는 우도 함수 p(D|w)를 최대화하는 값을 설정하며, 이는 관측된 dataset을 최대화하는 w값을 선택한다.)
PRML에서 Likelihood함수의 Negative log를 Error function이라 한다. (즉, NLL-Loss) NLL은 단조감소함수이기에 Likelihood 최대화 = 오류최소화 이다.
따라서 wML라는 특정선택된 매개변수 값이 생성되며, 이 값은 새로운 데이터에 대한 예측을 수행하는 데 사용된다. 다양한 traindataset 선택의(ex. data point 수가 다른)경우, wML에 대해 다른 해가 생성된다.Bayesian관점에서 model parameter에 대해 불확실성설명을 위해 확률론 사용이 가능하다.
data관측 전, w에 대해 우리의 가정을 prior p(w)의 형태로 나타낼 수 있다. 관측된 D의 영향은 likelihood함수 p(D|w)를 통해 표현되며, Bayes' theorem은 아래와 같다: p(D|w): Likelihood ; 주어진 parameter에서 관측된 data가 발생할 확률 p(w):prior ; 선험적 지식이나 믿음. p(w|D): posterior ;제공되는 update된 parameter확률분포 p(D): Marginal Likelihood ; p(D|w)∙p(w)의 적분값 ; 모델전체의 적합도.
이를 통해 train data에 대한 우리의 불확실성을 반영 이를 기반으로 new data에 대한 예측 수행이 가능하다. 이렇게 Bayesian접근은 model parameter에 대한 불확실성을 고려한 확률적 추론을 제거, 불확실성 update를 통한 model개선이 가능하다. 식 posterior ∝ likelihood × prior에서 분모는 정규화 상수이기에, 좌측의 posterior는 유효확률밀도이기에 1로 적분되는 것이 보장된다. 사실, 식 p(w|D) 양쪽을 w에 대해 적분함으로써 Bayes' Theorem의 분모를 사전 분포와 likelihood 함수의 관점에서 표현할 수 있다:
[Bayesian vs Frequentist paradigms]: 모두에서 p(D|w)는 중요한 역할이지만 두 접근방식은 근본적으로 다르다.
∙ Frequentist w는 'estimator'의 일종에 의해 결정되는 고정된 매개변수로 간주
∙ Bayesian 하나의 dataset D만 존재하며 (즉, 실제로 관측된 데이터), 매개변수에 대한 불확실성은 w에 대한 확률 분포를 통해 표현됩니다.
6.2 Regularization
이 Bayesian 관점을 사용하여 위의 sine regression의 overfitting감소를 위해 사용된 정규화 기술에 대해 알아보자.
[MAP: Most A Posteriori]
w에 대한 우도 함수를 최대화하여 모델 매개변수를 선택하는 대신, p(w|D)을 최대화할 수 있다. 이를 최대 사후 확률 추정치(MAP)라 한다.
또한, 사후확률의 NLL최소화가 가능한데, p(w|D)의 양쪽에 음의 로그를 취하면 다음과 같다:위 식의 오른쪽 식에 대해 알아보자. 1항: 일반적인 log likelihood. 3항: w에 의존하지 않으므로 생략가능. 2항: w의 함수 형태를 가지며, 이는 1항에 추가되어 정규화형태로 인식된다.
이를 더 명확하게 만들기 위해 w의 각 요소에 대해 동일한 분산 s2를 갖는 독립적인 평균이 0인 가우시안 분포의 곱으로 사전 분포 p(w)를 선택한다고 가정하자.
만약 log likelihood가 (2.66)에서으로 주어진 것처럼 Linear Regression모델이 특별한 경우,
posterior 최대화는 아래 함수로 최소화 가능하다. (MSE형태임을 알 수 있다.)
6.3 Bayesian Machine Learning
다만, Bayes정리의 단순적용은 machine learning에 진정한 Bayesian 처리가 이루어지지 않는다.
[Bayes의 정리를 사용하는 전통적인 방법]: 종종 w에 대한 단일 지점 추정치를 찾는 결과로 이어져서 w의 불확실성을 무시한다.
앞선 시나리오를 고려해 보자. train dataset D, input 값 x에 대해 target변수 t를 예측할 때, (즉, Bayesian 용어로는 x와 관찰된 데이터 D 모두를 고려한 t의 분포를 이해하려는 것) 확률의 합과 곱의 법칙의 적용으로 우리는 아래 식을 얻는다: p(t | x, D) : train data x와 D가 주어질 때의 t의 posterior. (이 분포를 얻긴 어려움.) (∵ w의 모든 가능한 값들에 대한 적분이 필요하며, 이는 많은 경우에 계산적으로 매우 비용이 들거나 해석적으로 어렵기 때문)
→ 일반적으로 사용되는 방법 중 하나는 w에 대한 불확실성을 고려하는 것으로 이를 위해 Bayesian 모델 평균화 또는 Bayesian 신경망과 같은 기술을 사용한다. 이는 w의 모든 가능한 값에 대한 사후 확률 분포 p(w|D)로 가중 평균을 취하여 얻는다. Bayesian 방법을 특징 짓는 주요 차이점은 매개변수 공간에서의 이 적분입니다.
[Frequentist를 사용하는 전통적인 방법]: 정규화된 MSE같은 Loss function을 최적화해 얻은 parameter지점의 추정치를 사용
[Maximum Likelihood와 bayesian machine learning]
데이터의 확률이 가장 높은 모델을 선택 → 더 복잡한 모델을 선호 → Overfitting
완전한 Bayesian 처리는 가능한 모든 모델에 대한 평균을 계산, 각 모델의 기여치는 해당 posterior에 따라 가중된다. 또한 이 확률은 중간복잡성의 모델에 대해 일반적으로 가장 높다 (= Overfitting 덜 발생) (낮은 차수의 다항식과 같은)매우 간단한 모델: 데이터를 잘 표현할 수 없어 낮은 확률을 가짐. (매우 높은 차수의 다항식과 같은)매우 복잡한 모델 역시 Bayesian 매개변수의 통합에서 자동으로 복잡성에 대한 패널티를 부여받아 낮은 확률을 가짐.
다만, Bayesian방식에는 주요 단점이 있는데, parameter space를 통합해야한다는 점. 현대 Deep Learning은 수십억개의 parameter로 인해 일반적 ∴ 대규모 신경망에 Maximum Likelihood기법 적용 > 훨씬 작은 모델에 Bayesian 처리를 적용 또한 이 경우에는 일반적으로 정규화 중 하나 이상이 적용되어야 함.
E[f] : 다른 x값들이 상대적 확률에 따라 "가중"되는데, 이는 곧 "확률분포 p(x)하에서 함수 f(x)의 가중평균"을 의미. 이산변수의 기댓값의 경우, sample이 많아질수록 실제함수의 가중평균에 더욱 수렴하게 된다. cf) 분산: Var[f] = E[f(x)2] - E[f(x)]2. (feat. 제평평제)
∙ Covariance: 두 변수가 함께 얼마나 변하는지를 측정.
만약 x와 y가 독립이라면: Cov[x,y]=0
두 벡터 x와 y에 대해, 그들의 공분산은 다음과 같은 행렬이다:
만약 벡터 x의구성 요소들 간의 공분산을 고려한다면, 더 간단한 표기법으로cov[x] ≡ cov[x, x]를 사용한다.
Gaussian Distribution
∙ Gaussian 분포 (최대entropy와 CLT)
Maximum Entropy와 중심 극한 정리(CLT)의 관점에서 자연스레 나타난다. cf) 최댓값=최빈값이며, precision = 1/σ2
이때 관찰된 Dataset으로 Likelihood Function을 최대화하는 확률분포의 매개변수를 결정하는 방법.
좌측 값은 평균과 분산에 대해 위 likelihood함수를 최대화 시, 각각에 대한 Maximum Likelihood 해를 얻을 수 있다. Maximum Likelihood의 제한사항이 존재한다: (MLE는 모집단 추정에 완벽하지 않은데, 이는 bias로 인해 발생한다) μML =μ의 불편 추정량 , σML2≠ σ2의 불편 추정량. (N-1 / N)
[Bias발생원인]: 분산이데이터에 맞게 조정된 MLE기준으로 측정되기 때문. 아래 그림은 MLE로 Gaussian의 평균과 분산을 결정할 때, bias가 어떻게 발생하는지에 대한 직관적인 이해가 가능하다. 빨간곡선: Gaussian분포 파란곡선: 2개의 녹색data point로 이뤄진 3개의 dataset에 ML로 얻은 Gaussian분포.
위 그림을 통해 다음 사실을 알 수 있다. 3개의 dataset을 평균화하면 평균을 동일하다. 하지만, 분산은 실제 평균과 비교❌ , 표본평균과 비교 → 다소 과소평가(N-1/N)된다.
다만, 신경망처럼 복잡한 모델에서는 ML의 bias보정이 쉽지 않다. 또한, MLE의 bias는 Data point N이 많아지면, 덜 중요해지진다.(lim N → ∞)
Gaussian의 경우, 너무 N이 적지 않은 이상 이 bias가 큰 문제가 되진 않지만 본 저서는 Deep Learning 즉, 많은 parameter를 갖는 모델에 초점을 두었기에 ML과 관련된 bias문제는 보다 심각하다.(Overfitting문제와 밀접한 관련성을 가짐.)
변수간 비선형변환:
∙ Density 변환방법:
모든 밀도 p(y)는 모든곳에서 0이아닌 고정된 밀도 q(x)를 얻을 수 있기 때문. 이때, q(x)는 x=f(y)인 비선형변수변환으로 얻어진 값.
빨간곡선:x에 대한 정규분포 p(x) 이 분포에서 N=5만개 점 추출, histogram을 그림. → p(x)와 거의 일치할 것.
x→y로의 비선형변수변환을 고려해보면: x = g(y) = ln(y)-ln(1-y)+5 이 함수의 역함수는 Sigmoid함수로 파란곡선이다.
px(g(y)): 만약 단순히 px(x)를 x의 함수로 변환한다면 얻는 분포, 곡선의 mode가 변환된 것을 확인가능. y에 대한 밀도는 좌측 식에 의해 변형되기에 좌측의 핑크 곡선(right-skewed)으로 나타난다.
해당 그래프를 보면 y의 주변분포로 떨어지는데 이를 공간상으로 확장한 것. 즉, "주변 영역"으로 변환 된다는 것을 의미.
cf) J의 역할: 공간의 일부를 확장하고다른 부분을 압축하는 것 (= 해당 변수의 변화량이 다른 변수에 얼마나 영향을 주는지를 의미; 이를 모든 영역에 대해 고려하면 전체 공간이 어떻게 변화하는지 알 수 있음)
정보이론: Entropy
∙ Entropy: 특정값 관찰 시 얻는 정보량
물리학에서의 entropy보단, 정보이론 중심의 "정보량"기준으로 살펴보자.
정보내용의 측정은 확률 분포 p(x)에 의존, 따라서 h(x)를 찾는것이 목표. h(x):p(x)의 단조 함수인 정보 내용을 나타내는 양
[정리]:두 독립사건 x,y에 대해 아래가 성립. ∙ h(x,y) = h(x) + h(y) ∙p(x,y) = p(x)p(y) h는p의 정보량이기에 위 식이 만족하려면h는log로 주어진다. ∴h(x) = -log₂p(x)로 주어진다.
정보론:log₂가 관례적,이는 곧h(x)의 단위가 bit('binary digits')임을 의미.이때, entropy를 좀 더 정보론적으로 접근해보자. 먼저 log 사용이유이다. 정보 전달 시, encoding을 하여 압축을 시켜야 하는데, log는 자릿수를 쉽게 표현가능하다. ex) log100 = 2, log1000 = 3
즉, Entropy는 random변수의 상태를 전송 시, 전송 가능한 가장 짧은, encoding길이 최솟값을 의미한다.
추가적으로 전송내용은 필히 손실이 발생하는데, 우리가 갖는 data는 이산형이기 때문이다. 즉, 매우 정밀하게 지정하려면 많은 bit가 필요함을 의미한다.
∙ H[x] : x의 entropy (= p(x)의 기댓값 = 평균정보량)
cf) H[x, y] = H[y|x] + H[x]를 만족. 즉, x와 y를 설명하는데 필요한 정보 = 주어진 조건에서 y를 지정하는데 필요한 추가정보 + x만을 설명하는데 필요한 정보.
∙ KL Divergence : 두 분포간의 비유사도 측정.
모르는 분포 p(x)와 근사분포 q(x)에 대해 q(x)를 이용해 x값을 수신자에게 전송한다. 이때, q(x)는 실제분포 p(x)대신 x값 지정 시 필요한 "평균추가정보량"을 의미한다. (즉, 추가로 전송해야할 정보 = 두 분포간의 KL-Divergence) 쉽게 설명하자면, Cross Entropy - Entropy가 바로 KL Divergence식이다.
cf) Deep Learning에서 Loss function으로 KL Divergence를 사용해야하는 것 아닌가요? 왜 KL Divergence가 아닌 Cross Entropy를 사용하는지 의문이 들 수 있다. KL-Divergence는 cross entropy에서 최소량인 entropy를 빼니까 이 오차값, 즉, cross entropy가 optimal(= entropy)해지도록 평균추가정보량을 줄이는 방향으로 학습하는 것이 맞다는 생각이 들 것이다.
하지만 오차함수 미분 시, Entropy가 상수가 되어버리기 때문에 결국 KL-Divergence = Cross Entropy가 되어버린다. 결국 Cross Entropy를 편의상 사용하지만, 실상은 KL-Divergence를 사용하는 것과 마찬가지라 생각하면 된다.
Bayes' Theorem: 불확실성의 양적표현
∙ Frequentist 확률:
휜 동전의 경우 동전이 오목한 면으로 떨어질 확률처럼 무작위, 반복 가능한 사건의 빈도에 대한 확률. [p(D|w)에 대한 접근방식]: w는'estimator'의 일종에 의해 결정되는고정된 매개변수로 간주 [기계학습에 대한 적용방식]: 정규화된 MSE같은 Loss function을 최적화해 얻은 parameter지점의 추정치를 사용
∙ Bayesian 확률
[p(D|w)에 대한 접근방식]:하나의 dataset D만 존재하며 (즉,실제로 관측된 데이터), 매개변수에 대한 불확실성은 w에 대한확률 분포를 통해 표현 [기계학습에 대한 적용방식]:데이터의 확률이 가장 높은 모델을 선택 → 더 복잡한 모델을 선호 → Overfitting 그렇기에 Bayesian기반 기계학습 모델은 적은 dataset일수록 더 좋은 성능을 낸다.
불확실성의 양적표현,prior가 자연스레 발생하여 포함된다. "불확실성 표현을 위해 확률을 사용하지 않으면, 이성적이고 일관된 추론을 할 수 없다." ex) 불확실성 = 동전의오목한 면이 어느면인지 파악하는 것 예를 들어, 동전이뒷면으로 더 많이 떨어지는 횟수가 많다면? 동전이오목한 면이 뒷면일 가능성이 더 높다는 증거를 제시하고, 실제로 이런 직관은 맞기에 이를 확률규칙으로 사용해 양적으로 표현가능하다 →Bayes정리에 의해동전 던지기로 제공된 데이터를 통합하여 오목한 면이 앞면일 사전 확률을 사후 확률로 변환할 수 있다. 과정이 반복가능하기에, 새로운 동전 던지기에서의 데이터를 통합하는 데에는이전의 사후 확률이 사전으로 사용된다.
D : train dataset p(D|w) : Likelihood ; 주어진 parameter에서 관측된 data가 발생할 확률 p(w) : prior ; 선험적 지식이나 믿음. p(w|D) : posterior ; 제공되는 update된 parameter확률분포 p(D) : Marginal Likelihood ; p(D|w)∙p(w)의 적분값 ; 모델전체의 적합도.
이를 통해 train data에 대한 우리의 불확실성을 반영이를 기반으로 new data에 대한 예측 수행이 가능하다. 이렇게 Bayesian접근은 model parameter에 대한 불확실성을 고려한 확률적 추론을 제거, 불확실성 update를 통한 model개선이 가능하다.
preview Deep Learning은 상당히 강력하고 다목적을 위해 data로부터 학습된다. 또한, 요즘에는 AI와 Machine Learning이라는 용어가 서로 대체되어 사용된다.
꾸준한 발전으로 인해 AGI는 매우 급격한 발전을 이룩했는데, 특히 LLM은 매우 두드러진 능력을 보인다. 즉, LLM은 AGI로 가는 길의 효시라 할 수 있다.
본문 예제 주 내용: "기존 일상의 문제들" → 직접 algorithm을 짜서 풀기에는 문제가 난해하였음. ❗️Deep Learning을 사용함으로써 이를 해결. (by. 많은 양의 training set 확보, 이를 training(=learning)시킴으로써 모델이 문제를 풀게함.)
Linear Models
Linear Model들은 선형적인 unknown parameter라는 중요한 특징이 있을 뿐만 아니라 "중요한 한계점"또한 존재.
Error Function
training data에 다항식을 fitting시켜 error function을 최소화 시킬 수 있다.
Model Complexity 이때, Model의M(다항식 차수)를 고르는 것은 남아있는 중요한 과제이다.
M의 값에 따라 model이 overfitting이 될 수도, underfitting이 될 수도 있기 때문이다. 이때, Overfitting이 보통 주요한 문제이기 때문에 Regularization을 Loss항에 도입한다.
Regularization
위의 Loss function은 L2 Regularize항을 추가한 것으로 가 성립하며, λ계수는 regularize항과 MSE항 간의 상대적 중요성을 결정하는 상관계수(coefficient)로 Loss function에 penalty를 줌으로써 overfitting의 정도를 결정할 수 있다.
Model Selection λ는 w 결정을 위해 J(w)를 최소화하는 동안 고정되는 하이퍼파라미터이지만 단순히 w와 λ에 대해 에러 함수를 최소화해 λ → 0으로 수렴하게 되면, error값이 작은 과적합된 모델이 되어버릴 수 있다. 마찬가지로 단순히 M에 대한 trainingset의 오차를 최적화하면 M의 값이 커지고 과적합 될 수 있다. 따라서 하이퍼파라미터의 적절한 값을 찾기 위한 방법을 찾아야 한다.
위의 결과는 가능한 데이터를 가져와 train-valid-split방법을 제안한다. trainset으로 w를 결정하고 validset에서 가장 낮은 오차를 갖는 모델을 선택한다. 그러나 제한된 크기의 dataset를 사용해 모델을 여러 번 설계하면, validset에 과적합될 수 있기에 마지막으로 선택된 모델의 성능을 평가하기 위해 세 번째 테스트 세트를 유지해야 할 수도 있다.
∙ Cross Validation 일부 응용 프로그램에서는 훈련 및 테스트용 데이터의 제공이 제한될 수 있다. 좋은 모델을 구축하려면 가능한 많은 데이터를 사용하여 훈련해야 하지만 validset이 너무 작으면 예측 성능의 상대적으로 노이즈가 많은 추정치를 제공할 수 있다. 이러한 딜레마의 해결책 중 하나는 아래 그림에서 설명된 교차 검증을 사용하는 것이다. 이를 통해 데이터의 (S - 1)/S의 비율로 훈련에 활용해 모든 데이터를 사용하여 성능을 평가할 수 있다.
∙ 'leave-one-out' 기법 특히나 데이터가 부족한 경우, datapoint의 총 수인 N과 같은 경우인 S = N을 고려하는 것.
교차 검증의 주요 단점: ∙ S의 배수로 학습 실행 횟수가 증가되어, 자체적으로 계산 비용이 많이 드는 모델에서 문제가 될 수 있다는 것. ∙ 단일 모델에 여러 복잡성 하이퍼파라미터가 있을 수 있으며, 이런 하이퍼파라미터들의 설정을 조합하는 것은 지수적으로 많은 학습 실행 횟수를 요구.
3. A Brief History of Machine Learning
Step 1. single neuron은 선형결합(Linear Combination)으로 생성됨 Step 2. 생성된 single neuron에 non-linear function으로 transform.
이를 수학적으로 표현하면 아래와 같다.
이때, a라는 값은 pre-activation이라 불리며, f(.)는 activation funtion이라 불리고 y는 activation이라 불린다.
Backpropagation MLP에서 중간 층의 노드는 hidden unit이라 하는데, 이는 trainset에 나타나지 않는 값이기 때문이다. (trainset은 input과 output값만 제공하기 때문.)
여러 층의 가중치를 가진 신경망을 학습하는 능력은 1980년대 중반쯤부터 다시 관심이 증폭되는 계기가 되었는데, 특히, 확률 이론과 통계학에서의 아이디어가 신경망과 머신 러닝에서 중요한 역할을 한다는 것이 인식되었다. 학습에서의 배경 가정들, 사전 지식이나 귀납적 편향으로 불리기도 하는 것들이 포함될 수 있음을 한 가지 중요한 통찰은 말해준다. 이러한 가정들은 명시적으로 통합될 수 있는데, 예를 들어 피부 병변의 분류가 이미지 내 병변의 위치에 의존하지 않도록 신경망의 구조를 설계할 수 있다. 또는 모델의 수학적 형태나 훈련 방식으로부터 발생하는 암묵적인 가정 형태로 나타날 수 있습니다.
❗️Backpropagation 사용이유? 모델은 수천억개의 파라미터를 가지며, Loss function은 이런 parameter들의 높은 비선형함수일 것이기에 ∙ Loss function을 닫힌 형태(e.g 선형 회귀)로 최소화하는 것이 아니라
∙ 파라미터에 대한 Loss function의 도함수(= ∂J(w) / ∂w)를 기반으로 반복적인 최적화 기술(= Backpropagation Algorithm)을 통해 최소화해야 한다. 이러한 모든 과정은 전문적인 컴퓨팅 하드웨어가 필요하며 상당한 계산 비용이 들 수 있다.
Deep Networks 많은 가중치를 가진 신경망을 '심층 신경망(deep neural networks)'이라고 하며, 이러한 신경망에 중점을 둔 기계 학습의 하위 분야를 '딥 러닝(deep learning)'이라 한다(LeCun, Bengio, and Hinton, 2015).
위 그림은 최첨단 신경망을 훈련하기 위해 필요한 연산 주기의 증가를 나타내며, 연산 주기의 두 가지 구분된 성장 단계를 보여준다. 수직 축은 지수적 스케일을 가지며 (petaflop/s-days) 단위로 표시된다. ∙petaflop: 1015(천 조)개의 부동 소수점 연산 ∙petaflop/s-days: 초당 하나의 피타플롭을 의미. petaflop/s-days은 24시간 동안 피타플롭/초의 속도로 계산되고, 대략 1020개의 부동 소수점 연산을 나타내며, 그래프의 최상단은 인상적인 1024개의 부동 소수점 연산을 나타낸다. 그래프의 직선은 지수적 성장을 나타낸다.
혁신적인 아키텍처 개선이나 더 정교한 형태의 귀납적 편향을 포함하는 경우 즉, 모델이 특정한 가정이나 선행 지식을 사용해 데이터를 해석 --> 성능 향상
∙ 표현 학습(representation learning) 심층 신경망의 숨겨진 레이어 역할 신경망이 입력 데이터를 의미 있는 새로운 표현으로 변환, 마지막층이 해결해야 할 훨씬 더 쉬운 문제를 만들어낸다(Bengio, Courville, and Vincent, 2012). 이러한 내부 표현은 전이 학습을 통해 관련된 문제의 해결을 가능하게 할 수 있다.
∙ Foundation Models 여러 가지 downstream 작업에 적합하게 조정되거나 세부 조정될 수 있는 큰 신경망 넓은 적용 가능성을 갖도록 대규모이고 이질적인 데이터 세트를 활용할 수 있다(Bommasani et al., 2021).
∙ 규모 이외 방법을 이용한 발전. 규모 확장 외에도 딥 러닝의 성공에 도움이 된 다른 발전 사항들이 있었는데, 예를 들어, 단순한 신경망에서 깊은 신경망의 연속적인 층을 통해 역전파될수록 훈련 신호가 약해지는 현상을 해결하기 위해 잔차 연결(residual connections)을 도입(He et al., 2015a).
또 다른 주요 발전방법: by coding: 역전파를 수행하여 오류 함수의 그래디언트를 계산하는 코드 = loss.backward() → 순방향 전파를 지정하는 코드에서 자동으로 생성하는 자동 미분 방법의 도입. = autograd 내장.
🧐 정리
∙ LLM ← AGI로 가는 효시.
∙Deep Learning의 목표: Generalization이 잘 되도록 하는 Universal Approximation이 목표, 이를 위해 적절한 model의 차수 M을 찾는것이 목표. (over/underfitting문제)
∙ 확률론과 통계학이 중요한 이유? 학습에서 prior, posterior, inductive bias 등의 포함가능성으로 인해 모델이 잘 작동하지 못할 수 있음. 물론, 정교한형태의 inductive bias를 포함하면 모델이 특정 가정이나 선행지식으로 데이터 해석을 하여 성능향상도 가능함.
∙ Representation Learning? hidden layer의 역할, 문제해결을 더 쉽게 만드는 것. input을 "유의미한 새로운 표현으로 변환하는 것."
❗️Backpropagation 사용이유? Loss function=수천억개 parameter의 높은 비선형함수일 것이기에 ∙ Loss function을 닫힌 형태(e.g 선형 회귀)로 최소화하는 것이 아니라 ∙ 파라미터에 대한 Loss function의 도함수(= ∂J(w) / ∂w) 기반, 반복적인 최적화 기술(= Backpropagation Algorithm)을 통해 최소화 진행.