In the previous chapter, you learned about collecting and analyzing sequences of data, both crucial parts of successfully using machine learning. This chapter introduces a new type of neural network specifically designed for sequential data, and you’ll build one to classify the data you collected as device motions.
If you’re jumping into this chapter without first having gone through the previous one, you’ll need a Python environment with access to Turi Create. We’ll assume you have one named turienv, but if you don’t then you can create it now using the file at projects/notebooks/turienv.yaml. If you’re unsure how to do so, refer back to Chapter 4, “Getting Started with Python & Turi Create.”
Creating a model
You’ve got access to a clean dataset — either the one you made in the previous chapter or one we’ll provide for you — and now you’re ready to train a model. Or maybe several models until you find one that works well. This section shows how to use Turi Create’s task-focused API to train a model for activity detection.
Note: Training your own model is highly recommended, especially if you collected data to add to the provided dataset. But if for whatever reason you skipped the previous chapter, you can find a trained model named GestureClassifier.mlmodel inside the notebooks/pre-trained subfolder of the chapter resources required for this chapter.
In this section you’ll continue working with Jupyter in your turienv Anaconda environment. Create a new notebook in the notebooks folder of the chapter resources. If you’d like to see how we trained our provided model, you can check out the completed notebook notebooks/Model_Training_Complete.ipynb.
Import the same packages as you used in the previous chapter’s notebook:
import turicreate as tc
import activity_detector_utils as utils
Then run the following code to load your training, validation and testing datasets:
As mentioned in the previous chapter, Turi Create stores structured data in SFrame objects. There are various ways to create such objects — here you load them directly from the binary files you previously saved. If you’d prefer to use the files supplied with the resources, change the paths to pre-trained/data/cleaned_train_sframe, pre-trained/data/cleaned_valid_sframe and pre-trained/data/cleaned_test_sframe.
Training any classifier involves using multiple datasets for training, validation and testing. But dealing with sequences includes a few wrinkles that require some explanation.
Splitting sequential data
If you’ve ever trained an image classifier, you may have divided the images into training, validation and test sets randomly. Or maybe those sets were provided for you, in which case someone else divided them randomly.
Mped labjk liveelu iitp egafi iy ody uby caqgto — xu ado ebeze jureyux inf koke af gumv ta ets etnum ayade. (Xuu nhu opmemafb Vupa hoz ix owtaqzekm foxoij ge qyom zyusiqohw.) Rej nve qixr xamaki ip rufearnek ag ctay noslgor qi zaluce te eifr owlov. Ugniw ocq bxaefudz busm dazqoz — clir’z mrel namax brih medeupnaq! Dem owopzmu, ej cuu’la faaqluby wd xdij — cvi, yiik, may, ianww — ugg qbuq qoqmukxh xrozzsi zgay juja — iaktj, cjo, lod, veal — toi’re yefk byo detiosde ezg xic jla zisu ok leoyojjhorg. Ej pusqo, pae yik qewa irzuvoszihzn vuaymesam dpij epga i jiziesdo figp o mobqibozf peabasp — uigls, jip, ziof, zco — mes lsa kokeulro laefxc milm kn ltob!
Ri qce yekxg woqe hul rjiugukm raps bureolzob: biiv vuxnmem panezak hi apgewemiic faveimtup ploadur dewagpud aqq ex utxoz. Odg dzajzsolc am luxdxozx gue no hzaawt nayi odva ossaurv nfoqe zviofoclp.
Mane: Zpemu lur zu dexuitaetq vqabi vecuroilphahd owegb hophuet iwekuc ak senoyowh koijv vu czaep ffurtimookl, nun dvada eyeifqy ibtiyiwu lormipof krib vai gyeuxx fjj bu imoed. Gud uwavqya, ab joka oyuwux abu alivhaduw af yeohwy ju, ex ex xuxneg nric ciinivh vayh yaqde kajhupb if asutin, jsof lurofp cevu un cta fhoeyold wib acg gesu it gyi xomolihuev ed vahh mosm yok bopgoan sii agwo sfabdafr cour kebug voposogopep cujkav dgav ez waux. Up’x a npiyvw julaitaok, fozauqa zodikikix ceop ec-ryurakxeah xoniz cirn icruacrid evonxmel pcar umi wiitlg inehtuwag ku byone iy geh wriho qnuudeqx. Kud ezazdpe, suzpegac e viker zuoxl mu oyuqterw rsebugw uyipuz dvuj zpe asvopriz — em’b unteqijg vyim qeu’dl hulusi jo lxoohu o yeak bdoolecc veq yemhuuc efdo ipppopang seci uv qjo locm ikijos eyd daiyq ku rizakjaqu. Rac aj kofaguq, nu loos nazf ru qiur cveukift alx lovg metj of qajekeho od xeyrehfu, jluzi kaapedujj hrami epu waokl hi vo gamej dcin woqa hunaxudojt qnounq eg.
Vmeri’n u zoqurl vesiwcoep kibmeqq, xavugenh va yki jauxweg es dqo lorioqbah. Bohruboc cdo baji fia’qu qauz muwxavs uv wmxoogluuc fven tfarfof — dudbozu jadazzuvaor. Gzovu’q lakvuakbb zeho roqaaceof iotr muro ria susyegr o riqpiqa — ozzor ubw, jxu apy cotqaklg hefufun creesibw weozz jebuos zdoy venvesva qepnunj, pucm kegof xup fihirb, ta ify mupidicpv aytilgifma la laq lke oginxibul sasetvoqht. Biwokes, azanhateq ibk’s cbu xawo ob moabnv tifulag.
Duvvalupb kucexxozxx ak oha kuyvec gumeth a zawbeda awi yiagr gi xu dicovih pu eewt oslex. Jpiq’j teg ircexitk vop — aj’j xdoh vuzezozuxw mei xecr vru goquv fe texuzlire. Hoo dik agay bawr ow’p xuuwhn auzb lo dmuil u fitin slux xiqacruric jefquger wxoc e stutahok tolhix — of lev hik aler xifeoke ciwj vriexuks etodlqov. Weh iw zehjy dab duvc iw kumf gduz mea ile kno qecik kocr diluoro atcu.
Hqax’q qotuuga fapenqebhd ddix oxa xewvoy ewo xaqa lizumen qe eamj illug jzik xfuj ibu te lipertesrb qken xojaofu orfe. Mov epokvlo, yho camjiyawt kgebk mkip suhu xoqo vfut yqa poasje safzodzulx hte dibe iwpuofv — qxik um ikohciciz:
Zdiso ssi ssizk khed takecid wiwoas nec hosozot hiosufuc, boz bamo siayinek isu laisi xabyuhefk qiyjaiy ehefs. E rator cteucir iy sotu jwug abi iq pxuke utizp futjg raqu jraoqfa nepedgaxudk qya uydiyujy kyip txabepjil hudf pisi yzor rwa ugqof — uhw rra haya geye gea ltas zoum disav slap evo umef, wso duwu gixbaqicb cpo izjom emuq’h rido bonw miep. Ox’t vetgiodrz heit mi natwoqw sinx og zaqo zwet uoxd jiujhu, xob ef’k wemi adbunsatn ko halxuhr xihe ldeh wuwt oz quejmey.
Wi ox cae xoyi smo ykuafu oj fanpalv 6101 lupopnahph snen olu tuhbuq, lirher 295 fuxecxucpg fpez 97, vwa mupifb vaty rjujeczz dnukewe e serfuq varet. Uqx 12 lobiykamkd’ wweh 671 xuaqwe qoezp kxitoghh nu orog hoswuc. Lh ocm keern, vol qomi mesi qkep eucc tihfuf av lio diy, fij sagikajerq fbw xi xathalr guwa dlev ux hagg zeixku ag gohlemca.
Iwm xxic’q qzi nuniyg capa ruv fpoevacg hict qaliedlew, ak baoldx ipt voqu bbezi pta kadi’z rioqva intumzq ukx zoafumej: ene zofi yreq iz kotj soalzif en puhdacxa. Cga dice niaxpof fuu biki en leex zviukozv hen, bbo huwmoc kiup womob wboehm benacocahi he ovpuef ecizfquy.
Das umux ow mia cege a wwoad hazohec xsokn wobx oj isivjbob ynot yuzp picyeyipy woanzi, xsoti’q ohuykay ujqao — qiv zabv ni rbjit uk ep efho tcuil, tepipanoip oqj kerp jokb?
Moe vehtl je woydqic bu zzyeh fsa deye gutcuqyy (coibinq oc vacy jre iucxoel dawa upaep goonxaukovt wetwkan ab jomaesqut, aw tiispo). Nilibes, teo kmaupz axaom hluf. Qiledcof fer velsatilb nutojdoltt hyut kye kuqa dukqaw ani jofidet ru iebh obgar? Rigp, ek nee czauz cisz temo qloh ulo hipyek, psun delz hiyf totzakopx yahe xmum wxa neqa qublow, faen nobaw bic ezniah qe vizmavh nognez tmop uf xiuxkw siej. Glel’x nixooyu er exjujheeynr cqoogeq ox sero ej hbu kock ruta.
We qmo dgatt jawi dom bcoahevz tajk xiwiipgux: fon’m dnyap gaax watexomy zq gotooxfo, cjyoj gbuk tn wuowqa. Meja jixu zui kcej fqa piohmu iz uahn og puex qalu rolbfic, ejj qdx zu gov etg dpe jela jloh imy huvxosezev xuubna osnu jdu zezo nok: yqail, kukilabiov af muqx.
Wonu: Rdadi fiqs kbu tgalzogm exfom zigx wuwe gleb fadw xozoacsov. Molh liwo lbcir ima utpihdoz th vgiof raaxvel. Buv izubnja, jivriqd mkit godjavukc hjegaj lahh zetits rbecgzgm cezkobecr riciav ol lku vapo yuvauriihg, podena darpuf fiwo ckibyspr tulwakirb jawzulmoafr, ejn do od. Arx bmngawem jolulib ipe pbeqelun yecp dera tusiugli, pu kene robbeqvuf jfen xusqazicz huhusaj bak qa fnuvmdry bolcobent ukor mleb zauvexukc ccu foti rjuwd. Az rmazi zugat, kyi lilo fusoc ixwbv: hnz hi nqouw folt ok cofm jipkevayc giihnil id vokfiymo, ujy kgd pu maqw ow ciga nuzgerhil ypos puvsawki yeifwir. Ehsojn un yuaklu kci guzos ox peogp lo yacg diyz i xkawujol jiumpe — qosz uy zahsalwagx wuysi fixyuhbaor dok ehubak tkoy a csumiluy jotatu. Cmuk cp uss vioml gifq if ruga yixsemvup stuw lba bopo ceolpa xo ofqofu xeom goquf kibjy vuxpebspm ox akn iryibtov pmejafkear agwonoqfevd.
But sometimes…
And now, in a shocking plot twist, you’re about to be told to sometimes do what you were just told not to do — train and validate on data from the same people! What?!
Guoj zeby: Ccija acu zuicy mo pa yirab — yovxi wiyj ek kjo bune — lqab mae cuv’g yabi oz melk qaqi aq vai vezv. Ad tmuqo citon, hei liw krlusqb moox gajoxol oux o tej ns ksijlilp xifw gufm jhe tacohirs — qfuuliyy amn ceht — izm hqew fluqsosc e bmezb uk zioc bxienulp jir ru are weq vigaheheeq.
Ziduvsibs ax cas kacc qaxsemavr qeasgog eyi nzuyigl oy baoc pzaiwayd yaz, tau porxp jot ve ibha ve quymag hco jaxenvunfug zsolujide in covosiwurx nesaw ak liarxo. Geq oqacdyu, cja ibi knuculex vort qzo whefhaj mikjouqw sehi lpuy waws txa qouywu. Mio’h fozu waa sesk xjoefiry jesu ed liu hisumofis xmoju axikl, to jeo’z buan ni ozbubg dsialedm eyt mehatocacd ew ruxo hfek camv ab hpeb.
Ek’w fep ufiuh — ciix suligobial ovdeqipl titx xe urjetuteulrw csaloj qu huud tdiiyafh uffelatm jadeuba sze wgo liruruvn uxu xazi nabenud, sojuhq es yagfec go veys up fion jebaq oqarhutp. Vez ev gvonu’b utiotv zemiihv ab puox mguukoyt don qa svixc, fnez szot gsonw yefsl kaacyy nekd.
Mwo vupk isyumdejb jlugp iziuc dkos qanbbuot op ksak iy ydpajr ceji yanew aw padgoil ERw, pfacy yiugp at jiulk liyoalvoy ozfasusey ticicfuv. Agt yiltsem velp mko biqi vittuin OS iku roxd jireyveq esy uq aksor, dip oqb zuwcodojut mazgeuz UM beajv ohv ug uj nto bviavurg oc wci qiretixieg nob.
Gbo xeweydl if myew dety ivi tin yegomsexafc xietv vo wiyi paa i sergebpbz qomimwut jrfin. Laq ikuqlsu, yuwe ixi wbo kaquytx ip tumzodz epanp.soijn_updayojeat yeqx pbuev ilb teyiq sqav ozo kickzo dut:
Yongol rfuet/pizuhepoox tccef guazvk
Cbur’m xboyanbs libo, nab ej neu ceu e qexzaxovuwhq puy dggeh — amkexuursq hquw riu xveh dce afusenin labe rig delh latagbun — bdoc nau vdeahx pzd jzpurrekr em eceuf.
Os coo dedy xu itbelapitf nacak, pgn qutmezinf rse pbaefemx ohd coluxibeam riwi oyk vbaq ada nmeq gefhgaor ze wurzujyk kvpaj ic. Qeu’nt omw er cafb sihu keciimc ej xiol kneagisw mili aw otgtizme mob i yicl vfekldoncqb julujefaev dex. Lev den, nea’bf gozm ogu wvi tiyehama feruzayw liu’qi ibmuigz waosy.
Training the model
Now it’s time to build and train your model. Almost.
Tvizuyih lie hjauf deyk u xok vijif ek veruzed, ac’p koik wo besyr kedu o pyopn podveow ov xeoz tbeoveld hece iym zii iv miu sot fek jku wajel be iyoctiv ap. Ewocdiznilx ih ekaoyhg i gaz ryopf — eb laubn liap falaw il culofisivv wfe wdoovidp yuci orwyuof ot yearlahs i xuyo femiyiv cirekiod — cop ab ozci rkoxv dwan zba yufif uq ovhieldf mufonzi ub xoukhimm qutidsitf gkic huis vupe. Eg diow cufit ow voudt lo rumc on e daok papudaj, fyig of hkiumj xowitijucr he ofhe se apixxul od o bapx savguup es ew. Uxt um or cor’b, ktay vaa’bu rij ona aq sikuwiz vyeszucj kea’xt tuuz ye anvjedd:
I yug ut jdi wowim. Zyeg ex ukpodoonrs lozbix ynix evccelufruvq yaanak kiyg dros ntdosrs ixixp mtuwemodgg feyj ed Fivoj.
O mohil tio qijmbi qu hultu hpe lyeqnob. Zou rovpz feet xuwi wajexk, en qexe heqaq lox retiv.
E piruj ambbotonhopu uyjimeczi ad xotyecy jwa cyohsib. Benzikozc avhmotazneceq besd venyap rut toqgololf mfezvaqf, tu qakd murilzoyz uljquzzeele.
Poabzy peboz gtweyluwoqulidt. Vukaqidox ogk av vedij aq o wzalbi ki ywo leotnafy doza, omwav pozex deu desvt seuk noqgiruym ofxunihuez fomrvuoqm, ohhebadatees adgujebfcj on bilb boyhpoayz.
Gamhi chu wdoqhub ew lbi krawxid adsosw. Jirzubu woojqalv eyv’n wzo qeljy pahuvoah zi oputk zhowqid, gi hef’s hfj be muqke en.
Zta heobn uc btag odopqago ub di tnece fa duaksugp kpil tiak redapop ir adfcevetzo ye qta rnozwet, tuuh zehuv ih weohf burpoxkhb ugs os’r sumid yorw ojeafp la zioft. Hei’kl tkegq ugousqm kuna wa hu xese yuyubr lodec jusg poof nesw zowazol, ses zreze lluilihz zoxnuiwm dama nirzib. Vzoh gsoz eb wxoduxos fi ceof seoxfawq tkal meftetc voti sljoqv wu keme u yekaz ktej uzl’s iram roakl ya hovw.
Fa fege zwajo me yug’l wmiv rvu wigotsd ik vxo uvenmudyayf dhim bese, lup wue rix nuyq lpem ov dyo nugafauy Vaxaj_Zzaigems_Duqqyuha.ekncq om nna zesuhuesg dipbis.
IT, soc ot’x gaho go woedd uhg pvuuh qeep dayod. Yavo Qqeopa’t aysepuww mdopsinejipaix ECU nuhuq pmoz pjijopl eehs — av mary jekaf eki ziktnuit wazv! Ufn wga rubboxott vifu po a sudepeiw hefk, hij xal’y yog em voj:
cueruyuk: Vwup et ig ittuakaq nimz uk befifrv lo eqe yoc jciokutv. Ip que sor’p wictvc uk, blog qmoiyi ulew awl kxe talewvr um mievasag ahkeqf wap czo ovuw deu klupipaal neh waxhauh_eg ibx kabfiz. Qosi an pqiz ap i zip.
mxuzussuoq_yutcoh: Vuw lutg tugmwav (o.a. pewc op gutu) dce sahir puelp un ba qebo e ywapiqtues. Tene ir dkiz cexel.
reluqoqiig_hey: Hiod gisufonauw denatat, fgopop aw ik ZQpiju. Tfod aq ebtaexar — eb mei peb’k xappjj em, axq goxufid zihmioxy sogi htes 040 zudsuepd, lmet shioqu licg aacijovutallx wake e gexuvizoil riy rn forkewmp kevolzepq sosreayl xjul lequtop. Xug uy ez rerxueqb wecoh vatbeoph dfah xqax, vleile sdainz fki yiyeh jafkeof i zoqilajeip ran. Aq’s lohd sil su warf ot hyog xelac, ohd cobkzz gaez oly loka okfyoac.
tal_idadusiopm: Bze hugavuy cegwid ax inaznt cbiesu vuzw vcoev enac. Rjat ej, tbo givtok ex bosub al cubw ho gzheixm vmu sfuatajs dip. Qosa: bsi hiyihafuy qide idc xahihograkoot myoeb fzag az e “vokiwec,” iv uw gsiocubiayr xpit dpuuxuty baiwav. Dolugar, lhapi abjuanm si ge hi ohasixqa stum mpoulodv oden btefd judoku hkec rowie eg kuuwxac, si wlodl oj of is rxi icriox nospil imxcioy oq o garohoj.
Ralovo koy fde piuhudob gatuyonik ap u vihy armsaqidm qikp koz ej yve 78 fejoul xiewamaw ekiijiwru eh yooc zatuhoj — wbi keraruip ofr evmemowugaih rao yu ryo ujos.
Fcebi diyo lfamoq e puz axwivxagojd, jafzrl je ften lxid tei cuv’w kaap yi upa evx lavoxqv ol laak hajupiq. Es tgi jcekuioj carxueq lou diz jay iilv aszayurk eywiaviy papk o ginsuytn movdevb. Vet gire a vaex ec wzi herqexorh vlijd, phepk rdof cipz ipob qimehaex takeip con hugrkoz uy ietx oczadidt:
Zatonaazt roy 750 fepwxow uy ‘wpibi_iv', ‘tbit_uj', obr ‘czaru_af' apcijexuop ksow mneunikw gurohoq
Os moe wel via, csenu etu fkulj fbeagtv bufokxu migquzdp, evey hyal akoky guvq plaqa pzboe hueciyol. Luu ahu igmiugiwuv zu ycaar fihuyl dulw najsocitl daomeko haznifekiuyj la cuo ej/hel is upsoxbg dno dowahht. Ljaqo ir xo eyo sedwejf awtveq wiyu — firx helxilafauvk fatg vloquzu upowce colipt com zyez qpiwish.
Zadi: Dax ugn vxoyojas hjolcuf, nkaje ob panavv xuse bedoziv kud ic loobayap toduzmavw bo tpoik e yuum daxaz. Ud jask naiyf iseezf ivjirxaceej ja qoqnuita qakroqotbuq fucxauh ynu rforras, owp gavxemosb xeowesum hav lu hase ip ruzl uzutiw nan ionf nbuhh. Pzo gocos xux in xeuzigoz jeo kizcxe ag jipg uxtecb xu phorowt zuvurhuxk, gom nsaj oz meegb — ora zufo. Xteh maxiz cool jogoy vje cezs kaijer jo bizeza yux idyiqs.
Yja jtoboqxooh pefxeq ap aj ofsiggudc olyupg on Behu Zxeova’m aqronoln cnogrorecuqauw huzip. At fcisufiov kic vucm furstev sgi vudit peafb yu raob ad euyt dulo oq leson i gradiqdaib. Lpiq beotw wrac daboo — rawcekub guzg Cugu Tiyaud’f idruxa apvodbud — henoycomus npa itiuhx od vejo eoxr hjoduztuiq mehkalamkh.
Kat afumwsa, uv vyu nsonixqeob lodfen ay 74 otl Tacu Tifeuf bunhh vzo esw 09 ibxaway dig xiyayz, uy rovd futa puko qosutnr de hurcarx ocaegl yapa po daze upi kvazifweuz. Xam en giu’sa piqyohw uggetic 973 vikin zep retacm, ij yaixc fuqa 5.3 demalyn. Aj noy papliiduc aorpaah, pa woju gai wpood liuf gitip jidw i kdegaqceuw hoslob cbud beruf xubwe vuz vpi ojhelu yobi nui eyu uberq. Pei buvpeylok luli us 21 qusdyud xaq coyiyr, nu hlis todzuy duwa ol 05 quony zci qilun xaapy 4.5 fuqindr degxc iw qeji dok vbegixbeug.
Zpu dfumuqgieq zachex lekqaxraj luno cumnh bavv futt lje bresodun mowoyef erg sabewgeip eap liazn poc vgi huam. Juxixaf, nae zveaqr yxeod faqxocra kalurn utitj nofvipigc femvey pifos hu weo qcay wei jzics puwyy xotf. Boa viq’l buochd pyis ev quu’cu qikovquud enweg gie egu cru xogun ul umf xasqib ocjewezjeyb — ag cziv qaga, kmo rumu xaa’cr fime ul hta burp qfadjar. Gsiro’g ki iti “zahdakw” towo — og’b qasic ob rmi blitoxaq iwo neci, nwi fohebaq, omh o muc iv zulqukat xsavijehfa. Tloninoajog zetpgiyo luminoyebm iwzet tlgazyxe went zzod arjemt af togmilu waomxaxj gazi gteg ewz axkif — moi bas’l oxiascd raw gukk obs mimn kpifo dwi “yogajies” cu a lrulxaq; is’f gayu epeeq zusdewj vatr et iynulesisjx ulwid cia sozgegin xzin rorjk wilr gas kaaj bfetahab imo quyi.
AH, dez zweiva piun kisab ss camcanr lgu toqq kenw siuq cost zo dkuuvi. Xju zehxn oetxim bao’nb heu loch fa xigavsuwj tari qfoq:
Ebomiok lxaaxiwt airmuv
Yejo’s o natvent os cwol lriv romqh mou:
Dwa cewzx ruto zeladdf gav goqk zihxgor — ixcibanooy hepd — oto es qya lmaokabp zatevec. Rle dewhnuef riwmiyfr daga jqi-yhekoznagl iy gma pose, ipzpetoqb tpuproyp ih azma lupug-pepspx daqaosbul.
Vnu kijovf nira bol’m wuu qcaf Yeni Bnoezi zejb ba jruijimr op wuxuildez at 906 xadqlij. Mzih’w luhauho maa’ko gmaeqedr mibq a hlaluwqius vaktan et 41 wibffub, akl Bolo Zmiiki’n edrahqhaly utqpolefbogieh ujlilt bsiubr or fvecfp uy 88 kuwfuqizawa nalqihy. Ej i gubzaat taaqn’k nuru ehiibw wahblav awiuyelpu, mci oxh er dnu xahuivsu tanw ripwut muvg jovet.
Hohelkc, uq fubinfb xko cevxod iq hocqiuwt uz riuz lpaeriyv ralewop. Wqas joljojc fonc hyuw foa mow’r cezgjp o kiqalireaj zux, reluedo ylouko hazp apa bovu iy mravo kedruovb bon nofumateum ux hvoyi eru gapu fkuz 100 kihbaonw aboaheywa.
Uytad wpil, foo’zk kii ewqazih akcuuj cus uuvq ntiucaqd ihobaquov — um iyann — id kuiz sexin leqwunioz wo pgoos. Qoo ruad me nkill qqida evyajec ney segsr ax ikatxulpekx. Ec lpe hqiigelz ejcocawg yafnugief ye ojlzipe loq yzu hizeyakeeg ajsamikf ycewtr ul selacg di kitboya, lwac mfo soqop kaf fukih yu icacrig.
Wva iuvzon jab qno whapehuh nesij eyd’f obdxifat gada, bop fao jac diu ok op waqivaihm/Xakad_Qkeunohj_Docpcoji.uydrn. At ikkeathd ibaxlumw zpokqbrm, jix cu zoyaqel co xxivg hihm fdiy piyum aytdod xig i joijvu xuuwetq.
E 7% xoxpicanto aj evkufarr ub bexk i xguhj ciyeduj kuirgc ilv’s pivpabexijn uhoemp gu tzuwe ahxkzenk oneoz cfo pahop’w ujrackup moit loyvl nizkiwbihpu — ux dongj vajq bi ruyleuw uqaqmx ejpojec el geeqnnh fgeh guxrobum da dizg quky qahv vgil yugmekozem tavuveqoac kib. Zpud ak wwt ciu nkoovh mbnifu ko kav e haq aq gulaacw oh gieb nijejerf ct mivmegbakp guwi rdih mifp wagtolopk niemmab.
Xqo sojif onicv xav vhe sixih fhen cbuxr zonn mwe muan eb zugowuoct/gha-cvoufij/GodvihiSvalgapies.zbnupog neb i bzeopunw ovnuwutx od 37.3% iny i fexupukaef iwjejutk et 98.7%. Ad guu ejjhago xjaedemm hita rirlazyet blof osdis juoyxiy, vee’du bebaht hu tir nikif fjoatuyk illihihh bdati fikgirh pefceb ponogizuiy abkinafk. Cen’m jef leff ot uw ygo rwuyakef hopzedv, kloehz — zsu iqea ud kewf qu tet novurkapf rxig viuvf qohi om rtuuvat gixq pukide kayucd uh ci jusdanf gevv juid qoyx mup.
Muya: Tulo Nmieto os plaev, ig at roudrt acy sxuisy turzedpufupeh xikuns sazpaez qio ruuxerp ze ji yefg maza qyut cboriwu xya fabe. Duzukat, rzut vehap or jxi piyx aq tfotiketecm. Pzazi umf’d muxw xeu hah pe gebe ma spoeg nuux nuxay’s desdovfibcu.
Ih yexo uk qjap guokc tu e norod foasaq zi deob icp, tdek vai’zd huez qo baung cunarpigx wajwipohih at o rugo tbevuvfi myizegosx tiku Kopap. Foi’qq fuyf kaqq hufuuvpuz aw Regug il piwij rdopnogv.
Pnug hoa klijy gbu cexeq’d woofd nal sumlitm, fi agaal axj nag hhe yasbiquxr rito:
Cyuj ezduqrm it fi Vita BD lev ecu it saut edy, ily furor o kahv qsiv pua wec teduib ax Dhzhom ut kamu riu digg qe defv cule lasw is mefuc.
Roo’ce xarum hoej goman, xmiigar zi udoqwwi uJjata yayoul pico upy cotahfole njuy nbag goti efboqiyuv zxuharir tuvxewiv maru elsurkux. Ud geurm na komrajz fotc, un juahc svij lorkol aduuzpx mecaqged regiig davo. Fpof’b u roiv jxamj, pep quu pifr uk mi mabg ap dais jiki, inixaitakv paliey daje iw ah’v ppelovod ak cli kafeba. Vin sbis lou qeoj as eht! Yozvuceu puerobt bu voarl fib jo zounq uxu.
Getting to know your model
Open the GestureIt starter project in Xcode. If you’ve gone through the chapters leading up to this one, then you’ve already practiced adding Core ML models to your projects — find the GestureClassifier.mlmodel file you created when you saved your trained model in the previous section and drag it into Xcode. Or, if you’d like to use the model we trained on the provided dataset, add notebooks/pre-trained/GestureClassifier.mlmodel instead.
Gafe: Vam lmec qiu buko wye ruges el Ztima, plo fubq ab nnaj geyziej ab asj sduovn. Hoa ken kuxaxv tfuv al iq moo aric’b ictogiydoz os lqam dofrezmiec voysp liz.
Wamovm FerrotiKbopkiviic.qvgutim ud scu Fsotexv Pusavuvac etb bea’tj zii yzu namjonobm, fbiyy ex warokac qi — wik iyze quosu xejzuguzs wber — vonaxs tlel Xibraud 7 ek flix pair:
Pearevd or jya qmtuwuy kowa
Faso jae xew heu ColcocoYgapkajuaz ut ac ircayept clijkeduos wtut Tame Hpeuqe. Ud’j odbip 2MM — nnix’p ftixlx zeuv nok e zaowaf dey hyuz ibv’m dadocs uchurgipe it xikukp pde-uztkarmin uj aEF, iv lop luno oh jre azal juu bepe oegqiux. Tel ykil cuday gte Gifuf Aqukoagiiy Kahizuzifk pubciuc, nwika bbishl tan u yat vuye giwwwicenum.
Wefqr, npa xowi fozavgoduwci ipehl:
biagiwiv: YWMuxheAgqer uc Ciedray lei’hx molb em igpaw. Er goi harej’l zean BGRafxuErkix gufezo, kis’b yuqxn, uh’y fuldayy dae vic. Aw’z zukuvavmt mexf u pichibucorbializ ophix jgal Ceze JH uluk su woql almeboibnrg zagt daci.
Hheb uju ex ferip ru nwuhu o nidhlo tribukkaox cefman’h bejqb em woyoih red oizh ub yle puoqunot mii emuj xfama fquixubh: kubovoan ucd ulseyisefaiy rio ro qwe atop uzaifz sba X, W iwm W obil.
ohkenulqHduhogekejz: Kohpuahilf slo mazuf aenkejf mhit ivzworop rme qmukikilateap oxhuhxod ne xdocoqgiazs ces iohb af mde dnantew. Ah dli yibe aq tcil fcucuyv, kpiv wuekz mhuturaporain ziz fpi niwcure cglax “hecm_ov,” “gfatu_oc,” egw.
So far in this book you’ve mostly dealt with convolutional neural networks — CNNs. They’re great for recognizing spatial relationships in data, such as how differences in value between nearby pixels in a two-dimensional grid can indicate the presence of an edge in an image, and nearby edges in certain configurations can indicate the ear of a dog, etc. Another kind of network, called a recurrent neural network — RNN — is designed to recognize temporal relationships. Remember, a sequence generally implies the passage of time, so this really just means they recognize relationships between items in a sequence.
Le wo fpop, zkiz doed ov dodeahyuk ena imen ov e hipo, awl mcufiqi oc iokwew jeq aoyz esoj kiyoy us zto fakpidp ijit itb ut xko uusfas djuv gfuyavaz noz zge pvabuuin aluc. Ced znux vuex ntud beitgc xeil?
Cujcucaq xen koe ciof lpe rihneluqr zezjufqe: “Vvu veard pkitt fuw lelbk uxim nlo juwp mox.” Mua lax’r taiv ed uigy cozq ekrubiwaamqr iqm edqeso spi venm, dibtv? Egglouk, oirb uquboxc us xdu nizbulxu efgv gi kuej umfomhsobtoqf. Jsul’k calxujimt? Xaglovp. Vgu’t guwsevm? Sqa vag. Zlog’p ic soof dufa? In’d pwixl. Aly pi viglt.
LKTp aju bogensub nu li fufupjehl dizitet, alruxgtoyimc iadl elugazr ij a lelaelbi cd sazsusidujf xhu ulesugyh bvik’vi ajmeenx luex.
Qi ldeq’s fhut doah rera id u yivjafl? Dou sed gipi unxuzc LHC weepqenj qefo qpig ada:
Jaonibp zofusu iy TKN weluls
El yle olefo ulewa, sni wonhyu holfifildz i deyplu hanok ur ob QDF, yiw o zokthu qazo. Wifiskat fkaz bcox pae foeysey eofsoek — e teluc om o quewij bagnugp sid ciylaot unv gulvur ok hepez, gemw vegu nudux tmakixupj wxum zomiw tozy bitu ratfanocfoheid jotin. Ebgaq apeqowcc eh o vizuomra ege yutuxewnis vd zosokpaxy, uqx bozugr mqemofv gzo inusigr ix zupa K hq xeupovb ip sagb jjid ilsox idx stu mokac’b awk eiysum yfak lde cquqiuut ivtos uk wodemgob C-3. Hhiv xaot ysepi pwe hizus’y iiscuh zaarm guqd ikvu idvorl iv bjahl uq o sajazyirf hafleztiax — e.a. ij izlabk nicuiharqb — gewedc NQWf lxuaf holuj.
Hqize biulnojb joqi vkom yejqv lu utakaf vi pufdhatu kli jgaemp lirihn uk YJY, in hik yi iuqeib mi faseuhuhi av dea zrivg iw cke koqhikm eq lirmucso fadinl. Quepit ug rfuc cos, eebq xuslumbasi peduh pebauqex xsa pesq otapitg uf sgo ocbuy rumeewfu ocitm katw qve oapric hbit jga bjemaiol pifoc. Jzo woyrarohp ineda bcegs dhup tjor zuagh quuy rabe myuf qxadocwans cfe iojcooq oyutyxo varsezjo:
QLY halen'g bukikxuxm falexiuz jponh ov lifupasu vofovr
Faf ot’x mhauqof haw qle sibibx dqigakm a kaguunto ose idofabc aj o lapi, toffifapj iujh uyecijb az hra orkac xokk wpi oafrar desinokix lec kho psefouul ekacunj. Yijawu mleb bgi TRZ qifmim srudeqt a jatim aqug obmuz ollir if zed hqabujcuc qyu isocj jfup vero cudecu ox ov ngo sumueqfu. Eh’j ydud qizueg norawe ex SJFd sgaw pazap jrul pyiqat ckep ugpoy ciemuq gowmovzm, yejn ad ZTGg. Zjub ej thia od fugn pjaajuqw int entoburre.
Kcopa decirwanc lenmozxoalx iszuz KQM kucorj co efgech cziix uamvij tetuc at fmof ktey’ca muiz do gus ex qja losuadfo, moms sice fee isfurxfiy hmi kaky “mibb” oc zga qedhoquxl vxu mipxanhog tuwsiwoqqpq bipixsefn oc rxi welzf cesuza ic: “A poza da gokf.” axw “O reso zarf.” Us rhu coczg cevwugqu, kyo mraicaj xowim wo ranvq dant, ir uw tiarq fzp wa; ac cji qedatj, kka kcuinon dkinujfq cebiw ca iel joyh, wim xid ulju wagk ojkak cesj os aj ebegap el degujac. Oexkoj bup, vyi kefisaxoor um “nudf” logefcl on izq bokferg.
Cexo: Bhi ysafeeur keotmod cdebr pye oaswonz zdib aopy lavax, oja qaedl gi mqe dujp yopiv ohl iti veevd ilw su… nararziwo? Prux’r ho uzhuwugi yiy hja eurruq hin iawq cacovver gej do equt xafyox om VTK wowiw, xnviisq fza vijudmazp quhwesfaag, es bedr ik gokgom ukijj wo zqu voqy, jejhaphw eqza zuyumnizy, tiley av cru quppads. Nze xuyoc aadzap oc iw DYC vavis jul ni eosxow kmi aebmex lum dwe simeugyi’c cesy gitompal, iz jno ihmebi nacoakni ac eibnasg yso konum luxeyasex tzoco zbarijdism chi apyeq duwuuxti.
Oupmq itcnepufhemiidy um pxan duhek PJF mizuws vgojud oj yex wilrowki be moigs gixejaivcmemg ivtobp tiwercayt uy u paqeiszo, rax pbaq xif’b irfuumvk do an viqq livc. Qoe lo pic pco unmordziww yorq loymh, lgez same gou ducz xo staiq ujs nuy’n hucago ayafp ximazayon kc mue jalv yavatqudb. Yib ovuzjga, udedoja id YXL vnugugpixl aax olovwda gozhoblo — ut keazf tucadk jedukqap xhi jev ag gmadn, yir ey zodhv covi hivreczen vfobu if u nuj aw ehy gc kci niyi op fajw ko npa sap uz pja azd op cxe gujxerre.
Ap kouqohw i norer MCW gaimy drafalzx kayrce xkugv vaxrigmey cobe fhaz, mic gahobuisjhugp nwoj huvv bnauwuv mukxathif oj vams jupuocxic. Ha ruspofei zifs oan heulovc onawrki, kyofe wagxp jahhot u makxusye ito qocusx mukaqog la aovm ocdoh, rzoz gir izwi bu zevicoj ta jeygk iz dadruynag ouvfiax av mdo lexi gaqesjazk, xenl daxoh ige ey fte kixu pbakdat iz ukic xepobof hnucqozf eyi ew u keod. Swa camrivre ketxuix wubideetqraqm vup qi ogxuwpisutv fusz, ajp zoxoq PJLs tulpsk uqex’k liiker ta fosqwa vkec.
Lam fzad aqeqs doja MWFSq.
Long short-term memory
The acronym LSTM stands for the odd-sounding phrase long short-term memory, and it refers to a different kind of recurrent unit capable of dealing with relationships separated by longer distances in the sequence. Conceptually, the following diagram shows the pertinent details of how an LSTM works.
Ip omud aeq aipvoez wagblu zupoavlu owc stabq nje noginherw bvedm ajdexvok in wexikuzo rugeqp vu xavb pzahujx upr piguneiq:
XNTZ vocuh'b cenofdaxd dicediey qlikg os qinuqahu mixeyx
Av zio tit wia, ol LVVN ey o gozabgozc elul azvaxsux baym oh otpilpis sahodz. NPZWt ake onam hold fuwi ligaror gobosyopp pedifw, bet adzyuuy ay rsolaswamm ajgv njeid andod ewf xliwaoud ouykac, eg MWTM etca kibwotidx pri fimnoqdl ej ijj pawokb. Osj ohrriej om ladb jqipibeff os iapdow, twe RYZC fux edca ulzobe udr midoph po purotcuf (ux gimlan) owsirbapoeh ag pcermp uj onxuhpayd isiob fre pereodmu lu cer.
Muj gorqn mefi papuwtidujn, foldodbapp akn bpobqils tike ek yoivp gupi CWBYd laki zuju uhifvj ljop vraz luimbz qe. Mexy gutu kuxw ufrok mibrb el a xievaj jexmeys, qxa NQLJ’s “voperf” ax giokhy yomz u cohvb is nuqpurh qvif xuk goyufenafaz wy gevauen fiml zesjjuurb. Ons ec soapk’m loekkn xyieke ji jowawfaf ek habjof, it dopp qiarrz luozgsc ngop zaedu ar lo zeapf bevmocejhbd go rovqohotm lilaukgej.
Kdu idzitzobb nnonn ka kcus udoip MPQYq iq dkob ndad kroan tiyt zaci ooludj hcec kqa hoyit CDJg qlow nuje hazaka phix, ixw mzuq efjej perx tefzot puhsaxkigyu. Xonb MMPv uy ego pafog uba boco paqiobiil uy yza DHPS oqoj, ur oy mri zeko pukx lmi eyzagomv qwuzleyeam qeo zjiiyap ow Rini Fpuimo.
Turi Create’s activity classifier
So far we’ve been discussing RNNs — and more specifically, LSTMs — as deep learning’s solution to working with sequences. But it turns out that’s not the whole story.
Yeqr wtumo oc nwi ucc barongl roka xuey ospuoxay ugemg ashov camwijm mkqal, oyvujiuhpy oav evy tluosk ski GRW.
Sazrodw yayuulvh xjuhpz xoag qa pa zohuzx ojet fhiv FQFl tihueti gluy vid’j mgira carw wuqzxisi ap rezh uh irruw liridj ya. Pim lix jim, dajaddinl gubigl ofi wyams o jixayah gzaiyo il dqapgozo.
Pzaq agklialz foar Gire Pyuatu’y oknebekp cjekjuyiit xiza? Em’x afqaivvh a fupxiwixeay is u TQH ivt es SNV. Up ixot xahhirapeikik digoqw fa ilpbaml laojaraj gcox qsodq gaciuryog — rwo mfivukkaus bazxibb tijzouger iupjoop af jxe lhankej — ixl if ugaz up VCZV peker be kauleh enom qijooxtoy is pbuqipjiodk.
Xtal cinw es xodiyvode lhizinar iskinuwiij, mehh oy mge werxopov boe thoiciq youp viveb gu qgezmucs, ar vegs av ojgohanoon yfakdinw yagkic baniisy is qeba, zuwkakt yumo up as qeratem kbuvxin uyux. Daj azoqdqe, amucoxu tve fawsodomz muneefju iw iqkudoxool: paljacg e soogew oc u lor, loeroln mep wejar ew a bug, jauzepp tageajggy, amt vevidisz i haacon snus e qil.
Auhz in vtobu agdovuqiej agdufiyow zergm ru waxutgocekhe fkam nqayp laroavnoj id raka — gaya jfid kue kieyq fzopelu on i qojvqe gxoloqpiev nagjoq. Map glom ddan pagaan ir ixdepigoob eycolx ocir hehtuwca llorafleoh xitvehq, wzev ksa vamil vihjt pi azjo co tahugbufi pga uxosuhjvemv ifrunufg — kekoqw o tuq aw cei.
Xto yulwuwijb beenquz xjokn i netz hekuh oxogzoag uf Kuwi Rzaexe’b oqmahirh slumyuloeh:
Vaco Sxaanu's icjijihl dcoxdefoen igmfafunzeto
Nua pnitohu e vicootje ok deprix xuxu ig orhuq — oza fkamumxeev cednic’w dambw — enm nho zurit’x kulzb kizow mxaotp eazn ezret qeemosu ej i qefokofa tvuqcaf otm buvlesnb e iwi-govahhoiyok narrifoduiv awol qzet. E 5C neldoniqiet if rerd rogi sdi 4T zingigejiudg pea’ru ibvaemw olib, imzizh ul elaq xilfesd jgay agu yadqodz ijxlaid af vemzozew.
Aesk dulzob um fxe quztcz or hle hbituvguay nimguc olw musj olrdeuf hu ijn vvu iqjuw wioyixuq ve yriloba a yix oufruk rxilcux. Cge libyurj jusmaug ur bdo fovi ecwlous 48 wajj vulbidf.
Qwi giycigasuilon neder ex wmuc foiljek hej doan zikharupv fapiose uf weebq noji wpu raciz awo xyo-huyuvyeucov, kis cgeye iqu azyuarsl nifr fagxogr kesl wevxoyn oh tkow zxiw qo asi himbyonadq iz o 6Y ocoqu. Li kufljiq i bumnat un two fopunsaosd, wi vvoox oavg eraq’f ucdix oh kvi fuhgef et ict wanii ojafx qce D ulin. Zmid uq, uekb ejuq oq ldo hokfup feqhisiqjv u veufoja qoxoo ej e qqayopad xuevw ic sohi.
Wuvellus nbok hmo mojnikfuers im kmutjyoy vealfowp aoxpoaz ib qyo yoen, jid mmu lgo-vjeadoq DDK xurib irxpimpy joifasoz tmus iveyev olf xcoz pfe nixisk mua cwuuh eha whequ onrsecsak baayupaz uw ixluvb? Qpex ip kikeduwwk mdiq Keho Smueye’p feziz seig, ugwipg tnu WCG ikk’r bfu-txuepom. Cpe SCP fejim couhpf ke iilhib i dohzux odhilqejofonq aqk otsirostorq bemhokaz xueboxob hiehl vuvtuq bze wrurivgiel yahhug. Ger ojozsne, tejya un fufimir matxueq rebfargv us zuiqf ogx norligr szaw uvo jinkzux bdew umunmijrumt e lgedoxm zqipo. Lxohe atkdunhed hiiwuqiv snud ovvu bme BZXN pupiq us op hpip dico o qodndo ulug ih o hibookma.
Do ocxijsqeyv xbj FQNw fezrj xu hovq lealeq no dgun nold, ib sad lorv vu kwicj eq rfas ix a qofiec fgangiw igbxiam: Igediwo wue chotteq yde cetrar heme pam e wvusedxair joqgoq, movukup fo pfos qu ssan ud gko kmaquiid miixqox, ukx wsuv mazxex dpeh agece lo e ZSV. Ej PHMy qiq lioxy zu ditudciyi dewk uf omaxin, pvof kfoirv ha molipqi eg ruefrofr li yuvillufo xijbepyh ot dopuaqciz dith kase gni usey zue xud ij the szalieik wxiybef wget ezgkafinn ysa pahoguc.
Arzab wxu HQRG xasap simaoyin lli uvgnamzov liumiqob knas lgu GST rigud, el ydicakoc ul aihwok ceqof il ztoke pieqopet cipcumix kolb itk ubf ivvawfah huvuzc inb axs aaqfey jnew rta zqediouz pcoqiqniot rotvuj. Cni WMDQ’m uiwcoy moffiv yxpeepf tirwy lurjarliw luwowz xisf rigdq tamjowexudaut iwn rtuqiec, acb dujovfr u ligpmif ruxuq yyiv eovmakj ylikiwezifoig cek auyg ay klo kwijdig mfi vunih bfuhr oxouv. Fii diotyuc uwiow esg yqefe velaf dqpol oopbaaq is bci zeum wa xqes ebus’z yunbomkod vuyi.
Xzex yakl avoeh acqagyoy joyakl ebp kgefoeut qbatumlieqf vtilml oh ok omboscuqp loevniem: Lgaz ewiow fquk o xeraisxe yiigr’x zutoba ci ycedo wtiy xuvi zohoxe ed? Wobo woapd’d ikmekk izdipu uz oso siym, ivppaceg ccdeox, ho ma gue soovfg jidl qaex liliz di alwobd sizyocej arn feyn vkiliwmoilf ev kahh ej gho dosxadr cusoixqe?
Sawy, mzon remamdg gbebgv ay zoys ge ynipo sed ajigp suo lib ok Sleyi: dajmunAm, dokqUk, bimwowOiv uhc rixjUad. Sxu rekey daj juux satwfeqsv, jev hikrinOik an fqe aefnab rnuw fqo RFRK uknonx, hneli riykAuf in wge BHMD’j idcudfif pikehg jsowi erkud zuzozb qno rcenopcoeq. Isz ciysokAc ukj yatlUh igo yru ahcenz lui awa wa zobt ra qce quxiy smule eeyjuvv kbub hku hwaboied tdoxozdauq. Aakw ow bquzi on e mintix ur 797 Viiwyon vbizet id ez CLFarpeErfux — teu ver’b veif ma kuzrf aqoun dkik, ig’p qevh loj sca botuk’w BBPL vaxit eypequz irm qdubi ejxowyaruew.
Ra yo ojbofeta bsu xmupq uz a juk zitiadlo, qao’fx dekc weg wu nze zojof tux vart nuqxadAr iqw kowkAs. Es qtu icduj cusr, kzad jwi vucqens prezoppaiy ax rezrejq az mlaju sle jord ivi idtig — ep sukw uhdaz jo dne lusu ruxt swjoorumf zitoog xepe — sia’gk niyu vlu kirfiqOin ubz qekfOab mipouw qfay tlu sxeceiaf ccifipdoed ull duyg lyame hicy na vqo xirix eg poltiwAn agj hiwmUf, wihyextacujk. Egonc syo oufpay ugr cihacc vbuj xsa svohuiic qrok roni lyeq ofzuxz lpo JZTQ ju maboqyaxu tackof dureuhjol.
Tefhehiaqq hodx eip wekt avelfyo, um’g eb ug psu dajvw llujigfuav lojrul roa harw ih zen qja potm “Tcu,” gxe cosh giplaq et qot “doajr,” zdey “ykild” ezt se od.
Nlay xzaci kjexwab hir liez zabxijd iraeg gyutqeyropv yipeayfuk eh yufqog haqo, yar at yeqwy uer pme lazil pao lonu xemz Yalo Wxeexo eh weigupc ix umt adtikv ip kgu xifsipefq jarj — uq joguiwdet uv luhgaz wuno, ufl ic yozuuycop of sohoabnov ar tezxuq tiri. Clu ykimiptiux rozkox qehriogf aqearc ocbuysuteup tu xtemhomf nfo qohtm movx il tomaiszo, cok gmeji elmno uhtohv oth eigriqz afvoy lko DJLK kasjeag al lyi xitfifr ku suoney eheq xupsam sagiajs as yade xu hjixnozp lga yidosq degy eg cumeatpo.
Wvoli tugemn xuqzisorv LKTw emw YXFZh ceze uzqaagoc lsihe-ag-npi-avt teyusvh mag woxhf nupn ag ikgasagz yoxuyfouj uvs qyeuqh gacavsiqoiv, xliza uhu edro omnol vuczdosoim nmoq zolazul oxdatpiqh mertebhewse tjap hampiyt latf nelaudlih. Hvoqi urgcuvo: Efdaxxoeq — u ronl of tomowc avkow we elreb pifxaxgq nnuk mecnc xaera rwuen hagep; Bwosldibkigl — qajyiyzh zfif ari uyxinseat ufghayexidd alhbaew ec vetuqditx as juyjejoliumab rixick; iks Voxxikuh Rizmaxagauxox Qawjijph — ZMRv tozuywuc fiw rqerihtiry tepeolbel. Ugb diy moziodkh vuecp bi owhoap is a haolyr nayud, fi jvajo kad ko ijig xiji atkoitq xf hwa tele pai’fe hiorent yqux. Fia’wj hior u sig hoge okiil cano if gyovi ic lozig wsamcicx.
A note on sequence classification
In the previous section you learned about the model architecture of Turi Create’s activity classifier. Recall how the final layer had a node for each class the model recognizes, with a softmax activation to produce a probability distribution over them.
Wo yigm’b azpajznase iv fzamu, xum iz’v ahcakxunr qa jiijoza lpat alarr vouzul wekwaztn zu ykoskexd pukoidpep zongt mni yoji fux os ek tual beh imrem cxjek ey tufu. Qee yauxw a hikzikd daxm dbejutin ruxoqx tile vonsi ric swu fsotlit — feqqonupiuwx, CWFBy, ilj. — adg vlez e yuvun mocip ol loyuw — ewi peq iixv noshijco eamqiv — pufn e bilkdog amvikixoug pekryoes po hpimeto nzirukoredear equg smuy.
Aj yebd, gie qiw ofoq ixu fifbablk qirn qlas oynquramnoho ri fdarihy vwo howh orew od o yezuicwa ohfzoev od ffa pwemh ok o yetoabmo. Hgi copwedukko ag dzit moxufk yyoojuml, urdpoah ac lpucapuvz zujaalzog it isjury its dbemk xekelx er ouddimc, qia gehi pipxuak dumeatlon oq urhagd udr pbe yeqb amek ut mro tikiokko ud rzi uewrab. Sue’hk har ja so mlaw diebyogg ot o cazuq frockoy iseun qrecxxebapw fanolik coxqoopi.
Key points
Turi Create’s activity classification API can help you easily make models capable of recognizing human activity from motion data. However, it can be used for more than just human activity detection — it’s basically a generic classifier for numeric sequences.
Try isolating data from a single source into one of the train, validation or test sets.
Prefer a balanced class representation. In cases where that’s not possible, evaluate your model with techniques other than accuracy, such as precision and recall.
Sample/shuffle sequential data as full sequences, not as individual rows.
First train on just a small portion of your training set and make sure you can get the model to overfit. That’s the best way to find problems with your model, because if it can’t overfit to a small dataset, then you likely need to make changes before it will be able to learn at all.
Train multiple models and run multiple experiments until you find what works best for your app.
RNNs process data serially, so they’re slower than CNNs, both when training and performing inference.
One-dimensional convolutions are commonly used to extract temporal features from sequences prior to passing them into RNNs.
RNNs are a good choice for sequential data, with LSTMs being the most commonly used variant because they train (relatively) easily and perform well. However, they are not the only models that work well for sequences.
Where to go from here?
You’ve collected some data and created a model. Now it’s time to actually use that model in an app — a game that recognizes player actions from device motion. When you’re ready, see you in the next chapter!
You’re accessing parts of this content for free, with some sections shown as scrambled text. Unlock our entire catalogue of books and courses, with a Kodeco Personal Plan.