Eining 4 / 11

Gervigreind í tækinu: Core ML, TensorFlow Lite og ML Kit

Hagnaður:

  • Geta til að ákveða á tækinu eða skýinu og velja rétta tólið (ML Kit, Core ML, TensorFlow Lite) byggt á friðhelgi einkalífs, ótengd þörf, gerð stærð og rafhlöðuskilyrði
  • Geta til að koma í veg fyrir þöglar villur með því að sannreyna inntaksforvinnslu (stærð og eðlileg) úr skjali líkansins í líkansamþættingu
  • Geta til að meta öryggisstigið og mæla niðurstöðuna með samþykki notenda og á raunverulegu tækinu, án þess að setja fram spár um lágt sjálfstraust sem algjöran sannleika.

Hingað til höfum við notað gervigreind sem hjálp til að flýta fyrir þróunarferlinu. Nú förum við yfir í annað hlutverk gervigreindar: hæfileikana sem er innbyggður í forritið. Nútíma símar hafa kraft til að keyra gervigreind módel eins og myndgreiningu, textaþýðingu, taluppskrift o.s.frv. beint á tækinu (í tækinu — í eigin örgjörva símans án þess að fara á netþjóninn). AI á tækinu; Það býður upp á mikla kosti umfram skýjalausnir hvað varðar hraða, næði og rekstur án nettengingar. Í þessari einingu munum við læra hvernig á að fella gervigreind inn í forritið með iOS Core ML, TensorFlow Lite (nú þekkt sem LiteRT) og tilbúnu lausninni ML Kit frá Google og hvernig á að nota gervigreind sem aðstoðarmann í þessari samþættingu.

Á tækinu eða skýinu?

Þetta er fyrsta og mikilvægasta byggingarfræðilega ákvörðunin. Gervigreind í tæki fjarlægir ekki gögn úr símanum - mikill sigur fyrir friðhelgi einkalífsins. Það er líka tafarlaust og virkar án nettengingar þar sem það er engin netleynd. Hins vegar takmarkast það af vinnslugetu tækisins og minni; Mjög stórar gerðir (t.d. risastórar tungur) passa ekki í símann eða tæma rafhlöðuna. Cloud AI, aftur á móti, býður upp á ótakmarkaðan kraft, en sendir gögn á netþjóninn, krefst netkerfis og skapar leynd.

viðmiðun

Á tækinu

Cloud (ský API)

Persónuvernd

Gögnin haldast á tækinu, sterk

Gögn fara á netþjóninn, athygli þarf

hraða

Augnablik, ekkert net

Fer eftir netleynd

ótengdur

Það virkar

Virkar ekki

Stærð líkans

Takmarkað (símatilföng)

ótakmarkað

rafhlaða/hiti

Áhrif við mikla notkun

Server undir álagi, tæki slakað á

Kostnaður

Ókeypis (uppspretta tækis)

Gjald fyrir hverja notkun

Ákvörðunarregla: Veldu á tækinu ef verið er að vinna úr persónulegum/viðkvæmum gögnum, þurfa að virka án nettengingar eða tafarlaus viðbrögð eru nauðsynleg. Ef þú þarft mjög stórt líkan skaltu snúa þér að skýinu. Þessi eining er með áherslu á tækið; Við munum fjalla um ský AI í næstu einingu.

Ábending: Gerðu tækið alltaf sjálfgefið fyrir eiginleika sem meðhöndlar viðkvæm gögn (heilsa, líffræðileg tölfræði, staðsetning). Setningin „gögn fara ekki úr tækinu“ er ómetanleg fyrir bæði persónuvernd og traust notenda og munar miklu um persónuverndarmerki verslunarinnar.

Þrjár leiðir: ML Kit, Core ML, TensorFlow Lite

ML Kit (Google) er auðveldasta leiðin til að byrja: það veitir tilbúna möguleika eins og textagreiningu (OCR — lestur texta á mynd), andlitsgreiningu, lestur strikamerkis, þýðing í nokkrum línum. Þú þarft ekki að þjálfa eigin líkan. Core ML (Apple) er skilvirkasta leiðin til að keyra eigin líkan eða tilbúið líkan á iOS; Það notar Apple's Neural Engine (gervi taugakerfis örgjörva) vélbúnað. TensorFlow Lite/LiteRT er þverpallalausn sem gerir þér kleift að keyra þitt eigið þjálfaða líkan á bæði Android og iOS.

