Eining 6 / 11

Módelbygging: Skilgreining vandamála, val á reiknirit og þjálfun/prófaskipting

Hagnaður:

  • Hæfni til að skilgreina tegund vandamála (flokkun, aðhvarf, þyrping) og árangursviðmið í samræmi við raunkostnað starfsins
  • Geta til að skipta gögnunum heiðarlega (án þess að snerta prófunarsettið; tímaröð í tímaröðinni) og koma á lekalausum matsgrundvelli
  • Geta til að velja túlkanlegt líkan með því að byrja á einfaldri grunnlínu og bæta við flókið aðeins þegar það á það skilið.

Hingað til höfum við safnað gögnum, hreinsað þau, kannað þau og framleitt eiginleika. Nú komum við að alvöru verkinu, að byggja fyrirmynd. Líkan er stærðfræðileg uppbygging sem lærir mynstur af gögnum og framleiðir spár fyrir nýjar aðstæður. En mikilvægasti hluti þess að byggja líkan er ekki kóðinn sjálfur, heldur tvær ákvarðanir á undan honum: að skilgreina rétta vandamálið og skipta gögnunum rétt. AI er öflugur ráðgjafi í vali á reikniritum, kóðaritun og breytustillingu; en það er undir einum komið að ákveða hverju hann spáir og hvað árangur þýðir. Illa skilgreint vandamál virkar ekki jafnvel með fullkomlega skrifuðu líkani.

Skilgreining vandamála fyrst: hverju spáum við

Sérhvert líkanastarf byrjar á spurningu og þessi spurning ákvarðar gerð líkansins. Flokkun — úttakið er flokkur: "Mun þessi viðskiptavinur fara eða vera áfram?", "Er þessi viðskipti fölsuð?". Regression (á ensku regression - úttakið er tala): "Hversu mikið er þetta hús virði?", "Hversu margar pantanir koma í næsta mánuði?". Klustun (skipta ómerktum gögnum í náttúrulega hópa): "Hversu marga náttúrulega hluta er viðskiptavinum mínum skipt í?".

Seinni hluti vandamálayfirlýsingarinnar er árangursviðmiðið: hvað þýðir það að þetta líkan sé „gott“? Í svikamódeli er mun dýrara að sakna svikara en að hindra óvart heiðarlegan viðskiptavin; Þess vegna kemur ekki „almenn nákvæmni“ heldur „hlutfall svikara“ til sögunnar. Ef þú skilgreinir ekki þessa viðmiðun frá upphafi, ásamt eiganda fyrirtækisins, endar þú með „mjög nákvæmt“ líkan sem virkar ekki (við förum dýpra í mælikvarða í einingu 7).

Varúð: „Nákvæmni“ getur verið villandi. Ef 10 af 1000 færslum eru svik, mun heimskulegt líkan sem segir „enginn er sviksamlegur“ gefa 99% nákvæmni en mun ekki ná einum svikara. Veldu árangursskilyrði út frá raunverulegum kostnaði við vandamálið.

Þjálfun/prófaskipting: heiðarleg skoðun á líkaninu

Að prófa líkan með þeim gögnum sem það hefur lært er eins og að spyrja nemandann sömu spurninganna og hann/hún lærði á prófinu; Hann fær háa einkunn en sýnir ekki það sem hann raunverulega kann. Svo við skiptum gögnunum í tvennt (oft þrjú):

  • Æfingasett (þjálfunarsett á ensku, venjulega 70-80%): Líkanið lærir á þetta.
  • Prófunarsett (prófunarsett, venjulega 20-30%): Líkanið sér þetta alls ekki; raunveruleg frammistaða er mæld hér.
  • Staðfestingarsett: Millisett notað fyrir líkanstillingu (hvaða færibreytan er betri); að halda prófunarsettinu „hreinu“.

Grunnreglan: prófunarsettið er aldrei snert á meðan á þjálfun stendur. Stærð, kóðun, val á eiginleikum - allt er einfaldlega lært af þjálfunarsettinu, síðan beitt við prófun (lekareglan frá einingu 5). Prófunarsettið er í fyrsta sinn sem fyrirsætan sér raunveruleikann; Ef þú kveikir á honum of snemma muntu aldrei vita raunverulegan árangur.

Undantekning frá tímaröð: Ef gögnin þín eru tímaháð (sala, hlutabréfamarkaður, eftirspurn) er ekki gerð tilviljunarkennd skipting. Vegna þess að handahófskennd skipting veldur því að líkanið sér framtíðina og spáir í fortíðina - þetta er leki. Skiptu í staðinn í tímaröð: þjálfaðu með gamla tímabilinu, prófaðu með nýja tímabilinu.

