Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Estrenat recentment article, que mostra una bona tendència en l'aprenentatge automàtic en els darrers anys. En resum: el nombre d'iniciatives d'aprenentatge automàtic ha caigut en picat en els últims dos anys.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?
Bé. Vegem "si la bombolla ha esclatat", "com seguir vivint" i parlem d'on ve aquest gargot en primer lloc.

Primer, parlem de quin va ser el reforç d'aquesta corba. D'on venia? Probablement ho recordaran tot victòria aprenentatge automàtic el 2012 al concurs ImageNet. Després de tot, aquest és el primer esdeveniment mundial! Però en realitat aquest no és el cas. I el creixement de la corba comença una mica abans. Ho dividiria en diversos punts.

  1. El 2008 va sorgir el terme "big data". Van començar els productes reals apareixen des del 2010. El big data està directament relacionat amb l'aprenentatge automàtic. Sense big data, el funcionament estable dels algorismes que existien en aquell moment és impossible. I aquestes no són xarxes neuronals. Fins al 2012, les xarxes neuronals eren reserva d'una minoria marginal. Però aleshores van començar a funcionar algorismes completament diferents, que havien existit durant anys, o fins i tot dècades: svm(1963,1993, XNUMX), Bosc aleatori (1995), AdaBoost (2003),... Les startups d'aquells anys s'associen principalment al tractament automàtic de dades estructurades: caixes registradores, usuaris, publicitat, molt més.

    Un derivat d'aquesta primera onada és un conjunt de frameworks com XGBoost, CatBoost, LightGBM, etc.

  2. El 2011-2012 xarxes neuronals convolucionals va guanyar diversos concursos de reconeixement d'imatge. El seu ús real es va retardar una mica. Diria que el 2014 van començar a aparèixer startups i solucions molt significatives. Van trigar dos anys a digerir que les neurones encara funcionen, per crear marcs convenients que es poguessin instal·lar i llançar en un temps raonable, per desenvolupar mètodes que estabilitzessin i accelerarien el temps de convergència.

    Les xarxes convolucionals van permetre resoldre problemes de visió per ordinador: classificació d'imatges i objectes en la imatge, detecció d'objectes, reconeixement d'objectes i persones, millora de la imatge, etc., etc.

  3. 2015-2017. El boom d'algorismes i projectes basats en xarxes recurrents o els seus anàlegs (LSTM, GRU, TransformerNet, etc.). Han aparegut algorismes de veu a text que funcionen bé i sistemes de traducció automàtica. Es basen en part en xarxes convolucionals per extreure característiques bàsiques. En part pel fet que vam aprendre a recollir conjunts de dades molt grans i bons.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

“Ha esclatat la bombolla? El bombo està sobreescalfat? Van morir com a blockchain?"
D'una altra manera! Demà Siri deixarà de funcionar al teu telèfon i passat demà Tesla no sabrà la diferència entre un gir i un cangur.

Les xarxes neuronals ja funcionen. Estan en desenes de dispositius. Realment et permeten guanyar diners, canviar el mercat i el món que t'envolta. Hype sembla una mica diferent:

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

És que les xarxes neuronals ja no són una cosa nova. Sí, molta gent té grans expectatives. Però un gran nombre d'empreses han après a utilitzar les neurones i a fer productes basats en elles. Les neurones proporcionen noves funcionalitats, permeten reduir llocs de treball i reduir el preu dels serveis:

  • Les empreses fabricants estan integrant algorismes per analitzar defectes a la línia de producció.
  • Les explotacions ramaderes compren sistemes per controlar les vaques.
  • Combinacions automàtiques.
  • Centres de trucades automatitzats.
  • Filtres a SnapChat. (bé, almenys alguna cosa útil!)

Però el més important, i no el més obvi: "No hi ha més idees noves, o no aportaran capital instantani". Les xarxes neuronals han resolt desenes de problemes. I encara decidiran més. Totes les idees òbvies que existien van donar lloc a moltes startups. Però tot el que hi havia a la superfície ja havia estat recollit. Durant els últims dos anys, no he trobat cap idea nova per a l'ús de xarxes neuronals. Ni un sol enfocament nou (bé, d'acord, hi ha alguns problemes amb els GAN).

I cada startup posterior és cada cop més complexa. Ja no requereix dos nois que entrenin una neurona amb dades obertes. Requereix programadors, un servidor, un equip de marcadors, suport complex, etc.

Com a resultat, hi ha menys startups. Però hi ha més producció. Necessites afegir el reconeixement de matrícules? Hi ha centenars d'especialistes amb experiència rellevant al mercat. Pots contractar algú i en un parell de mesos el teu empleat farà el sistema. O compra ja fets. Però fent una nova startup?... Boig!

