GitHub brengt AI-programmer uit die helpt bij het schrijven van code, mag dat van de GPL?

| AE 12764 | Intellectuele rechten, Ondernemingsvrijheid | 10 reacties

GitHub heeft een technische preview uitgebracht van Copilot, een AI-gedreven pair programmer die ontwikkelaars helpt bij het schrijven van code. Dat las ik bij Tweakers. Copilot stelt contextgebonden code en functies voor, en helpt acties bij het oplossen van problemen door te leren van de code die iemand schrijft. De AI is getraind op een grote dataset van publieke broncode, en dat zal vast grotendeels open source zijn onder de GPL want dat is nu eenmaal de bulk van de “publieke” software. Maar de GPL vindt daar iets van, van hergebruik.

Copilot kan automatisch opmerkingen omzetten in code, repetitieve code aanvullen en een functie testen tijdens het schrijven. Het systeem leert en verbetert zichzelf. Het klinkt als een hele goede ontwikkeling, maar als je even doordenkt dan besef je dat dit alleen kan door een héle berg broncode door te akkeren en tot een machine learning model om te zetten. Dat zegt men zelf ook:

Trained on billions of lines of public code, GitHub Copilot puts the knowledge you need at your fingertips, saving you time and helping you stay focused.

Er is die merkwaardige gedachte dat als iets “publiek” is, dat je er dan wat mee mag. Misschien moeten we naast “data is niets” nog een juridisch mantra invoeren: “dat het publiek is, is geen argument”. Want het gaat hier om software, en die is zonder twijfel auteursrechtelijk beschermd. En wanneer die “publiek” online staat, dan weet ik vrij zeker dat het om open source gaat. En dan krijg je dus te maken met de licentie. Of niet?

Interessant genoeg zegt men in de FAQ dan:

GitHub Copilot is a code synthesizer, not a search engine: the vast majority of the code that it suggests is uniquely generated and has never been seen before. We found that about 0.1% of the time, the suggestion may contain some snippets that are verbatim from the training set. Here is an in-depth study on the model’s behavior.
Er is natuurlijk een ontzettend groot verschil tussen een lap code copypasten en heel goed kijken naar “billions of lines of code” om jezelf te trainen. Wie zei dat ook weer, kopiëren uit één bron is diefstal en kopiëren uit honderd is inspiratie? Dat lijkt me hier ook van toepassing.

Het komt neer op de algemene vraag of het maken van een machine learning model een kopie is van alle brondocumenten of -data. Als dat zo is, dan krijg je met de licentie te maken en daar zou dan in dit geval de GPL op van toepassing kunnen zijn. Dan zou alle code die Copilot suggereert, onder de GPL vallen, want dan is al die code afgeleid van de GPL code die erin ging. En dan is dus ook elk door Copilot mede geschreven project GPL.

Bewijstechnisch valt daar nog wel wat op aan te merken: de GPL auteur zal moeten bewijzen dat deze suggestie gedaan is op basis van haar code, want zonder kopie geen inbreuk. En dat zal niet meevallen. Maar dat terzijde.

Is een machine learning model inbreuk op de rechten van de brondocumenten? In de VS waarschijnlijk niet. In 2019 oordeelde de Second Ciruit (de hogerberoepsrechter voor New York, Connecticut en Vermont) dat het verwerken van stukjes uit boeken om een boekenzoekalgoritme te trainen géén inbreuk op auteursrechten is. De dataset die daarmee ontstaat, is dus niet onderworpen aan toestemming (of licentie) van de boekenrechthebbenden.

In Europa zijn er geen vergelijkbare zaken. We hebben wel de Infopaq-zaak, waarin werd bepaald dat het overnemen en verspreiden van 11 woorden (een snippet in zoekresultaten) onderworpen kan zijn aan auteursrechten, maar het ging daar om het publiceren van zoekresultaten in een nieuwsbrief. Dat is toch echt wat anders dan een statistisch model maken waarin staat dat codestukje X vaak samengaat met Y, of dat constructie A goed aansluit bij aanhef B. Ik volg dan ook de conclusie van professors Gotzen en Janssens:

