From 0cd416585881ea6a7218328bacd27a9b7d5efd30 Mon Sep 17 00:00:00 2001 From: Jan Benda Date: Tue, 18 Dec 2018 09:59:03 +0100 Subject: [PATCH] [likelihood] fixed plots for exercise --- likelihood/exercises/exercises01.tex | 15 +++++++++++++-- likelihood/exercises/mlepropest.m | 3 ++- likelihood/exercises/mlepropest.pdf | Bin 0 -> 6439 bytes likelihood/exercises/mlestd.m | 2 +- likelihood/exercises/mlestd.pdf | Bin 5201 -> 6556 bytes 5 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 likelihood/exercises/mlepropest.pdf diff --git a/likelihood/exercises/exercises01.tex b/likelihood/exercises/exercises01.tex index 4b3dae7..2596da6 100644 --- a/likelihood/exercises/exercises01.tex +++ b/likelihood/exercises/exercises01.tex @@ -107,7 +107,15 @@ of the standard deviation. \end{parts} \begin{solution} \lstinputlisting{mlestd.m} - \includegraphics[width=1\textwidth]{mlestd} + \includegraphics[width=1\textwidth]{mlestd}\\ + + The more data the smaller the product of the probabilities ($\approx + p^n$ with $0 \le p < 1$) and the smaller the sum of the logarithms + of the probabilities ($\approx n\log p$, note that $\log p < 0$). + + The product eventually gets smaller than the precision of the + floating point numbers support. Therefore for $n=1000$ the products + becomes zero. Using the logarithm avoids this numerical problem. \end{solution} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -151,7 +159,10 @@ standard deviation $\sigma_i$: \end{parts} \begin{solution} \lstinputlisting{mlepropest.m} - \includegraphics[width=1\textwidth]{mlepropest} + \includegraphics[width=1\textwidth]{mlepropest}\\ + The estimated slopes are centered around the true slope. The + standard deviation of the estimated slopes gets smaller for larger + $n$ and less noise in the data. \end{solution} \continue diff --git a/likelihood/exercises/mlepropest.m b/likelihood/exercises/mlepropest.m index b77171c..352c28c 100644 --- a/likelihood/exercises/mlepropest.m +++ b/likelihood/exercises/mlepropest.m @@ -18,8 +18,9 @@ for i = 1:length(sigmas) subplot(2, 2, 2*(i-1)+j); bins = [1.9:0.005:2.1]; hist(slopes, bins); + xlabel('estimated slope'); title(sprintf('sigma=%g, n=%d', sigma, n)); end end -savefigpdf(gcf, 'mlepropest.pdf', 12, 7); +savefigpdf(gcf, 'mlepropest.pdf', 15, 10); diff --git a/likelihood/exercises/mlepropest.pdf b/likelihood/exercises/mlepropest.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0a2297416ddce66dff46ba2d93235fee011f8d10 GIT binary patch literal 6439 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 VI$t;wcmtfi0et1k4UU%Z{{r{!M+E=? literal 0 HcmV?d00001 diff --git a/likelihood/exercises/mlestd.m b/likelihood/exercises/mlestd.m index 149eaf7..f28d39e 100644 --- a/likelihood/exercises/mlestd.m +++ b/likelihood/exercises/mlestd.m @@ -32,4 +32,4 @@ for k = 1:length(ns) xlabel('standard deviation') ylabel('log likelihood') end -savefigpdf(gcf, 'mlestd.pdf', 15, 5); +savefigpdf(gcf, 'mlestd.pdf', 15, 10); diff --git a/likelihood/exercises/mlestd.pdf b/likelihood/exercises/mlestd.pdf index f01f927a1b4986963e18a2c0edbf6a17d65c629b..5246eda4fe3eb5c26724adcbfa5c79b3454a5bc0 100644 GIT binary patch delta 4564 zcma)8cQ71k*VoBLS$(xwYY|blSnRSov4SW;^i_73M2iw7603{eYXnz>sL?x7t}cQg z5fNOA%O)aGLXf<7_rcbt;NO5iBT&Bu2 z2hcSSd~;1V4)61@qbGO;pMfeunOubo)HR^gLdfUrIq^dX!t=>cXLrq@j#Y#8-SZRo z>qqY2HI7fuC)Qvqo9iYoME>})!W??`^!(eQSg8M%4jN zhpOYdPw%5eC+87Cup)BXHAkguQ~2S45A4Sq-+Xq+dPAS&t-|adje0U^NS|!)oj8ry z3V+!;&0Syl&~kWLpPKSH3_HrT=vq}FoT{{`l%UZYin&kxd9a&1xUwSBi?Lp@koC{l zj7Bm*Ey7HI-{|T;JoX$HV)52)*FI&6tc$7}69UiOxu(kEC}vN#$yvSb+tkSqzwzO) zJyh*JxuNHh=OxWai8R~OKNEBcxS2$`hwg{L9-=kp-u7J-+T?*bp>tnXHe40&O$9uYI|@gaNB4ft;Au#On^+bD6WJ0g8$sVTl35}72}cXizbNBTTpaG?!&D$LVqPmcHn8|xex zI527Bb0MSTh%~O?Q7l)1t|r5PQ5l34cnjG7DQz_B4QGE;?iRG4dhDmY^CvWd*(#HT z2DXEXSl_AWk9>V0olzeL?oY4KU4bv7 zRVESdv}KdBy&!z7beRWEdBJBX>0yO<-au(FSFT;mYu|;t#@Tw~2H9jD=xw;rlZ;R< zL7-yF2GqDdqa*8Tw~=`9_{jTeb(7L=PzYdaNMWo%_WL}qz!wJ#yzT=tA>}&`F{gbN zTI6Yacb|7_{lsiJk|TY=oezaoLzHTE(gO`m)@+;n2dZ#fd3IhOuq69LHB(QI!zQ^? zO{OU*=f{U}TGD)X?c|CgN5Z9ZmZqJ98sKV85sTGSec&W#25_}-_w=ZS8C@8|Em(L% zd9#MWWJl;Re63KnX(^rW|u|p(($jqqhp)6nDhY+anDoHZ_ecr zb-$C2LQeyen`tyt(Hdw|*q>vxIvgAT0{-6Qi%*c=&m$_paAxM0J?jtF`uxO$O`YZ~ zQ>lsb;sN|GKWfVd=hwd3e$d;Y+UnVV$ijLmcr^X>WKe?~{9|vw!sK(R=ubg?S@Ma+ zcQ5F|`i&)VwLgT-C_XR9-@cp&z3A2G{keu0?L9potVr$g5&c?u?vWyPXxfqgzJ1m+ zuINowpiaP8O)igjBAwd_l_O5{C)WF8R|<>=4D|GURNvz@Wg7TR9rlTT(6Kk)Y55XGU*O0a2<~~SqLbn@c?A1TyE})^hZiHMip^uZP z_o8B4IBEFYN`kUMP8px9KY>`qLg-mzpLO#B+cQF6sSSjWD6jSyfQsZ}+h!y=L9uXb zB^>bN24~d(4exK})ux#>j#YtYvZu#KKbABKr2#i`eLaTd`9*m+R{n7{b%v z?P=jyVgPj3EUcDxX9$&~HTugeHgWs_Z7aqSFu@GIS$sEmN`txw1}D-@saHm7Y0j=0 zXlAS-LUj%0(2;?|ACiBvhp*Xt(9y_WQjd%nWqe2o-xd*NrcZw;Za@Z!IeP%2`)Ca` zr#YFKBTg@8MA1xh@-PUb@&ua$nHe49#2Fp+87>ylXT*7AZqk6u4{0Y9A5|GDp+2BS(n8yWLqG z3h%s~sC`PlDE5(S{aE!lk!&>)f~7p1P(Cv8_d@E}Xd&H89y z9>z2@Mue7*WcEB~FKMV!RQfRmHP4ci!v|ew;j=_QXUya9CvMeZnCp&WiuVMC%-4BfmHAxe zQAXt2HmEiuMeEgr>SN2&1V|k4LU{M znBCNUP1AXM!hzUhbf~h}4l1qTo5TA|6^|fYUz(&6a!JGL=LZ22s#{B5*8_WCb2bwyg=jJ|ll1U#N4GWwo8ooGa_2e!!XGfs12o~!Nt=!6{dlO6D& zv19wyQOh4(%u5Nbfix*CBRcpz3V4??%&+V(dTpHSqe30W&3JBqd0U~;`r7Z@Fjpf| z>i8_dw-wFvao;Z8a7>sw%nYR#$Qxp-yA9)(WvH_FCDm`mdY@Q!@gpsW{HEnX-346E z*Rgm^@}PT`!>;sPQkh2=Z$S!~IuTO(hCJWf zNEp}`fxqI9TEWc9QTiKXUeOTP&Zt?~i`nY$RVph;WG2*2Sff zVA}U4X7q5>?Zdgxsr*kfiAxaF3m0!{=Wnxzv93uan+8Xey1j!qKZ#QikJ6>Fa!7SSy^K)?Q|X$3WT4YZRE^(;PCAr_Dt@G68y<`0(~ zkMPA&nzu}z!@uD@Fl5xO%|yR2KP~5K>!Kl|R`DW?p`_)~^?PzddtJY|Ne_Ac`e<3y z-etKEE8xN7TA(>0>W$sXGD~fU9n+ipb(fKkfLlZ2>0=h~5VJdi=0@9ew`ilv`$P50 z72`Qkc{VOwf<|Up1Z}Pj-{}(G3Y=gbI@L)_#xxy;lT>3Tv*-Qcf+;s>cBEr(mgF6a zkX%{^YhANQXLZlM5*bm$C`dDEYbhv3t+mmE_s!jh(i%(%M9~|}OL3J{erI5^ zo-bWjDCjYXqBmZa@&mR>2za3Ki$^2)I%iik{ZHdj@SftnNWNaKTWR;ng2L{t8tF`Y z16im8^Ffb73VQ-w4JD{_2YeUp(y{G*sRUvjz>;680`Bgy8N%`Vt| z8_H&`Isw-5C*?!odO6H&1>56gTHH1QShz>FK@_QWyhN+YBSzTWyD^;J7|%Bgp8twO zPcyiSU6@SgyHjFgQItlCf2vCJ-LVK6TX#2yI6!{e?_D{O)QtGUX9ipKH7m*Bcdb^{ zsdq+6S}Pe)!lVb0WX)QXXoD-iKAa{2+L_j8RgH<)%MqjfEc+5l8fXyOkfF@b$K+!b zopr`zREC_{MA&3%>*`Bce15lTvTCW1A{%>FZ=?1<}(hx830HYE*H+WD$1kr9Qsg z*=irqXB!s{bW838JR6&9&LP|`@L`deeA@`Vu|EeXw6MsGPOWm5p(0wQ7N>C`olQ`M z+DM7~TQ;&|0Tb_Y2%UFtMBXd+_0TF;B)6PFvW)nLB9l~97F;{=lxNL0a)ZA~DyX3* zkguOK$t$Rr7wHL9$K04BZ1xWpO!`?1d@WsZ2dPar=V?1OXL*e#=5(=z%(yPu7k-SL z+oQ+x5lIJ5IAa?bq+zhjXkr+|bu>{I8(Zd{L>NuHY8m_c=oZ6OS2eldG~Qu9@)6`+ z6I4%JyIKoY;ifgts#-hTlUL6urQp{h_&vjp=N^dFE;)=>9+&^6WqvQ{=1D%HbDqVT zF}l>hCc0EKN66VpJoM!;f#^-}5AY*8djWn$J}$QbN?Yq7WEGMS`4yvkOrUfgqve;J=O>f;7e~t>ka7sL6gb%Vj*8B&R|F7sf0>#T5{~#EE;Ech=${o7;L!eOLNW*Vp9u#! zBA_k=MUo2~?TU9LDJ$Vo&LlJ*<3e!3D`1pR7)57ABHS6(#F?K%l}fDvz!h8sAy&d7eW(-Kq-R%8ZsR04F>!>fGeUAsQ<)JaP+Ue z{a>8|2C1A0;)aqHFmUDnBvD8N{BM}Tf5DK7h`;HO=>L+7`8$R}p?~FOc5!1I&?p2F zg~Xth6m;PVy1IHw%E}l;B`qBUToHku-c^sYb< zJ}RO}q$?mz5fG%8#hsnm*>z{uH}mG5IrrZ4&b{;I<*M~7Q1vOcy#a(ezOfDK(L$P1 zjUn|T{>#I3X6+ig#UL4$GOc)4sb`jRn)O*|lbxVp&I7MZ)#tjCR2FW5#fe(K6g#nl zxru^&(~147b*7YD@(xqcr>&bZQDD?Fdv#buVqY7~eHoM4sFjDC_YWJR&Xp8D3eLZ@ zQS3+B|5CYOtxhTMool8DGj|?sIcYGhgTt++tj+SAu1=(33*@~DF16)N!iS3}5h3HP zp#mLz)9cHt+_gz|hO=*g-dnjZ;QW2XzLQQTBQSf5pVm4QyKMWKopJ!_DF~)dj&o|T zN~#!VT%){BVs~#XL`k%E$nJ|20Z?FP6bkF<8HHH1P=bc-((R}={3T4_By97I$f}HB zdAA?Xn-eBCM6*#iQ>EW>+r($~Z&6iznC+ry4n9q*AP%M-I$*a|9XP}DqQT#J!8&F8 zb@0Fyje#6*;gKvd#`G-7c(g9)+q=?}rW3n%GvW^TG~^5j=$YR9{u3E<>5W6V(@M+1 zEl&Yu%E3x#1FLwl1gJJBgB@NT8?P)K>;LJ+r9W?EDRT%a6bDK+NZ+M`?nV}|DR{iO zGshwU^iJFQ%fJBYKbI3-dbvnf?ekFQp7h1Ft_-i}vPgi44QuXgbS0a)72kz*km}J3 zgC`mv(-!=4JwB+b4`q((xxpTK2W}s`T+sW~$C;A)GAeJetWzk`FxW6Mt4ZGi=-;0G z(D1{G+`erfZ*6@cYo{2!-sPQn_Fj!@i~G8@V~8508gfD`FXnoPB)H^brF`5qH}kAL zLy4+BFZ#mf$JVabdjz_|^Pt>JB3fF0?XR^L2+7t=w-@PzO~-OCI`2lWX9X!YzArfW z<~z!jtU$i3$OInNCFAf{Y@8ey_|5xbMoc-VT&?CmN*UO4X|tvWSN@J>r&RVtvooSrdJ-m zAZdjQ(~#)O66)A23u!gz^QpKz^4e=WUdX|8Bs9P`gtu!0uIT=3K75@}ho>tgy#K~( z4HDi+i{vs9dChk3q>43HLYuo3CGMOcZ4krDO>d@s1pI*nNBc#0aCCl5x-WLM;!`25 z-)S^lhm|Om4BC*cXp%ONoVnIm{znFpL|-lXfX!W8EnNgL^) z0sMIpH&gj7x=n7Z9DvA^Ry%(}IJQmHE|)wy3aO=h$$q_JN_LrXvTI}*EY~6)NEuiSdpx_}CeYND zyM`b&cTc&hpmu(=L{uL2Zmo!i1|*m-EQ-fZKPPjS-KJwp$)SrS#^a9a)PaQ{zA1(l zN?c#?tJn8q!1jZC^rs7=*2GWu1;;@TnH?GcQJGQ$F{o5rqDBvql7hWrhyxBW&!l(j zh^1}_sU&qP*^V0eP^O>$eVo?YDstCeq`khm*xALt+1X#-`XDYmNI%B+)OgilcD@oj%O#i=J5)qpMh$D zxR?({T=U~E2lNCR^5Nks43<{9hnU?(L;}hCC@WLD7fB&1EZ|GulZzpt$#_5&ldA|F zdSargH$lc+w8V(ReMR6yYY~BZ`1{@TH(W@_U=*hFO~z{WlP+b<3y&1qIMadhZsS*T z6NB-U-bORYUjwO2^DDV*WPnCaIoA^_{p#rKKlGcf89!}2EsS;p4b*W5CkL? zsg-WsfAmBD`Veh#>@EYyZLzOfd44AO_{~=o;TUB-5SNRniJoxTx2K}x-(PUj#0Z-@W7$k<^-l?ZC=}A;*>i*xvVj#fwBCL3u%~XBl~xO^Vl6Ag%(IHi7HrN? z(w#hQ*k{TGzBoaKy}TUJW-WC<^Gzp=Vlk<%u<#eow)vpr-p;$SC$XoXw6?04Z(Uqyav-@rw zJu;0gGX