배경과 문제
회귀 및 후속 베이지안 최적화 (BO)에 가우시안 프로세스 (GP)를 사용하고 있습니다. 회귀를 위해 MATLAB 용 gpml 패키지를 여러 가지 맞춤형 수정과 함께 사용 하지만 문제는 일반적입니다.
입력 공간에서 두 개의 훈련 입력이 너무 가까울 때 공분산 행렬이 확실하지 않을 수 있습니다 (이 사이트에는 이에 대한 몇 가지 질문이 있음). 결과적으로 다양한 GP 계산에 필요한 공분산 행렬의 hole 레 스키 분해가 수치 오류로 인해 실패 할 수 있습니다. 이것은 내가 사용하는 목적 기능으로 BO를 수행 할 때 여러 경우에 발생했으며 문제를 해결하고 싶습니다.
제안 된 솔루션
불량 조건을 완화하는 표준 솔루션 인 AFAIK는 공분산 행렬의 대각선에 융기 또는 너깃을 추가하는 것입니다. GP 회귀 분석의 경우 이는 관측 노이즈를 추가하거나 이미있는 경우 증가시킵니다.
여태까지는 그런대로 잘됐다. 나는 정확한 추론에 대한 코드를 수정 gpml 촐레 스키 분해가 실패 할 때마다, 나는 영감의 Frobenius의 규범에 가까운 대칭 긍정적 인 확실한 (SPD) 매트릭스에 공분산 행렬을 해결하기 위해 시도 할 수 있도록 이 MATLAB 코드 존 디부 에리코로. 이론적 근거는 원본 매트릭스에 대한 개입을 최소화하는 것입니다.
이 해결 방법이 효과가 있지만 알고리즘이 일부 영역에서 확대해야 할 때마다 (예 : 최소값에 가까워 지거나 길이 스케일 때문에) BO의 성능이 일부 기능의 경우 실질적으로 감소 함을 알았습니다. 문제의 불균일하게 작아짐). 두 개의 입력 포인트가 너무 가까워 질 때마다 노이즈를 효과적으로 증가시키기 때문에이 동작은 의미가 있지만 물론 이상적이지는 않습니다. 또한, 난 그냥 문제 점을 제거 할 수 있습니다, 그러나 다시, 가끔은 필요 가까이하기 위해 입력 점을.
질문
GP의 공분산 행렬의 Cholesky 인수 분해와 관련된 수치 문제는 새로운 문제라고 생각하지 않지만 놀랍게도 노이즈를 늘리거나 서로 너무 가까운 점을 제거하는 것 외에는 지금까지 많은 솔루션을 찾을 수 없었습니다. 다른 한편으로, 내 기능 중 일부가 잘못 작동하는 것이 사실이므로 내 상황이 그렇게 일반적이지 않을 수 있습니다.
여기에 도움이 될만한 제안 / 참조가 있습니까?