From 60891f7ac7d7723586ea77117b794bed71292c70 Mon Sep 17 00:00:00 2001 From: wwwwr <8900960+wwwwr@user.noreply.gitee.com> Date: Sun, 2 May 2021 01:56:12 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=B0=E5=BB=BA=2017307130285?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assignment-2/submission/17307130285/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/17307130285/.keep diff --git a/assignment-2/submission/17307130285/.keep b/assignment-2/submission/17307130285/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From b62ec11a774a5e14495f09735aa484f1ed6af8d4 Mon Sep 17 00:00:00 2001 From: Ru Wang Date: Sun, 2 May 2021 02:00:58 +0800 Subject: [PATCH 2/2] assignment2 --- .../17307130285/README.assets/J.png | Bin 0 -> 6569 bytes .../17307130285/README.assets/ex2.png | Bin 0 -> 22988 bytes .../17307130285/README.assets/ex3.png | Bin 0 -> 20431 bytes .../17307130285/README.assets/sm.png | Bin 0 -> 32429 bytes .../17307130285/README.assets/softmax.png | Bin 0 -> 113535 bytes .../17307130285/README.assets/torch_batch.png | Bin 0 -> 23488 bytes assignment-2/submission/17307130285/README.md | 197 +++++++++++++++++ .../submission/17307130285/numpy_fnn.py | 198 ++++++++++++++++++ .../submission/17307130285/numpy_mnist.py | 51 +++++ 9 files changed, 446 insertions(+) create mode 100644 assignment-2/submission/17307130285/README.assets/J.png create mode 100644 assignment-2/submission/17307130285/README.assets/ex2.png create mode 100644 assignment-2/submission/17307130285/README.assets/ex3.png create mode 100644 assignment-2/submission/17307130285/README.assets/sm.png create mode 100644 assignment-2/submission/17307130285/README.assets/softmax.png create mode 100644 assignment-2/submission/17307130285/README.assets/torch_batch.png create mode 100644 assignment-2/submission/17307130285/README.md create mode 100644 assignment-2/submission/17307130285/numpy_fnn.py create mode 100644 assignment-2/submission/17307130285/numpy_mnist.py diff --git a/assignment-2/submission/17307130285/README.assets/J.png b/assignment-2/submission/17307130285/README.assets/J.png new file mode 100644 index 0000000000000000000000000000000000000000..a3624f4a592f14eb27b5bc1c5c266bfca818f5bf GIT binary patch literal 6569 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 PAEuA3JGXE)9XR$M4UkW} literal 0 HcmV?d00001 diff --git a/assignment-2/submission/17307130285/README.assets/ex3.png b/assignment-2/submission/17307130285/README.assets/ex3.png new file mode 100644 index 0000000000000000000000000000000000000000..38a66f94bed72963d219addc75cbc8bc09854eca GIT binary patch literal 20431 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

@(}nucLrP+}We;X^ukdjtX~I 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

O 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