Heu de crear un sistema de seguiment de visitants: per què pagar un munt de llicències quan podeu fer-ne les vostres en 3-4 mesos, milloreu-ho per al vostre negoci.

Ara les xarxes neuronals estan passant pel mateix camí que han recorregut desenes d'altres tecnologies.

Recordes com ha canviat el concepte de "desenvolupador de llocs web" des de 1995? El mercat encara no està saturat d'especialistes. Hi ha molt pocs professionals. Però puc apostar que d'aquí a 5-10 anys no hi haurà molta diferència entre un programador Java i un desenvolupador de xarxes neuronals. Hi haurà prou d'ambdós especialistes al mercat.

Simplement hi haurà una classe de problemes que les neurones podran resoldre. Ha sorgit una tasca: contractar un especialista.

"Que segueix? On és la intel·ligència artificial promesa?"

Però aquí hi ha un petit però interessant malentès :)

La pila de tecnologia que existeix avui, pel que sembla, no ens portarà a la intel·ligència artificial. Les idees i la seva novetat s'han esgotat en gran mesura. Parlem del que manté el nivell de desenvolupament actual.

Restriccions

Comencem amb els cotxes autònoms. Sembla clar que és possible fer cotxes totalment autònoms amb la tecnologia actual. Però d'aquí a quants anys això passarà no està clar. Tesla creu que això passarà d'aquí a un parell d'anys...


N'hi ha molts d'altres especialistes, que estimen que són 5-10 anys.

Molt probablement, al meu entendre, d'aquí a 15 anys la infraestructura de les ciutats canviarà per si mateixa de tal manera que l'aparició dels cotxes autònoms esdevingui inevitable i esdevingui la seva continuació. Però això no es pot considerar intel·ligència. Tesla modern és una canalització molt complexa per al filtratge de dades, cerca i reciclatge. Aquestes són regles-regles-regles, recollida de dades i filtres sobre elles (aquí aquí He escrit una mica més sobre això, o mira des de això marques).

El primer problema

I aquí és on veiem primer problema fonamental. Dades massives. Això és exactament el que va donar lloc a l'actual onada de xarxes neuronals i aprenentatge automàtic. Avui en dia, per fer quelcom complex i automàtic, necessites moltes dades. No només molt, sinó molt, molt. Necessitem algorismes automatitzats per a la seva recollida, marcatge i ús. Volem que el cotxe vegi els camions de cara al sol; primer n'hem de recollir un nombre suficient. Volem que el cotxe no es torni boig amb una bicicleta cargolada al maleter: més mostres.

A més, amb un exemple no n'hi ha prou. Centenars? Milers?

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Segon problema

Segon problema — Visualització del que ha entès la nostra xarxa neuronal. Aquesta és una tasca molt no trivial. Fins ara, poca gent entén com visualitzar-ho. Aquests articles són molt recents, aquests són només alguns exemples, encara que llunyans:
Visualització obsessió per les textures. Mostra bé en què tendeix a fixar-se la neurona + allò que percep com a informació inicial.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?
Visualització Atenció a traduccions. De fet, sovint es pot utilitzar l'atracció precisament per mostrar què va provocar aquesta reacció de xarxa. He vist aquestes coses tant per a solucions de depuració com de productes. Hi ha molts articles sobre aquest tema. Però com més complexes són les dades, més difícil és entendre com aconseguir una visualització robusta.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Bé, sí, el bon vell conjunt de "mira què hi ha dins de la malla filtres" Aquestes imatges eren populars fa 3-4 anys, però tothom es va adonar ràpidament que les imatges eren boniques, però no tenien gaire significat.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

No he esmentat desenes d'altres gadgets, mètodes, hacks, investigacions sobre com mostrar l'interior de la xarxa. Funcionen aquestes eines? T'ajuden a entendre ràpidament quin és el problema i a depurar la xarxa?... Obtenir l'últim percentatge? Bé, és més o menys el mateix:

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Podeu veure qualsevol competició a Kaggle. I una descripció de com la gent pren les decisions finals. Vam apilar 100-500-800 unitats de models i va funcionar!

Estic exagerant, és clar. Però aquests enfocaments no proporcionen respostes ràpides i directes.

Tenint prou experiència, havent explorat diferents opcions, podeu donar un veredicte sobre per què el vostre sistema va prendre aquesta decisió. Però serà difícil corregir el comportament del sistema. Instal·leu una crossa, moveu el llindar, afegiu un conjunt de dades, preneu una altra xarxa de fons.

Tercer problema

Tercer problema fonamental — les graelles ensenyen estadístiques, no lògica. Estadísticament això cara:

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Lògicament, no és gaire semblant. Les xarxes neuronals no aprenen res complex tret que se'ls obliguin. Sempre ensenyen els signes més senzills possibles. Tens ulls, nas, cap? Així que aquesta és la cara! O posa un exemple on els ulls no signifiquen cara. I de nou: milions d'exemples.