Vooral de overwegingen in de arresten Infopaq I, in verband met bepaalde handelingen van ‘data capturing’ die onder het toepassingsgebied van de uitzondering kunnen vallen, verdienen aandacht. Maar de vijf voorwaarden die de uitzondering … oplegt, zijn cumulatief en, mede in het licht van de regel van de strikte interpretatie, zijn we niet geneigd om te concluderen dat alle gebruikshandelingen voor het trainen van AI-systemen die gebruik maken van beschermd materiaal, door deze uitzondering zullen worden afgedekt.
Die vijf voorwaarden zijn als volgt:
  1. deze handeling is tijdelijk;
  2. deze handeling is van voorbijgaande of incidentele aard;
  3. deze handeling vormt een integraal en essentieel onderdeel van een technisch procedé;
  4. dit procedé wordt toegepast met als enig doel de doorgifte in een netwerk tussen derden door een tussenpersoon of een rechtmatig gebruik van een werk of beschermd materiaal mogelijk te maken, en
  5. deze handeling bezit geen zelfstandige economische waarde.
Een machine learning dataset maken is een tijdelijke handeling, die essentieel en integraal nodig is om het neuraal netwerk mee te maken. Dat trainen is niet op zichzelf economisch waardevol (de exploitatie van het resultaat natuurlijk wel, maar dat bedoelt men hier niet). Punt 4 zou je dan naar analogie moeten interpreteren, wat het Hof van Justitie doet in punt 64 van het arrest:
wanneer de levensduur ervan is beperkt tot hetgeen noodzakelijk is voor de goede werking van het betrokken technische procedé, waarbij dit procedé geautomatiseerd moet zijn zodat deze handeling automatisch, zonder menselijke interventie, wordt gewist zodra de functie ervan om dit procedé mogelijk te maken is vervuld.
Oftewel in gewone taal “ik extraheer even de essentiële kenmerken om een statistisch model te maken, daarna gooi ik het weer weg” en dat zou dan mogen.

Arnoud

De AI Hall of Shame laat zien waarom AI compliance officers nodig zijn

| AE 12742 | Innovatie | 4 reacties

Heb je je wel eens afgevraagd hoe deze innovatie bijdraagt aan een afschuwelijke dystopie? Zo prikkelt machine learning engineer Sean McGregor zijn collega’s als die weer eens enthousiast doen over de inzet van AI voor het een of ander. Want maar al te vaak blijkt een goed idee uiteindelijk vooral nadelen voor kwetsbare mensen op te leveren of nodeloze rechtlijnigheid te introduceren in een op zich prima werkend menselijk proces. En om dat kracht bij te zetten, onderhoudt hij sinds een tijdje de AI Incident Database.

Zoals de site het zelf toelicht:

The AI Incident Database is a collection of harms or near harms realized in the real world by the deployment of intelligent systems. You are invited to submit reports to the database, whereupon accepted incidents will be indexed and made discoverable to people developing and deploying the next generation of AI technology to the world. Artificial intelligence will only be a benefit to people and society if we collectively record and learn from its failings. Learn more about the database, or read about it on the PAI BlogVice NewsVenture Beat, and arXiv among other outlets.
Soms gaat het om gewoon hilarische storingen, zoals een surveillancerobot die zichzelf de fontein in rijdt omdat hij water niet van tegels kon onderscheiden. Wat ook weer heel naar kan uitpakken, zoals bij de lasrobot die niet geprogrammeerd was om mensen te vermijden – en iemand doodde toen die een losgelaten metalen plaat wilde verwijderen.