E)=PSwN}O->Iqj9hoy7&S7R(x3At^L8HF9Qs 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 G|NjA8!|?_H literal 0 HcmV?d00001 diff --git a/assignment-2/submission/17307130285/README.assets/torch_batch.png b/assignment-2/submission/17307130285/README.assets/torch_batch.png new file mode 100644 index 0000000000000000000000000000000000000000..daaf0ee9430d06749c6b0f06aea554c3437132a4 GIT binary patch literal 23488 zcmeFZXH-+|_bs|9f(=noK#-!KCqFL+;KnLZ}%PJ9hjZHpSspubIoV%gg(?#WjM}u9D*PQ zb+x-X5JVjeK~&R6>A)57zKOr!kF@8#$DX<_Hl99D+^r$aC!Vg3E}o8dPr1FV-97AF zoJEDighXy|Klk)>^^g%3cKY`XLN4yM!efJsX`qo~u4+ae5XAU|@;_CsVvZdInFy-i zy{+e)gq`&B)wTXkT9>^cDERwZd=YoVyQ4>szHEg(yF20P`DwfNoMYcfK! zbW6Fpv#UpC-cP^m{2&m*&7a8qp_;oR|J(K7-+Tgs;BqnZyqf*IngQPe6-QzPeu4iy z`Xy=zg`8GlXTV7MRX7kQz~A8Udk`%Isfp4mfe&KJ|Nn>oZ`NRYLP+VBfUxk0wjwdJ zEu6h`cD>r{A_SeLvI@hmjAc|gq4Kqow+c`2Kn5+8dkzi)5g(`^=xM3nrcI>_dJ6lr z`X%(3A)H+@?iu`rySuxo5Ca6gyZh)-)W+tf0J44H3{@#xeK%5CTAH$%(GO&N(D!@a zxKQ?0<^Qs;TuP9V@vXMpiV8hzYinngBW?x=XS1OKL*XLAuKsK2D5NIa+S)q)&H4i# zhsJq7dZ_%ZynHBIlim8+vud+XukM28GGjM3+>0z4&Apa~^-)z$u~AXCH6I-pY0Isy zek|*~@_T=Kd8oz%Q<1zPeUX|Q;x0PJ!ctIQZ@Ra)*U{7CT_=@GWn^TOZ_$X9aGuEh z^XIAf^WRO_%U3R57J;}09|?RK-`#uDUPl8#A8n2XLlAGMuC~0sRa=-_9qZ67mnk_v zIZo_U0}A^!QyjDpDJ5Kjs39ox0<|TzKUUms*LAT5Ga+;g;(ml3uhigC341t@tr?q~ zT+|#w?*J~Hk93)+euPO0C{B=Y%74Sao^OJ1_Qxdq@TbTI?z&bwj_H5_E=|;wXFvF& zGv{!M^`_End*lwP%Bua;P>F@bCZ;!@mq&?rSqgQc~g;`fkh$S%FR0= zCbP{O{P&y^<@~;#l3lsk=+rB>8CL6!&8K5vTgc6b=(mcLH?a0Q!#2>wn>JLCWjBzy z;%N6*4WU5;<@K`uDw0kwFVA|MeW`w{U!&3+YuvCsY|`=TSKsdXtkDX*~0UaQ#Dh|E-U_96`G? z=X=o=b}^JLkTAl1oviVyheF8Rr{NbwRZ;^t)bC9vN;oBeO*1%iRJieA<2{j4@xWF7 zV68=FwR*O~2RHQ|VkWI-a)5^o8Cop<;!EX)+TLBAru~%aQX=W( zj<^T~|Jd3du_yrBwS;bjw^q$}Cl+YL3+?YOmt0ZLP>mc;_L<6K(vrH3nDQ?$C^FVB z!*P*!RW(x;%o_Z+`@_l2O~S zZ`Lw96COk9%JkyS6OVI}+~4!E%UG4UpcPT3y_JnI_3aYrz#TwdA)_T?cjn>#|WwFS0K_mVDMyc|uhtM+) z1Bme=ZjUVIqz3gb=A;%k9?S`!;qcjAoAKWsGSmkfY&Vddry9w5zA}t}#}1_34*3)l zlR+7DDh&U{98UC7_dXJ5xipx^V-<$3ijIzcj|$jXjpdamZVechJ-ydzy}dMKT=D#o zr^|7E%C3K4#{2I$=T!_2eFgBc=Ibb0$R7WApX`Ml*U!qzGOqV^Ypt>f+Pmj4T-evA z%4Jq2sHkW$V(JlY)031}X4Sq#8K`feb!Qx#w0owx@5~X+6geYp`E9+sCGyXHp5~DA zeTZw=Ny*ksoHr!wbW5Ta;w^&ufB}2~ozA$`*dx$KUm2g(!b{3;7JxPP$7n0$ zfhAlnffEbHD;;vcb+zcWunQRgI+lO(L=G04)rtA6no{N#?FsxLS36Zbmg}do{KsZ zV3VA1RjzR1y31gBC*QD_g&Iy8oBRerX9qrA*B#8!=1TVHk>EAxLzG&^6V06U-%oNZ2*i*9Jasp&LRMqjd6{8 zmX^#Suh&|H>8GOZL>aGqbHBOs9I&mv1Tnj4(t0HPmAt`7vDx;hRpcVrUj5z_`O0U% zqVIS28JhcLrTEQX(EM`i9`Ntq*K?A-=IQ3>&^%_~WEx$Icz6E%`RkIBhOb}04kG9M zXnCZn?l7!|YZOj)Q!!;^fb6i-%^}8(K@BoqOPK&ULF63#=&FcGI3Q^;4?fT>=*}BEF40I6?#E3i_a72(+F+PbX+%Qi$`21#A zYwJNoQjI?ey^E~%TFzIGxq4pXleMjFCsU`tqncV9D;C{ofkL<##$46Z13?+_;nT;X z!N>S{lsmd(kDtIQod%)qhxYPt(UrUoFZ-x^u=qOb9xB$fO|-)mc?`jI-Zf@tAvHnH zNL8otibnvd0Gj{tb~|mmy*!dLUvivsV`gXr2%OzIV6{NZ6S_@h7Ydf;hUADj3v(^N z8R(-i=rjxv0mz=3>gEf-#9*IQ&q`JZ;%)`5{uot-_wTt#0eDE~1o)n~KZ5sfp);fq z7M+un2QVaA*QQB#z&!@%7_5LQg%7Q(Ko49GFS-1m zF2$Xta{cooloD13DKXxD=sqSDjvOvD(w*Bp^Z~EINA|zdUifb=sWYA++4Mqni~EaH}n9On09bJ-?ql4*h>OvxA;3<`TWiY`zJ5VU6|II zLv-x&^n~Yvo&p=F$}(k`1~^pVzikf!sr+htij><|cMlH%AwUw{;NePBY)b0K2eLrM z!u|C6d8niTZ`_?AuHk{{(Fc=lSw+=)IXI!Jx?KRsqXvOTeeC^m^U2HOCr$_mB}%$P zXwDDe%pJM$KVH{ICY>({RRPLlRGsOnCUH#u_T z$feYnFJJPKk}fuCXm0vC9{rRV9nA&@;PR19=d0=%7_pesxLCv9e4_nCwc9;K+FU@p;_%f)qCln}q#NDfMd;l~mbV6|~VX88c)R`1x+Tc{ z{3+kr@KPGpi93hZ{3&`98jc%JP`xIsJ&rWn|8wFx)#h~wQh)6S>1NX19C}3aKORU+ z@j&jBqrvLI|8mOzx0ft&<^jYGfz>!b&ok+$Ezj;Q2?P)iHve^j`@i}4|NRHcvkOC= z*s}m8^Z-myM=IEtFe*;`gBwcV!i^)q>M5W>yEI%mVr~7e<}J^z4MS%kDo9E0G!zqz zp!;~$61X-aZ4<8&(@g*gd|*hHrzzk-`BxgBDEvKrxVJ)4$e$O$j`z z4IZ6l2#(e>Up1$M5qkhfR4z=VcSS*SxeA~W*I}riVn+ENz;OP(f=y$z^)}%FhcNR3 ze33-8HfB31Kyg+EN|TP%&giLzLm&hbI-8*~woF4map=rJ;QPMZsD`P!k;57PRRuRN zu#Y=XvYA{VYRhOa$yF5Q&_*_RpsU9cg29aI!Hn-3#5GJcqW|;QmoNC*>e2svo`QTA zJ|4o)FA$x0Z{1oE7Y_z5R|_`%<>7<@4D#M)06o290X_Y*LIBIvZypCQ|AX=`-^AcU zcOSY3#wAAeKOlUJ?giK`3LGDEVX!p%(g1gM042>I^zk(ahIX>2EH;4g zn7a-BNYs@ptFgdZcmY~R=bDW8)Kv@~uFK)HIU`G$KT?b_A7J&}!`0;k&Ad9aPq424 zx%7h_x^RTD4U`)X+qq-ZZYX&$_Ca@S{-)tSZH;E?L_{R+J37(r!Sdaj)BD3y|42lRE(X`1$!a z>ISb;Huc@x3Wi`1miw5r<9BLF zSyH^g&V+{bL1Pec3(&~dfpVgvxZYj*n zd9rp9uq^-iFSc7VZ@HF27!_QX&q07g-0Pri%F>8msu<8JsK#LnB;Eh2X(r3)n^ZaW z0j%Ta6c!R19xb!lo{d!Gmz6bXzvvN0+Ds+yasY$jKJOPM(uTdmTk!SkWx#*)OG`@) z_Gz?Ig&5ecas(8XC{k8d%LxwWySxuwjjERmfUTwdWBcL2M!tPp*?vKDh#b6n>I zH<>g2%QD~n4|F`_0Pb+-5IX3=J?j!wTr#{O-t7O__T8o7?MWeFpAw+haMu9zcqa<^ z$G--Hd&f+5GxQ%&0d{_rih?sV{|}emwOa|FJ-jml`uwcEGWd{#2mrTOr)%ohIiyw5 zEL1mtJ){6O1#X^EjPTHR-yHe~<6$3X8V&ua!6;SEyz(9y4X|BNyk>5#=hHi^I_Am{}M zKE&-;V@xyJ5a0tNU=cFwKbXWpo(aSoZ5C747ZfgLL0mF)W)^%R{@k*Jk<;_v&sghGN|ILXkJE&-{%S$(oE;&q!`;J0tl)$ zYg2oB|DP>2#nMzej0iP$0-a@>lJQl~Mhwt%1y0-aon=1U!T194V9-}=6>(m&@sWzk z8|Ug7Iv_H1z1F!R@js0_K+3;5I|mZP9l&tz{IlSc)dUb0v=c5u5%K_9Wdd=dMmP5# z@;fwV53K--D90HYCK7~-R3!Pz6IRNFV)@JbXr@WTfBZ!lj2q~9#MO~JT~*Mj9u3a1 zJ@*wQfE-##1cz+x-iCVUp;Zo3y{r*qa`}GZL44DBGCE3eEba;ZYXA+g`q|8nScqH2JP7lqy z-$_(AWli=EJQlxx$iy}JlsusLVf9qV%3H3W-$3Na(oB@dtF9i!mCX%wB~U2}jqW$KavRYBmVd^(AAoM^+m=TaDbCXZONQnXyYaf&{spGvLs! zt*w!$u`!7Q_5QZ-)lVRn^Kuy`2J=1moJP@6_Cdxtn0A|{0YC0AUhh|~B|Ue}%(L&_ zp`AFd)S2Z(4Axc#SW{;FYY5r}x{||>cW0tA{kNAEfuGqA=0-U;61^uqdgUq4crDM@ zndw}%wyFJR6-*g|K{`;lurmS_R~U}<*BXG?I{m^|l7ZDA>RW91P6(a={6e7^PbEj% zo!tg{R<6THvCMK|xtRCLV;Ior5~Mw{Bfy?Yeu(>xU#%ROZP!SasWG9fav*4*QEn|5 zPm=6D0O4a~sv$t!s_mrL>cp2bO;5U#m+Q>lh6Vx-^a@8MxWKzf#`oxl-0n(OPQ>t96wxjKY=Odyc3v06%#b*UoA+A@phlXnASz=Kkuv z3WUPpVzYw&ejUVza|S@`2HAoBi7U>JacCJtY8q zdtSo^xzu4LD0X1qpBb9iswU&LyzhJ%XevydsF6$g1%H@H^S!AhVA~Br(h}P~+sE!w z|7gwwXpK1(A^6LeFEW4L@rZdX4OV~3%9f_F^s6~!mcM>&D+I59`!Aw$mrw$vciU80 zm6j}4tmtvs9UzSN#TuIDQRL1y8pg0gezW9Sc}yw=aF#+KT&dQRDZB$nV2c3p<9R9K z6_8RxIRn>jGq8!}X1~9{^3PLhU)Y+SQ*=v!{#z)C=fAnZhns&rDC!mn!i^u;?;KIG zrvdDaw_gGRalf+PG{n!(4^W+cpf0~uumu@VM|XEo^(^Caz*zl(fo^Sd3NHio*C%85 z(P4agob>=Qt@X^KNYcP%G@>a$yuCVUf|zjsz-!kTCwTtJ!)OW-LZE|8%58fMfCA

z4KPRR5$Yf{`K*IM4ov&O8LPta5+6J3+n9TfN9w9fd$Sp%5B^Cd2k3 zz|UozgW!DcKjl$9kep%z1OY8^NUV7QKki_MH0}qYD6xe5EMPGA4!!6+An%9C-c!Kb zbq=@mF<=CPZx~_`XCTV19Sy#INUbm5h8|q%nYRRt{vl|NfAqcA;q7XG%;?p5|L1n~ z{2*cnD#ic4%!b-x9nQW{4)o|pxvLb~-5Tg0uk5cJ84mITsIdVur#wrl-^e`5rh(S`;5ly4)H%vQ76k6n zJ^inqZyyfm6xGcmLo+$xMEE;5eT9v~(jtSx^9wx1{VXlgA#?RRUiWcKHP0rV<1gftfji z`JL9_YEpjtPp+8BMQwTf=*i%$tmYjLI%OBiQZ2qc>~>m1SUpnyDr`61b9bg6PO?JC z(g5a5keKL}+9`=4psjpBhJ z8mN9>*iE7W)F~4ryvNskGZS4-HEO$+i3L>QNF*W><4>_zHIUh#b0c7@&=%KPTS+@1 z;#84bTWLaLQDi;wef? zJW%$>m6hL-M~1ij93UE15?vzw+V4wteV0{^fyL$rF2!rgU^$%@sYo{R#~UqTQi%xq z6Mlvkg6Gev#qb%{y#q!^ReDzK_%Rk>Ed}-1_X7MbCzzpB_>{Tg)<-dKM@MTKU_2pg zU<7Hm7uv5rc(=lesv5g8^K!BO%KqVOfpc71XKiwu@&kix=IZP!B&~y0AW*uW;Qsi$ z>+_kwfKsZ<>szyt{rURh1UBH?3c=T}C|cC6%E*4-=~JDBA0(U##-dQmUdx$U$@ch4 zFm2oG`ZT)>8Ien+EvIxt=okhY;c!8tZ@hnzx;a`PRIS&E9UTc3Qh$(gLw?t?`(j-- zP1?ve>vhHXTCe^>qjg0gV3gOasi%Q#MM*^$hD}_CfQnh1A|C+6(c9yI^Z&&B{rmSh z1t{aeG4}A&PzNnd&3RK3s+)t{pO$uqN-{lqW2fMXq;@)pdo1$-6gd5Y-V?;=#c!QL z1K>=dh%d$W&e+(PKYq+sSpf_x7aTsHkFT$~V(9MaUJ9RPl^$C_Yfl~m&hsvx}=P($DpC2#n1GIO@s8(;47PfRc z($qA!SbvK1(|pgipcTu9aT!1X&l=sQZAyicjDXS?Yrh64MFr?Qt#`3M>q80*Z$yy; z{bydY=$V@rQ_;{Z0CstFPv-3@4jsT+&{u|}TjEgS!SSY-fmq(ZyI!dauuw-IwE6hl zxpU7!7@`Qa6e`)BB&|z1LOORjeZ!Km>d(7)OQpy#8EUNeL;psk+j*gDQQ$|3v zFYSOZ45Z`;%B&KD9d3P=9vWT-$X={tb9sT?x%xJbYJ?u;NW8>Ck#dAb(WR~9&917m zi9CHpIZgv2$Ngvu1*Qnq6v|T(u;UCw3fOqHTSjsH#(ha`o*5|zD4FKYpY99$cf={; z(=O0zq&ycMVn@rADIvGYc`_elG>Z*8Qw6N7-#|Pca`SwOs&t4iu3h4Hnyl3aW7SVp zfK>o}opMg)oP6ib{YprUlI2IYv$9P*)z{O@1lsL+X6CD=9%~})Y8HWK2%F%PGg~{p z);m^9su=+ry}8)RB0!%P9lfNfWM;e+Kx!miF$?mWgVmQTuHWT4+tAxEduq`I{-GfW z3jQ1a6OFFCa%CU-`b`r3NhRzZ?CV&Y`g$w-- zC9US>wrL+ECIn5d!8SElN*Exe+DlM&u2ym;CM8D3^Bs1tr2c6MBS-$hs3ckqz8@nN zSk2%NZ~7ELUiB$!i2IAKzo?nKm95zyOjVVA>rko#l9*or{s+E3SyoxG${`+yClN`J z-JdUQuUv-_oIFcd92lm@EBhKwQGyG#WycAF5JR(`;3}6?vQ;Cwp~61av-Nx#S9w00 zl7A63^iUqaqM_-eK7`Vm#L7)P$?@tnw z^xK%IGkYSE&RdgHb&^{_00t+$6VLrJo#-2c4Cr3~#0R~85PNWs2}%aG>@U|pQG>_h zv3UQ!%ZuMnWNj}C;JBPm|0EG(Raxm1V{S%!TmdqH67&P!$_BLzL3I4rK7tsl5>cUx zSee2GbQ#gGvaYIx=gWQHO$p%VQaodL+UVQe1VuDf2ZE*}p`+^SB~)T<@QTubb}m$& z32B1`UFAyUx-{6)?z{CU09)9nQ2{+R7uv=NC%fO@eKZ6?gA&x12{l{&)2LYv$gn7X zzlOXYkMpjESRWV|%sHi}U>wu`4GazGgwC69~tdn$zw4u?MC`cT^Iu#YWj`8 zGYeGNJ{uLGU@Sup%)57j9YP26Dlj`RSQavA(!ZC0Y^>D_3^f$VD=6lCx>AY6H_4kq zDmpR8pkVe~st0a8mOHAnQhlQ$3{VumoDhK5g{WC$MqX~^f`(o zk=@O2-!en!iHO(7O<$l+oM?#`H&419*VhgO-vz3?+X`7Hm0!p}gf+Fvc97e6w>4%9s$mSsqft`64-@3Z-aLaK&>k3) zgZp0PhQ$Q16 zzD&5TD@QAVpp!)`7jI7DgZg9~_Ly&c1m2D&E=femHg+W!Mam-BiW!9KxfwWbcr88!4MLKRx&EQmOG3-QMQ%RK zO=wG&#SV&?M-@9qpA-+KZTfBRah@Goe4RDj|9SHRBEK(}GZM~Vc^PikxEIHstcRPn~=8f5S&NH zbx;j7j_OhWpe>U(-=S~TBit=yb`byNL%T?bwC}@x65(eGS25j9J?LPi{3jmOh>kc2 z-%cXqB~kSjiJM2xLdqF*rri) z<&#j|gZ*xo6|25sXv!;|*szO2e+@7P$23G~I6X+R?2mIb*g5Vvqp_h(S)B5jZ#j?4 zOHNifAyM6ls#A=mM&+MBu*T%m>HPRwF<6{)0JI?@!7wPW^>_d_S@-5g$*R&K%8?Zboc*goCJ=FWwfu_x!2Y4eII-~dcfQ#$KSl^%TOL+Ba(LT`=eGF0pNJuO2Fdsb-`GLgWo>z zUuPG|L`A!wAAce<8^nV*=k=X?yo&vRwyonQ!pi4`z3VAr z)utz3q{*AUVnL36bE=5s-}dX~!`3_t#l<9#?~;3lZ_BGFH6r%MLzMbQr<=W9Z)a*| z($J6FshyH7+^`z45Ki_^AnMeU{K@V1{*@ob9~$!$*Ftb4yPUm*--NBa{kB>9-47T9Z6_`jm-Occ!JRZ#y$B|Gk z|M?369FETQ&XbvM7_d&ZYQED{brLR5(p^xJ=+XJMXAXZ(WLFHrMolu`n~a) zD&hQ!%+>C{=(*HnyAWyXZcq7xGespLG>jH^Eyt8klTH5rQj z!G6+Ri4XDFa=F&5a>@c$xwUM8YCdaLtA<6jo1>!DIyw##Z8GMtE{l%dJI7Bt;TrfV z?XMJ>vG4m%C0w#)c$6#?MXz){kbB*CWma3kt_7y9z5q*xsq@UqncvWCnu2SY!}Rwz zG{~-;Jsduxr*|UZcX#|56>oGW%#j(jcs0>I`dXJ6j4SnNq}(&bEQ87KC82(Ls?)dc z-D=9PYVSaeSCnaf=rL~9%cDBU@-qLH{U?T#&EF$@ydssf6*=~Og&UrQd=b6D%47z4 z3cZlD3FG+t2V|*cU!7M**O;t92HdNtftX_3PpVJCS>I^n>cM#8oDK8yu4}}N7N5nW zEGL@iY%qqTOVOB4<9cho@V2Z{&-1G6L0~Q&*_kr&D52tZqpa41`^;;6t!m^NL0=N` zUN&gJv@3hjr18SG^*t>X^uvcaWUJhvuxtrzD4!$Kv?A$=Djcu~WV;+ETJ7mCy7MJo z%Z>~sBVAv-c{e$H)C5iLBhcpCxVv5ee=#+#=?qRiO$M>rij~9*@xnW3q+JZIYSXtf zUPC@$U;8)5PoqvYsV~00DR|r6M)GpwWQ~Ov9Fv4!jV0}AlaYlpg^!;k7B>=l;Di|M z`{W(?kbs8K7mi1`g9hq{b*!{6KUX?A@Lj~?kDbh_rE=YKm%a9eH^g-M3GkvQqc~KKV-QsxfOc+~; z9~nl_{_#P0+&vv18$0HF)vT5mtrqx$UOYHAE>19H$H60C3zFM=MtHqy`lk5m+&mrH z+}M~XJewMHTp>&2TGS0i%*m`iI;9fJUXbXA92>bP6I9Ppv|NaFizDDsPMb?sk@rac z%|SU5&J~J{4kg=8gnb7xEL*GSpnh+Y$fwA7a;j(NlIss|{iG*CgNmnLSRi{+1LSC? zWpSg+O$l>NBZ~8^dAfWST&kFWg`|^6nWPZA>4;8YkhD|^QmJXvDh*aYrm?K^?pNg+ zL+KCQYWu30*nyJqsp8n7QH?k7Ijwf%D?{+yT-o-86ZoX(G?r33leQ&f3L&<9@{>Kn z1!)8hx7ONE8d!-u|H$w>YWQ40FQI>O<36K*Rlet_Pwu`FK$zOgfTN?+8F1Bl;#CLwg*2_Kt;JH3_< zI(6AE9}DhDK%~Os;)KFUUZ7ZTqso`A$?|1*n!M-Fl-^{Y`#xw6%wpJaQ(cLTwXbws)p9}Fm4qB=^4mO!f9ydw z9jS=7@Z*VtX3V(8I#FBaoqq&arbSdO-in4W^6?0Cm3VNE&G1s7Gz;_i4vJv@c3)Pk z4e6| zgW^Jx2u;Jmw`Bfn{lAb*$Ea??&Onc5g^*GkuwF&9IXzu*!sq)}A2;5?iSZ9DPIC&+ z*h3Ef_Q{sw!I}wbg2s1)!X9O0miKI+=NWwI8R_5=9!7Gw$G@26y_%{E5CB>ENZ;?Z;IQ5)>xA>2sY07hbd6k2klcUoJEk zH1mA49l`P-lc&I;6DWz8n*rWKgtO293)N}yVk=eDUC-?yq?1M9Ok=M)-x%Y8-N1_H z#TOQrd$J`lv_rG)C?jNTvY-iz^XsStAzMvxs({8_o-cRD2(5otQg<53 z4vG9cMF8MG-oNj-dla#B-%^?<*|pYCSaz=CyrEvu4Ze0QJXT*Hsy}cyVV}Rzxw|fL zT2@txej`E%-@~^U*lW`hwjlQX_>i!7XIy^WWvR}ytV+m({!Gpx+sK(srv7e zOkEm~nSk10QloMkEg6=VU)M&@HM&Y$S-I5F!ieg;V5`^Q;j;%1UIQrea zzO^uFdC4DVUU$kT&63KM;BD7&j?f$Bu_}*iO2{7$^NwpaTAojC84!qL!}a%1GeruU z@pJf??vC@>LMM~X=7J#_*IF*y((kW`<|)%JzG7ObIhbK2Wi)40x@9CE97M=EYF3Tx zuH(y}Ea{P{ZqHCp7n^wp_nY~Q!Cf<+go!=9`%KX`=Q+u{vlF|X@kO*;rbhu)Y{DsZ zhpRFYdS@*9GN(W+#c6F?9gmm_X1Sa0HRM^y|dt4B4*SyO0 z<#yijoV2th7;^V=)!fL}bsYR{>a^5ZEXr`o08#98H7wiaaw+p_5#lAI!O{7*T#int z(X!@9u6(>z3mt(_Zh8Az$*dU_A2V=~WJOF)Y88{Hs_f}2kD-(2G(!p(kK&Mz7NJ+}zroMWUvrVPn=3KYTkm zg&=S2QXRH%EbIpYJ>J;*D~9L9V%zAqyQq85HlDG2JG2mRsAX3Hj&$$S&?AS9jg?p5 zX4}RHeZw+a3r`e1lYu@;KdC9X2Y01MDL!UMLqviqrK;=sRrmVag%W~%osU<^fx?1B zwQBw;;gKe2dYzW5iKz>8HeO|^nRVq#dSW!LvC&=fb^ghVtdk`3sav${g198fjS$9_ z4JU9Qe<0Pvy^Vttoa5tB+y_`hbE?n6!?iQ(`qu>t{3{boT(%n<9pX7Yo#BV*0vO|j zOZLmZ8@0%~eZ^HFw99mJQ}@1Ed+Tg5uwN!%wwkCcx=TbMB%v7F|HrHob-_L(`AqX3 z(z3>a2Mz3>{gI~~CuO_Z% zHdLGIrz_Q3qRUfRn~F`^`x3qE#=XG1@P8 zG$Sf(RtL1PWywXXQ#*xz9(DOzrBo`q*`rO1rulsiyRLa|Ru(rIK+*6s>ksiqPOL!9 z_deL~c+Dt7uN;yzdHP)G5OIRaxcFqVnwF|f8Y$N!F(Vcw^{cMaTcYbpjVqhISqiWN z#JzqoW0QifgRi2ae-ea)Hp89HGFEjN%gGeS$Gzc9=ajOw%#4uwx-pK7^4**J8R9lw z11C3Z4eH_p+agOQnvoTQ_)B5*w!hztdHShl$`Bf*F(sbE&>Mer@&Jv#esR9uw&cO~ z2#Kbfmr#DpV0oU%C-K;o0k3^GS*D5^q07g9K+`~~^+Y)#t&b&FIhNtFcEsav91CDO zudw&yO<}zGw;g4Mi}s^8@v-J%Wf?ufbvO1g{Vc!bX_czyYcQEnJWlkh&j$-^6EO;8 zIbYEX-4Dz<87fFZ547MIQM2AQ-F>g;g#dW{XPf0wT0YW|noDv0M}FeH=q$RMpZQX9 zNf2`+-+qv5`pP(fJ73~f44mni*yZGQkj<963W4)}_x2;F)%o^z1WygY@$2nQBkwJnEBMhcTR1#ND;%k4 zm#=v|<-yTlSIs(aJWY%AElHipI@DFY5^Y6>hLTO1t9nciav$aOWVcOBEI6Q(xJILL zb=!kPq#AF~+|zwiP!hMlgQz?n`n|5+qOi)v2R>Dqu-pIM^ZYSevcfOA9JQ9mUQ&D< z@s}BAnpKc8aIS`#>(P&L-<}#f);3a9PMqNM`!Q@xAuuJW480zheML^k{M1zVsi4B{ zM6BYQs9`l(ML6|HZ^W~2ei$6_9!sl)PGdfmUh}?|Ve1}&#R)oj@IXiyQAygFuo7

K%H6v*HCBM=phVN+YL_RtY-llN+@Xz z(IgL0d3!anN#RjCbz1o`DcL&r#@i)L$Tz+6wghW&yQhSMS7%2V``MuoSm?QPYM3OZ zTIK=ilCOrP!fhvnj+&*oS~GZ(iDlb9$_F)%c*Yyy&j|YBqXPZV^RTU@0zA;yk-rM# zZ-fd#bP^*$8|vGt88UoMJ|q}jO5LW2Ri=nl{!Z2{OSCPZ&X zY}==J_RZ;#wu^4BTfQ?(Owq;cJ%N$=WJ!{yC74-%y()wh%Q9z3k9a z3OhcH9}cA3Ic!sPOU!qPppxrza|jUu#Jtpies%put!Z0}$=c?fM2YU53$PZ3HlV)D z!9WS@bZYNV^A18}5W1X||KHT_hZcn*~DOWi3)O2#093wC7y7$F}ClPG^g0a zqf-L=CF&f}oc@(>Sj>-3R*2bu!d7suxVbRA5<*><_J$iLKk2^nM__C>m3WhuB zadw*Pa8FyOna@2%Lla&td2v#^XMSF2bITBOd#ARddOH`cp!@wj{mnCU#z;B*NdEgx zm&>IF12ylXVm5K2Y>Efm;N%aP(5L3>02Q!>=^NN!#5|45+lD_IRKARO=I}h(gZs@= zt^0@>a%b@ceI}YzwV|Myphxt7#|dn>S2kR&F({UcKnkd85Fm%gqUGaw)$zC+^8; z8)X)}@?1Q-FM>Iz&{zDCdoQwMWlDY@Lk|voS1j6Q2DdIc6c~ z4*@W;(?sKas<4S{b7gU@#Ys>UEpP=;_MACbmMfnNF@ApTI%2 zc=BnpK|82^pPw5OPIy6s-S8AN8NV`QT)83G%{w+e&{T7bW)4I6Zm0h}{3WMk526_N zI~{K-<5@aD?KGyd9bd5-*it0R9^NT*0{O}^?V)&XI&F`kv~v=J;mpg?7 zX3Ot&kQ-`);*^@REkjvsxmuc#&COkjhF15Ebr5{cF9&{&Iz@`QL$=}&q_$*mt7DM) z()X5oyU1*L`K^xW3VC!u8-oQwZNpm4YM2S_-sM!_#CNld)lE=-ToQyXDzm~mfLe-eB+$Un@z-@P%i{C(NjqEtU7w?)*D#}5 z8lH3T-6vKG#6h1%IC-g&Z?;XJ%(@u(MP`V2i`Et-fYN2upBZ%!=ZW9o_HN*TgV6UN3Xq$5#$q@@uUf{Hn_<9<2P64shO`&ObWIWcL>gge5da%g-beGbc8Yy z`F_M6&`dj&>^U2ruc}WHf7j#JbLR+nzfCq@X0YjHj5dCfQ*IQ_o9V&Xib*N2{M6HY zs|S``Lhe)TA1$kj%o?a1*>@f(af!d1C^tqLIIUh}6hc=uJjA-#BU_M?QD!C^fW-=X z?at^os_0iL=@<6LY(+E^r z%mvudkGT>q5;mkjgvOHxkD^MrdM9d-C`=0bo=APK-<~z9q)3;~>J-PV`JB|i$kzcW zn}2S!{AsOH{InBf$<^C5d$89F^pg6sfoN5(ZR~6kK{$HzL_O_n60Y0tz@R9QP-y1R zb>5J56N`wA9BZh<;kQTF%bzIkA`N}eW?tmN=;-|3nPz$(91av+k}z_vmRqnko9_48 z=<<~naAxM;`Pnu_5OIQ9xCCiW=!oFtAlAq9nKIwFIlndFu)4cm{c4HFlp_#6 zKz~|I9g8AlzjxDZd4og|@MFjT8oJRuhs)a=o!(VpL}xXd)QqnGJL_S|4t|LY5eA5@f#bRu_OLP_j9zWES^X)Dmo_C3RgG5 zH7#w&BBj1dbkecEAYv3z#;vLFs*G7#?@v7nvb%1XKePElcj`l5WIPBDC9(Ew=7wH( zm+`L9=+jL2i<0oNUmyzC@a~UPuicTATu^4bN8&`oe6~tr5(Osx9kzN4G{r?E`9SII z!;mDZr)ULPVp~qC3eqw5SqO@Tanx!kZx($Hm8G$^=)#MJ!hgj$#jI^Dk~IA}wVzqs z0L(5Pxgk+@zsm2{=dhEDi#bkTN~*s*e-L};gSDss)0N2LUo

w36BWf{FYlVQ^;; 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 ao%z7%r0\\\\ +0&\text{otherwise} +\end{cases} +$$ + +```python +def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 2 # + #################### + #若x大于0, grad_x的结果就是传入的grad_y。否则结果为0 + x = self.memory['x'] + grad_x = np.where(x > 0, grad_y, np.zeros_like(grad_y)) + + return grad_x +``` + +#### Log + +$$ +Y=\ln(X+\epsilon) +$$ +求导: +$$ +\frac{\partial Y}{\partial X} = \frac1{X+\epsilon} +$$ + +```python +def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 3 # + #################### + grad_x = np.multiply(1./(self.memory['x'] + self.epsilon), grad_y) + return grad_x +``` + + + +#### Softmax + +![sm](README.assets/sm.png) + +![softmax](README.assets/softmax.png) + +```python +def forward(self, x): + """ + x: shape(N, c) + """ + + #################### + # code 4 # + #################### + out = [] + for i in range(x.shape[0]): + t = x[i] + t = t - max(t) + t = np.exp(t) + out.append(t/sum(t)) + out = np.array(out) + self.memory['out'] = out + return out + +def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 5 # + #################### + out = self.memory['out'] + j = np.array([np.diag(i) - np.outer(i, i) for i in out]) + + grad_y = grad_y[:, np.newaxis, :] + grad_x = np.matmul(grad_y, j).squeeze(axis=1) + + return grad_x + +``` + + + +## Experiments + +- mini_batch + +```python +def mini_batch(dataset, batch_size=32): + x_train = np.array([np.array(d[0]) for d in dataset]) + y_train = np.array([d[1] for d in dataset]) + # 打乱数据集 + size = x_train.shape[0] + idx = np.arange(size) + np.random.shuffle(idx) + # 防止batch_size不整除 + num = int(np.ceil(size / batch_size)) * batch_size + batches = [(x_train[idx[i:i + batch_size]], y_train[idx[i:i + batch_size]]) for i in range(0, num, batch_size)] + return batches +``` + + + +### Before implementing mini_batch with numpy + +#### Experiment 1 + +- epoch num: 3 +- learning rate: 0.1 +- batch size = 128 + +[0] Accuracy: 0.9465 +[1] Accuracy: 0.9606 +[2] Accuracy: 0.9674 + +![torch_batch](README.assets/torch_batch.png) + +### After + +#### Experiment 2 + +- epoch num: 3 +- learning rate: 0.1 +- batch size = 128 + +[0] Accuracy: 0.9492 +[1] Accuracy: 0.9642 +[2] Accuracy: 0.9708 + +![ex2](README.assets/ex2.png) + +#### Experiment 3 + +- epoch num: 3 +- learning rate: 0.1 +- batch size = 32 + +[0] Accuracy: 0.9646 +[1] Accuracy: 0.9738 +[2] Accuracy: 0.9754 + +![ex3](README.assets/ex3.png) + diff --git a/assignment-2/submission/17307130285/numpy_fnn.py b/assignment-2/submission/17307130285/numpy_fnn.py new file mode 100644 index 0000000..a394d6c --- /dev/null +++ b/assignment-2/submission/17307130285/numpy_fnn.py @@ -0,0 +1,198 @@ +import numpy as np + + +class NumpyOp: + + def __init__(self): + self.memory = {} + self.epsilon = 1e-12 + + +class Matmul(NumpyOp): + + def forward(self, x, W): + """ + x: shape(N, d) + w: shape(d, d') + """ + self.memory['x'] = x + self.memory['W'] = W + h = np.matmul(x, W) + return h + + def backward(self, grad_y): + """ + grad_y: shape(N, d') + """ + + #################### + # code 1 # + #################### + grad_W = np.matmul(self.memory['x'].T, grad_y) + grad_x = np.matmul(grad_y, self.memory['W'].T) + + return grad_x, grad_W + + +class Relu(NumpyOp): + + def forward(self, x): + self.memory['x'] = x + return np.where(x > 0, x, np.zeros_like(x)) + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 2 # + #################### + #若x大于0, grad_x的结果就是传入的grad_y。否则结果为0 + x = self.memory['x'] + grad_x = np.where(x > 0, grad_y, np.zeros_like(grad_y)) + + return grad_x + + +class Log(NumpyOp): + + def forward(self, x): + """ + x: shape(N, c) + """ + + out = np.log(x + self.epsilon) + self.memory['x'] = x + + return out + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 3 # + #################### + grad_x = np.multiply(1./(self.memory['x'] + self.epsilon), grad_y) + return grad_x + + +class Softmax(NumpyOp): + """ + softmax over last dimension + """ + + def forward(self, x): + """ + x: shape(N, c) + """ + + #################### + # code 4 # + #################### + out = [] + for i in range(x.shape[0]): + t = x[i] + t = t - max(t) + t = np.exp(t) + out.append(t/sum(t)) + out = np.array(out) + self.memory['out'] = out + return out + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + + #################### + # code 5 # + #################### + out = self.memory['out'] + j = np.array([np.diag(i) - np.outer(i, i) for i in out]) + + grad_y = grad_y[:, np.newaxis, :] + grad_x = np.matmul(grad_y, j).squeeze(axis=1) + + return grad_x + + +class NumpyLoss: + + def __init__(self): + self.target = None + + def get_loss(self, pred, target): + self.target = target + return (-pred * target).sum(axis=1).mean() + + def backward(self): + return -self.target / self.target.shape[0] + + +class NumpyModel: + def __init__(self): + self.W1 = np.random.normal(size=(28 * 28, 256)) + self.W2 = np.random.normal(size=(256, 64)) + self.W3 = np.random.normal(size=(64, 10)) + + # 以下算子会在 forward 和 backward 中使用 + self.matmul_1 = Matmul() + self.relu_1 = Relu() + self.matmul_2 = Matmul() + self.relu_2 = Relu() + self.matmul_3 = Matmul() + self.softmax = Softmax() + self.log = Log() + + # 以下变量需要在 backward 中更新。 softmax_grad, log_grad 等为算子反向传播的梯度( loss 关于算子输入的偏导) + self.x1_grad, self.W1_grad = None, None + self.relu_1_grad = None + self.x2_grad, self.W2_grad = None, None + self.relu_2_grad = None + self.x3_grad, self.W3_grad = None, None + self.softmax_grad = None + self.log_grad = None + + def forward(self, x): + x = x.reshape(-1, 28 * 28) + + #################### + # code 6 # + #################### + x = x.reshape(-1, 28 * 28) + x = self.relu_1.forward(self.matmul_1.forward(x, self.W1)) + x = self.relu_2.forward(self.matmul_2.forward(x, self.W2)) + x = self.matmul_3.forward(x, self.W3) + x = self.log.forward(self.softmax.forward(x)) + + + return x + + def backward(self, y): + + #################### + # code 7 # + #################### + self.log_grad = self.log.backward(y) + grad_y = self.log_grad + self.softmax_grad = self.softmax.backward(grad_y) + grad_y = self.softmax_grad + self.x3_grad, self.W3_grad = self.matmul_3.backward(grad_y) + grad_y = self.x3_grad + self.relu_2_grad =self.relu_2.backward(grad_y) + grad_y = self.relu_2_grad + self.x2_grad, self.W2_grad =self.matmul_2.backward(grad_y) + grad_y = self.x2_grad + self.relu_1_grad = self.relu_1.backward(grad_y) + grad_y = self.relu_1_grad + self.x1_grad, self.W1_grad = self.matmul_1.backward(grad_y) + + pass + + def optimize(self, learning_rate): + self.W1 -= learning_rate * self.W1_grad + self.W2 -= learning_rate * self.W2_grad + self.W3 -= learning_rate * self.W3_grad diff --git a/assignment-2/submission/17307130285/numpy_mnist.py b/assignment-2/submission/17307130285/numpy_mnist.py new file mode 100644 index 0000000..10ad4b6 --- /dev/null +++ b/assignment-2/submission/17307130285/numpy_mnist.py @@ -0,0 +1,51 @@ +import numpy as np +from numpy_fnn import NumpyModel, NumpyLoss +from utils import download_mnist, batch, get_torch_initialization, plot_curve, one_hot + +def mini_batch(dataset, batch_size=32): + x_train = np.array([np.array(d[0]) for d in dataset]) + y_train = np.array([d[1] for d in dataset]) + # 打乱数据集 + size = x_train.shape[0] + idx = np.arange(size) + np.random.shuffle(idx) + # 防止batch_size不整除 + num = int(np.ceil(size / batch_size)) * batch_size + batches = [(x_train[idx[i:i + batch_size]], y_train[idx[i:i + batch_size]]) for i in range(0, num, batch_size)] + return batches + + + +def numpy_run(): + train_dataset, test_dataset = download_mnist() + + model = NumpyModel() + numpy_loss = NumpyLoss() + model.W1, model.W2, model.W3 = get_torch_initialization() + + train_loss = [] + + epoch_number = 3 + learning_rate = 0.1 + + for epoch in range(epoch_number): + for x, y in mini_batch(train_dataset): + y = one_hot(y) + + y_pred = model.forward(x) + loss = numpy_loss.get_loss(y_pred, y) + + model.backward(numpy_loss.backward()) + model.optimize(learning_rate) + + train_loss.append(loss.item()) + + x, y = batch(test_dataset)[0] + accuracy = np.mean((model.forward(x).argmax(axis=1) == y)) + print('[{}] Accuracy: {:.4f}'.format(epoch, accuracy)) + + plot_curve(train_loss) + + +if __name__ == "__main__": + numpy_run() -- Gitee