Val á reiknirit: frá einföldum til flókinna

Algengustu mistök byrjenda eru að byrja á flóknustu gerðinni. Rétt nálgun er hið gagnstæða: stofnaðu fyrst einfalda grunnlínu. "giska alltaf á meirihlutaflokkinn" í flokkun; „áætla alltaf meðaltalið“ í afturför. Þetta heimskulega líkan gefur grunnlínu; Ef raunverulegt líkan þín getur ekki staðist þetta er vandamál. Farðu síðan yfir í einföld og túlkanleg líkön.

fyrirmynd

Tegund vandamál

sterkur punktur

veikleiki

Grunnlína (meirihluti/meðaltal)

bæði

Gefur viðmið

lærir ekki

Logistic afturför

Flokkun

Einfalt, túlkanlegt

Aðeins línuleg tengsl

Línuleg aðhvarf

afturför

Einfalt, hratt

línuleg forsenda

ákvörðunartré

bæði

túlkanlegt

Auðvelt að leggja á minnið

tilviljunarkenndur skógur

bæði

Sterkt, endingargott

Minna túlkandi

Aukning á halla (XGBoost osfrv.)

bæði

mjög sterkur

Erfitt að stilla, hætta á að leggja á minnið

Regla: veldu einfaldasta "nógu gott" líkanið. Túlkanleiki er meira virði en vald í flestum viðskiptasamhengi; Það er betra að útskýra höfnun lána "vegna þess að skuldahlutfall þitt er hátt" en "af því að svarti kassinn sagði það."

þrjú smámál

Tilfelli 1 — Röng skilgreining vandamála. Hópur byggði upp flokkunarlíkan sem byggir á „er viðskiptavinurinn ánægður“ en valdi „nákvæmni“ sem árangursviðmið. Í gögnunum voru 88% viðskiptavina ánægðir; Líkanið fékk 88% nákvæmni með því að kalla alla „ánægða“ og náði aldrei óánægðu fólki — jafnvel þó að raunverulegt markmið hafi verið að finna það. Lexía: veldu árangursviðmið út frá raunverulegum tilgangi.

Tilfelli 2 — Tímaleki í hólfinu. Í eftirspurnarspáverkefni var gögnum skipt af handahófi. Líkanið gaf 93% nákvæmni en hrundi í framleiðslu vegna þess að í þjálfun hafði það spáð janúar, síðan nóvember, með desembergögnum - það hafði séð framtíðina. Þegar við fórum yfir í tímaröð skiptingu jókst raunveruleg frammistaða í 74%. Kennsla: tímaröð skipting í tímaröð.

Mál 3 — Óþarfa flókið. Einn sérfræðingur byrjaði beint með djúpt taugakerfi, stillti það í margar vikur og fékk 81% nákvæmni. Þá fékk samstarfsmaður 80% með 20 línum af skipulagslegum aðhvarfi - miklu hraðari, túlkanlegt og auðveldara að viðhalda. Lexía: Byrjaðu á grunnlínu og einföldu líkani, bættu við flókið þegar það á skilið.

Fjögur afritanleg sniðmát

1) Skýra skilgreiningu vandamálsins:

Þitt hlutverk: fyrirsæturáðgjafi. Hjálpaðu mér að skilgreina þetta starf: "Ég vil draga úr viðskiptavinum." Spyrðu mig og útskýrðu: (1) er þetta flokkun eða afturför, (2) hver er nákvæmlega markbreytan og hvernig ætti að skilgreina hana, (3) hver ætti að vera árangursviðmið og hvers vegna. Ákvörðunin er mín; þú setur fram spurningar og valkosti.

2) Öruggt æfinga-/prófunarhólf:

Skiptu df mínum í þjálfun/próf 80%/20%. Halda stéttadreifingu (stratify).random_state=42. Þetta er EKKI TÍMARÖÐ (óháðar athuganir). Prentaðu flokkahlutfall hvers setts eftir skiptingu. Gefðu bara klofningskóðann í prófunarsettið án þess að beita neinni umbreytingu.

3) Tímaröð tímaröð skipting:

Gögnin eru tímaháð (dagsetningardálkur: order_date). EKKI af handahófi, skiptu í tímaröð: elsta 80% þjálfun, nýjasta 20% próf. Prentaðu út þjálfunar- og prófunartímabilin svo ég geti sannreynt að framtíðin hafi ekki lekið.

