Machine learning belooft bijna gouden bergen voor het interpreteren van beelden en andere sensordata. De techniek wordt al ingezet en zal dankzij snelle ontwikkelingen alleen maar meer worden gebruikt. Maar de lerende algoritmes kampen met hun eigen issues rondom security. Daar lijkt nog niet veel over nagedacht te worden.
Het is misschien maar een speldenprikje, het verslagje dat drie beveiligingsonderzoekers van de University of Washington op Arxiv publiceerden een paar weken nadat Google een bètatool online had gezet om video’s te analyseren. De Cloud Video Intelligence-api geeft van een filmpje in zijn geheel en per scène de sleutelwoorden die het bewegende beeld het best beschrijven. Maar de Amerikaanse onderzoekers ontdekten dat de dienst eenvoudig in de war is te brengen door een paar frames in het filmpje te vervangen door iets geheel anders.
Ze probeerden het uit met een viertal foto’s: een Audi, een gebouw, een bord spaghetti en een laptop. In alle vier de gevallen hoefden ze slechts een op de vijftig frames te vervangen, dus een enkel beeldje per twee seconden, om de labels van het hele filmpje te doen omklappen naar dat beeld. Om de dienst ook per scène te foppen, moesten ze iets meer moeite doen: elke seconde moest een frame worden aangepast.
Waarom de dienst zo misleid wordt, is niet duidelijk – de onderzoekers laten het voorlopig alleen bij de constatering dat het zo is. Het is niet uit te sluiten dat het eerder te maken heeft met een implementatiefoutje dan met een echt probleem in het machine learning-algoritme.
Maar volgens de onderzoekers benadrukt de fout een punt waar over het algemeen weinig over wordt nagedacht: manipulatie en misbruik van systemen die afhankelijk zijn van machine learning. Van spraakassistenten tot rijhulpen: in rap tempo worden er zelflerende systemen uitgerold in alledaagse toepassingen. De impliciete aanname is bijna altijd dat ze in een vertrouwde omgeving gebruikt worden. Maar is die aanname wel terecht?

Bubbels en tentakels
Er is in elk geval een verschijnsel dat specifiek is voor machine learning en daadwerkelijk een beveiligingsprobleem kan vormen: adversarial images. Het is vooral bekend van beeldvorming: getrainde modellen die beelden classificeren, blijken vrij eenvoudig volledig in de war te sturen met een paar subtiele aanpassingen die mensen niet eens kunnen zien – hooguit lijken de foto’s geschoten met een wat hogere ruiswaarde. Maar voor visionsystemen kan de ‘ruis’ het verschil maken tussen, zeg, een triomfboog en een goudvis.
Adversarial afbeeldingen zijn vrij simpel te maken door het leerproces van een ai-systeem een beetje om te keren. Typisch wordt tijdens het leerproces met bekende voorbeelden bekeken hoe alle parameters moeten worden aangepast om in de richting van de juiste classificatie te stappen. Voor het maken van een manipulatiebeeld worden de parameters juist constant gehouden en wordt het mechanisme ingezet om te berekenen hoe de inputpixels moeten veranderen om tot de gewenste classificatie te komen.
Het principe werd in 2014 beschreven en kan sindsdien op warme belangstelling rekenen in de ai-gemeenschap. Vooral Openai besteedt er veel tijd aan. Dit onderzoeksinstituut werd in 2015 opgericht door een groep ai-onderzoekers, weldoeners en bedrijven om onderzoek te doen naar de vraag hoe ai veilig kan worden toegepast in de maatschappij.
Sinds de ontdekking is er aardig wat inzicht verkregen in het probleem. Zo blijkt het niet te gaan om specifieke pixels die het proces in de war sturen; manipulaties zijn robuust en ze ‘doen het nog steeds’ als je de adversarial images uitprint en voor een camera houdt.
Sterker nog: de misleidingen blijken universeel. Zelfs als verschillende machine learning-systemen volledig onafhankelijk van elkaar zijn opgesteld en getraind, zijn ze met grotendeels dezelfde adversarial beelden te foppen. Ook het type machine learning doet er niet zo veel toe: complexe deep learning-netwerken zijn er net zo goed gevoelig voor als simpele classifiers.
Onderzoekers vermoeden daarom dat het gaat om ‘adversarial subruimtes’. Blijkbaar zijn er in de oplossingsruimte allerlei bubbels en tentakels van naburige klassen waar de input naartoe geduwd kan worden. Tot nu toe lukt het nog niet goed om tegenmaatregelen te ontwikkelen.

