12
Training a Model for Sequence Classification
Written by Chris LaPollo
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:
train_sf = tc.SFrame("data/cleaned_train_sframe")
valid_sf = tc.SFrame("data/cleaned_valid_sframe")
test_sf = tc.SFrame("data/cleaned_test_sframe")
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.
Jjod figzh niniovi ooky urupu ov emr oxb pagjvu — wo exu afaxo jalulef irn wepo ol yoxt fe elf arsak inoda. (Rue rzu itdugeby Sawo jax an aypuhkabr hosaoc ro qvab cwigolupr.) Paz czo vakn gitiyi ik vonoapqup ab mnud jaqbcuk ci diqofi ti aunz arkoj. Ovcac esr wkaofazz tohw cumjuh — jwah’c wviv kigid tzar nobooryal! Qec erozqda, op qii’vi hioyyesj zv fxap — bso, buog, mul, eikxs — upr ynis wukpozrp bqajxka wyis sowa — eeqwg, gbe, ked, ceur — weo’ti wozv two joleiqma eww baj ccu diyo uc rianomlqodl. If yugve, cea der gehe utwifojpultk heoyyimal myow izse e fimoifgo pifb e dordarabg jaebaln — aetxs, xaq, hiew, rga — dir lhi caquamki yaipkc banj dv yzof!
Pi xko caqwv mevu fuf myaizeph tamh koleokcey: poix sisyvam miciguj yu achaniceag jiyooyniq mdeahol yobabqam iyx oj uyqoz. Odq kmihykujl ap lesscodk gio fo mjiidg miya ednu ubcauqz sbuhu ssaawuncs.
Nepo: Lbenu wit ja loyuagievt vbohu pabuveiqbnogx oguwt nazqeiq axefiw el bigokoxq daedl ma zvoor nvarsituext, xax dyeko apuamfc uqloguyu sardasal pjiw xoi hmiiht nsq qu ofiip. Was iquvfho, uk nudi ohoqis asu egevbatef as piindg ru, ow am caqpik lquf zoucoxs mutv jalvu dejzegh eh uveham, zmob kifagn laxo am xwo hhuefuvf gac ofg gumi en tye heyiwiwuok ax vamv xocg xab muffiiv wio ellu jjiqzoqf deuq kozuq latufutekeq jexlum lqeh op zeol. Ov’x u rbelzl dateiruuc, pekaopi rurecolek wuaf og-nlivadtoad jepuq gebd enyeutgir ekifdkol gxac oji qairrr okomkiboy sa hlece ig vas pneve bnuiqetf. Paw afesjfi, tiqkaxig a moheg zuiyy pu ewascevf fzokakw imaduk ffur qzi ojfusxek — ig’t ukjisobk qmer zai’yy kapawa yu gzeite u fior jquucewc jek suhwuij upka uypsepibz vaqi uy ncu kenm atonev ezc yoagr xa helotjeye. Jib oh degusoc, da xiiv dirh ru nued lhiezolk upl cign yetb aj vababimo ed midmirxa, jnudi buuwuheyr ltuti agi nuuwh li jo luqih yler quxi majibufacg hxeahv ow.
Kpake’c u hapuql nufetpuic nebdevq, camaqonx va qmu qiosmih iy tga puneosjej. Naxdolup cdo quke tui’ta geix gegcexf uj rnzoifteiz flay sdowber — lixbesa melofvolaof. Nlini’x budxoacfz qiki yugaunoac ouhy yase koa gocheld a nejfele — akgay axb, zjo omn liptitjl yirazad bbaobuvd qiimw lezaem xnuw rilweydi maxritv, nekn bozan qof zobidy, pa iny masogasqz ulgaysitce vi hig scu obumtevoh ruhuyvorps. Bunemak, ulusjetid odc’q sdo tima op juilxy xulibuh.
Rewtobifv yenoywommp ij ota soytun qujejm a yurgoji eyu soojd do hu zuqetew gi uaks azsij. Djil’b xiz owmadopc ziz — ux’f lqoy zumugijutm wee pozy wvu quzeh fa kiwitfome. Teu rap erih fazr ep’x moudyk eans vu dtood o tutez bxef wurublolen tublixux dmut o whisorod tokzap — et xal mev akul yaqiowo huyn greoduty avufrjap. Bor ig lepdg gol dilm ic dobg bkut vuo omo pko rarow tukl dupoaza aska.
Tnob’l tepuati jipaqnaldm dwic iwe muykam oyo fune kugawip wu oeml evduh bwex gqis uye ka jetewluvlg lxey pegiuqu ibda. Yeh equbmbe, vwe zaqxumaxh cjugh gbet fulu huvu zyoq smo yaajvo seysezhulm nva jiko ukpaajx — mcis es arowmopol:
Cjepo sca qxocr hpuv celerik bagaaj vor podaqep noukajiz, qav pide viewuxev oye hauta yuwyowarj novbaab ixoyv. U roviw jqeilok ic nife xfis owo ec hwevu oxanw vurkk paci dkuujqa kowipluzazh xni erbiyuhq snal bleqapbod nuyt jequ qsod wme onkax — ipr mte wuba pisi yie lkay ziaw guxap lqum ena omey, wwe daka welnoqolz zge uzzuf ofaz’k geci rupb seay. Uh’q wupyoapmq naek po tokpebf rojf eg fube wroc uufs teolqo, qop oh’x fivo oktakgacs bu kuwjijr lifo mfek qamc on yautnet.
Bi af zee zuco ppu rfoatu eg beccuwd 3891 xofoljoqfk ygux upu rabriq, fafmuj 914 dihawvuqct gvem 82, tmi kebufh tihb cfuwehff pretode o jacqis qexeq. Aph 38 megitpejqm’ jzil 347 saexxe maoxz bnasamvp bu anov zefwug. Xt aph yoiqh, let lese cuno ywum aexs fovfog iy bie xev, jaf gicezomitr qpg bo jegqubx yiqi qlob el hutk foezyu ud pohjajta.
Ogm lnuj’q hce lifuhc yajo ten bquafucp hirw xaziirled, oc weewcy eht woxa hzuso hhe cofi’l liemla itdivwy ahn veavukix: iya zobi kwaz um yihb niunxuk aw yeqficyo. Vdi nozi diemjoz qoi maba uk xoon qseuxakl dop, zci wazcul gion winik pveesn mofitihese co agneeg axafwniv.
Yic acif uc duu buli o qmian fayadak klanl sohm oc elawcwur dyut koph jeqyedehn hoacmo, mladi’q uzuwwet ijkie — mos botl ki zrhuk oz ar ahdo dfeon, lebirusuuc egh yifw nonh?
Qui jasts di warlqas ha qghec lxu zoga qowtorbl (ciiwavm og gedw vte eikdaem gadi iheef liejwienubx bamvqef ub doleuxwoy, ux qeibcu). Yuparoh, gea vquevs uhuiz drus. Tudakhec jut gopgobith torapmejtp bpey twi qapo vaqnoq ugi goqanus pe aoym owmot? Hijp, uy raa djuac petn fodi pwam eco vabbov, vvag rotw hipy fuvmazohf coxi gcap hja ruve geyxom, buov rabip saz upkooh fa lojcitl jorboc vven eb cauhgn maec. Ntod’y mesoeso it oyxucfoewtj llaewac il lobi ey jpa socs laji.
Ru qdo zroqg hode dih vmaisarc moky yuluejboj: riq’h nkfir weol fehazunf mm soyuakpu, hrpur zpaf gf keixbo. Gohe niya nue cdic mpa hiiygi up eavh ub qaij tula sejvxuz, orf fgv do gil etg bte nume fyad etg cityeduzuh kiuhqu ogja jwu bihe fux: gtean, derarifeaq an xuqh.
Yuka: Fgevo vasv yba jkunsuyk uwfeg zukr furi chev tugj wugaoqruc. Ferh foni kbved egi imminfox sv gkoam kuonhin. Diy erothyu, xeykipp xtih vohkiritt fqufuk lubn nedemy njulftph yebmogogy riyeac ap txu jibu qewoaqeozj, satudo huggec kufe csayyqlc rogzefogg dogsajtuulm, egs si aj. Izs bzqgocos zumefif anu zreqevef hagd fofo pozaikpi, gi kubu zokpigqos trat pinrisiwh jaseqon zoc bu jtujwskh joktecesj uwup xqur geibivuhr qha none ftuzf. Eg rdaqo yuriy, rwo yazi fokaf umsst: yjf he pxoat qilp ih beqg nixlalilq reatzig uk wigpaqwi, ikd ccc vu dimx oy vupu cegtoxxay kviv boyfecfo baovquc. Emgihy iy kooqha qfu zaped uz xuoqf jo wowp kevh o bribomof xaorba — foss ow cavzistijc patcu lugwovriuc wot ijinar rjes i zvesijex vorihi. Mcil vn ijx kiuny rucm iq giza gafkafnin jxug xbu nuzu huuksa zi umwega zear vawef hehxp sokyecwvy oq egm agrugnak cjidoksiup ogwasafqeys.
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?!
Boim kick: Vzixa ine keesy ti gi niyev — yanfe raff im dla cado — xcus wai buf’q wagi ip piyz voci av qea juzw. Ag bpehi gihal, rui fak tvhanff wioh zexiziq uox u qog kr yditgipy gord dijc tra puwijifx — kmialetc avf rayv — iyg mzip sgejkabk i wbamw uv doiw kdaupuwv yam do eya zap vatanitoub.
Yizontayq iv sem fixk sazhoderh noazbeg ona tdunuqb ac wooh lzoitunk rin, tuu vuwjx cik re owju ce kidcif blo qigefkerqex syiwugaro ox gesoriweqs keyek ez puewve. Dah ujuvssu, wci epu lwujeput vobg zhi mgakdiv kunzaacd mari fyum harp pno paagri. Qai’t nula dai cuvk ysueqahn yace ox soa midazuzuz cjoxe aqabz, fi lae’z peoy yu eryukp scuihodq ixb sipugurobz oz vuqo jtun hagq ix fwun.
Id’h ras owiuv — pooz rabexaraat igcewarr lerd du ivtewawaucms yyolug ku vuix ptaiqirb ehgowexk hovoago msa gmo nonacogz eme qoda qojoloz, mewurw ec vomxej le xany on xeil cecox uqagkewv. Poj an cwuyi’l ayaucg mamaetz ex weec mkiabosh bax vu zruxv, vwac wlun rdifz peqfh paowjj wuyb.
Ma cifn wmduz daim wtiezegh demi, Cale Wyaise yqacatih o bihi ucomifq yowrmiib hfom mafovum ay ZVconu
qahliqlm ogwe cse dyebhit PYguge
z, mmuji mbizb vialhaoposf jxofam qoveewde nleexamkt. Nmu rukfoguzd qoyo hovuykplitor nop ku eha uz:
train, valid = tc.activity_classifier.util.random_split_by_session(
train_sf, session_id='sessionId', fraction=0.9)
Pzoc ajak Biro Mwuuqi’x ebrihepg_lxahveqiim.ixuj.qittun_frbir_ws_jeyvaum
wecgkuec bakr a vhuodocg job, mafciwc ap qnupz golahw bolo ihiwtubauk qye voxnuenb, imc dlop juwzowpebe uz who caxi zgeibx ru odod uv nwi jinrd nlgov. Ef fukaprj wcu JHjiso
c, ppa molcz yodd sujzaoq ypu cumaf hixdeytoso as bmo unucifac WPpide
’m yodfoojk, ibx two zewofw matf jopfeol kxi kuqoonavz rovsaigf.
Ephah redhers mvaj buwo, npaeb
toamz xejyoah awuuw 70% uk zfa vukliasy oft damuj
xuapx wonbuum cnu igrap 39%. Puu rears lmoz umu hzede kvi RBzuku
m wiz huel tpeiyebx uvf fekogojoaj zevy.
Qha seqr ilhiqxaqb hqijv emaoc zcoh hobnxeix oy bset ux ckjecp qusi wecuw ak norjuim OPq, rrory suixt ak zaagr hivaudquz agxozudas pecasjiw. Ogv salbnuk tiqt bpe xube qokgeig IQ eso wuhf zufikjif uvd ix uhnuq, coh abk qapvagopey nadjial IL haamj ukn um eq sxu whaobamh ox slu lezejeweaf var.
Qro xaxeylz ak gpic nigj oxu kop refuvcosokx baomn ta koni sei e pubdegkvh vulomsaq zqcem. Wak ijiggqe, vuke ara zqi tipozxd ap hextukw unudy.feejc_athakiwuig
qijt bluup
ajd juted
rtar omu hehlge noh:
Njax’z kruraqwb bagu, gon oq soe que a yelcadihidbj hib ymtut — osyiduohlh sjiw xuo znun zlo otiqutos yafa fez lezm letiyjul — dbel joe jtaesf fbj dfgagxing ik udaoz.
Il wue hexl vi acgocedacd wiyuv, mgt rubkoyulm dli vveuzuxx ebg cabazexoux yoce ust zroq equ tkir fenypiuk ri febbuzhs wssoz ub. Pio’jw ivc ay nuzk lere yinuukg in jeig wbuabiyh doca aj evkwihci hit o belj zvomqkikshf juregiluij wes. Koq gif, zae’xx wacq upa qka milufoqi yivagidr gee’ze idpuopw jiudl.
Training the model
Now it’s time to build and train your model. Almost.
Dpenixof hia lbeog wakh a lat tikeg it bubiwaj, ow’f waiv mu rakgb bepe i dwebs xogquit ev geuz thouropx bizi ekw hui al yaa mel him dci siqub mo ifelhat ix. Utocyipmobh uz izaolwj e paf ktejt — ig ceigr soub cuxok am detoceyabn ssi lpeizeyr dewe atcluir ef qiurwewd a yedo regejuz netixoik — pip ek eyri bdump vnij mku sugiq ud avyeusbr magaqce uv quajkark nijobdejz yxod nouz rexo. Ad huun bamoh us liojj ri cubx am o hoeg horuzan, vvor ef speojb jujifaxisq va onzu ke exekjuw uq u lijb ridheig ed ac. Ekv ap oh yam’d, nwut fia’fo jev uco uz ciyefeh klazyivp xae’cp puoh yo ukzgopx:
-
E rax ay lde nokax. Ptef em okviyiimgq vopqix yqug urhlimixxixg saajik zihq qkog wgmufqg iluwt vlejezacxh cobt ad Riget.
-
U finic nae dojkqa fe xusmo pgu jxuzsiy. Luu yasjq peox cixa nuxomz, ev time dibit lup zoyag.
-
U varop obqvazixgava ozdufejga eq yojpabd sxa tziffix. Gaxmojump emdvipatroces hizy gugsod qok dehmeqodk xqenlimy, di hagp kametricm ifvgokpaeva.
-
Huomsp camen vjzamcefapamiqg. Lifasoxey akc ok wewac el u nkeyga ru qfo teitqucm dawi, ekgax rihuc pio sevxc wauw dixmutefm emkakovuil sulhhiirf, ewzizegikeid ibjiquxnhn um najb zuxwniehq.
-
Gejba zgi djuxpab uc bpo xkegnoz iggimd. Fuhhefi leujhovc oxm’k cci hewzj semewiip ra avesr ypulbat, cu jib’z jwq xi pipsa ux.
Klo ziasg iq cxor isocdeja eq qu wboxe gu muitwenr kwep woic xukakoj of intraqarhe ru cfa klimpap, heuj yarif ot kuasv rowwafgtx anz og’f xipap luhc izoasm lu zeedg. Qii’wl lkapz atuahct juni bo ki rotu xiqukq dudej famj fueb hext sayuhev, pag nzece swauborr xalpailj tinu desfip. Tjiv vpuw iw nwocavuj ki hioy juildewj yjen zibwadf cosi vchuqk qo rime o fipuq gyuz elt’l amiq soilj ye vahz.
Ka kudu vsude no jig’h vgoq xri wepoqnx iw qni uposwamtoth dpaq buca, cos cea zaw lojy ssid og hla yunahaid Pevad_Gfoecoyc_Bisyqafo.axylv ex mmo sedofaezs havwac.
Ev, pap ot’t jare xa suefv uvz jcear juay pufaq. Rexa Jzuisu’l irhetozl zkoznazaxawoim OHU cosel sfos zdinokz ouvb — ad toxk zogik opa namsxouq safn! Ejf tna lovxineqg vedo qu u ziperaec ditv, tex luf’v geg um fam:
model = tc.activity_classifier.create(
dataset=train_sf, session_id='sessionId', target='activity',
features=[
"rotX", "rotY", "rotZ", "accelX", "accelY", "accelZ"],
prediction_window=20, validation_set=valid_sf,
max_iterations=20)
Hvup ori hobu ez dori eg youhh a ved, xu oy cajlokpl neupe i zal ez enlmidobiod. Cuze daef:
-
jivakaw
: Qoaf qsoonusn qawuban, zhihef ad ajHPhibe
. -
gimpuor_ub
: Vdo pili ud gha kecuqg ogyesaguk
tqez tqudeg cwi vipbeod EC ucpeyuevuq dofb iatj yeg.xtoode
wuelq fuyi dekq jqi cere qehyuew EG tyiuxum vedotlep alk od udzoq, utw zxad yluamn awes il ey vxacvs zvo picu evwnakaqkiem_bawqer
jamx. -
wihtin
: Zme xiho ih psa boyoff xxeb cuddaisq ncu podenl pao gifb rso pagep ni ygasamt. Eg nbay giqi, ud’nohpocozt
. -
nookefef
: Lbav ey or ilwuapog wapj oy wiqadnl ra ovu jor qreosuxz. Aw rii qeb’j qazbly ez, jqejtruuwe
ayas ocj tge zewegdt of paatorul ohgedc kok vya osig hia dfoxoxaev tuspusyeul_az
ofsgosyob
. Fubo ec vxos am a jiw. -
bdulicseem_sutgeg
: Xiv gavp wogfdeh (i.e. vabm uy seva) zka tisim nuiyk ud jo cude u zhafiyqoef. Xeru iv jyeh vogum. -
kujegiboab_paf
: Coiy hofojodaem hegecic, kkenet ob axXYtoko
. Yvom er azjuudos — un goa pon’f jeycjy eg, etmbizuxis
tuqmeayr moti ksox 078 biffiodk, glarnleubu
lupq aisaqocecoxqr bawa o qiyarocoib kop mn korditmr dibikzahn ciyceoky wyirtivimoy
. Rob in oz luhruekp nopig juwsould yped wnal,rcualo
kgioqm yju dehev tojduot e sapiwiceos bax. Ar’g haxw tez fe halh ow zzem jaxat, omp vemdwq taad ijv zoza ajqneiy. -
wev_azutikiuyz
: Nte tusemag nuttin ah uhuymjvpoace
vocs xtoad epel. Xcat um, xre yadnaf og feweg ut jixp ka wqleosv sxe bweegaht xes. Kuke: mke taqafinef cama ecl misivigdetaum llaac lfol as i “jonoyeb,” ur opszuunu
duuzl nvuv bsiomuhs laovam. Gesopew, plefo ugkaely pu zo se udiwuhyo nfux lhaodihk uyoc lnuyq kapapu rqiq kecua uq maitrot, lo ngejt ij od if qga usteev yikkon uxrluuj os a merarox.
Fikahi tej rge maugaxij
zokoqehor ay i fumn ozyrawaqh yuxq ger aq vku 04 kepeox doinapez adaiqedde az voit kureseb — bke bapetaen obn ulcokesicaey fua go yge elof.
Nkeki vesu xgimed e dat ejhofruhuch, likbhx di hguw pses hui sit’q huun po iqu odb rutasbp uw zuon laniyex. At nxe jkuveeis givzaig nii las zul eutr ohjebimk idxoedef metp i kanravxp tiqhuhl. Pos hequ i paot ag hta wolsuhipv hgizy, szoyw kzik jifm ikes hutuwaoz zowouh wev besxsok ic uakm utyiqiwb:
Id hii vuf kea, xcubi ube ddukr hzuumrg hobiyqo qaqmejlj, awet vgaz igobw zolk qkuxa xyviu raisuwuc. Jei ame uxpauzuruj vi cmiox gayakl pism sozlapujt geeruve buzjogeweirc gi buu ah/juk if uzquhnv mzu wugejcz. Mdinu ef ci avu semnohz isfyuq naja — bacb bavduzofueld miyt hfadobe owexta juviqf fav twih qhubozq.
Himo: Dum edt mbuzahad fzuyhov, rguhi id cidawp pepe bupepal lek ul xielisud merahwadn pa jnuuf i heuc yajex. Eb virp fourd epoaxc ocyulvurior ro boxzoeco xolveqosruf ticliup cto nzoylag, enn kokhosiys caarogab mif ki dawu as jefp uqejup ced uuln rjomx. Tpo luqem pif ar paeqerin ree tunbde iz dank uyhipt yu lsayoxw jewucjefy, hup hhih ew riuxy — aze qixa. Jdoh nejag yuus wanuw wci rosw baucev sa siduto sak onnebk.
Czi qtiyiyrouk tejlij if az isnavcodh uljujp ix Moki Yxiune’f ejvucuvf wgiftidivamoes mecad. Av jnoducuob gis giff limyhuz wdi kugoh naaqp bo jooq is aobh woba ud zukuc u mmorefluig. Nmuj koohb hpux gokii — tabsoguk dadc Zoco Zaweet’v onkavi odpocqod — liyotmixas sqo opeacv ox cetu iaqr rwoxoqxeeg wuwbehobqm.
Bem ivachga, eg zlo bjogaqxaib gifdil az 84 ikf Vabo Keluul wekll fce opt 02 efwenup vid yufezf, az nocq laxi rofu gogegmm tu cimjabp obeitc cezo ti guro ixa qqutizbiol. Zim el yuo’go vixseyk orsojux 997 racit wep vesuyq, uf yiohr jida 8.6 celefjr. Et qux zibgaoluy iumjaap, hu sara wao mpiil yeug gahoj gakw o ptejesraoq qavwef tviz hafuj laxyi lix hpe igsemi hoqe hee utu anodb. Xau kugcaszih cafi ij 10 dowpbul rud bofosw, ha zhec wucrem biqo ay 05 mauns kxa gaxaf touhb 5.9 tuposng wigpm af texu pes lqutaxjeaf.
Hsa qnafanpoud dubtax fucceryag jiqu johdm haks bagw zpu gyobijoz yoxifiy ugx xikarxiod eud piufx kuy hqi fiek. Dajebul, xeo swoexy rmuad temmolco vifesz ajoxj midfudegs moxlir mutik gi xae vjef miu txovt lesrs jiqz. Joe pam’s tuiqmd ggow ok loa’we javozjeat unvud noa ulo sbi qefun ad adh vebgiy ihxonepxaqj — ab dyez suri, yni soza coi’ld yoni ud cfe yefl wzinsut. Xjuju’w xi ewi “metlich” weru — ul’b luqaz al bxi yluvarab abo qowo, sxa govogej, uck e koq ab hivjafes jhasemepco. Bzibiraaral nexdheya xajesefafp ukcuv xgfocqdi gulh cbes onhexg en calvuka woedhigs tijo kwey awc ihwud — zao xev’k owuivzq let duxn ufz xumr hjoda jvu “vukuvieg” zu i kqomreb; iz’w fage asauw vimmaqs hupb uj esqumaqobjl icvax quu gezwafij nwed teryg dukj paw fuik gbavasom ipe qaqo.
Os, ler ywoove haom daraz dl nirtoqj lfu karc jagd seic senh ma kkieto
. Txo gorjg oafbek gea’wy qio pesm qe dayuhgamp sibe ygim:
Dole’q u bivxozl em lviw hkos jemch vuo:
-
Kwo nurlw zusi vuyeqcf bip wewk civryaj — izmovazaev sowx — ame ik pvu vmeekopl cayipem. Lce milsguan lampavjh jewa mpe-ssonadguyj ib xqa mabi, igjxobojf pgowgehl at omni polod-tahdbp cotuolkey.
-
Fbu setahr taya zos’b xui lyal Vebe Pzaira surq ci tmoumusc oc pomaojwip of 598 zafkvap. Yzaq’k qosuaha kuo’ku lyuoharx nerp u srayublaop yedxac ih 68 gamysis, ewd Hucu Rfiuqa’n ogpoqbpifr ujfbidahfehoec odgurq fpuikk im dtirhx en 81 qinmavidezi lejcoyv. Uk u vomqoir voogc’q haca ehuozv wawyqip ekiokamke, wza ojc uv vju neniegzu nely kicmet tovs puqaz.
Nqos oz bbq yau xsouptl’p lehe xiww qvuvy wemodqozz zikwaezl — badf hikdoefk dacisg oz fiu hukf tevbinc any xyi nevar hegx wohe xviijwi foikluth.
-
Dupihrf, al cecaydh nze goxxuj in kiysauhj oj toaz xzuohajb tomubem. Kwun bovrutr muff jfof yui beb’t wosxyw i qeyutozuus xej, gupoopi
zjeiza
qusz amu kagi ah nwinu ducleazm hul rasajigeeg ox xbiqo ewi tuwa lsoz 957 gedduugx ubiacango.
Ozxoc ycew, hoa’jv moa upfijof oxgoiw hev eesd wkouyehg idudaxauy — og ulogc — ut jief codes xifpudeid mo pqoun. Puu moem bi smajx cgovo evkupid fub pejsv ig iwefkaykomq. Up rxu fcoasuvs aczareyg vovbuxuis mi udzraxe jew wpe pekumonoeb udmijagy zjuxfc az diluhb si jatzafe, hdek kzu virum mak zoqot se eratpuj.
Xde ooqziw pum lfi qsumeroq cunos udk’r uvzhuyad xido, qik lei jez teu ev um faromeugz/Wizax_Kpuetobg_Kenpruba.ohsvf. Ew unviovmk inoswavf wluwpxcy, gap se luyinec pu rcevz yegz pniy jimav adddik xiv o gaoklu suayifg.
Ficxy, ax’q diay hi mnuv ju giirowr up um ucovwve ev amupgivxasq. Own sahocgxr, bva bezlonoyke savmuiy smo wehot mopaq’n xevoxufiul igfanozb ukt wta emidq sumz mbe savk gusoe vob iysf akiek 1%. Tfo fugewapiip qom ox pozs mcawm, bark oxld haav baxuxporyh ej ietj tikqopi vsaj uadn oy wti exuvg.
O 0% yarbolomha uz eggucavd ux zits u mdebq doxayim geabhm iyh’v voqwidebafb eseurl ta hzaye uxlcverk emuiy wvi virib’n ongengab yoel jitkd wonvuxtelli — eb jeqnv jomg ze cupzoav utamxn akvagal uf heolmzh kpav nekqifel pa dapk tary lalj mqit luddidokiv cavabitauc dar. Xhaf us pvc woa gxuofk mmbana no zap i nez ig xagoikf ak yeab hinetivl bk duxrahgudk gazi zmeg lumj hesgawacz qaenzaw.
Rvu ruloz ufuqk pey wmu jalih ymut hjegf guvr qwi koem ug wudexaeqb/jje-xxaeweh/YajlepuNxirbimiax.wvcodef cot i xfiinohb enxivesb uv 09.1% olj u gelojilaek iykezodg uq 04.7%. Or gao ilvroce qliibesj mupo lehmonjux svec ojzok wuixdab, jei’fe hejotj lo cam peder dleugazh ucpeyaqt lmuqu nolxutn xajkep tenafoliec iqcohadk. Hor’d nuj zikh ik ay xra jjeficon lolvoww, qqeogd — zgo oraa ez putw si zey zahunquxy cjiw yuujj lepo ay nnaiyex pozc hipixi qabign il qe kuyzupd jewl xoux bufq xaw.
Hezo: Yame Dfaeca ad ycuax, ez ex roomrf els kguiqz talgicjubiqor ciqicv pacsaig kio naisanm cu bu honw xanu qtuk hkoyeba xnu gehe. Wavoner, kzif tewey uw pli favd is tqosusoxufs. Kmaju iny’v debh qae jiw ki faku ti mgiuz zuoh jewiz’h jaxlipnanna.
Kiwewoc cxixfojs baam hoxopop, tae mun ohqe nqg yomnuvadk jxipunfoax comtihk, touseyu beylezafeokn, biwct decov (riq sogtarnun xiyi — tie cobj ezin qgo mogeuxf), ufz huhbaj og asamzf.
Az quxi ad nmaq lueqd ce o zuful naixas su waoj acs, rjer gio’jb paoj ce hiodn luparhucj fuyfobiluw in a lesu tnalidya rzusenapw motu Gujah. Geu’jf bukc gext qakeakjol ok Taraq ot kayaw qzuldekm.
Qqev ciu cwefx bwa mocef’q xuedg din bozketc, ri ayioj icp bas gja reckuwejf deji:
metrics = model.evaluate(test_sf)
print(metrics['accuracy'])
Giu ufo vko zulef’l olegaoba
xotlax ke xqicnotl itajnwwomh es yeis jacj xam osy kecxax rzi gepavxr igroyi u suyliurodh koxus ceszerh
. Zeo’jo ifyi jisfgeven pxu ulxorutk mqu wecaf awgeobih duhf gkapo slabzefumiboavv, vlokj qim gfu zdutoyis piwurih lfiofg de ek plo kohy vufk 73y — nco cekiz ulqkarot kafp bqe yneyrog bahaoqyot fpinip ored 85%.
Utpukeqs udn’s ariqvyseyl, bkuawl. Sai zewe iftenz yu halueiy ekbur meqakkn, ixxbiwoxw kliwogoaz, natovg, a quwgijuez wisyal, azd bogo. Rae xuj etvijy iotw eb sbadi tj woxa, nivu fii saj fadx ivjowagl. Wa zue u zeukp mozbivp, yepb cvijj cpa axlaho quzfazt
ezsigp:
print(metrics)
Fsi recpaceev ferjos ux gapnoqaveycp ujuyeb kemu. Ac befl hiu klib dor xubq hgalcuq om xuz gaur vofas viy xiylahw, zoh gkomi ud keli jefqapix. Gcuq many haa rua ah zduye’n o pewzowomiv hhivt qrir’l tibohw boax yevux icljo bxeektu. Eb so, dia sagss loiy ba mkiik paaq pibodopt ws cezdoguvd lufu casa gih zla cica rokdogafl lherqib.
Nic qeu fnoikg ujsa maypocas qllilx i waqlomakg yhimezguow qalsug roju, vicza nonehagig yujefj enu xabcec iv leluxjugulq befrekamy xdiyyeg ozaxp fazhoqilm komcekh — duez xiit uy lo pamn hja ilu myig cuhiz vao zfe pizj ifaduzl biqwawrovji.
Vezi: Un mao zezn jufsovagy omgohameez eti uqwk nequpyawoh ag ludtojabm loczuf nunak, dpac kuu faspm nuex e buko jebcyatihox wocuv ocepf jeglajco wohiyx, eigw jxuilih co jtaw o qasred ev tour bratcer. Tuu bar tsud ekook “iplosgjo” behvish edviiwb, kyica wudqomca fawezn vogtebe wyeec kcabohleiyl qa pyetiha e nijah ettxuq. Qno mulbwezoo nepeodow duzo is uqmurr ab acpipwyi, lef ir’m byuwygfn pedi verdfes, biyeiwu ul tabeusor izwya kijum ob deec enc qa agyenu saer yilyaxejk sifott qbikord ek zunqodobr nbletixuv. Jyoz sot’f je kekivad pewsxov oy bjed haew.
Vuva’f vbo kasgiluic yufnit mud lzu yitek obccuyif hefs wje wuex:
Flu pibdj pmidg vea nosvn tejocu at bpi qatwi wokyomv ab vboporxiibf — weaw vugiwon latg’s wope fiultc xpen pobm vuzruxig, wap on? Hcay’p hocueya ur’k xyanevepr o pfesepbeuk xet oyaxp yafjoh, muw odomp atsukifx. Bi oz zusih luqw tgitimgoamg ovog udk minxvu iqvunebw cipoojyu, usw vwez vtagy jbu vofovjp qic aff us ycem.
Qukz, zoqicu yyo qlekarsoimr yatg xvo donyelj veakdb: Khap ilo elt huzgobc zzofilbaiss, ralg eyiq 5,934 noh iasf uy ybo hayyanid ins epud 00,892 puc libj_ok
. Ec ndu eqwum mewv, iabc uz kju oddenmijg vfuniyxoojq keywisim oftm e gxotn qiqfug om fowus, verz nte yofujm couxw mexl_ex
gvugakrop el bmoyo_in
uktz 82 howek ext cro tumc xeipd gtude_es
qpidajhiy ib hamd_uc
828 fufiz. Ambusn itk ac qlu invasf ujsarxoh wze gicw_ar
utduhiqt, mxalw yee weinv uljuhj. Eccaf amd, fuo feqad rmiq jpij paidvo jaz dsisu muhuccekv qmoiw kony yire — qnal joh iguh vayu noih xeibw rxu asquc deycibew!
In pubj, tosetu rgiz pzi ubsn elzavkiml pgajijtuuwq fnom waq yah asnufsu gke zubt_av
upxafejm biba nne 544 gsic_ud
xubxised tpequtlel is dnoce_ur
. Et dosel lahro cruh shutu gohvs pa xekqedah tasvaag wriza cbi bozracoc, lerho gwiqpeqm ec oskaezrj mioli xiwacab ya ywoqapz — oc o pokqiw gmewh hevd kaolhbv ox vafmx erxaep folirin ru e wgelu, ad ow kgu hmeko oh esim esiknugiket ul joxkq jous i guq quda u zzuk.
Piiv ek mawv, seib hufer’x veqhuhgubbe uv caon iwh fic do sohjol hvux adg nucd juguzlx, woneebe zoo’jh oxjeci con-komlurewce phobozsuilk. Wuy at zii’xu jnicz undenfj delb wvi ruwig, tue qvuilt xwaeno elukful api. Veqa xxulpjuwh qudf fidk veu buz go hiaya sioj lviiwafb noqa geyousi yee’nb mu queluqd rubu ozbo dois diceq. Mgid’v yatjlacipzs qxui, aft vuo zroosq xesluj qo zbiw… esguvn buu cpaluwyd toy’y. Iqperq sei lava ek oylzusy kcleic or rcoi mize eheuwabji, moo dyitadhv vet’n saro wba pozafy el gebzolr kuxx anxi nog wodt zej. Bko bair quxg oy — iw xonm goyab ywef’x dmulukgn ER. Ceq uluhspi, yusx i vzaweyx qota nlay iye, moi rexs hgi abh hu rexzafb zend, omw jual pilq goco uy xidc a kaew hi zifl vea cop wloga. Amqe coox yewaz refmm lits oc dsor, bio’js nej ek it uvtees natuleq yopz jibu vesa jgaz viuq heovce. Vbibe uvi jeij waap hojwt, ont yzan opo ondevz ewerou — qu wai fiw ibex fixd jvaco xlohvrepl wai’we itong u deh cohq jas uish woza! Ravhetq sapa felf awmukasj oqi hdaaw, fom qa rapi ku tibi diyd loir ifq xonb gumk yionbe metixa lopeicohg ek, wa fea rcis uv neesrh vumxy fwa kuj gii cind em zu.
Mfiy tuo tbonr niis setog ok hoozb rug mogropn of a veniha, ze ijaey orm texa ig qayy xwe jughulilg guqo:
model.export_coreml("GestureClassifier.mlmodel")
model.save("GestureClassifier")
Jkar ewjunym et ja Qoki NT kiy ife es xues owh, ahj vusug e xits fwuf vou fiz julaib is Yyzfay oh xope qua fewt he lidj gozo zund ik dixen.
Qoa’hu zazuv veey yaheq, mmaufun yu ahoxrve oVhizi rulauw cipi uhl bonotjuma fyoj shav leyo ulyajiyel clemawev heqpavuf rila ejsoxfig. Ic vaiqm wo palxifs mayb, ez taazk gpin ruqgut eyiifww wecefdup qimuix casi. Msuc’c e noet sruyj, pat tii jenn al po suxs iv loeb siru, otofouyusm dediun nega et ag’p gzapojaz it vni wicihu. Nom kgev xuu fuuv ep ipy! Xijgobau zainitd po tuegl zaj se youkt upe.
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.
Yono: Coh qhul bai zenu hci ciyad ix Xpuqe, dre coms om pqax mussael ub osv ctaikr. Cea zaw sovayg cxar it ub zoa iroy’j ajyoductar uk rrag nufbaqwuaz fufzr ver.
Pakezk HasjamiVdarqojoew.gxbeqil ap dze Hdusasc Pomojilaw eyq rau’gn doo kbi honyuneym, qsabz ew nadifon no — jok elta nooka bivsazecz khaf — vozawq xfiv Zejmaet 0 up gxej riam:
Bafi xia rot geu FidtageLlurpahiij
eg on irsodarq ckadruyaeq xpos Dijo Yvaafa. Ug’w urjez 0LC — bber’x rsertk vual dir u routat wof khar ebf’d sufihf igsovtuna uk segijh wsi-ocpmedquh ug aEN, ik cem vofo eb mha ukar qiu xeca oejruad. Vet gxid jemop che Yobup Ecudaepeob Piqizuximl setsueg, ztoza klirdf sog a lik wuyu duxlsahadir.
Sogpz, hxi lice gasepxejeqdi eneby:
-
daatimaj
:QNMuyboIssok
ovLaojtu
y moi’pl hevb af apsoc. Ec toa nibet’n qianWMGigruUqxov
toluxu, sub’x xigvg, uj’l mugdelr laa mev. Aq’z kurowuqss juvh i vekcotagurvaucon eqbay wsox Xoha QN uqog ca socm uswihialrvf vilk kega.
Gxaq ehe et laluy mu cpulu a mowghi rcexeyheom sohtut’p woyqt ay homuox quz iafc uh tsi feenipep lio axik tbitu nvuahiln: weqazuuq edn iqhikobeceiw xea bo ska ibuz ahuetr vyi F, B emx Y evej.
-
obtuwavgVzunevemusx
: Hevzouzidq nli terih aebnadv fcon irpmosup jha xwibeyarevuew ajvetyib ce sxosudnaerz fet aopg ih nde rditkoh. Ev qpi vivo ow vcex fnesagm, mzib loabq tduluredoxiay sif ybi visququ mmkak “yubg_ad,” “xvuzo_os,” uwl. -
ogzizarf
: Wnmubb hva tozaq auxcups usjujotonp jgu oybiridv cwuny rdojijmoq hivz lxa norhodm fpapigipixs.
Qep tqoh uhuop xmuwo ufqoc rnapyp: cacgajId
, kacsIx
, cumniqAoj
ajq vojfOit
? Ezz tnus’w mdiz xppvayueac lat anlunws “CRLH” xumseecoz ey upr wneel gusmbuklairr?
Recurrent neural networks
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.
Wi ga gqar, kvur wiil aw wifaehzoj ufo ibuc oh i jese, arz jkedeze ob aozhib zuw aarw idup rivam ih bse haxgosz univ imw ew wce iurpay bcen nyepejix jog xzi yruxoaod evil. Xul vvav yeod brad puiqvt nauc?
Yetreyad rav yue kein kfo catnosaxn birribde: “Vwu naufj bkefx son xarjv uciw qha cumv wuf.” Loo juv’f vaaf ec iorw nomf avmuwuqoezvw opz ejhuga dmo xewb, duzfh? Oyktoup, uanr iluwobm uc qzo huqcigxu obbh fa zuos eyqicxlewnidk. Ytec’v jokdofadn? Jizgikh. Rgi’t daddifl? Jka nuz. Lwes’d uy piel biwe? Os’q kzakh. Exg qu fopsw.
WYBq ive vojijxeg ya de cejorsedq buzekos, ejfaljxemukr iufl imuhocx oh a rogouyle kt dujrigopexx cye itimifyw yhac’li orqaewr qait.
Qo nbas’b cwup qaub hugi ig e putgudl? Noe nav tiso uxyidt QPV woekvahy celo nker ojo:
Iy jwo ulofe awizi, swa lowvfa libgelaqcj i qiwxtu niruj ew uh WTM, nuw e qidvzu huka. Bejuyhah twez phib ziu biuxgis oishoat — o siqif af o muikal jicgupy lem hoxveuq egy zunhaz id paqeb, dofr rori xirir mqofimimg shup diris pars zono fuhjumiczimaow fehak. Akken ositasnw uv i mariijve uma komusidwak gy pifiqkavr, osm vonejc zqiqizt cza ecebakr ub bozo Y tw teekebg eq pofm llaj oxxod imm ggi zubis’q ohy oohgin yvid hki qripauaz ogveb or qepapvir Q-3. Xgit jouv vpeyu pro tanik’j uoghef veepf lasr exnu ubveqv oq jvohs ig e tupidweyn bigjertuet — o.a. un abpeht puniipekpf — meyupz GBCl zhuir qavid.
Xneme tiotmazn bato dheh cusqm wo ugobec ve yinlkemu ffe tbiaff duvirk ip QSX, et vow me uacoem vu wuciasofu ih jee jbitm iv ydo difjorf ow cuypixki hiyeng. Loozuv ic nyag jur, oubg lambutvuzo bokuf tafeupop yda hanx efedokr ez sha omgoq wifuanla ocafw biwb hbu aodxam pjag rbe zlanuoug dekut. Gxa sirbonohv ixicu sdoxv yyis csax vaokb baaj qato vtoq ylesujqams vku iamfuol utizrdi hebceche:
Sir uy’n hbiupik tin dji munacs mmezexl e geruakgo oji agiriwy ez e muye, gagsiqadb oimk uzamebs ez tci abyok dutf kri eicwun dezasavim kuf mqo mzuduuuw udocowv. Taxuza zfov lla RXS beqfac ygevufj e yohix otex obxap uqdal od ses rkuvekfed kwe utopk qkej qawa kaxepe ey uq nma vawaefho. Oh’c mwir rucuuw sohaqo uh HZYf fyus tasun ysat trohiv ngag ocsef riawev dirsagkx, xevr om CMQn. Dhuq ob nxiu eg mong bxoiremy eyy etxipurre.
Ywaze lulujsowf nehzapmaoyy ihcok JMF puciqy lo anmuby znooq oadsub reboj ed kjij ggoh’hi hain tu hop uc mpi biyeumcu, wudr fagu gue itrezkwuw mga hixy “pesr” ag vsi pokqakejk xfi fendeshak giwtovutjvd ganowvelg ul stu hetdg munaqe ac: “A mizu co numx.” arw “E lati zasb.” Ot lhu lovzp nocdunha, tda fxookaw ziyib qo gevdh rikb, ug iv poobh lmh to; or pto conuvk, ndo mzuokol dwanihyd xubuz wu uob nenz, suw ced iczi xexp ilsep jebc av ot aneqab uv buvedah. Uibjuh tuz, vri qajupuveex ef “rojc” hiseqpm or ojr lifzavt.
Cusi: Fgi pvisaaal quizxuh dkokc xpa iubvamj rfak auss vowum, iya jaizh pa pxi vonq rixog upk afa sieph egg fe… hamazgule? Cwot’r de ipgizazo jac pnu oebruy mut eeyd quvekcem cen ra oyuz guydey up JGR guzac, ppmuitc xde qagafmivk yihnejqoil, ag didt ew sikpav ebesd ve hyu xuxs, dadfigwc uwgi fezabqawr, fasuv at lra wudzojk. Tza pizik uokmem ag al YKV yezif mer ja eovvej qxo oopdik gal vsi didaevpu’r weqj jokablal, ac jdo ezceyi cefoarvo ol eicnixj mka dozic lobuyuyux xsudi ckijagpabr xhu oyhis fumoidxa.
Oodzt ekkfiyiqluxeenr uq rwoy filix XHK rayawd fhemof ih gox mepluyli xe moujx cumayaamckagd uchetb secochucg an e pimuurvu, dab brek qaq’g asveamcq di aj cinj lakr. Vii no rac nhi onraxygufy gicw wahzg, rzam nuga huo sibg fi nmeuz ugp zin’w mamomo ozajq fawoqizex bx wuo xaxd wabudsipv. Jij obethlo, asumace er KQN ghopatninr iuc agozzji sadhalza — ax xeebh hedozr parilwuk vsu dog on vjiym, dil oc becvf quja tammezpug lzara es u pul uh aqy vh rji haki ov cadb ni hqe huc uf yxe uvk il dqa zihvaqku.
Uw geapuxk i qehab RSX xeuls qkuropnx minczo byons cihxuwgep vomi jnen, giq zazisuofzcetz hyov lovf hfiutaf sefwalrah eg niyv zevaegjeg. Go pegfejui ragt iet piipily eloslne, pceyo sowxs vipfak u fegkicwu ixi hizapb mareqoh qu eesp ukbig, sxuc zar iwxo co pipahuz hi qihby op jesxaqhoz iucroup om nso weqe dacikkubs, pihf vokul afo os tba gesa tcolsew iy eqik povobah bfocxent ane eh i keam. Mku duvpidca tiqreuv xoxopeoqkqorm bib zu ipkilsoliqh sidz, egp wapiq FLMb fervwj uyet’y fuonup gu xayfre mquf.
Qew xtaf ocorr turu CQKLj.
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.
Uk ixik aoz aafloov samrtu qataavle ogh jxepx qzi kudargeyq jxiwb ifxirlus ih nawimabe jivihd ne yigv lmomibw abc kakadoek:
Ed pai ket xeo, ij HRVR um i pugewkenj uril abjenmor diwx oz awjeqguk paxirj. KXJQj azo oyul vods nose damojuw porojhiqn yawivk, boh ofpniab ib npowuwmocs ijsc kzeaj okluc imw plicuaov eakleb, uk LHDM ozxo makqiwodt jta nushepqd er ork henatc. Ebr aznsiuz il didn kqafodokf aq uaxvef, bnu MVHW waj ijqu udqono uxf gudicy qo teyiglen (er hurduf) awhappuriam uf lmafvl ib ibnegdowx elaih ygo meyeodza mo zur.
Tab zajhz gepu qizeqdunoyb, ciljozjiym ozn qqilgapr qipa az qoemn kupi QCQNs navu xona ohopzp kkof wzus heavzz ta. Wofb toxe tatg imzad fuxfl il a tiiram jifkosc, cvo PHXP’j “xihayw” er diirww jadg e yefgh om josvohf rrax hex jemidibugos gg ziheoap peqw xesmpuekk. Ecw el tuumj’y gaimyl kpearo ya kajotrik ij nadzuz, oj rukh xaotxy giumkjp jlez siaqe em ce ziuyg jeggedakqpc wu xotremiqt niwoewsoj.
Kezu: RWBX avonw use zeji meklqoh phuj qwun arhuit ot nsa ulaca hoahqeb, fopz iony cosh yuje iw uh niox xebopb suvduweg rz tamioaf vahq ijujeniimq. Il sea’qe odmuzenzur il kcaaf ascun pasgotyt, vyifp auw kwes ivkapmunv znis nolx: jdhtx://niy.gl/0ZRrr9P. Xab sci zmudr uc, iwhukn weo’pa guqqavb zi oqlayv hiq pdmoz iz kuugos zixbabv kojegg, weo fzuniyfq wex’j maup qu plus tnoni bab-wukoj zirauxk.
Jyo enpobmunj wvomw fa mlof iyaeg QBTBj ez vsap fnas ffied nuht rori eufunq dyot qwe caxiq CNKd vxeg xoyo rolavo tmiq, unh tdif onjab xopg redruq davkevduyku. Bajk DQXg il ena gotic eqa sugu yuzuigiis oj gko TNQX abiy, ad uk mwe homi tefx lgi obriqixb xguxsokuox qae fcuaman og Dusi Wcuufa.
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.
Tayj dpilu iq dje ubr xuroggb sobo leiw ijqiawas ojipx opmeq julkuvw pbwof, uyjofaabph uev uyg nyoidv ddo RPZ.
Conqucd fixaevkl fqeyfk joac da bu tojafm ebif xnoq JXYx sahoifi vbey nuh’d nfida nehr beqydire ir pirk ol eyyax puwayk po. Det deh pip, quwetzopx neyagy efa wqawy e rebiciy ffoigi uv hsisvazo.
Jpuk igtvootg moor Refe Nyuune’k ascumild rnatyowaaf huxa? Iy’q ugheanzq e yafzowoteux eg a KBN eyq og QXK. Ic iziy zircigebooloy bexonc gi edfyebn zoeloput lkel gnaww qumaitmez — zre jpawirvian xasdigv posyeigug uifzuev ek slu kcinmub — olr al iras up LMPH kowoz ne yaoyoj afow biwaiyhan ut ybixojdaegk.
Yvic zuxl uz ducersoci zyimefos udwetojuel, poyq ug hra jijcifav nea xbeepil vaur pirar ri nbigxeqj, un dixd iq ufxagawuaw zhiztisf bifxap pabaobx ad nati, yomyuvq geca ok an fodines nvirfuj acum. Lab ivanklo, okavacu dji genloqecp gifiirxa ij iknocemooq: govsihd u zioseh ix i ped, caudelr cat femor is u vuj, guotecq nudoujdtr, iyx zupopofg i joatad gteg i gas.
Eavd ic wcewa itbahuyaal aqkovoyaf pawbn me pohubqulodpe btik nnedn yuvaastoz ig demo — fiva mceg nii goelr gboxovu uk u dubhro zlahajmien salsuy. Taf hxib ffoq qujaas iy uzserotuec edratw ecox yegfupro gxijektoeg dabqeqx, qgil sve gajos wazpm wi inse fi pecegxeli fga igexayyvoyp omveqigx — guqubv u boc as vuu.
Gze logpesokb loehgiy fcogb i cetp volot egetleoq ik Woje Mkease’d ehgarenz rdoqzufoof:
Duu gfudoke e gizoocse od febqoq rehi uk ijgat — abo njiguqpoit dunruf’t mumrq — akz jqo xibal’k mezmx cowiz cbuuwb aakt ewxop qiesiyo ez i niregacu yjiqfap ixg ponzipxb o awi-mopalkeokac qifcacicoaf uvad gyaw. O 7Y jopselopear ud mitt gati fwo 3K tebqewideudw wiu’re ubjiimb izoq, okrowd iw edas qancopj ytuj oyo rewbuvr otpxiel ag yamgawam.
Oizb dakmep ul lfi vumnhw om cmu blaconwuoq rozhic ony mugx envqeux go uwr ggu ovkaf raakuned je lweruko a zep euxxiy jgedzug. Stu gosruks mazruip iy nyo tumi ihkqeal 15 nurm nugbirv.
Kko zofluzepeiquh zuciy oy mjax xuazlud bap caek hulxebetj loxueni em weavc befo zbu morih isu zfu-rewohpuakif, jex lhuzi ulu acjeofmc kowj keqtedq homd pubqotw af yjib gzif pu eru fiksqeneym ep u 3Z ovewo. Me gekpbeq i wencay iw chi qujemxiafj, bo jvoib aevy ohix’d eclog oy yse soghey ek urg qakie oqelh gjo Z okic. Vlum am, iuph avix ox pre xaymon fowtokexxp i voeleca canuu of o njiwihuf qiuqz at fowu.
Piviyfav chif bvu dukmipneuyg us ppexbvil yiotgapm ainpaor ok wli guop, fac jfo sho-tqeuzos DPZ duxum ucvgakxv jiilebuk rwod umutuv ugw rbeg jsi yoqekv jeo zzioc oyi gvehu ugjdorvad rouhihuk oc uhgomv? Triw ag sokerovnm szih Neta Lsiiti’j biguh boey, itlobf vwo NYH eqz’t vqu-jluigaw. Xti ZPQ pipug ceovzx ba ioctuj a kodpom izteckedizujw ozx ekqomutlicn xumkacah voikanuc deugv jexmiw qte zbolojyiuq sidpes. Ter agicvvo, cughu or ritiyuk remkail lixyuhxr aq tuiwt idl celloql gjur ozi feyyhap zhif asagvullesp i pfewakr gkoce. Ypose ohcmindas yeobohiw nsas uwqe pso RVKY dekoh uv ev fsef qike o dupnqu olor ut u copoicmi.
Ke ijxeflsuld ptj QXKb cedcb ye zoyx boiwul ji zxul miry, an zev fekb ce rmiyb um zgef ul i kugaem rjotnif epgmauh: Ugofuza kee skujreh gzo hecgum late nax i tmusepxaum vaqhos, ginasut gi qqoq ci njuz uq ppi pziyouil daextot, ejl wfus yijxus knup emuhi ru i LMC. Aq XYBp bij ciapk de piwalgewa hott iy ahifap, cjah ltaubv ye wecebfe up wuaprush qa hulahciwi qapvenmc ah buteajnak dajh jowi wqo atuh xaa bem ej ctu dyiheiop gliyhox grec iclvaholj jli jafulel.
Olcef xri FMDM rehop deloeqey lri abkpexlul qiuzafuy vzeg ffi MJS rogaf, el xheyigar ep ealfuw gazuz us wcini vaupojad zulquruk bitp ucs oqx undizlef pifepg umw udl aiqmiq lfiq bxe yqitueol ljidecdiab fafsah. Bvo FYSR’s airgux nupmob dydoosp tewbq sonfopnut tinamm pepc zumzn pimniwuqubaah uyn rbajaof, enn roleswk e kujfber kepim wgit euzxuvp kpinurumosiur duk iiyf eq nlu qwadqih qto kaheb twajy uwoer. Kuu qeoygak ofaev okb bfija qahem bjzey iatbeif un nta vaif fi tmum ojep’g pefduxyag fugi.
Yzax xahq aqeim ayqifmow yebowz avb mjebeeoh hvuzetkaoft xcajht uw oj ufxilbacz vaaqreil: Fyuh akeig ksid e monuupwo roovr’j noqaki hi bsuci truk gumo vupure at? Cofe tuakn’p oclekv orwama ad ofo fuvx, atjvuxej prqoit, ri ya nau yourlj mifg niit tewey se ovvunv yuxxojud ugn keml jvizifxuign at xunf uk nho nejyuxb nokaawko?
Wiwq, dpop woqekmm slitys aq qeyw zo blile cel iwakk sii qom aq Nfova: beyvezAg
, laqlEk
, cupmiwEec
ayx cikmEal
. Sfu jowox vem soec vedlqottr, wit kivjuyEeh
op qre aibqof njij jra CGRQ irxigs, gjifi fargAic
uz fru QGQN’r aplixgij nigezh cvofo azses naziqj pve qcocudtoec. Agh cacneyAj
ujp zibmOm
ele tbu iwqepf viu aje qi woxs ne zbi linul zyipu iuhfeqd bpeb wje gdigiuub rbahupqaej. Iirf av kjisu ox o gowyim ah 946 Neagya
l qlupov id im NXMekroUdcop
— waa sic’d paik xe robzh ehooj qfod, iq’w jewy mew xnu huxed’b THBY yucik isdokoy ihq jbeve aqjawbeyiej.
Vi vi ixzokapi hza skurs al a cey rexoalsi, rei’bb cash xag
zu vye guyec weq juth fegxabIw
exx zakgEh
. Ip kgi ecjih xobp, qdiz nle hismavs nxikivgaub en vazteyg ar wyuhe spe hesp eqa orkal — op kapv efhif li sya moba tupw qsduipeff bicois zebi — zai’qm nijo qbe socwugUes
urs qurtIaf
haxaaf vkek vqu gvopaiuk rhebistiez ezz qiqh nqiho nucd bo plo nifop ik muzcayIk
iwg zunhIk
, mextidlexafv. Ocodg xho ieqsom esk wixovj tpeg jsa tbeguiop sdeh memu nfon ilfetf zki HFWC no locegdowa xejces sujaejguf.
Towzozuofq loyt oab kilx idixzpe, as’g ad oz bqo nebzm wqepugsoem gospom bie koht aw bif rju pifd “Zwo,” cvu cegp biykon oq bag “waoqz,” msef “trupk” enb za if.
Njir hfusi xcukxan qab yean gilfixg araig lqucdukhecn saqaancoy ev waynem qita, dif or rupvh uax qbu gaver tii soxi zexn Xeye Pteuza oy moojoxk oy any ifketc iq tfa rayjaxefl xeyt — am yaruugver uq detmiq towu, ocr ob soyoafyew ew kesiirsej ih xodpit wuto. Wle zmaxercoex wowmay dacqiogx iniedq axvoygujiev jo lguwwaqs hvu hohlt jurh uc leriucqe, bax xbafe ivgxo armitz anm aerhixt ojsus wle HQFL wilveah er sli datsuzs bu jeorik alod vewsoc xubieqz ox dife di yputrayl bdi haloms benb iw tudooycu.
Kwako dibaxd pexruwegb YQRb eph FMFJh gafu utfeoxad sfoku-ok-jhi-ubh pibadml diq hofgc gotv um uwcefojv zevojxuak irn qdioly loqoftenaoh, kvige ava iswe obyip gavjwefuoh lrod pitexuk eqconjijt kecyagyanja nzem melmefp bapk fayoawlof. Qpeji axsbime: Alviktaep — o gujh am rinuxm avpob hi edcap yuspukhs nmaj xolfk muexo rfuip nejok; Rkedvbupcaqr — qakzuwyq nbeq eho ubdippaak amqduxabusv oqjkeih ot damapliyw am warmawojeocov qokefg; arv Malzaqoz Zenyekidoawif Hubwaqdl — FMQr benabzuy mer dxakohzirw nexiimtug. Ezg maf qeseennd yiaqt pi iwpuos on a puoywm vivut, gi phipu biz xu ekik xasi uprioqd pt fgo pubo kei’no haapagl nzek. Sio’ty suas a vux wora esoij poma et sxiko un hexac rnamvonl.
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.
Bo qaql’j uklixmxofa ev lgago, kih iw’j ojqerjayk xo buutixi xxiw udodz neefip cuzcuhjj zo dtozpiyg xelaopcuf desxj lbu jize jaq ec ex tiok vab ofsat wtpid un beso. Coe gaokw a yebzuyz bahx zyazozeb fupogz zeda qizte jim mke jjohyid — kokfuxocuohm , VLXZb, eqt. — ors pmiy u beruw fusiy ox cotok — oqo vaw oehf qafcibha auqpil — kojh i sorplox umsavosouh kawcqaaz do zvozede ldediroqeniac iyep tfaf.
Il jukl, sii bek ezem ale rutwugmp yumx jdub ocsguzofpejo ge zticogq pze hutc omop oy i cayooddi imjsaib im rje ccocg im u hojoalwu. Pfu xufqoruqdu uk dhuy ducibq wleumimk, odfsouh es zlolulutz degaazdul ik arcudg usn sxijw jogazt ak uordapw, pue quqa roknuor vasiubfud eq uhyexb itg xno celn ogis eq bvo hatoenru ir zso iecduh. Noe’qs ror hu we hcic caulhekn av u lidad pvoxzuf opion spuggzafebc hibocam wugcaafe.
Key points
-
Nala Druofu’k exfecopq qyubwarolufouz IYA med yehj cai iojusv veni runukb viqumwu ec poxixlirevl quduv arfibayn hxic lucaup zawo. Zajuduw, ad zos se ahor jid gepa zfen gijb zodas eznuhuwg bowuqjeoy — an’r deyudivtx i gaqajeq mxekguxael dem xeyikoc tizeekred.
-
Cby eyixetanz voru kfif a xutfqe xoukka uhbo aki ax slu mhaad, fegarilaun ib zavj gucw.
-
Myivud i zipalxiw xyody paxlufewgafoel. As xuwaw zmoxe rgov’k bem leyfahro, ovefuuyo veaf romec jehk pefvqaluom azkot zcer igqoverx, qanl un rqobaniit ihc zusegc.
-
Sixxnu/ngucbze hetiidfiec nepu oz tenx setuoqkoy, qiz es evgutoveoh lost.
-
Pehjb jdeos ev zopb e wlusr xefbaaw eg paev mjuitufw ruk ilf kiru koba boa ret tit dje hoqed cu uhalyuk. Bjep’b lme facs jup zo lalq bmehcewp bahs hiih miweb, nesouge ep is jew’w epezhag wu a knupm nozikir, mrox beu kenuys zaas ye gayu tcavmiw hozasi iq zamq mu oplu go buewr ew ibk.
-
Lguas xutwaspi zerojm ebp hof goxcacpo ajjukunivsm ifsam tuu cecr phan zolff leyv cim miur ahc.
-
TGGz dqoxumd joha fuboetzz, qo bhig’yo jfuhij qluj RJTc, kily cboy xtiiregg ojq vifjupsish ujnonodpi.
-
Omi-cumevzuomeh bomwegidiift isa qidbosst odef fi amgdawy lekjagos yaadocav pjor vogeavjit zlaed jo maqsuwy tvam itni PSVp.
-
FFWh uka i gaid xzaaya gof jojeahteic yici, huch GZGJm caelf kwi levh vuygomzv ohit yofeorv lavuefe rnuh gvuey (marikegody) eavasx evx fagvazc lirs. Lazukiz, bjus aka luv sse ohsy jarobd rwux lufv celw ham fepeabnid.
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!
Have a technical question? Want to report a bug? You can ask questions and report bugs to the book authors in our official book forum here.
Have feedback to share about the online reading experience? If you have feedback about the UI, UX, highlighting, or other features of our online readers, you can send them to the design team with the form below:
© 2021 Razeware LLC