De pijn zit hem vaker niet in zulke extreme dingen, maar in de vaak schimmige manier waarop een AI tot haar conclusie komt. Bijvoorbeeld omdat je geen uitleg krijgt, zoals bij incident 96 waar een door de fabrikant geheimgehouden algoritme leraren beoordeelt en laat ontslaan. Of bij incident 78, waar een studente geweigerd werd bij geneeskunde in Duitsland omdat de AI had ingeschat dat ze lage cijfers zou halen. Of bij incident 95 waarin gezichts- en stemanalyse ertoe leidt dat sollicitanten geweigerd worden.

Die laatste is interessant omdat de gebruikte data is geanalyseerd en vrij van bias zou zijn bevonden. Ja, ik ben skeptisch want ik geloof dat niet – bijvoorbeeld omdat ik me niet kan voorstellen dat men bij stemanalyses de moeite neemt om stotteraars of mensen met slokdarmspraak te vragen om een representatieve hoeveelheid data aan te leveren.  (De kans is groter dat men het ding op porno getraind heeft, daar is immers veel sneller een grote hoeveelheid data voor te krijgen.)

Dat gebrek aan representativiteit zie je vaak opduiken. Bijvoorbeeld in incident 48, waarbij paspoortfoto’s worden gescreend op “ogen volledig open” wat natuurlijk misgaat bij Aziatische mensen. Die overigens ook niet hoog scoren in beauty contests waarbij een AI de jury speelt. Op het gorilla-incident van Google hoef ik al helemaal niet op in te gaan. Het aantal voorbeelden is talrijk.

De vraag is, hoe moet het dan wel. Daar zijn alweer eventjes geleden de EU Ethics Guidelines for trustworthy AI voor geformuleerd. Deze bevatten geen juridische eisen (die komen er wel aan, de Verordening AI) maar juist ethische kaders: hoe moet het wel, wat mag de burger verwachten en wat moet een bouwer of gebruiker van AI aan verplichtingen op zich nemen.

Wie wil leren hoe dat werkt: op 20 september start mijn tienweekse cursus AI Compliance in de praktijk weer. Leer in je eigen tijd (ongeveer 4 uur per week) de techniek én de ethische kaders rondom AI, met echte cases en echte data. Ik laat je zoeken naar bias in een dataset met leningaanvragen of puzzelen over waarom een snel en vrijwillig AI-loket bij de gemeente in strijd is met de mensenrechten. En ondertussen zet je je ook in om de gemeente Juinen met haar miljoenen kostende AI initiatieven hoog in de wereldranglijst te krijgen. Wees er snel bij!

Arnoud

 

Nog even terugkomend op dat ‘Afrikaanse’ van machine learning

| AE 11985 | Ondernemingsvrijheid | 23 reacties

Onlangs blogde ik over “Afrikaanse” machine learning, wat een leuke discussie opleverde maar ook veel vragen over wanneer je nu een computersysteem “westers” moet noemen. Een computer past geen culturele waarden toe, bijvoorbeeld, die telt 1 en 1 bij elkaar op en dat is gewoon 2. Daar is niets Chinees, Ubuntu of neoliberaals aan. Een reactie van Ronald gaf me aanleiding hier eens verder over na te denken, want het raakt aan een fundamenteel punt rondom de effectiviteit en het nut van AI.

Volgens mij is het “Westerse” versus “Afrikaanse” aspect van een machine learning systeem meer wát je gaat leren en waarvan. Zoals ik Mhlambi begrijp, is het verschil in culturen dat je in de Westerse uitgaat van het individu, en in het Afrikaanse/Ubuntu model uitgaat van de groep. Je verzamelt dan andere data (hoe gedraagt de groep zich, wat wil de groep en hoe reageert de groep) en krijgt daarmee ook een ander model.

