가우스 프로세스 회귀 분석에서의 하이퍼 파라미터 튜닝


13

내가 구현 한 가우시안 프로세스 회귀 알고리즘의 하이퍼 매개 변수를 조정하려고합니다. 수식 여기서 K 는 다음과 같은 공분산 행렬입니다. 요소 K_ {ij} = k (x_i, x_j) = b ^ {-1} \ exp (-\ frac {1} {2} (x_i-x_j) ^ TM (x_i-x_j)) + a ^ {-1 } \ delta_ {ij} 여기서 M = lIa, bl 은 하이퍼 파라미터입니다.

log(y|X,θ)=12yTKy1y12log(det(K))n2log(2π)
K
Kij=k(xi,xj)=b1exp(12(xixj)TM(xixj))+a1δij
M=lIa,bl

로그 한계 우도 wrt 모수의 부분 미분은 다음

log(y|X,θ)dθ=12trace(K1dKdθ)+12(ydKdθK1dKdθy)

K 의 항목이 K매개 변수에 의존하므로 K의 도함수와 역함수도 같습니다 K. 즉, 그래디언트 기반 옵티 마이저를 사용하는 경우 주어진 지점 (매개 변수 값)에서 그래디언트를 평가하려면 공분산 행렬의 재 계산이 필요합니다. 내 응용 프로그램에서는 공분산 행렬을 처음부터 계산하고 구배 상승의 모든 반복에서 그 역수를 계산하는 것이 너무 비싸기 때문에 이것이 가능하지 않습니다. 내 질문은이 세 가지 매개 변수의 상당히 좋은 조합을 찾는 옵션이 무엇입니까? 또한 어떤 매개 변수를 먼저 최적화 해야할지 모르겠 으며이 문제에 대한 조언을 부탁드립니다.


적당한 크기의 데이터 세트에 대한 GP 하이퍼 파라미터를 샘플링하기 위해 HMC를 사용하여 성공했습니다.
Sycorax는 Reinstate Monica가

안녕하세요 @Sycorax,이 문제를 해결하기 위해이 기술을 어떻게 사용했는지 알려주시겠습니까? OP가 요청한 것과 같은 문제가 있으며 MCMC를 사용하여 문제를 해결하려고 생각했지만 아직 방법을 모릅니다.
Willian

방금 스탠에서 GP를 코딩했습니다. GP 하이퍼 파라미터는 모델의 파라미터로 선언되었고 그에 따라 추론되었습니다. 이는 각 HMC 반복에 대해 하나의 예측 세트를 생성했습니다. Gelman은이 모든 것이 BDA3
Sycorax는 Reinstate Monica

답변:


6

그래디언트 상승의 모든 반복에 대해 새로운 공분산 행렬 계산이 필요합니다. 따라서 행렬 계산이 설정에 적합하지 않으면 그라디언트 기반 한계 우도 최적화를 사용할 수 없습니다.

그리드 검색, 랜덤 검색 또는 베이지안 최적화 기반 검색 과 같은 하이퍼 파라미터 튜닝에 그래디언트없는 방법을 사용하는 것이 좋습니다 . 이러한 방법은 SVM과 같은 다른 머신 러닝 알고리즘의 최적화 하이퍼 파라미터에 널리 사용됩니다.

첫 번째 시도에 대한 그리드 검색 을 제안합니다 . 기본적으로 가능한 하이퍼 파라미터의 표 (그리드)를 작성하고 모든 것을 시도하고 최상의 검증 성능 (또는 최상의 한계 가능성)을 찾으십시오.

그리드 검색은 차선의 하이퍼 파라미터 세트를 생성하므로 그리드를 직접 지정해야합니다 (팁 : 그리드를 로그 스케일로 작성). (그라디언트가 필요하지 않습니다!)

그리드 검색에 익숙하지 않은 경우 Wikipedia : Hyperparameter Optimization-Grid Search를 찾을 수 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.