Het echte werk
Academisch interessant, maar je kunt je afvragen hoe relevant het is. In de literatuur wordt gespeculeerd over kwaadwillenden die voor mensen onzichtbare stickers op verkeersborden plakken om de betekenis voor zelfrijdende auto’s te verhaspelen. Dat klinkt wel wat vergezocht. Concreter is de suggestie dat contentfilters op sociale media te omzeilen zijn, of systemen van de opsporingsdiensten die illegaal beeldmateriaal zoals kinderporno herkennen.
Nog iets om over na te denken is het beveiligingsprobleem dat een gemêleerd groepje onderzoekers afgelopen zomer presenteerde op de befaamde Usenix Security-conferentie: ip-diefstal. Voor veel ai-ondernemingen bestaat het intellectuele eigendom niet uit broncode; een geavanceerd diep convolutioneel neuraal netwerk is in enkele tientallen coderegels op te pennen met een van de vele opensource raamwerken. Maar het vinden van de juiste architectuur en het aanleggen van geavanceerde bibliotheken met trainingsvoorbeelden, dat is waar het echte werk in gaat zitten.
Volgens Florian Tramèr van het EFPL in Lausanne en collega’s uit de VS is het echter kinderspel om een geavanceerd machine learning-systeem na te maken aan de hand van een reeks voorbeelden en de antwoorden van het model. Een ai-systeem dat via een cloud-api wordt aangeboden of dat onderdeel is van een systeem dat wordt verkocht, is zo makkelijk buit te maken.
Essentieel voor de diefstal is dat de algoritmes niet alleen een klasse teruggeven, maar ook een score die aangeeft hoe zeker ze zijn van hun oordeel. Met genoeg voorbeelden is dit te herschrijven tot een set vergelijkingen waarmee de oorspronkelijke modelparameters zijn af te leiden. Dat veronderstelt wel dat de aanvaller de architectuur van het model kent. Maar die blijkt met een aantal slimmigheidjes ook vaak wel grotendeels te achterhalen.

Grote problemen
Maar eigenlijk zijn de voorbeelden van de academici niet eens zo relevant. Veel beveiligingsproblemen lijken op het eerste gezicht niet zo ernstig. De praktijk leert dat implicaties van een nieuwe zwakke plek in de beveiliging vaak nog niet goed te overzien zijn. In de loop der tijd kunnen ze worden uitgebreid en gecombineerd met andere kwetsbaarheden en uiteindelijk uitgroeien tot grote problemen.
Zo namen een paar hackers in 1998 contact op met Microsoft omdat ze een interessant beveiligingsprobleem hadden gevonden in de webstack van het bedrijf: ze hadden bedacht dat je in de invoervelden van webapplicaties ook gewoon databasecommando’s kunt invullen, die een-op-een verwerkt doorgegeven worden aan de achterliggende database. Microsoft nam het niet erg serieus, schreven de ontdekkers in het hackersmagazine Phreak. Anno 2017 is SQL-injection nog steeds een van de grootste beveiligingsproblemen op het web.
Nieuwe technologie wordt maar al te vaak enthousiast omarmd zonder dat er goed is nagedacht over consequenties rond veiligheid, privacy en eigendomsbescherming – of ze worden simpelweg genegeerd. Het kan goed dat we met machine learning ook eerst op de blaren zullen moeten zitten voordat we er serieus lering uit trekken.