2014-06-11 6 views
0

MAP 최적화에 대해 자세히 알고 싶었습니다. 내가 enter image description herepymc에서 MAP를 두 번 실행하면 다른 값을 갖습니다.

분명히 MCMC 사용하여 샘플링 한 후 lambda의 다음 사후 분포를 가지고, 후방 람다에서 최대 = 0.20 및 95 %의 간격은이다 [0.17, 0.24] (만약 내가 잘못 나 수정하시기 바랍니다)

MAP가 알고있는 한 최대 사후 확률을 갖는 람다의 값 (지점 추정치)을 제공하지만 MAP을 두 번 실행하면 다른 값을 얻게됩니다.

같은 프로그램을 두 번 실행했을 때 map을 사용한 후 nd 앞에 값을 출력하고 있습니다.

가 가

누군가가이 문제를 없애 진행 방법 무슨 설명 할 수 MAP 2.70871770586을 사용한 후 MAP 1.28960939539 을 사용하기 전에 MAP 0.197584715205

을 사용한 후 MAP 0.200091865615 를 사용하기 전에

?

답변

0

두 번째 시작 값에서 최적화 프로그램과의 수렴 문제가 될 수 있습니다. 다른 옵티 마이저를 사용해 볼 수 있습니까? 예 :

MAP(method='fmin_powell') 
+0

그러나 다른 최적화 프로그램을 사용해야한다는 것을 어떻게 알 수 있습니까? 나는 이미 후부가 있었기 때문에 여기에서 확인할 수 있었지만 매번 그런 경우는 아닐 수도 있습니다. – turing

+0

그렇지 않습니다. 최적화를 뒷받침하는 기술은 합당한 시작 값을 선택할 수 있습니다. PyMC에서'value = '인수를 설정하여이 작업을 수행 할 수 있습니다 (그렇지 않으면 무작위 추출이 사용됩니다). –