AI joprojām neizdodas, izmantojot robustu roku rakstītu ciparu atpazīšanu (un kā to labot)

Dziļā apmācība tika slavēta, lai atrisinātu visu, sākot no pašbraucošām automašīnām un beidzot ar pasaules klimatu. Un tomēr dziļi neironu tīkli (dziļās mācīšanās darba zirgs) nespēj apmierinoši atrisināt pat visparastākos uzdevumus: spēcīgu ar roku rakstītu ciparu atpazīšanu. Apsveriet šādus piemērus:

“Normāli” attēli ir klasificēti lieliski, bet…

Cipars zem katra cipara parāda tīkla prognozi. Tas visus šos paraugus klasificē pareizi. Tātad, kāda ir problēma? Apsveriet šādus attēlus:

… Mazas modifikācijas var pilnībā novirzīt no sliedēm tīkla lēmumus.

Mēs nedaudz pārveidojām attēlus, bet tagad neironu tīkls tos visus nepareizi klasificē. Šāda veida “pretrunīgi vērtējumi” ir zināmi daudzus gadus. Tās galvenokārt ietekmē katru dziļās apmācības lietojumprogrammu, sākot no objektu atpazīšanas, semantiskā attēla segmentēšanas, runas atpazīšanas līdz surogātpasta filtrēšanai. Diezgan daudz tiek ietekmēts katrs šobrīd izvietotais neironu tīkls, un tam var uzbrukt (ieskaitot, piemēram, Siri vai Amazon Echo).

Bet tas kļūst vēl sliktāk: apsveriet šo attēlu kopu:

Neironu tīkls šos attēlus ar lielu pārliecību klasificē kā “nulles”.

Vai jūs atpazīstat pat mājienu ar roku rakstītu ciparu? Nē? Neironu tīkls ir ārkārtīgi pārliecināts, ka tās visas ir nulles. Šie tā saucamie neatpazīstamie attēli izceļ tikai vēl vienu mūsdienu neironu tīklu problēmu: tie uzvedas pilnīgi neparasti, ja ieejas atrodas pārāk tālu no “parastajiem” datiem (šajā gadījumā troksnis, nevis cipari).

Daudzi ir atzinuši šo noturības problēmu kā vienu no galvenajiem ceļiem uz padziļinātas mācīšanās ieviešanu. Ne tikai drošības apsvērumu dēļ, bet arī tāpēc, ka šīs kļūmes uzsver, ka mums nav ne jausmas, kā neironu tīkli patiesībā darbojas un kuras attēlu funkcijas viņi izmanto klasificēšanai. To dokumentu skaits, kuri mēģina atrisināt šo problēmu, pēdējos divos gados ir strauji pieaudzis, taču pagaidām bez rezultātiem. Faktiski neironu tīkls, kuru mēs izmantojām, lai klasificētu iepriekš rakstītos ciparus, šobrīd tiek atzīts par visstingrāko modeli (Madry et al.). Šis fakts parāda, cik tālu mēs esam no spēcīgiem atpazīšanas modeļiem - pat vienkāršiem ar roku rakstītiem cipariem.

Nesenajā rakstā mēs ieviešam jaunu koncepciju, lai attēlus robustu klasificētu. Ideja ir ļoti vienkārša: ja attēlu klasificē kā septiņu, tad tam vajadzētu saturēt aptuveni divas līnijas - vienu īsāku, otru garāku -, kas vienā galā pieskaras viena otrai. Tas ir ģeneratīvs veids, kā domāt par cipariem, kas cilvēkiem ir diezgan dabiski un kas ļauj mums viegli pamanīt signālu (līnijas) pat lielā trokšņa un perturbāciju laikā. Ja būtu šāds modelis, būtu viegli iepriekš klasificētos sacīkstes piemērus klasificēt pareizajā klasē. Ciparu ģeneratīvā modeļa (teiksim nulles) apgūšana ir diezgan vienkārša (izmantojot variācijas automātisko kodētāju) un īsumā darbojas šādi: mēs sākam no traucēkļu mainīgo latentas telpas (kas varētu uztvert tādas lietas kā cipara biezums vai slīpums). un tiek apgūti no datiem) un ģenerē attēlu, izmantojot neironu tīklu. Pēc tam mēs parādīsim ar roku rakstītu nulles piemērus un apmācīsim tīklu ražot līdzīgus. Apmācības beigās tīkls ir uzzinājis par rokrakstu nulles dabiskajām variācijām:

