From 9bc330e85b029bcb75c9200eb7b11c902b41ca3a Mon Sep 17 00:00:00 2001 From: mhjensen Date: Mon, 4 Nov 2019 11:01:16 +0100 Subject: [PATCH] updating adaboost --- .../html/._DecisionTrees-bs000.html | 2 +- .../DecisionTrees/html/DecisionTrees-bs.html | 2 +- .../html/DecisionTrees-reveal.html | 13 ++++++++++- .../html/DecisionTrees-solarized.html | 12 +++++++++- doc/pub/DecisionTrees/html/DecisionTrees.html | 12 +++++++++- .../DecisionTrees/ipynb/DecisionTrees.ipynb | 22 +++++++++++++++--- .../ipynb/ipynb-DecisionTrees-src.tar.gz | Bin 213983 -> 213983 bytes .../pdf/DecisionTrees-minted.pdf | Bin 435890 -> 437060 bytes doc/src/DecisionTrees/DecisionTrees.do.txt | 8 +++++++ 9 files changed, 63 insertions(+), 8 deletions(-) diff --git a/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html b/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html index fd1d57876..d3af51f30 100644 --- a/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html +++ b/doc/pub/DecisionTrees/html/._DecisionTrees-bs000.html @@ -235,7 +235,7 @@ MathJax.Hub.Config({
[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

-

Nov 3, 2019

+

Nov 4, 2019


diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-bs.html b/doc/pub/DecisionTrees/html/DecisionTrees-bs.html index fd1d57876..d3af51f30 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-bs.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-bs.html @@ -235,7 +235,7 @@ MathJax.Hub.Config({

[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

-

Nov 3, 2019

+

Nov 4, 2019


diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html b/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html index 69d57ac10..1f48a1ff5 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-reveal.html @@ -148,7 +148,7 @@ MathJax.Hub.Config({

[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

 
-

Nov 3, 2019

+

Nov 4, 2019


@@ -1847,6 +1847,17 @@ where the function \( I() \) is one if we misclassify and zero if we classify co

With the above definitions we are now ready to set up the algorithm for AdaBoost. +The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. + +

    +

  1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is to see then that \( \sum_{i=0}^{n-1}w_i = 1 \).
  2. +

  3. We rewrite the misclassification error as
  4. +
+

 
+$$ +\mathrm{err}=\frac{\sum_{i=0}^{n-1}w_iI(y_i\ne G(\boldsymbol{X}_{i*})}{\sum_{i=0}^{n-1}w_i}, +$$ +

 
diff --git a/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html b/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html index cffd36929..ee7f98b36 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees-solarized.html @@ -175,7 +175,7 @@ MathJax.Hub.Config({

[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

-

Nov 3, 2019

+

Nov 4, 2019












@@ -1823,6 +1823,16 @@ where the function \( I() \) is one if we misclassify and zero if we classify co

With the above definitions we are now ready to set up the algorithm for AdaBoost. +The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. + +

    +
  1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is to see then that \( \sum_{i=0}^{n-1}w_i = 1 \).
  2. +
  3. We rewrite the misclassification error as
  4. +
+ +$$ +\mathrm{err}=\frac{\sum_{i=0}^{n-1}w_iI(y_i\ne G(\boldsymbol{X}_{i*})}{\sum_{i=0}^{n-1}w_i}, +$$











diff --git a/doc/pub/DecisionTrees/html/DecisionTrees.html b/doc/pub/DecisionTrees/html/DecisionTrees.html index c55979d56..50175bd87 100644 --- a/doc/pub/DecisionTrees/html/DecisionTrees.html +++ b/doc/pub/DecisionTrees/html/DecisionTrees.html @@ -180,7 +180,7 @@ MathJax.Hub.Config({

[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University

-

Nov 3, 2019

+

Nov 4, 2019












@@ -1828,6 +1828,16 @@ where the function \( I() \) is one if we misclassify and zero if we classify co

With the above definitions we are now ready to set up the algorithm for AdaBoost. +The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. + +

    +
  1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is to see then that \( \sum_{i=0}^{n-1}w_i = 1 \).
  2. +
  3. We rewrite the misclassification error as
  4. +
+ +$$ +\mathrm{err}=\frac{\sum_{i=0}^{n-1}w_iI(y_i\ne G(\boldsymbol{X}_{i*})}{\sum_{i=0}^{n-1}w_i}, +$$











diff --git a/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb b/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb index 711df9623..e84a1c377 100644 --- a/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb +++ b/doc/pub/DecisionTrees/ipynb/DecisionTrees.ipynb @@ -10,7 +10,7 @@ " \n", "**Morten Hjorth-Jensen**, Department of Physics, University of Oslo and Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University\n", "\n", - "Date: **Nov 3, 2019**\n", + "Date: **Nov 4, 2019**\n", "\n", "Copyright 1999-2019, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", "\n", @@ -1875,9 +1875,25 @@ "## Basic Steps of AdaBoost\n", "\n", "With the above definitions we are now ready to set up the algorithm for AdaBoost.\n", + "The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases.\n", + "1. We start by initializing all weights to $w_i = 1/n$, with $i=0,1,2,\\dots n-1$. It is to see then that $\\sum_{i=0}^{n-1}w_i = 1$.\n", "\n", - "\n", - "\n", + "2. We rewrite the misclassification error as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\mathrm{err}=\\frac{\\sum_{i=0}^{n-1}w_iI(y_i\\ne G(\\boldsymbol{X}_{i*})}{\\sum_{i=0}^{n-1}w_i},\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## AdaBoost Examples" ] }, diff --git a/doc/pub/DecisionTrees/ipynb/ipynb-DecisionTrees-src.tar.gz b/doc/pub/DecisionTrees/ipynb/ipynb-DecisionTrees-src.tar.gz index 2a0d1b88a4a54dbe966cfa1b849f167a3b4e9383..f87e98931361cef287190657bbec4dab0080f48d 100644 GIT binary patch delta 26 hcmccL&U?R|mrcH#gW<}zMz&Tq##T0_t!&IUodJWK2;%?% delta 26 hcmccL&U?R|mrcH#gJG+GBU>vQV=EieRyO9F&H#9+2ps?b diff --git a/doc/pub/DecisionTrees/pdf/DecisionTrees-minted.pdf b/doc/pub/DecisionTrees/pdf/DecisionTrees-minted.pdf index e88f2302b94c42102d31939a64a26394cf1fa403..53ae56b4b7a38d4bdf0fefba85ad47418d9f00fd 100644 GIT binary patch delta 23525 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 D1&M$H delta 22329 zcmV)AK*Ybq)*7W2FK!IhTQ% z0x5r;SzC|WxDI}wUy--t0XnL6v21VAhZblT-Iv9|&cPOF_rVi8iP0oZZKu=huRk9} z$+0ue%wk_+T}X5A@#{_OzwhsFUVoJ7A{V(;c5%O2ND;>w=Hi81NUcR` zvxQAkp>(pi-z~mG{ieFT(^^J{wkqpoUpIgITN!mcwrZOlw+6C@V!f_PKiF2FtvvB# zz1@16+dGv-jv?-U6dFKc5BRX6(U0M<6!pJ1V5}0(CPhBI5Jh&cM}H13?FZE6IDfjZ2fYdb_X<6gi}_)Dsqxj zdjb*=A~Oi_T7U2gIcvk#>G7%7QBjs0TPE664hH^-Ki<<;%c$wdfv;G@f6L@^0QUOeF}vu3mDpE~~<~I{tFRCBTFog~>y`_gs%I zYKm{vv(a)(5Yct@*I1jX^~@X)2|QXNzDDxE(8BdzlwWe)IIr<<>6hJ}g^F<0@^oYt zj5XE>3G}zPCB77Vb7v2LBV^`xt7v^RHG9qwChEu(z_!C>9vmXC?^!oGjDgX7osWcZ z7&2akP}|kr$V=rAA$|va6jd$+DFg9VQpi=ifQWn;O~@UqV%azCv-p>Vd;nZ4ivxv# zLpTR_4-ASUX#52(jN?FlMokZy?>)Go`EI*zS}3%e2g^)P!BVHOh>f0rC5nqd$elJZ z1G<}Vv5paJ*@l0Dq2+GZw?%Lek`X32id$FKB_?`DsL&mE71M{RAjj$SBBtSuflB~# zi(d(0M2?8F^qj!KKZ;#iv32>|P>EL#D{`pOVu+NQ;Tt_K0coIUPs~O7JNQ7Gsydo) zj{V`-dylvv;0@2l<+j(<#6~1iPBlGwhJ0Z~p6ZMk41#|nLHZR2dCkR0%~V>B#3J6M zS&WDjw1`oke~shVOV!h=KlsdOXpmm`Og^W&(LyHql;O<_iO8&)Xsm)l(NdZ|MY@D1L6O#EOLcHs*W5Z_?5k zO{YB1ZH|AmD0VIldT9}yd4mFJ!lRyBBuzw;rk9J{Nt;H$(8uy84WBnWxS!c@9g8F; z!7glH4p#+iS8+D$k!yjW6i$&j1s(U)fy!&MeVYCh%r=@+vj zn8VSqQ<#fq#2R7JG0OcjNpt4~l59RFYK*;!u$Uf;I`{}y6NHv=IupQCrIZ?ITOP`yWy zh}%!e{h?4s+h^+3m2}+tQTvAbWYOyAUMO5OcO6Z%K|oqN)#cacQ9uJr^C<_Fzt2S? zkTgThHR1XE!YU~`RzF$i1-L=kg%g%c*=T?N@-$o%;3GIEyjGysSKF7#cHmd!8ul&V__Y;JnjFHi6z;@I-A-F5efr?VO zkTwsIeVTC$LO%)fe3QCU3JE8rL+T1)p8Jzt_q>M7Vt7=kd}|ci^a8Uv8#WZ|7$Sd~ zWw<_Iu4>z+o!Mj+OB^v9^a9!3mLkg~CeRe!j2u{y3!Pfnl!-jnXK^U&Gaw|{ivnMv z)UzTT1Jcch`tq?c$G{|MGM0 zOBa&*vGHKxGuD zB;1uxYTe0tN@Q|~xVN(v7f2FI*Q_)|*Qc4yLu#_4$|IQ*rA3ySi}3ze^?964>T^4n za0jF2Y(kxM4%j((#5Gdur{+w~E15H##<@Mnh0*D(IqG5yvQb#*8Fg^K$;N*cpKIaPe&NZt z3BXjZE>U>&q7a~#ubiO%+ufO)Ypmw{aJTZ05ANN5iNT)#4w-#az=5M=mrvgoMvnr2 z^wpu`rmHXMo#65*;YyJ*eS~S0IjuT=gH(y(9Z?AkrH8qE{NT<69?a|WpGh?OIHGXR zF(hIiG98V!RZ*UJoRSy~xssh4$3s}0Q-hOoez%}5Jw>?2J5q>^CH1=AxpDZH?0gGF zC6>Si89?58Go_l)0>%Fi)0wFpw~n|14+a=CIUq0~Z(?c+JUj|7Ol59obZ8(lGc+KV zV0i*4e}$1jYlJWmh421~IV#j_k}*+xTfr6fx;Yd|57}z1psQ%0+kfALxZ5tY-P259 z-uGU36k4EA1$3Q-3N|~=fH9H_!9l$NLnNupK#G)b6rgH&4!04qu-3&G#daANV`nPD z@~nrcZ%P3fBN-c#%Zz+zagI-tojbJ{;52hxfvR-zZ2YHua#_e zEQOrpl1oFqfdU0~EI-!2-e^mkz-K z6u0@_0t;uC<=z4nw;4tQhHsYyMgtTQF*h(b3NK7$ZfA68G9WQCGC7w45d;(jGBY+d zmoSJ1FMswaS{o}utAJa*vKf>lBtR5wu>k@KBn1=14P{7fk};E+Ff);`gjS1M6;vJq zZX6Z0D(*W~kt(=>r{Yo-C|I?&ZpA)P1dqtO6SOMt_5Jrw&Sd8Pw)@@h_x-Nd$XJy? zrlpc$1Vyp}vCuCV#3&RPYmi%6NHRD@iv0wWp?}^&U^Ea5C4PQ9FRw5fVk~lnV=N2? zVkv6?Drjb*DH+lLg#_`uKqMp~jr>}WoCXw-#nfqLC^pmabD zr+*131MOM8>Ps+`k%<2*2JJ zDAmZ%?SlfjbcI|kQ%{SPi$&ZSfEdh$G{?+;VDm=Ez*}f2RYy}M`v!n-U|DmpNR*nI zD%4vTR!Gr$p_#DbQyXvwq*AmIpf?Q(Xn!ZhLTVA6tO0fv;2H#Ca1H7TH-Ks zn1!afJrr+T^k3V&fgVbslg%VDY*=ddj$x#QNq>i%_m8cikklBK>8c2U4ksXoo`2zb zhLd)iLZ+M)Ay=sdF-Uu)KtUmPNFi%w?a^F4S$Iq^kOl<+F?u+i%1Lb)Wilbu43DEP z97jB{6rCpedyN}ODwWLm9|1a?)atliXf0+@Jc*}R;H2=^X~@KTYtus(_yL##pjBfK zaRBW4;ml&rjEJ#im?<;RVFUwhxPK0!7cYas=0d>I7HG?O*YW;}Cmsv5xQ0d2N8`h@ zSD!@cC=k?TMo8YcUW z$Pq}}=zhYv8x9D>0n%!U?9j4qXE!Dt6fAuBqS*or2w;qwE-PP^SDM!#8Mz)EGCov zR@UN-nZVMx5Z?Q+V!6?^Yk$!1EzZ|>ntiQeY03x_a4ovg-w8q3Y1}%)4+%(&?CAIA zEAhPzyxwa6o$Sz1%9O#q;r1-~rrOfpUO~b~J6%GiM&&uwt*Jde)Gd6&ZFe|f^MAauuh)8SreY=r zCuSAQBfp#Kl|6`f)%5+!T^FBf!%3g=dV@V_`39jyU+co^(E7` z23%fyH1FuAAim~7SkUo`_FT!2oz71R-Dj2_{dr^W)Gb%VM+VZw$JQH8L&}HVs4f2o z+u1&Fc@B0;RyX=eQh&)pmzt)YxvAm^JG(V7Iqm~>mqY=4(I9TUDSULcKsbwB$M zSaB@ZnAO(MvaiW?u+=cpBW9Jb>qTu49{O+E@{_M4v&27HDiFY^nfoDfmaO-H@(WZWZ z3GGj-JK(x@|H#pM7rQ$QPwf9vmK1VJ*ReBmaec1l(SNYo+qXmHr_T+UqPcsfK)~O> zU}NQ^vAKyK9ICi}J@n^aipGVs5xR`SajWJ{jXc$}c;2|ml*Bz1D@{Abh4 zq&^`-aPK2lp5pS2||9=zJZB6A>(t~?el}MImeIKEl=Xzlr z>1F;V)3Ir^sI}SFoMJdA-Qe%J?i=rCkD7@B;Y-t~Ppo^kuGq9w;k)`taBWVJ>bgo0 zJ#>>Ruic~Zr)9^NExG7&sxr}6Jfwa>O9}|3SCse^4rv%3>rtMsRmOO@8lNxHeRYz=v*$oh--u#K@2WOW1ZhzSC@r=Jc3MgFWM3xl{}!+{lk@Q#757xydKu3mfiiYert=% z_jfujX(-Q*I3{ilY016g`@Lrg~L=OSZGik;;|VUq@O=|M{QQI82sZ8Ko(H@=^VQ^1`ylZBmcM`KSB2 z^w>4{UidFg9{ZdV+Mjpk?K_>m24vSCa6PfRp?SSvdB&=L17OC*wU^P}0u+~@wF49q zGBPwc3NK7$ZfA68G9WoMGB=k25d;(kF)%nbIG5pT1}J}ZbyyVMx;4@*NS6%V9n#(1 z(mg}ZAPk+-(nyymDM$&@jYvp$gOqej*EjgP=jb`ly?=fW&oHyzT>IT??@dRgq0J^~ z4Y35uLBLQpE_O~KfQqWB1=Lm%YT;;S#l^{{1+;NiFykO`I|4RQ8zv9qy-KGxu2V|%Rhm@UN)P_nRcfOxn%*a0lS)&M1T zRd#?H!~7{=d*6`-aA^FQ{11wN*$%IZk!7--0HaXhX8 zzy)vzy13dsw*4<|^e|?CKh$8UAQy?m{hK35j$-)i{1%fTWR}F3Ibc1v7>*FpM}SN@0bPH&DHy_+5G3Stsr1mJ6EXd zKNW!hkews&k-h8Vp4owa+f*gh6y;>Kb=Xv3+5@wxLSWMYvqL?hzoQ@PNy?}Q0r&-Z z0bH=pqfTYP*3u9sCm3s2^vChZ*umxmg}8We{2u~$07E>$KL3{&WCykeJ??_Fn=^lh zF4*ps8&FZ^e{x_Z^glKmAQZp}0KNhMJ*{jx9$Wub&ZC*@(F_}jpN})d833|ybOrj^ zfq<|tbRSm>cOU@j;s*5d`P=cI2%YN%z}n6V3KKo-;GqAmt_TJ}0D}LRVNCwz`X4zk za0)>BxgYo~*nftF^a&C@}Y8FmF#{Ye={~c}NWasGh zzr_Dn+)LmiZ$>qUi<5=pfBEcO)G2D-WecsYN&fUwE@7kk)tJaPwc7$|=zs%Yr4 z{2yZa9V`pBf>_&uZ2;VS`~V9V7Yi?RPMAWt`S<`nTrlBV13iCB2*AM(hCpE{0B1L- z9{>b#L4Vw4em($) ztb_6&Bmm%0`!^Ec25@NoL9l;3oj(W`ssC>z2;*Y$Z^X?Bb6Pk$+x{^L!Yr15kRX7= z>feYLR@e%5ivL7&al%$({TGBS2ly9+@dEt?Vav1m3&P6T{smzRwEGLfW@!Hxgb{c6 z3&LnR{+Te0h2x_Z{`g_Uo&G>BSOEAh2%`!43&LnR|5+uhu`|%c4)TB3y0~CeUH*bF zs(&@(f@MJef-tIXe?b@(k3WzbM#b|l2&3Zl8~&$wH6HKw-&YmqA2t8aqxTzYLtP*a zz?XK`uqXeo5SYSU>^zM)VfPFd%ntke*DsU*Xh8Spiu@~EN($oX!^Xo6VB_ZFeB2=c znC>|J{v*@spV#O24F`WabpOJSS3dv<^aNU=&rU(CghT98Yr~5DW%EW#kmv;2_eu%H z^pz42XER2c$%tj%uTlfW^Iz8oX424?W642eC9cWL)t<%Gt%+|`f!CG7j4lgImo*)7KVCJ*IUqQbu^PtIU>l@?*%-Th5O`Q&aJip z+`YHw{PdZZ=^#p4-vY9!qr}L+EhOG8#d=YE{&`LOqoGPlz}AbIr4Pe%_R1QGwnu;D z{^pfX1{R19b2>V%Pqt7r8m0Ha1hg_eYgMNg!0@!*ee8eXx%=@g=?uKwI^Ot;B4WFo z%{^2^h1)@8!x>rb@EM05h7O6ss*ZD7K|%Zd-qcCC?n_!+>LAL9`^*o#EQm_mc_Qm6 zpC+d-9LSr;x!y-RO}r?IC6E2rPA&uSfsbLwtC!&<$o|X`?Lb?zeyunZP z1XVtUo2sLrFDf8rAJj zBN`trW8go7P6IGkCME!+t6)Uukkx%Le#=_8H*0^o<@ePo@(SNB`MX}UOVui`Rd_AA zm8!Yu4z-_PJ0-!5W%kZCa~%JOiG_d4)3Sq_7ik(lI3^J02x>bd6Sg?fQyHAW7*Ws% zK^vqJ=3Q)u4Q#=)1`IcsgWR+)S#15Ecu`7BlG0%0JUg7R4~T!C8hrw|=2H5?m3j~M zRi}UMYEx0YDD64i?Eb8kru^e!kqG}&!%(oYLA}A{TQ2zLysNF}Ju!NztHw3cY|LhX zi3AbEd*(Ev>q*qHqoTc^K%oUZG?LBmp8(b+a5t+CcMS9*h;n!gHzjNlwWIQ$1iy&i z1n&L994~v$w45hz_o**&DY7CGn?b?9AZUNm%&#Hx$N8W?RQn;R++4MuIv7&&WD>I} zGxclc4^Aw#@nqWI@TKbOvJ{aw*Z|qg1oLM@-`fmrwmDnshZUMO(wciaq3ef5ZO3~syx22RSx2&S^DXm8LWzG~2_@@_`F_kG z?b>p5O`dgsQLX&BX*O<|g2Lt4#%uAN(lX4R#HReU0Gs7ge?`}{Nu)GTX+BBZ{p$*b zmj1csm-?VQ1}S)*$UHIGW(LLGnf`xwVFO+e#d#mxahzw~#Lra@&ZR$CeIVG_uhtkt z_9W@Z@K8|5g8SOH$8va4J%YDKp2Nl}JZd;4^%}dbX;XoJ>)HN-7kN^uU>bbz)>&@1 zg)*w)N_!G$k^;GN2SfS1b!DFfVYZ;d2rE2;ufM0}7?n62hiIK9A=zl{pK76L+H2Xvy<7X3l%?`UDAhhS zrhFnYqE$ur=;HitJqqQb>CWr{WwR=QXMv;l} zp;JHYI5LATC5k(XC-8rGT@=B+VX5`schtE|t{{Zo?%7%A7oWG9DSQ{9-z7e8(wb!A z+*PEsZKkI6>x4$cibMG)&YApw@nq_k8Li-dA!JY(h^9BHY1_@yl|OS|TW)jy(8F@- zLByE-OrDBr(eNA%OR9P%p68re(!}TPClkr``Y)iHFbG}#PHlfdTj-?`_s`;jxFqD4 zw7it@{#|XcITi&CXqZ@` z(;7z_QD=-tAfw4CeJ7YO%P)L?-ocAtK{4DVY4tVF)|?Lbey<5WSkZI|FXLJ-InjIV z6hZDNiknRcbRd5K?{kKr^_nF$jHla4uD^kw)7+!rODJOnv*HS{6vSR}Tg%%PRn!hV3MhRowQ zhK1sFhmkr@@sIQG$4x$^mWvUT7=@fZ%jLoz_~D7m=<9zIkA~sT``7cL+eTzR?NV zL<=2NLB{2(k&L6lC@qOr=_+DVFOv<-s9((fB-Pkc5}F(kj*5@iEvPs$6m7MJ;4{+Z z#y_T?!m8V~DOT%A(&e|$r(5DF^_&^PMGcZ{_U0LpE!!6q#aX6*+ zxo)a9vqC>Xf@Pzo*T_(jb^J`KP5x}^4aVlx6?qGIeTDB?f;v3&7lNqCZIW(G%%xfB z`DcHdvP~RqCs5Ll5A}@l!#V*>6~(bm3|xgy9zicCL=~P=huz!O06^WM(Y1~44;h0| z>47*G$vYpou#~WpBM}zJDf-qs@wq{WIt6!Z1ql~Y%TEjjqKZib!!>7CfrjhT+$IK9zU5U)+!lYj>GP16ws2m1Xvr6r0+((EB8A!qqRKH1 zg`Y84COzZ|8Z=B4=NfhI{-`b$mMyx3(;nL~Cqu~@SoXbXlzSdjh@-2XLa{Yd_u1zm zGNgF}$9Mf!`K*?xAQ!olmC0l+{~!i2(21altujeza91M5`vax+&+`V4JBohO+fRR$ zg=QtbF=F3!Ig;4)`sIb8h>Hk=fDjfQlXhh9BtgpQ^aenBpe$nXCqm2YX7e;HwOA6F06)^$m}Dn0 z-}Op=1X1v>#nLrBx7Hk02W^67vt0TYtai*Se7=3(+S1>bz8q-?NvrPUiL-wWxnY2J z^j7YGcRvWGICVBC3t7!973zOI^x%s4FTJjlp~a&&8}O&EyR{ z@6Wux(lfJfgfINpYSi{W$0`ow3F2tT?Vsr0h0t zIbR0i77s}goYG!78@QL3QObLpTAU&iek&uXP-2@V^J+_R$mY2n$~!+^-$r*J78{sf z9hsZfCi<&iLHU{q!!Lgb@3L;t(n48cvG%^KvEx2Yo8)Mn35`P%L) zn1h~7bgO?r-)997MT1--niy8E43`(5EU)^EyRSTxejcKqEdAEQNiS>gT5~VE zJ_UZa&f~ioSw(=L6TM;*k!M!0fz~I*<;D*}o2g6#w9N%h;e4SIpWXA%+8Lq*e`<94 zp1;~q{*ug(nE7qQGURwvw687Mf{XqI39v{{Y7u)pGt7VC1Z!h1##kIj#w&+4qqpZd z^D0|;8Ie~iX- zEC=i`T>XE>yl3*=G&-^}c}AkI?Nz6zuiVtJR)0p^;`XCx9H2Gi=^*F^vvF& zyEXvv^h?f(yFg7^+6%t*T`yLu&gJU-y1YAk8{6t=5tD_~Lyud|^7mP|>(a zH6|h&Y;3`}H;IA&Wu{rqWvChD^`WpXf;)D1BZEEVn_h6&Eo8GN+jUp(rod!SnuP5A zoJ)U?u;+OE=XPGHwjuVOvC;c4&o0x%y^~17g?T}R0_`-S&s6Gr*Vx;%o!Q;f1)77|*SNMyM6`Wn7DvhB$ajTT#WHwB zq(L)=PlMua&6rphr7cf$7Wz(2F1nuK@k)QYeIxzx-oOg_m7zwI<@HH%xVIiFH?o0L zetNSbtFBbJAdjqSdfjAVc&#_yWxx-w!L1v)tQvk5q~2PtjL9l<0mK~CKq?8bkj0-0 z5S^GApAVkJz0|ga9@NO4WU`I#vU%uVEL@AJf1TT;Bb6@H%t0Hcmc}efzZryn-->^l zuUE~+rP9={YBl#HqL0FVdjRFwV2$CKe7hlfT9%S9K^>?4tUF9f42hny{l3C-!7prm z938|Kah4%yJrmYul(t(6>`-nB~S28QVhJcv87j=SZ`r(}O=rM{!$ zYWzhsvp02S9zVr(h}@hxzbu8I{oD~tP*8gG*{Au@rPw(E?eERtU=2(Hsh47g1CyS* z#V0sUX5%mX-fLLCO$^j%O}uPouF2z6(8b1apqMSxfHOwvu<25N!thjD#fQ1D8_Iak zOPG#4g+%c~_n3SJ_6B0xqrHET-H;dpW?n5njIeNh9d@7;x%TRfF%T-p%VPKlx&?`# z)Sft2t(X(;YBmn7^393Qogd7r-@vutGiH#NoMxsee7COi`f`ApM2R}uDQtEq(YlAz z9N@wC413D3wh3Ez6_a0EvrHhVs05vFMBxp&`vkC*a~tzrtQV^bXi$GFTw$c^zE;Af zVv{B%L6)@>zp!^{B5%#&IkIsFP4Zk%yifZeYua2PQTlP4c^7G)d{#r#$o*tC(sEj# zQSGz{(kG&r1&)YX&*XldeEP}Eyx#Z|Yv)&WKDF_eU)gj?}~hU7ek>Oz^szbh}dbPF+Of!s?X9f-8)d{Ev z22tA^mNC~Bc^l6+gqp>6VNfW~;>r?HnLrQlB+HzqxKG@R9K+&+XNbp-()Sae87&94 zvy8S-jgl5T4DM9!9%0avz9n#oa{My9R>Tlf6{avH@ZvH&|2coE^Ou2D-Z+6W5d(L4 zk{tM3uPFkG6~#o25TPcM<(^LwQS8=v7%|%;)`8XsuhIaYj`&T@i*oAW%k2rdDc5K6 zQNkyO$hH&;tMR}Q39?}7Z4ypQ`R;lVlUEv(Re4RdWSpCsi?vdu^A1i~;E-)`ev{Pa zF}uI|>v(LhMNEGNukqFK43?rTo~etpYw_4vQ7@xN61%q-)>s<}QlQ!!M2Smc{T7Gi{7s5hA2T|QFHuMQqOVG4~EL`1N6@1JHE=hi|4hEH_G>>z#|O2 zC)>_7T_*4|kbf!U%uFt%LM^&*D0WwP9&u{Qb4Y(R8^XskF88HA*!#OwOX{C~lqGO@+mNjwmtv0rM3f zBd>z>BE50e(_qFxy3Ssc_0EBeCAPmbdwNHL(XtdnAUb8$8#%X}5ckgrh|zc|S9q4s|$ z2BV8fx$5QagmA}87XDgmKFsT>R`a^#SJ>s5-e$5>&*5zic*bw z6_ouR8(#OFlZlip!ZJE8(%zLHCl(%KBKOSpzEiO+dJv9846X7R{7#8>Bb9K{^;FbL zzKnP3NG8=@URwx(K|>7L{&#!5i>`mFOsJsCs4%XwNJEtOWW_ipc!E!iris<%$#%v< zEk1e23^i&>99n}cN&1{8u+_hQ;d)JRI*SmFq8u9wHGUo8tM<8ruk+}A&U<`a4zY_4 zjL4V8B1kni=?w*G3hlS}Y-fYfH{Zo5GXeJQZiC!A=Q>>`k?p)~WKj%j&=!A2N{sF` zQTh54!cP46ddZxb5#BiSMS3323+s~kN!icYUQ(cr= zJrVeMTuMr=`_uS>OehU)Cy7i~6>oJF1B1yp4iDKyZ+`hIbU~uwYI0!5Cd}P4WEA7{ z2eC^5NT3o(^_Cxa+oVeHX&P;~@bjAB5L`O>)3kroU2?!H#jYzN zd;SGQeyf}>m?DJdEyewK(YQ7jCfj5lS(H{~i7TV6uO;UzHnSTD}`=ttV#Qj#>=g(bp?s3XP26 z?u_Mv!-aEDCEt!@G^T&B(S>}}K2kQmsUa@J)YG66HIe}Ni63KvFEzoRE zpED~eh-e$Vj}1J}y3V}SC}+H80k!Q61W)6zuN;ytjn976&G$pGb_9XjIJju)^1Y55 zi!feRUNzs^{m5yN9h%(E6kj?}dP4u<3-Elmal*RbuojnP+iHL6+&Lq>hMAsI&K_-; zKfm<8%T(1NZlzOI6r4GlIt>$4X8Zo`!-5I!@K97u`_-G%=RZl$dAhT$Q{%=(6yM96<1;HJnvFt?m_ix?5YUtp)3k+raQvk@5Qzm`O22b2^0HTBq7g@Ic? zbxmfL?)?fZps-j%$WZFEc-IJxdN zZN5X~wV9Hu#1Ppe4{mI2dF({%60(l0!tqn~;hjsxHVQVx%Gi=*HYT(KuX`rhv{#`R z>%Le-C0C#VV}kE}^FdOhg01BOC$?`(?G&UD#`vFN{4zXRn}Hn6nrG3sXGd$^XNx$+ zTa?$kyQY71x^F>?ns+|WKM3n|-ypf@A0GAlt&c7m(#8MGHCgjV%zuYgjADWxBeXy} z&Vpm>*ROO)BLyxj{!EXosAg2+?U^rrLnU!bSuxQQj~kw(+mbpj&0y0>Q0gQ=RM&4c zQ%jm;Px|W(n|q#Q%-4=_)!+*8h?)|CaFntFrI>%O)7m288P&jWtWt^PU5{+~BM%k0 zX04(Sce}g!^Bs4`>9<<#(Jys{n+Qdxz;8}Gdr+ANh3N1Uy(m%fkqiaY=eQZuFZDr& zXcdE3;~2+m%IW%xMtc{C#p@a)yv-*ceG?iwEe~d^BV&E%i4|Feq$Y)8R}liS6pOk2 zNG*Rg=+T@sA@19QWo_YN*}bfoA?DdY#vJ8CbIL0c)G@$lm3O#`zyL-6#Pca^7m($Gu)b30jr!^;gF=FBo|^3) zlTP#*Vo1X&v{&2*T!HpFdJ|%DeNIb^%(j0=X0+`}qV9ZBJmnFbDg5nbKn|<2j9@GT7CAxqFDM?dtT?(KJY#tMFoyz?il?c*c^W} z{ejMAN%`tRr^%PwIimDQS(>>cZLG|Z85RxuwAJf?>6MA>n}Y&t3029mSJlv7ovbBz z>kBaTh!X@`W?HtDF>hQIhm%B!@wo5{)%B4!F5L;}WpdjSr0=3+w4Yl!xJYL|D~91% zm?(GxbmVJ@r{nLU^8}vEj}$sizBGT#ztw)bu_FyaFnDF0?W<51gvkGShMd?Tbxv-0 zsA=!WdMOUGtV(({)YESbWqrhNnh~5@x`=Y4zd-Fhq35c>p>0HG{Y!{t03sEm&f8gG z@Lg)pVh7IS@|7fIWGt#}8eQu0PQ`~`M=m%1(L*}^ERL5mCpRKiX1v;Nvxa|7<{~|! zzZ(3ewVx-by;!CFrhBv;$BRIb*~eZ)P2D0UP-J9Btbygs_mj_&Ht*P(%yyzGNCB)qfu^p=UEaD%6`qJ*N-N`lauxcwLMHZ%SK)NcKAQ8` zKVKUqo2gPwm@_KA%V*=@V+VhR=xZ4Ty_2I(WQY7r%jO$~BPp@U;gu2>^z6&5lk#3< z#JDit#2wKLKPGf-BB_eWo-HgCj%21-k1iIij5k#UDi?KBPH%`qctaSNSw6yR!4m-h!~mJE>RXl3{;F;VYUv*F*f# zsm@HB#P7>cSJs|n-W|Wc+y6lt*|;DHR`~Ynl05>o{&n51q}qNy>FNizG**(7QGWLi zn5qwBfS*K^QFh#DY9vV(s zrr&WQw9jeM@&kJ5y+2AC&he46#JgHl4NcL%xGxH+Bezco9}a(`E%-1L)fxGbdF8!f zCnB4Wsjh86o8?zwi!GivaT#U#ET+dFYkTIqrlVG-`(_xW-myL#HG$Wry8KC-jA2uH z(Kwt%^7_H0x?$^frRK2Yp45s-k61OAsvsPf0*{Agja&MsMKiDP`PtPb>TJXtaMnS# zFBGjqlmcUMrGtN+q|)Sha;*7T1;n&lijJ*1pNd{Z4XKb2!QA~qDg!JOh{32BF5GP# zko=_iRKEkcOi8osV4|^ss(jIDin>m7upsrEY_-v{`NrnuP1{mPd}-A zqxwijzDQ^~d2)mhyI~bmsF7;uLw-blC@brnk~oBNJ!TMkaPZI-6)UV=cMZ-{|1% z`#XDEDztxiEnF7LdU))4)xMW(W~>w zNimdg--hB{?F_Nc*==UHDfr}KlL!jdVl~PO(pJ+P^UskKc8fkGgJfG#=u5%7{9?dQ*!z1>e-m5t&JoTzCl4@bAy;o?|E%(K z5Nkr9LQ4@JvUeXp#rxd+RrVBsP&MhzChIOGg**%R8DgKJ-<0;!!2Z)AB?^!qL?L>~6CkV)>L1-MkHz`0mnA zRe0KH$>m=FQz5z_ICUv8$O{Z`-g({pfF*T#pP3eJmYq)T~tm8TzmHDfS;= zw*cczEWR7u`+1*CPL`{86VHL>+`;%8qfo-biwW(JZZ8kECBc33ETgmC@OG~6CF4kr zRV*t0wKhbp`}TF2wHlc8K~!WjKr!)-nZ(%6%8WGLcG&w3nE4g>}z0vWW~*`#N>5ge>k>c^bJ$s6$vk~DW)wL4+U2tlT<@dK$$Lsa@w5X z9HElh8~xyhs2u5<(lnsi%0aK|-L90{yyQ(v{@sWTX>Hs|D7f!DoySt)C>e()}i+ejWBjslwgNWK0CT@=OptDD5G-x{Ut$2s|%OsiJOW}8KzTKv#7*R^f zWKizs;`a(5zjKUF&cu1z9XiE%vb!;H8vvMH=w%G#}uqKRkIrr^}&*^&D{2J?JM^^GvG558aC6qYumemny?R@B#7F6s}>Ak;Gd9 ziWROK=IW?DHc>*by&yfZTfAQHsUH41G#6}EwxD0q;3=FUY55fpr zXJpGG$uqFO{^XZglDb=JSqAUMiNK}m>a48HFS9bUT57b-m8!H;mGktWtBfmCX^Tr+ z>4a-v8RK}&giP0|a*3|Js(gi2McVq@;I=rBfOKiCsWa$|aOu5Rj!s zy1S8*5Rh&}x@3t3X^}=s76FOZx%WTs+;4Zz%$Yf7&dhl}oDV1F`F(KtRAqA*a#2Rc zG2K*CT-LSQa) zPn0^xN%>+S2=GS!IO$XOwV_x)XY<9+oeUwD69c$XTtF#>4`2TjBx*-#5N|$@W4knK zO(U*Nx1>5VBQD^?zrWm6erw!?fqr`}SGnJEd`HMkoKz8bfv=$#@J2o>Q0j6=(U(p` z@!8M5zcc}o!Lo-M)#%=&-2fU{2cn-80n@Z-{3ihwS{8E;%2M_Yx8_c~RUx4}oy@|F zC5zmIRNXgMV?U1lXTrOA2AU5m4=76etUJ}E;LQV!7l4oPR3L~ zev<%MjdD{1BBl7xqU)UEp*5MDs`5&SO9=~A%7*^>wpB!pOMkfj-ISW!zCmpZ&On#$ z8N##PIZd)F_8UG%FznpoPSxV#(EhFS$~EE~bLs7UwtGih=U-q6d^Q>TnmQ3&;UkB3 zl|Tzh3O_F{6hw&^4m*+fX~U809}CZdX)}f_+0jZStJ1}!9HAwis(X)i!ya|=A1IYD zKs<9R_(;(1&&Xo)aPd=m(fc7axfioU+QAA04|T=0D-+PcQ_ePuz|IF+%HT$CwZ-&H z%>%y4L1rhX{u=JEMf6bD+xw?s?;5|%(ICniMMIy`@S%(ien`kY6fC4B?ZPE=A(sJ& zd(RanE`~hvpD$V#v6E|YZ^0Go9Ev(2W)=J}?))Ypk8IwN&;H3)8ErM2n3p|dZQnfN zF1r}#af#yuC**_5=Q2jJ94shVtJ7f(l%ix~T0mBSE84B)E$h%q@9^qja<_hv3#uS} zG`=w#xr7=Cs266x_04u^Ic_X#9*V}eci1IMyjh2Psj%TFPeA+Ob)8K3OG+C1n^X=Y z4S+daXtG14l`^1r$X}`;Aw+PKPLPFuDCCe#Vvc`ZwZI=_r@Ch&Pfv8%u+aIh=G(ZW zh`VEw?4{Vg1p?M@LJSoK=u3@T7Ei|9mh(LZP%l<~GZv{`s6Qet8DxC=vqao^BdyOY zS&TjV}P2KoHU9ZaKLbx7ggKW88=*ht&+Ib%zHc9n@UoBjK5&Q3+n8)INyP%PC07jAqfziW0Tr#Ec|pPG@3<+b?(r-*)ydqSZGt(z+6fDnHnPd zTxIj|ddh>{@fyq8P;mOgE%Fva)VI_IM+YCB0XOGZ?N2cCyLShZ6T@fsoktb|&v^W? zYt^!q4nekwgO&zL*J$A?-jq6l>aaB(Yo+Ua_@ySmYdi1rYgSB@1J@T=i7_`9e%vMt z`x<#*khXTQ$gXRuUGnx~g$)IU*>OZ;Tf*cVD2uS#5cXbn-g>dI{mf| z_XF@LG^!8fNY?1B_=S$5Zt#%;Os1{6?Zk)$*QIy3yidh9i?WVu(Z2ej@;py)yBS;qb_DjsS!0SJdX>D+A$hv zX_{Zq%d!0_Mroe}4G5QVl4p=(oZ_anF;CDEalmmQ1+Dq#<3?|zmwlCdyhBu z5n(X_Sv>aNhjc^yX!>RKi151kwsWrA_d=t?w7!*-I%}%6zO6*DV-DnOo>a#57BNDj zoeV-pV>4Vs`f*=Tq6Yz?wEpMB4+_t}@NeZY@0TNyezKY`)qo}<^}@j4+4;L zDY9!bjPc8i2cK?qM`^o}ZT9%ldn#k*z?TN5#E9PT!tKv_gYl|K{rc0zvlbyEnV?hr z7G_#@xHR=Ck`Mu5fp*%-2v(n#rhAuC^3{I0a1sB?ZefL5^8%Jd@i7gmt0?|rd)WrG z;}sX6w--0RXljD_twzI-WJUhci!EnIACsz}MQRM$A5MKfojpg0E9S+0Vw}m6Q@i!? zQ}(qgkh|a7ols;0vMaWIVpz$dnA%RGOa6Of@i+fsPCiVV$a>>h+}TFqol{VB`4R`+ zR@lbe=JX}%Fjv?}s-m9iXl17L${vy%tB-1z%ZWvV6IltXGxcz)v(LJXiSr9bja|7% zzH3&TbvqEjVxAxTS!6YLxUnjiG>CAQOQ7K63Mu31KnzXDy~W(*Cv>A|V9 zEUDF$!jCTl?W1h*i)SG{OAj8U1#n!ySMq+$x-2qB>LH^2SGtz(^53otW;8`_5SHcUI8rz?7O6in|sDC;{Y zzxH(b1)SeVhFY)n8&#He6-D5B9O+qe>I}G1Yy@kMEnDL9D6! z$}-|1&F!S;H`z+~6a|C7t48WJbvK|NyHNo*KNn*#YOthD9{Ea@)Wl+oc8(7V@=vs% zb+tzu^%bq_>5pXT4JWOu_K(b6q0`d!&a*6Ew&C-ZTy?qu?z&hi(KXE*DU!TBtS!O6 zWj%}tB?4(sk`>&Tn1|G@2&W7;hIiHq(pOi%I?|CIEhf9gY(YRz$$hn%DmEbQYZNGw z$*X_T#C}2KRg)Woc|li@-_48x=k1~KqS-qs(&Q9@K@w^Ibtq)b=~ir4a2vo# z0<9G%Bg;{-j49JQ1I?ymAztS@Sa)<($E9TL)tYr2Gzv2x#6ZiK!n(LD_HBT*im2_pj`w6s-x*2i9gBpMAQQ&(>Wc>W0~) zu)BRrJD<{tR=ZvtUn%X)oVjH_>gI=Tbo|osdG#qIgr{<8{s`H3gIQbaeA_WAyj;kd z5qUXh?0(pF*U_YNfgD}oUuWwI@;(bJU8bBK<|f~w2d*)7mSvAGKcj<@-7;&Zw-h7LLoBOGlP*K-gn z{I7cgE-wdSV7j?(N@GHA@qHc^rF8>ps*%M$vm~=3e42k?LI*OwZ%r@1M{dEVk4_KD zKP4mp_MV0xdlefuWR=pQ&H{2PlKS8F04T>!ot6#SOHOL=*4^~2<%7;XrV5GlSOwtFvnE=RaJ}UG2zh({VY3sG`#vpTFy6q@>#Ku74_Ab z8sTrD07^cW(GM}F+@-T)(=6;bTxOGz1%u`NT7Xt_LX5`Haefc#4VvhvEHnX4e1ARf z7d8a;4KYVWu}&IDj^7u0OO4;Gg;b;A;G_g1Qg?)~TIuOpwuB#Q)0DV}h|k(oZgbZ|$AWT%N_Iv!d>v-g&-fm+h8J66o-7VA$^%{cd;$ zgGwIMzj6TPo#>!4`A<8;Uwgd)LLx(`I2AGx5AHK4gO{g~goY1wx}8JZPob0ti$bV^;wX}+2&bTR69tkQgEr))0Xd4#5+oN~q#?=4VI zEJq-2CHzdpd(0cttJ*rKYkH`Tq8U4iw-$Jxx6-{tEo~Zj`9AsjZ=zrlpy`i{x&u%I z^mG2G4QvxAnD1g9q{PKaswS@_*mmR~IoF-Ha`1it;?sh+g$X)0oSaR1<7y7P$d%?6 z*f)fKcAPHEuJ8bO;57?qiU8*)N&x}5ZZi4aKWF?i0=q-3-F-P$b$6m_{QyLRk{?}e zT=5l9Z<)^C>Z^ObnrSCO0?M#!)Hr_&hLLJZQ31k#Oy_nw607h3rD^DFv7cUxu)j@E z=>YiHake_vl1w}W{7Iq^!AzVYS0wVuYF1PGWlQA#?p@L`{5;z(NcwYC-D$YJrK?D) zpOy+_?~Z6QE=UXa2qfhz*z$SuYP7tQqRjW^Ov?k^hy#RzTghn#Lq$o zLae+QEs|boa!Udy^mQZiiJpswKe@T+mZpUi=Wvp83c*CZVU~Sxm)eTv7&YhTOE##N z^a~Oh;tx3|xa0aXy%=BE$x$E0Bbdy$yF;_c?9qVA_gUtX|pi|QK^z!+3O^P z+X9~4nO1I05%A~9u2GLRdsSL8A&fONHZROM2_l8v)<#K^G8bBT@LFEf%|+{E{}QEX zP!RV^qV0p$lGg4%#1NP`kE*zD@yMe(H6m)hwDvPhL<;_%=3|q%d9W@Kaql17c+w`T zncC+=Oq#vk5f-k$ysm}TG7%A)KQ`Gx z607$amYZ|4D||_)?0*qGSDHu4FW{Li!IFQjW*!Gu|Ki`op}kKKkhdM`hx+s^Pz|@& z?y)BN0KVXuVPJ!}W-Ub&i9RUHa$lU01FJp`-5CFO>q_%(B>47kO_;eFg-eMWx?`&U zDFG;L;V&i`)@HlnG-a&dK$kfY zT56`{^I7kO)hMk|G>wrqwb4ZmUs@gHMUUL{`NS5j+G_G<+(SaV9nIL2$>Q0_s-XQ4z?*619p#O`7G7}Sp!oced^&991 zm4ceEZ@zkhTH_=7JLm_RPxXc1U{P@c@H3Jh=s!B+gdTB47KznvLE0aK5FQ^C9$wW** z<`9q=2=dQq=;r4A&nfYbU1dlnqV?L*?Vlz2pQQ>ims1y&0xPSksX`3{tTMtR@5Undj=@4y^EqkhGor1)Z*Cr!`9}*lX^cZ_yQM*w&K02&b?LJ4 zi66DzZ7@^xQnOcwVe1H;1t(+o-vHWv5;)PhMmknB`F*a?Y5oFTpz?Y4fbtuO?l)W^ zMz;rh&2U5*asfY&amVZJcfyrt;cUARtaT_lWZ&zcH5OXl{Akj&$TYU{+cWW9oY7CnsP;!Y-e3AwvUkc zT?`mMg^@{NKVHY3rEHzdBEkhc(KD{~nX#bhAYOWvvkh0rTgX6c^Eja4=BQD48iCRl z6z<08IBt)RONcRU3yzy*{!YlHe8UdrdZ}64Kc9^lYvOtCzP&j<dBzxrQnQ8rPJf!UT`a(8*T5gY zEuVEHysw>o9iiWoCL;*beeCl*yTi0})?x2gv0=;BfOBc_7Uoz0YZ`P=Zun{Iw{_Y= zffxfjZZ`7&m4Dr}(um&wN^Nph#1!7`9a*}Foav8|1zP>`FQ|`fv2q!JDk3&=39uNH MjGJ3cU!ClK05Zg1lmGw# diff --git a/doc/src/DecisionTrees/DecisionTrees.do.txt b/doc/src/DecisionTrees/DecisionTrees.do.txt index 05ddd3d3f..787ba6bb8 100644 --- a/doc/src/DecisionTrees/DecisionTrees.do.txt +++ b/doc/src/DecisionTrees/DecisionTrees.do.txt @@ -1501,6 +1501,14 @@ where the function $I()$ is one if we misclassify and zero if we classify correc ===== Basic Steps of AdaBoost ===== With the above definitions we are now ready to set up the algorithm for AdaBoost. +The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. +o We start by initializing all weights to $w_i = 1/n$, with $i=0,1,2,\dots n-1$. It is to see then that $\sum_{i=0}^{n-1}w_i = 1$. +o We rewrite the misclassification error as +!bt +\[ +\mathrm{err}=\frac{\sum_{i=0}^{n-1}w_iI(y_i\ne G(\bm{X}_{i*})}{\sum_{i=0}^{n-1}w_i}, +\] +!et