REVIEW Machine learning: Trends, perspectives, and prospects M. I. Jordan1 * and T. M. Mitchell2 * Machine learning richt zich op de vraag hoe computers kunnen worden gebouwd die verbeteren automatisch door ervaring. Het is een van de snelst groeiende technische vakgebieden van dit moment, liggend op het snijvlak van informatica en statistiek, en in de kern van kunstmatig intelligentie en datawetenschap. De recente vooruitgang op het gebied van machinaal leren is gedreven door beide de ontwikkeling van nieuwe leeralgoritmen en theorie en door de voortdurende explosie in de beschikbaarheid van online gegevens en goedkope berekeningen. De adoptie van data-intensief methoden voor machinaal leren zijn overal in de wetenschap, technologie en handel te vinden, wat leidt tot meer op bewijs gebaseerde besluitvorming in vele lagen van de bevolking, waaronder gezondheidszorg, productie, onderwijs, financiële modellering, politie en marketing. M Achine leren is een discipline gericht op twee onderling samenhangende vragen: Hoe kan dat? kun je computersystemen bouwen die automatisch verbeteren door ervaring? en Wat zijn de fundamentele statistische computationele-informatie-theoretische wetten die beheersen alle leersystemen, inclusief computers, mensen en organisaties? De studie van de machine leren is belangrijk om deze aan te pakken fundamentele wetenschappelijke en technische vragen en voor de uiterst praktische computersoftware die het bij velen heeft voortgebracht en uitgeprobeerd toepassingen. Machine learning heeft de afgelopen twintig jaar een enorme vooruitgang geboekt, vanuit het laboratorium nieuwsgierigheid naar een praktische technologie die wijdverspreid is commercieel gebruik. Binnen kunstmatige intelligentie (AI) machine learning is naar voren gekomen als de methode bij uitstek voor het ontwikkelen van praktische software voor computer vision, spraakherkenning, natuurlijke taalverwerking, robotbesturing en andere toepassingen. Veel ontwikkelaars van AI-systemen nu besef dat dit voor veel toepassingen mogelijk is Het is veel gemakkelijker om een systeem te trainen door het voorbeelden te laten zien van gewenst input-outputgedrag dan door het te trainen programmeer het handmatig door te anticiperen op het gewenste antwoord voor alle mogelijke inputs. Het effect van machinaal leren is ook breed voelbaar computerwetenschappen en in een reeks industrieën die zich bezighouden met dataintensieve kwesties, zoals als consumentendiensten, de diagnose van fouten in complexe systemen en de controle van de logistiek kettingen. Er is een vergelijkbaar breed scala aan effecten in de empirische wetenschappen, van biologie tot kosmologie tot sociale wetenschappen, als machinaal leren Er zijn methoden ontwikkeld om experimentele gegevens met hoge doorvoer op nieuwe manieren te analyseren. Zien Figuur 1 voor een weergave van enkele recente toepassingsgebieden van machine learning. Een leerprobleem kan worden gedefinieerd als het probleem van het verbeteren van een bepaalde mate van prestatie bij het uitvoeren van een bepaalde taak, via sommige soort trainingservaring. Bij het leren detecteren van creditcardfraude is het bijvoorbeeld de taak om aan een bepaalde persoon het label ‘fraude’ of ‘geen fraude’ toe te kennen. creditcardtransactie. De prestatiemaatstaf voor verbetering vatbaar zou de nauwkeurigheid hiervan kunnen zijn fraudeclassificator en de trainingservaring mogelijk bestaan uit een verzameling historische creditcards transacties, die achteraf gezien allemaal als frauduleus worden bestempeld of niet. Als alternatief zou je a kunnen definiëren verschillende prestatiestatistieken die een hogere toekennen straf wanneer “fraude” wordt bestempeld als “geen fraude” dan wanneer ‘geen fraude’ ten onrechte als ‘fraude’ wordt bestempeld. Je zou ook een ander type training kunnen definiëren ervaring, bijvoorbeeld door ongelabelde creditcardtransacties op te nemen in combinatie met gelabelde voorbeelden Een divers scala aan machine-learning-algoritmen is ontwikkeld om de grote verscheidenheid aan te dekken gegevens en probleemtypen die bij verschillende machine-leerproblemen naar voren komen (1, 2). Conceptueel gezien kunnen machine-learningalgoritmen worden gezien als: zoeken door een grote ruimte met kandidaten programma's, geleid door trainingservaring, te vinden een programma dat de prestatiestatistiek optimaliseert. Algoritmen voor machinaal leren variëren gedeeltelijk enorm door de manier waarop zij de kandidaat vertegenwoordigen programma's (bijvoorbeeld beslissingsbomen, wiskundige functies en algemene programmeertalen) en in deels door de manier waarop ze hierin zoeken ruimte van programma's (bijvoorbeeld optimalisatie-algoritmen met goed begrepen convergentiegaranties en evolutionaire zoekmethoden die evalueren opeenvolgende generaties willekeurig gemuteerde programma's). Hier concentreren we ons op benaderingen die dat wel hebben gedaan tot nu toe bijzonder succesvol geweest. Veel algoritmen richten zich op functiebenaderingsproblemen, waarbij de taak belichaamd is in een functie (bijvoorbeeld gegeven een invoertransactie, output een label "fraude" of "geen fraude"), en het leerprobleem is het verbeteren van de nauwkeurigheid daarvan functie, met ervaring bestaande uit een steekproef van bekende invoer-uitvoerparen van de functie. In in sommige gevallen wordt de functie expliciet weergegeven als een geparametriseerde functionele vorm; in andere gevallen is de functie impliciet en wordt verkregen via a zoekproces, een factorisatie, een optimalisatie SCIENCE sciencemag.org 17 JULI 2015 • VOL 349 UITGAVE 6245 255 1 Afdeling Elektrotechniek en Computer Wetenschappen, Afdeling Statistiek, Universiteit van Californië, Berkeley, CA, VS. 2 Afdeling Machine Learning, Carnegie Mellon Universiteit, Pittsburgh, PA, VS. *Corresponderende auteur. E-mail: jordan@cs.berkeley.edu (M.I.J.); tom.mitchell@cs.cmu.edu ( procedure of een op simulatie gebaseerde procedure. Zelfs wanneer impliciet, hangt de functie er in het algemeen van af op parameters of andere instelbare vrijheidsgraden, en training komt overeen met het vinden van waarden voor deze parameters die de prestatiemetriek optimaliseren. Wat het leeralgoritme ook is, een belangrijk wetenschappelijk en praktisch doel is het theoretisch karakteriseren van de mogelijkheden van specifieke leeralgoritmen en de inherente moeilijkheid van een bepaald leerproces probleem: Hoe nauwkeurig kan het algoritme leren van een bepaald type en volume van de training gegevens? Hoe robuust is het algoritme tegen fouten in zijn modelleren van aannames of fouten in de trainingsgegevens? Gegeven een leerprobleem met een gegeven volume aan trainingsgegevens, is het mogelijk om een succesvol algoritme of is dit leerprobleem fundamenteel onhandelbaar? Dergelijke theoretische karakteriseringen van algoritmen voor machinaal leren en problemen maken doorgaans gebruik van de bekende raamwerken van de statistische beslissingstheorie en de computationele complexiteitstheorie. Sterker nog: pogingen daartoe karakteriseren machine learning-algoritmen hebben theoretisch geleid tot mengsels van statistische en computationele theorie waarin het doel is om tegelijkertijd de monstercomplexiteit te karakteriseren (hoeveel gegevens zijn nodig om nauwkeurig te leren) en de computationele complexiteit (hoeveel berekening vereist is) en om te specificeren hoe deze zijn afhankelijk van de kenmerken van het leeralgoritme als de representatie die het gebruikt voor wat het leert (3–6). Een specifieke vorm van computationele analyse dat is de laatste tijd bijzonder nuttig gebleken jaren was die van de optimalisatietheorie, waarbij de boven- en ondergrenzen voor de mate van convergentie van optimalisatieprocedures samensmelten goed met de formulering van machinaal leren problemen als de optimalisatie van een prestatie metrisch (7, 8). Als vakgebied bevindt machine learning zich op de kruispunt van informatica, statistiek en a verscheidenheid aan andere disciplines die zich bezighouden met automatische verbetering in de loop van de tijd, en gevolgtrekking en besluitvorming onder onzekerheid. Aanverwante disciplines omvatten de psychologische studie van de mens leren, de studie van evolutie, adaptieve controle theorie, de studie van onderwijspraktijken, neurowetenschappen, gedrag in organisaties en economie. Hoewel er de afgelopen tien jaar steeds meer overspraak is geweest met deze andere terreinen, zijn we nog maar net begonnen om de potentiële synergieën en de diversiteit aan te boren van de gebruikte formalismen en experimentele methoden over deze meerdere velden voor het bestuderen van systemen die met ervaring verbeteren. Fig. 1. Toepassingen van machinaal leren. Machine learning heeft op velen een substantieel effect gebieden van technologie en wetenschap; Voorbeelden van recente toegepaste succesverhalen zijn onder meer robotica en autonome voertuigbesturing (linksboven), spraakverwerking en natuurlijke taalverwerking (bovenaan rechts), neurowetenschappelijk onderzoek (midden) en toepassingen in computer vision (onder). [Het midden paneel is overgenomen van (29). De afbeeldingen in het onderste paneel komen uit de ImageNetdatabase; voorwerp KREDIET: ISTOCK/AKINBOSTANCI herkenningsannotatie is van R. Girshick.] Aanjagers van de vooruitgang op het gebied van machinaal leren De afgelopen tien jaar is er sprake van een snelle groei in de vermogen van netwerk- en mobiele computersystemen om grote hoeveelheden gegevens te verzamelen en te transporteren data, een fenomeen dat vaak ‘Big’ wordt genoemd Gegevens." De wetenschappers en ingenieurs die verzamelen dergelijke gegevens hebben zich vaak tot machinaal leren gewend voor oplossingen voor het probleem van het verkrijgen ervan nuttige inzichten, voorspellingen en beslissingen uit dergelijke datasets. Sterker nog, de enorme omvang van de gegevens maakt het essentieel om schaalbare procedures te ontwikkelen die computationeel en statistisch combineren overwegingen, maar het gaat om meer dan alleen de kwestie louter de omvang van moderne datasets; het is het korrelige, het persoonlijke karakter van veel van deze gegevens. Mobiele apparaten en embedded computing-vergunning Er moeten grote hoeveelheden gegevens over individuele mensen worden verzameld, en machine learning-algoritmen kunnen van deze gegevens leren om ze aan te passen hun diensten af te stemmen op de behoeften en omstandigheden van elk individu. Bovendien zijn deze gepersonaliseerd diensten kunnen met elkaar worden verbonden, zodat er een totaaldienst ontstaat die profiteert van de rijkdom en diversiteit aan gegevens van veel individuen terwijl het nog steeds wordt aangepast aan de behoeften en omstandigheden van iedereen. Voorbeelden van deze trend richting het vastleggen en ontginnen van grote hoeveelheden gegevens diensten en productiviteit verbeteren kan worden gevonden op vele gebieden van handel, wetenschap en regering. Er wordt gebruik gemaakt van historische medische dossiers om te ontdekken welke patiënten het beste zullen reageren naar welke behandelingen; historische verkeersgegevens zijn gebruikt om de verkeerscontrole te verbeteren en congestie te verminderen; Om hierbij te helpen worden historische misdaadgegevens gebruikt lokale politie toewijzen aan specifieke locaties op specifieke tijdstippen; en grote experimentele datasets zijn dat wel vastgelegd en samengesteld om de vooruitgang in de wereld te versnellen biologie, astronomie, neurowetenschappen en andere data-intensieve empirische wetenschappen. Het lijkt erop dat we bij zijn het begin van een decennialange trend naar steeds meer data-intensieve, op bewijs gebaseerde besluitvorming over vele aspecten van wetenschap, handel, en overheid. Met de toenemende bekendheid van grootschalige gegevens op alle gebieden van het menselijk streven zijn gekomen golf van nieuwe eisen aan de onderliggende machinelearning-algoritmen. Grote datasets bijvoorbeeld Omdat computergestuurde algoritmen nodig zijn, verhogen zeer persoonlijke gegevens de behoefte aan algoritmen die de gevolgen voor de privacy minimaliseren, en de beschikbaarheid van enorme hoeveelheden ongelabelde gegevens neemt toe de uitdaging van het ontwerpen van leeralgoritmen om ervan te profiteren. De volgende secties onderzoeken enkele van de effecten van deze eisen op de recente werk in algoritmen voor machinaal leren, theorie en oefening Kernmethoden en recente vooruitgang De meest gebruikte methoden voor machinaal leren zijn begeleide leermethoden (1). Onder toezicht leersystemen, inclusief spamclassificatoren van e-mail, gezichtsherkenning via afbeeldingen en medische diagnosesystemen voor patiënten zijn hier allemaal voorbeelden van het besproken functiebenaderingsprobleem eerder, waar de trainingsgegevens de vorm aannemen van een verzameling van (x, y) paren en het doel is om een voorspelling y* produceren als antwoord op een vraag X*. De invoer x kan klassieke vectoren zijn of zij kunnen complexere objecten zijn, zoals documenten, afbeeldingen, DNA-sequenties of grafieken. Op dezelfde manier, Er zijn veel verschillende soorten output y bestudeerd. Er is veel vooruitgang geboekt door te focussen op het eenvoudige binaire classificatieprobleem waarin y neemt een van twee waarden aan (bijvoorbeeld 'spam' of “geen spam”), maar er is ook overvloedig onderzoek gedaan naar problemen zoals multiclass classificatie (waarbij y een van K-labels aanneemt), multilabelclassificatie (waarbij y tegelijkertijd wordt gelabeld door verschillende K-labels), rangschikking problemen (waarbij y een gedeeltelijke bestelling levert op sommige zijn vastgelegd), en algemene gestructureerde voorspelling problemen (waarbij y een combinatorisch object is, zoals als een grafiek, waarvan de componenten mogelijk vereist zijn om aan een aantal beperkingen te voldoen). Een voorbeeld van dit laatste probleem is het taggen van delen van spraak, waarbij het doel is om iedereen tegelijkertijd te labelen woord in een invoerzin x als zelfstandig naamwoord, werkwoord, of een ander woorddeel. Onder toezicht Leren omvat ook gevallen waarin y gereëvalueerde componenten heeft of een combinatie van discrete en componenten met een reële waarde. Er worden over het algemeen begeleide leersystemen gevormd hun voorspellingen via een geleerde mapping f(x), die een uitvoer y produceert voor elke invoer x (of een waarschijnlijkheidsverdeling over y gegeven x). Veel Er bestaan verschillende vormen van mapping f, waaronder beslissingsbomen, beslissingsbossen, logistische regressie, ondersteuningsvectormachines, neurale netwerken, kernelmachines en Bayesiaanse classificatoren (1). A Er is een verscheidenheid aan leeralgoritmen voorgesteld om deze verschillende soorten mappings te schatten, en er zijn ook generieke procedures zoals boosting en leren van meerdere kernels die worden gecombineerd de resultaten van meerdere leeralgoritmen. Procedures voor het leren van gegevens maken vaak gebruik van ideeën uit de optimalisatietheorie of numerieke analyse, met de specifieke vorm van machine learning-problemen (bijvoorbeeld dat de objectieve functie of te integreren functie is vaak de som een groot aantal termen) die innovaties aandrijven. Dit diversiteit aan leerarchitecturen en algoritmen weerspiegelt de uiteenlopende behoeften van toepassingen, met verschillende architecturen die verschillende soorten vastleggen van wiskundige structuren, die verschillende niveaus van ontvankelijkheid bieden voor posthoc visualisatie en uitleg en het bieden van verschillende afwegingen tussen computationele complexiteit, de hoeveelheid van gegevens en prestaties. Eén gebied met grote impact op het gebied van de voortgang onder toezicht Bij het leren van de afgelopen jaren gaat het om diepe netwerken, dit zijn meerlaagse netwerken van drempeleenheden, die elk een eenvoudige geparametriseerde functie van hun ingangen berekenen (9, 10). Diep leren systemen maken gebruik van op gradiënten gebaseerde optimalisatiealgoritmen om parameters overal aan te passen zo'n meerlagig netwerk gebaseerd op fouten bij zijn output. Het benutten van moderne parallelle computerarchitecturen, zoals grafische verwerking eenheden die oorspronkelijk zijn ontwikkeld voor videogames, it Het is mogelijk geweest om diepgaande leersystemen te bouwen die miljarden parameters bevatten die getraind kunnen worden op de zeer grote collecties van beschikbare afbeeldingen, video's en spraakvoorbeelden op het internet. Zo'n grootschalig diepgaand leren systemen hebben de afgelopen jaren een groot effect gehad in computervisie (11) en spraakherkenning (12), waar ze grote prestatieverbeteringen hebben opgeleverd ten opzichte van eerdere benaderingen Fig. 3. Onderwerpmodellen. Onderwerpmodellering is een methodologie voor het analyseren van documenten, waarbij een document wordt gezien als een verzameling woorden, en de woorden daarin het document wordt gezien als gegenereerd door een onderliggende reeks onderwerpen (aangegeven door de kleuren in de afbeelding). Onderwerpen zijn kansverdelingen over woorden (meest linkse kolom), en elk document wordt gekenmerkt door een waarschijnlijkheidsverdeling over onderwerpen (histogram). Deze distributies zijn afgeleid op basis van de analyse van een verzameling documenten en kan worden bekeken om de inhoud van documenten te classificeren, indexeren en samen te vatten. [Vanaf (31). Copyright 2012, Association for Computing Machinery, Inc. Herdrukt met toestemming]