Almennt samþættingarflæði með gervigreind fer svona:

  1. Skilgreining hæfileika. Skýrt markmið eins og "Ég vil lesa textann á myndinni."
  2. Val á leiðum. Ef það er tilbúið hæfileika, ML Kit; Core ML/TF Lite ef sérstök gerð er í boði.
  3. Fyrirmyndarsnið. .mlmodel (Core ML), .tflite (TF Lite). Útskýrir AI umbreytingarskrefin.
  4. Samþættingarkóði. Að hlaða líkaninu, forvinna inntakið, túlka úttakið.
  5. Frammistöðupróf. Hraði, minni, rafhlöðumæling á raunverulegu tæki.
Varúð: Algengustu gervigreind mistökin við samþættingu líkana í tæki er forvinnsla inntaks — að breyta myndinni í þá stærð og litasnið sem líkanið býst við. Ef líkanið býst við 224x224 dílum og þú gefur því 300x300, verður útkoman tilgangslaus, en þú færð ekki villuboð. Staðfestu forvinnslugildin úr skjali líkansins.

Að þekkja takmörk líkansins

Líkan á tæki tekur ákvarðanir byggðar á gögnunum sem það var þjálfað á. Hlutaþekkingarlíkan sem aðeins er þjálfað á myndum sem teknar eru á daginn verður rangt á næturmyndum. Líkanið hefur öryggisstig (öryggi — hversu öruggt líkanið er um svar sitt, venjulega á milli 0 og 1); Það er hættulegt að sýna notandanum niðurstöður með lágt traust sem nákvæmar. Til dæmis ætti húðblettaskönnunarforrit ekki að segja "örugglega góðkynja", heldur ætti að segja "spá líkansins er þessi, vinsamlegast ráðfærðu þig við lækni". Niðurstaða líkansins er tilmæli, ekki greining.

þrjú smámál

Tilvik 1 - Hröðun með OCR. Kostnaðarrakningarforrit hefur fjarlægt byrðina af því að slá inn kvittanir handvirkt með ML Kit textagreiningu. Notandinn tekur mynd af kvittuninni og upphæð og dagsetning fyllast út sjálfkrafa. Handvirkur innritunartími minnkaði úr 40 sekúndum í 8 sekúndur á hverja kvittun. Liðið lét notandann alltaf staðfesta upphæðina sem gervigreindin las; vegna þess að hrukkóttar kvittanir voru með 6% skekkjumörk. Sjálfvirkni + mannlegt samþykki var rétta jafnvægið.

Tilvik 2 — Forvinnsluvilla. Eitt teymi samþætti plöntuþekkingarlíkan við TensorFlow Lite; Á prófunartækinu voru niðurstöðurnar af handahófi. Vandamálið var að kóðinn sem gervigreindin myndaði staðlaði myndina ekki í það [0,1] svið sem líkanið bjóst við (pixlagildi voru skilin eftir á 0-255). Þegar staðlað var bætt við jókst nákvæmni úr 30% í 89%. Lexía: forvinnsla er þögul en banvæn.

Mál 3 - Friðhelgisgróði. Heilsuforrit greindi frávik úr hjartsláttargögnum með Core ML líkaninu í tækinu. Gögnin fóru aldrei á netþjóninn. Þetta val gerði forritinu kleift að fá setninguna „safnar ekki gögnum“ í persónuverndarmerkinu App Store og jók niðurhalshraða þess samanborið við keppinauta. Valið á tækinu var bæði siðferðilegt og viðskiptalega hagkvæmt.

Veik kvaðning / Sterk kvaðning

Veik kvaðning: "Bæta myndgreiningu við appið mitt."

Öflug kvaðning: "Bættu magn- og dagsetningareiginleikanum við Android/Kotlin forritið mitt. - Notaðu Google ML Kit textagreiningu (í tæki, án nettengingar) - Taktu mynd úr myndavél eða myndasafni - Dragðu magnið og dagsetninguna út úr viðurkenndum texta með regex - Kyndu niðurstöðuna fyrir notandanum til samþykkis í EDITABLE reitnum, sjálfvirkt vistunarflæði og endurvinnsla myndavélar og niðurvinnsla. útskýrðu skrefin."

Afritanleg sniðmát