Hi ha molt d'espai a la part inferior

Jo diria que són aquests tres problemes globals els que limiten actualment el desenvolupament de les xarxes neuronals i l'aprenentatge automàtic. I on aquests problemes no ho limitaven, ja s'utilitza activament.

Això és el final? Les xarxes neuronals estan en funcionament?

Desconegut. Però, és clar, tothom espera que no.

Hi ha molts enfocaments i direccions per resoldre els problemes fonamentals que he destacat anteriorment. Però fins ara, cap d'aquests enfocaments ha permès fer quelcom fonamentalment nou, resoldre quelcom que encara no s'ha resolt. Fins ara, tots els projectes fonamentals s'estan fent sobre la base d'enfocaments estables (Tesla), o segueixen sent projectes de prova d'instituts o corporacions (Google Brain, OpenAI).

A grans trets, la direcció principal és crear una representació d'alt nivell de les dades d'entrada. En cert sentit, "memòria". L'exemple més senzill de memòria són diverses "Incrustacions" - representacions d'imatges. Bé, per exemple, tots els sistemes de reconeixement facial. La xarxa aprèn a obtenir d'una cara una representació estable que no depèn de la rotació, la il·luminació o la resolució. Essencialment, la xarxa minimitza la mètrica "les cares diferents estan lluny" i "les cares idèntiques estan a prop".

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Per a aquesta formació es necessiten desenes i centenars de milers d'exemples. Però el resultat té alguns dels rudiments de l'"aprenentatge únic". Ara no necessitem centenars de cares per recordar una persona. Només una cara i això és tot el que som anem a esbrinar!
Només hi ha un problema... La graella només pot aprendre objectes bastant senzills. Quan s'intenta distingir no cares, sinó, per exemple, "persones per la roba" (tasca Reidentificació) - la qualitat cau en molts ordres de magnitud. I la xarxa ja no pot aprendre canvis força evidents en els angles.

I aprendre amb milions d'exemples també és divertit.

S'està treballant per reduir significativament les eleccions. Per exemple, es pot recordar immediatament una de les primeres obres Aprenentatge OneShot de Google:

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Hi ha moltes obres d'aquest tipus, per exemple 1 o 2 o 3.

Hi ha un inconvenient: normalment l'entrenament funciona bé en alguns exemples senzills "MNIST". I quan passeu a tasques complexes, necessiteu una gran base de dades, un model d'objectes o algun tipus de màgia.
En general, el treball sobre la formació One-Shot és un tema molt interessant. Trobeu moltes idees. Però, en la seva major part, els dos problemes que he enumerat (formació prèvia en un conjunt de dades enorme / inestabilitat en dades complexes) interfereixen molt amb l'aprenentatge.

D'altra banda, les GAN (xarxes adversaries generatives) aborden el tema de la incorporació. Segurament heu llegit un munt d'articles sobre Habré sobre aquest tema. (1, 2,3)
Una característica de GAN és la formació d'un espai d'estat intern (essencialment la mateixa incrustació), que us permet dibuixar una imatge. Pot ser cares, pot ser activitat.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

El problema amb GAN és que com més complex és l'objecte generat, més difícil és descriure'l en la lògica "generador-discriminador". Com a resultat, les úniques aplicacions reals de GAN de les quals se sent parlar són DeepFake, que, de nou, manipula representacions facials (per a les quals hi ha una base enorme).

He vist molt pocs altres usos útils. En general, algun tipus d'engany que implica acabar dibuixos d'imatges.

I un altre cop. Ningú té ni idea de com això ens permetrà avançar cap a un futur millor. Representar la lògica/espai en una xarxa neuronal és bo. Però necessitem un gran nombre d'exemples, no entenem com la neurona representa això en si mateixa, no entenem com fer que la neurona recordi alguna idea realment complexa.

Aprenentatge de reforç - Aquest és un enfocament des d'una direcció completament diferent. Segur que recordeu com Google va vèncer a tothom a Go. Victòries recents a Starcraft i Dota. Però aquí tot està lluny de ser tan rosat i prometedor. Parla millor de RL i les seves complexitats aquest article.

Per resumir breument el que va escriure l'autor:

  • Els models fora de la caixa no encaixen / funcionen malament en la majoria dels casos
  • Els problemes pràctics són més fàcils de resoldre d'altres maneres. Boston Dynamics no utilitza RL a causa de la seva complexitat/imprevisibilitat/complexitat computacional
  • Perquè RL funcioni, necessiteu una funció complexa. Sovint és difícil de crear/escriure
  • Difícil entrenar models. Heu de passar molt de temps per augmentar i sortir de l'òptim local
  • Com a resultat, és difícil repetir el model, el model és inestable amb els més petits canvis
  • Sovint sobrepassa alguns patrons aleatoris, fins i tot un generador de números aleatoris