Meer algemeen groeit een AI (wat ik zie als een marketingterm voor “machine learning met een menssimulerende interface”) natuurlijk op basis van wat je erin stopt. En dan is dus de keuze van wat je in je dataset stopt de kern. Die keuze is dan cultureel bepaald. En natuurlijk rekent de computer zelf niet cultureel bepaald, het is meer hoe hij is vormgegeven. Een oude ergernis van me: dat computers zo slecht met accenten kunnen omgaan, komt omdat het toetsenbord uit de Amerikaanse cultuur/maatschappij komt waar accenten niet voorkomen. Ik zou dan zeggen dat tekstinvoer Amerikaans-cultureel is bepaald, maar als je liever zegt dat de ontwerpers dat zijn, ook prima.

Goed, een concreter voorbeeld. Stel ik wil de chat in mijn videogame via AI modereren. Die moet ongewenste chatberichten eruit vissen, zodat de kwaliteit van de onderlinge praatjes beter werkt. Ik train dan met spamdatasets want ik weet dat spam heel vervelend is, en gooi er ook racisme in want dat is tegenwoordig ook een ding. Dan krijg je een prachtige moderator – alleen doet die niets tegen seksueel lastigvallen, want ik vond dat geen issue. Heb ik dus geen data van. Vrouwelijke spelers denk ik wel, die zouden wellicht daar eerder op filteren. Of bedenken dat er een dickpic filter op toegezonden beeld moet komen. Dat zijn voor mij echt andere gezichtspunten, niet alleen maar een neutrale selectie van data.

Maar je zou ook kunnen zeggen, de dataset wordt gelabeld langs de lijn “is een teamspeler” versus “speelt individualistisch/doet niet leuk mee” en dan krijg je wéér een heel andere AI. En daarbij zou de aard van het spel en de samenstelling van de deelnemers veel uitmaken. Hebben we jonge Westerse mannen, of juist oudere Australische vrouwen? Gaat het om schieten (dus veel korte en snelle communicatie) of is het een langlopende puzzel hunt met dus veel overleg, discussie, filosofie? Al die dingen wegen mee in hoe je “modereer een chat” invult.

Het gaat dus niet om of de AI iets ‘begrijpt’ maar op welke manier deze functioneert. Welke aannames stop je erin bij het bouwen, welke data neem je mee en welke niet. Vanuit welke filosofie zeg je “dat gegeven is niet relevant” of “ik heb liever dat hij stuurt op A dan op B”. Dát is volgens mij waar het om gaat.

Arnoud

Politiek wil waakhond op algoritmes, maar ik heb liever een keurmerk voor de trainingsdata

| AE 11336 | Innovatie | 14 reacties

De Nederlandse politieke partijen D66 en CDA roepen het kabinet dinsdag in een motie op toezichthouder op te zetten die het gebruik van algoritmes bij de overheid in de gaten houdt. Dat las ik bij Tweakers maandag. De macht van algoritmes is een steeds grotere angst aan het worden: ze zijn niet transparant, ze kunnen… Lees verder

Facebook overtreedt mogelijk AVG door medewerkers posts te laten labelen

| AE 11265 | Ondernemingsvrijheid | 13 reacties

Facebook overtreedt mogelijk de Europese privacyverordening AVG door medewerkers van daarvoor aangestelde bedrijven te laten kijken naar posts om ze te labelen. Dat las ik bij Tweakers maandag. Een team van 260 mensen uit India leest al jaren alle berichten (inclusief foto’s) om die van labels te voorzien, zo ontdekte Reuters namelijk. Die labels classificeren… Lees verder

EU test nepwetenschappelijke leugendetector bij grenscontroles

| AE 10949 | Regulering | 16 reacties

Wat bizar: in Griekenland, Hongarije en Letland begint een test van de Europese Unie met een leugendetector bij de grenscontrole, las ik bij Tweakers. Het iBorderCtrl-systeem analyseert ‘microgezichtsuitdrukkingen’ van reizigers om te controleren of ze de waarheid vertellen. Niet alleen is deze test gebaseerd op onderzoek waarbij slechts 32 vrijwilligers betrokken waren als proefpersonen, er… Lees verder