Ar nulles ģeneratīvo modeli tiek apgūtas tipiskas ar roku rakstītu ciparu variācijas (labajā pusē).

Mēs iemācāmies šādu ģeneratīvu modeli katram ciparam. Tad, kad nāk jauna ievade, mēs pārbaudām, kurš ciparu modelis var vislabāk tuvināt jauno ieeju. Šo procedūru parasti sauc par sintēzes analīzi, jo mēs analizējam attēla saturu pēc modeļa, kurš to vislabāk var sintezēt. No otras puses, standarta iepriekšējiem tīkliem nav atgriezeniskās saites mehānismu, lai pārbaudītu, vai ieejas attēls patiešām atgādina secināto klasi:

Sākotnējie tīkli tieši pāriet no attēla uz klasi, un viņiem nav iespēju pārbaudīt, vai klasifikācijai ir jēga. Mūsu sintēzes analīzes modelis pārbauda esošās attēla pazīmes un klasificē pēc tā, kurai klasei ir visnoderīgākā.

Tā patiešām ir galvenā atšķirība: iepriekšējiem tīkliem nav iespēju pārbaudīt viņu prognozes, jums viņiem ir jāuzticas. No otras puses, mūsu sintēzes analīzes modelis, pirms pāriet uz secinājumu, pārbauda, ​​vai ievadē tiešām ir noteiktas attēla pazīmes.

Lai šī procedūra darbotos, nav vajadzīgs ideāls ģeneratīvais modelis. Mūsu roku rakstīto ciparu modelis noteikti nav ideāls: paskatieties uz izplūdušajām malām. Neskatoties uz to, mūsu modelī var ļoti precīzi (99,0%) klasificēt ar roku rakstītus ciparus, un tā lēmumiem ir liela jēga cilvēkiem. Piemēram, modelis vienmēr signalizēs par zemu uzticamību trokšņa attēliem, jo ​​tie neizskatās pēc visiem cipariem, ko tas ir redzējis iepriekš. Trokšņiem vistuvākie attēli, kurus sintēzes analīzē joprojām klasificē kā ciparus ar augstu ticamību, cilvēkiem rada daudz jēgas:

Izmantojot mūsu analīzes sintēzes modeli, mēs centāmies sintezēt neatpazīstamus attēlus, kas joprojām tiek klasificēti kā nulles ar augstu ticamību. Tas ir labākais, ko saņēmām.

Pašreizējā Madrija et al. mēs noskaidrojām, ka modeļa klasifikācijas nobraukšanai no sliedēm bieži pietiek ar minimāliem tīru ciparu traucējumiem. Veicot to pašu mūsu sintēzes analīzes modelim, iegūst pārsteidzoši atšķirīgus rezultātus:

Pretrunīgi piemēri sintēzes analīzes modelim. Vai varat uzminēt, kāds bija sākotnējais numurs?

Ņemiet vērā, ka perturbācijām ir daudz jēgas cilvēkiem un dažreiz ir grūti izlemt, kurā klasē attēls jāklasificē. Tas ir tieši tas, ko mēs sagaidām, ja notiks spēcīgs klasifikācijas modelis.

Mūsu modelim ir vairākas citas ievērojamas iezīmes. Piemēram, analīzes pa sintēzei modeļa lēmumus ir daudz vieglāk interpretēt, jo var tieši redzēt, kuras pazīmes ietekmē modeli attiecībā uz konkrētu lēmumu. Turklāt mēs pat varam iegūt dažas zemākas tā izturības robežas.

Sintēzes analīzes modelis vēl īsti neatbilst cilvēka uztverei, un vēl ir tāls ceļš ejams (pilnu analīzi skatiet mūsu manuskriptā). Neskatoties uz to, mēs uzskatām, ka šie rezultāti ir ārkārtīgi iepriecinoši, un mēs ceram, ka mūsu darbs pavērs ceļu uz jaunu klasifikācijas modeļu klasi, kas ir precīza, stabila un interpretējama. Mums joprojām ir daudz jāiemācās par šiem jaunajiem modeļiem, vismaz par to, kā padarīt secinājumus efektīvākus un kā tos pielāgot sarežģītākām datu kopām (piemēram, CIFAR vai ImageNet). Mēs smagi strādājam, lai atbildētu uz šiem jautājumiem, un ceram nākotnē dalīties ar jums vairāk rezultātu.

Ceļā uz pirmo MNIST neitralizētā neironu tīkla modeli

Lukas Šots, Jonas Raubers, Matiass Bethge, Vīlands Brendels
arXiv: 1805.09190