El punt clau és que RL encara no treballa en producció. Google té alguns experiments ( 1, 2 ). Però no he vist cap sistema de producte.

Memòria. L'inconvenient de tot el que s'ha descrit anteriorment és la manca d'estructura. Un dels enfocaments per intentar endreçar tot això és proporcionar a la xarxa neuronal accés a una memòria separada. Perquè pugui gravar i reescriure els resultats dels seus passos allà. Aleshores, la xarxa neuronal es pot determinar per l'estat actual de la memòria. Això és molt semblant als processadors i ordinadors clàssics.

El més famós i popular article - de DeepMind:

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Sembla que aquesta és la clau per entendre la intel·ligència? Però probablement no. El sistema encara requereix una gran quantitat de dades per a la formació. I funciona principalment amb dades tabulars estructurades. A més, quan Facebook decidit un problema similar, després van agafar el camí "cargola la memòria, només fes que la neurona sigui més complicada i tinguis més exemples, i aprendrà per si sol".

Desenredar. Una altra manera de crear un record significatiu és agafar les mateixes incrustacions, però durant l'entrenament, introduïu criteris addicionals que us permetin destacar-hi els "significats". Per exemple, volem entrenar una xarxa neuronal per distingir el comportament humà en una botiga. Si seguim el camí estàndard, hauríem de fer una dotzena de xarxes. Un està buscant una persona, el segon és determinar què està fent, el tercer és la seva edat, el quart és el seu gènere. La lògica separada mira la part de la botiga on fa/està entrenada per fer-ho. La tercera determina la seva trajectòria, etc.

O, si hi hagués una quantitat infinita de dades, seria possible entrenar una xarxa per a tots els resultats possibles (òbviament, aquesta sèrie de dades no es pot recollir).

L'enfocament del desenrellament ens diu: entrenem la xarxa perquè ella mateixa pugui distingir entre conceptes. De manera que formaria una incrustació basada en el vídeo, on una zona determinaria l'acció, una determinaria la posició a terra en el temps, es determinaria l'alçada de la persona i un es determinaria el gènere de la persona. Al mateix temps, a l'hora de formar-me, m'agradaria gairebé no incitar a la xarxa amb aquests conceptes clau, sinó que destaqués i agrupés àrees. Hi ha molts articles d'aquest tipus (alguns d'ells 1, 2, 3) i en general són força teòrics.

Però aquesta direcció, almenys teòricament, hauria de cobrir els problemes enumerats al principi.

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Descomposició de la imatge segons els paràmetres "color de la paret/color del terra/forma de l'objecte/color de l'objecte/etc".

Ha esclatat la bombolla d'aprenentatge automàtic o és l'inici d'una nova alba?

Descomposició d'una cara segons els paràmetres “mida, celles, orientació, color de pell, etc.”.

Un altre

Hi ha moltes altres àrees, no tan globals, que permeten reduir d'alguna manera la base de dades, treballar amb dades més heterogènies, etc.

Atenció. Probablement no tingui sentit separar-ho com un mètode separat. Només un enfocament que millora els altres. Li dediquen molts articles (1,2,3). El punt d'atenció és millorar la resposta de la xarxa específicament a objectes significatius durant l'entrenament. Sovint per algun tipus de designació d'objectiu extern o una petita xarxa externa.

Simulació 3D. Si feu un bon motor 3D, sovint podeu cobrir el 90% de les dades d'entrenament amb ell (fins i tot vaig veure un exemple on gairebé el 99% de les dades estaven cobertes per un bon motor). Hi ha moltes idees i trucs sobre com fer que una xarxa entrenada en un motor 3D funcioni utilitzant dades reals (afinació fina, transferència d'estil, etc.). Però sovint fer un bon motor és diversos ordres de magnitud més difícil que recollir dades. Exemples de quan es van fer motors:
Entrenament de robots (Google, braingarden)
formació reconeixement mercaderies a la botiga (però en els dos projectes que vam fer, podríem prescindir-ne fàcilment).
Entrenant a Tesla (de nou, el vídeo de dalt).

Troballes

Tot l'article és, en cert sentit, conclusions. Probablement el missatge principal que volia fer era "els regals s'han acabat, les neurones ja no ofereixen solucions senzilles". Ara hem de treballar dur per prendre decisions complexes. O treballar dur fent recerca científica complexa.

En general, el tema és discutible. Potser els lectors tenen exemples més interessants?

Font: www.habr.com

Afegeix comentari