Sniðmát fyrir val á slóð: "Ég vil búa til eftirfarandi eiginleika: [eiginleika]. Ætti það að vera á tækinu eða í skýinu? Berðu saman út frá: næði, þörf án nettengingar, gerð stærð, rafhlöðu, kostnað. Mældu með viðeigandi tóli (ML Kit / Core ML / TF Lite) og rökstuddu."

Samþættingarsniðmát: "Skrifaðu [líkan/getu] samþættingu fyrir [vettvang]:1) Hleðsla líkans2) Forvinnsla inntaks (væntanleg stærð og eðlileg) 3) Ályktunarsímtal4) Túlkun úttaks og öryggisprófunar5) Viðvörun til notanda um niðurstöður með lágt sjálfstraust. Minntu mig á að sannreyna forvinnslugildin úr skjölum líkansins.

Sniðmát fyrir sjálfstraustskora: "Íhugaðu öryggisstig í þessum ályktunarkóða:- Sýndu niðurstöðu 'nákvæmt' undir viðmiðunarmörkum (t.d. 0,6)- Sýndu notanda 'þetta er mat' athugasemd - Vísaðu til sérfræðings ef mikilvægt svæði (heilsa, öryggi)[kóði]"

Sniðmát til sannprófunar á frammistöðu: "Skráðu þær mæligildi sem ég þarf að mæla á raunverulegu tækinu fyrir þessa samþættingu líkana í tækinu: ályktunartími, aukning minni, áhrif rafhlöðunnar, hitun. Segðu mæliaðferðina fyrir hvert."

Algeng mistök

  • Sleppa forvinnslu eða gera það rangt. Röng stærð/normalisering framleiðir hljóðlaust rangar niðurstöður.
  • Hunsa sjálfstraustið. Að setja fram áætlun með lágt traust sem nákvæmt mun villa um fyrir notandanum.
  • Að prófa líkanið í keppinautnum. Raunverulegur tækjahraði og rafhlaða eru mjög mismunandi; alltaf mæla á alvöru vélbúnaði.
  • Að senda viðkvæm gögn í skýið að óþörfu. Að velja ský þegar mögulegt er á tækinu er persónuverndaráhætta.
  • Hunsa líkan stærð. Stór öpp eykur niðurhalsstærð og hrynur á litlum vélbúnaði.
  • Að gleyma þjálfunarmörkum líkansins. Líkanið er rangt í því ástandi sem það sér ekki (nótt, annað tungumál); Gerðu notandanum þetta ljóst.

Í stuttu máli

Gervigreind í tækinu veitir næði, hraða og notkun án nettengingar með því að halda gögnum í símanum; Takmörkin eru afl tækisins og stærð líkansins. ML Kit er notað fyrir út-af-the-box getu, Core ML (iOS) og TensorFlow Lite (cross-platform) eru notuð fyrir sérsniðnar gerðir. Hinn þögli morðingi samþættingar er óviðeigandi forvinnsla; Inntaksstærð og staðlun eru staðfest úr skjölum líkansins. Hverri niðurstöðu fylgir öryggiseinkunn og spár um lágt öryggi eru ekki settar fram sem alger sannleikur. Ákvarðanir eru mældar á raunverulegu tækinu, ekki keppinautnum.

Umsóknarverkefni

Fyrir „textalestur úr mynd“ eða „strikamerkjalestur“, spyrðu gervigreindina hvort það eigi að vera í tækinu eða í skýinu með „Slóðavalssniðmátinu“, biðjið síðan um ML Kit-undirstaða teikningu með „samþættingarsniðmátinu“. Staðfestu að forvinnsluskrefið og notendasamþykki/breytingarflæði séu til staðar í kóðanum. Stilltu þröskuld trausts og skrifaðu hvað þú munt gera ef niðurstaðan er lítið traust.

gátlisti

  • [ ] Ég tók ákvörðunina á tækinu/skýinu út frá forsendum
  • [ ] Ég valdi rétta tólið (ML Kit / Core ML / TF Lite)
  • [ ] Ég sannreyndi forvinnsluvíddina og staðlaða út frá skjölum líkansins
  • [ ] Ég athugaði trauststigið og varaði við lágum niðurstöðum trausts
  • [ ] Ég kynnti niðurstöðuna fyrir notandanum með samþykki/breyta, ég vistaði hana ekki í blindni
  • [ ] Ég mældi frammistöðu á raunverulegu tækinu, ekki keppinautnum