내가으로 제공되는 일반적인 로그 가능성을 계산하기 위해 노력하고 있습니다 :수치 안정적인 방법은 정상적인 로그 가능성을 계산하는
L = l1+l2+l3+...+ln,
lk = log(1/(sqrt(2*PI)*sigma_k))-0.5*e_k*e_k
Sigmas 주위 0.2
있습니다
및 e_k
가 정규 분포를 평균은 0이고 단위는 분산이므로 대부분이 -2와 2 사이입니다.
private double new1(List<Double> residuals, List<Double> sigmas, double dt) {
double a = 0;
for(int i=0; i<sigmas.size(); i++) {
a += Math.log(1.0/(Math.sqrt(2*Math.PI*dt)*sigmas.get(i)));
}
double b = 0;
for(int i=0; i<residuals.size(); i++) {
b += residuals.get(i)*residuals.get(i);
}
return a-0.5*b;
}
하지만 이론적 최대 I 수행하여 얻은 최대보다 낮은 수치 적 최적화, 그래서 나는 내 방법이 차선책이라는 의혹을 가지고있다. 그것은 크게 수치 안정성을 향상시킬 경우