4) Að setja grunnlínu:

Ég á við flokkunarvandamál að stríða (markmið: 0/1 fráfall). Settu fyrst grunnlínu: mældu nákvæmni þjálfunar/prófa með DummyClassifier, sem spáir alltaf fyrir um meirihlutaflokkinn. Þjálfðu síðan einfaldan logistic regression og berðu saman hvort hún slær grunnlínuna. Sýndu mæligildi þessara tveggja hlið við hlið.

Veik kvaðning / Sterk kvaðning

Veik kvaðning:

Byggðu besta líkanið með þessum gögnum.

„Best“ er óskilgreint; Það er engin vandamálategund, ekkert markmið, engin árangursviðmið og engin skiptingarstefna. AI býr til handahófskennt mynstur, hugsanlega leka.

Öflug tilvitnun:

Hlutverk þitt: aðstoðarmaður fyrirsæta. Vandamál: flokkun, miða á "hringi" (0/1), það er ójafnvægi í flokki (~12% fráfall). Árangursviðmiðun: Það er forgangsverkefni að innkalla þá sem hætta. Gagnaóháð athugun (ekki tímaraðir). Verkefni: (1) 80/20% lagskipt skipting, (2) DummyClassifier grunnlína, (3) skipulagsfræðileg aðhvarf, allar umbreytingar í leiðslu og aðeins lært af þjálfun. Ekki snerta prófunarsettið áður en það er skipt.

Hér eru tegund vandamála, ójafnvægi, viðmiðun og lekamæling skýr.

Algeng mistök

  • Að velja ekki árangursskilyrði í samræmi við raunverulegan tilgang. „Nákvæmni“ í ójafnvægi gagna er villandi; Ef þú vilt fanga minnihlutastéttina kemur muna fram á sjónarsviðið.
  • Að snerta prófunarsettið meðan á þjálfun stendur. Að gera skala/kóðun fyrir skiptingu er lekur og felur raunverulegan árangur.
  • Tilviljunarkennd skipting í tímaröð. Fyrirmyndin sér framtíðina, hrynur í framleiðslu; Tímabundin skipting er nauðsynleg.
  • Stökkva inn í flókið líkan án þess að setja grunnlínu. Án viðmiðunar geturðu ekki vitað hvort líkan sé virkilega gott eða ekki.
  • Hunsa túlkunarhæfni. Í viðskiptaákvörðunum er einfalt útskýranlegt líkan oft verðmætara en svartur kassi.
Ábending: Áður en þú byrjar að smíða líkan skaltu skrifa eina setningu: "Þetta líkan mun spá fyrir um _____, árangur þess verður mældur með mæligildinu _____, vegna þess að raunverulegur kostnaður við starfið er _____." Ef þú getur ekki fyllt út þessa setningu ertu ekki tilbúinn að skrifa kóða ennþá.

Í stuttu máli

Mikilvægasti hluti þess að byggja upp líkan er ekki kóðinn, heldur ákvarðanirnar sem eru á undan honum: skilgreina rétta vandamálið (flokkun eða aðhvarf, hvert er markmiðið, hvert er árangursviðmiðið) og skipta gögnunum á réttlátan hátt (án þess að snerta prófunarsettið; tímaröð í tímaröðinni). Byrjaðu alltaf á einfaldri grunnlínu og bættu aðeins við flókið þegar það á það skilið; túlkanleiki er metinn framar völdum í flestum viðskiptasamhengi. AI er öflugur ráðgjafi í vali á reikniritum og kóða, en maðurinn ákveður hverju þú spáir og hvers vegna.

Umsóknarverkefni

Skilgreindu spávandamál og kláraðu eftirfarandi setningu skriflega: „Þetta líkan mun spá fyrir um ___ (flokkun/aðhvarf), markmiðið er ___, árangursviðmiðunin er ___ vegna ___.“ Skiptu síðan gögnunum með réttri stefnu (tímaröð ef það er tímaröð), settu grunnlínu og mæltu hvort einfalt mynstur brjóti þá grunnlínu.

gátlisti

  • [ ] Hef ég skýrt skilgreint tegund vandamálsins (flokkun/aðhvarf) og markmiðið?
  • [ ] Hef ég valið árangursviðmið út frá raunverulegum kostnaði við starfið?
  • [ ] Skildi ég prófunarsettið ósnortið meðan á þjálfun stóð?
  • [ ] Ef það er tímaröð, skipti ég henni í tímaröð?
  • [ ] Hef ég lagt grunnlínu áður en ég fer yfir í flókna líkanið?