Tegenwoordig zie je op steeds meer plekken kunstmatige intelligentie terug komen. Er zijn tal van fantastische voorbeelden die je misschien wel eens tegen bent gekomen, en elk jaar komen er tientallen nieuwe plekken bij! We zullen gaan kijken naar een klein aantal bekende en recente implementaties van AI.
AlphaGo
In de sectie Geschiedenis en toekomst hebben we gelezen over de doorbraak van DeepMind's AlphaGo, een AI die gespecialiseerd is in het spelen van het gelijknamige spel Go. AlphaGo wist in 2015 voor het eerst de beste speler ter wereld te verslaan in een spelletje.
Het spel heeft enorm veel mogelijke zetten, waardoor het niet mogelijk is voor simpelere algoritmes om dit probleem op te lossen.
Technieken
AlphaGo maakt gebruik van een combinatie tussen "Monte Carlo Tree Search (MCTS) en "deep learning" neurale netwerken. Monte Carlo Tree search is een techniek die gebruik wordt om zo optimaal mogelijk te zoeken naar een oplossing. Het maakt hiervoor gebruik van heuristieken, zoals bijvoorbeeld ook gedaan wordt bij het zoekalgoritme A*.
Deep learning betekent dat er meerdere "lagen" aan neuronen in het neurale netwerk aanwezig zijn. Over het algemeen zijn veel toepasbare vormen van deep neural networks.
Toepassingen
MCTS wordt toegepast om computers bord en videospellen te laten spelen. Zo is er door middel van MCTS een bot gemaakt voor bijvoorbeeld schaken, kolonisten van Catan, Ms. Pac-Man, Poker, Fable Legends, etc. Het wordt ook daadwerkelijk gebruikt in het spel TOTAL WAR: ROME II om de speler het zo moeilijk mogelijk te maken.
Daarnaast wordt het ook gebruikt door de autopiloot in Tesla auto's om beslissingen te maken.
Deep learning is enorm breed en wordt in veel velden toegepast. Zoals Financial fraud detection, Medical image analysis, Drug discovery and toxicology, Natural language processing, Image recognition en nog veel andere velden.
Tay de Twitter bot
Microsoft heeft in 2016 een twitterbot gemaakt met AI technieken. De bot leerde door middel van de tweets van andere twitter gebruikers. Hoewel het idee erg leuk was, ging dit compleet fout. Binnen de kortste keren begon de bot onder andere racistische en seksistische opmerkingen te maken. Nadat Microsoft hierachter kwam, hebben ze snel de bot offline gehaald. Volgens Microsoft was het probleem dat "internet trollen" massaal misbruik maakte van de AI, waardoor deze de door hen gestuurde opmerkingen ging herhalen.
Technieken
Om teksten te kunnen genereren en lezen, moet een systeem taal begrijpen. Hoewel dit voor een mens over het algemeen niet heel lastig is, is het voor een computer nog aardig moeilijk om taal écht te snappen. De overkoepelende term voor het verwerken en schrijven van taal in informatica is "Natural Language Processing" (NLP), of in het Nederlands Natuurlijke Taalverwerking. NLP wordt tegenwoordig veel gedaan door middel van neurale netwerken. Vroeger werden statistische modellen gebruikt om deze taak uit te voeren, deze zijn bijna compleet overbodig geworden.
Microsoft zal een vorm van "Reinforcement Learning" gebruikt hebben, om te kunnen leren van de communicatie met gebruikers. Bij reinforcement learning moet de AI zelf beredeneren of een actie goed of slecht was. Dat kan bijvoorbeeld door positieve of negatieve feedback op een actie. Als de AI iets doet wat de gebruiker waardeert, zal de AI leren om dit vaker te doen. Indien de gebruiker het niet waardeert, zal het minder vaak zo reageren.
Toepassingen
NLP wordt enorm veel gebruikt, elke keer als je met een chatbot praat (bij een online webshop of ergens anders) dan wordt er gebruik gemaakt van NLP.
Hele bekende voorbeelden die enorm veel gebruik moeten maken van NLP zijn Google Now, Siri en Alexa, de spraakassistenten van Google, Apple en Amazon. Deze systemen moeten onder andere gebruik maken van NLP om spraak naar tekst om te zetten, tekst te begrijpen en een tekst weer uit te kunnen spreken.
GAN
Heel veel bekende vormen van AI maken gebruik van GANs, generative adversarial networks. Netwerken die hier gebruik van maken zijn enorm goed in het creëren van data, die lijkt op de getrainde data. Je kan het zien alsof je een vriend een incomplete puzzel geeft, waar 10 puzzelstukjes van missen. Maar wonder boven wonder kan je vriend de missende puzzelstukjes zelf bedenken en tekenen!
Deze slimme systemen bestaan uit twee onderdelen, een generator en een discriminator. De generator moet zorgen dat het data weet te maken wat de discriminator niet kan onderscheiden van echte data. De discriminator moet op haar beurt leren om zo goed mogelijk de neppe van de echte data te onderscheiden.
Je kan het vergelijken met illegale gelddrukkers (generator) en de politie (discriminator). De Europese bank stopt allemaal verschillende beveiligingskenmerken in de Euro, zodat de politie het echte geld kan onderscheiden van het neppe geld. De illegale drukkers proberen al die verschillende kenmerken te imiteren, zodat het heel lastig wordt om het echte geld te onderscheiden van nep geld. De politie moet steeds beter gaan kijken of het geld echt of nep is, waarna de gelddrukkers nóg beter illegaal geld gaan drukken. Dit is een wedloop die voort blijft gaan.
Toepassingen
Deze netwerken zijn helemaal "hot and happening" in 2021, maar waar kunnen ze voor gebruikt worden in de echte wereld?
Medisch
In de medische wereld worden sinds kort ook dergelijke systemen gebruikt voor de bestrijding van ziektes als kanker. Het netwerk wordt gebruikt om moleculaire structuren te genereren, die gebruikt kunnen worden in medicijnen tegen ziektes.
Beeldmateriaal
GANs kunnen ook gebruikt worden om oude foto's of films te "restaureren". De AI wordt gevoerd met een verouderde zwart-wit foto of video en het genereert een HD foto of video. Op deze manier kunnen we een ongekende blik in het verleden krijgen.
Het kan ook gebruikt worden om bijvoorbeeld games op een hoge resolutie te spelen. Tegenwoordig heb je 4K en zelfs 8K schermen, een 8K scherm heeft meer dan 33 miljoen pixels! Om deze allemaal aan te kunnen sturen is veel rekenkracht nodig, soms te veel. Om het mogelijk te maken om toch al die pixels aan te sturen terwijl je een spelletje speelt, kan een AI de resolutie verhogen. Jouw computer maakt dus een plaatje van bijvoorbeeld 2 miljoen pixels waarna de AI er 31 miljoen bij bedenkt!
In de toekomst zullen we veel meer toepassingen gaan zien van GANs. Omdat het een relatief nieuwe AI is, zijn er nog veel velden onderbelicht en onontdekt.
Deepfakes
Deepfakes zijn sinds de laatste jaren steeds populairder en makkelijker om te maken. Zo maken veel apps gebruik van "filters" gebaseerd op de techniek. Deepfakes kunnen erg grappig zijn, maar ze kunnen ook veel schade aanrichten. Zo kunnen kwaadwillenden interviews of statements van bekende personen of politici namaken. Deze filmpjes zijn door het blote oog niet makkelijk te onderscheiden van echte interviews.
Muzikale AI
De onderzoekers van OpenAI hebben GANs gebruikt om een kunstmatige intelligentie muziek te laten maken. Of beter gezegd, de KI moet bekende liedjes afmaken. Het systeem krijgt het begin van een liedje te horen, waarna het zelf moet bedenken hoe het liedje verder zal gaan. De uitkomsten zijn vaak erg bizar en klinken totaal anders dan je zou verwachten.
Foto's maken
Een GAN kan ook foto's generen aan de hand van simplistische tekeningen. Deze technieken laten de gebruiker een simpel plaatje tekenen van bijvoorbeeld een kat, waarna deze gegenereerd wordt op een zo realistisch mogelijke manier.
NVIDIA heeft deze techniek ook toegepast op landschappen. Het systeem genereert een realistisch ogend landschap van een gekleurde tekening. De kleuren op het plaatje betekenen allemaal iets anders, elke kleur staat voor een bepaald materiaal. Zo wordt grijs vertaald naar wolken, lichtblauw naar zee, bordeaux rood naar bloemen, etc.
Deze persoon bestaat niet(!)
Onderzoekers hebben in december 2019 een paper uitgebracht over *StyleGAN2*, een netwerk dat mensen en objecten kan genereren die nooit bestaan hebben. Om te laten zien hoe goed hun netwerk is, hebben ze een website gemaakt:This person does not exist.
Op de website wordt groot een foto van een persoon getoond, maar de grap is dat deze persoon niet bestaat en compleet is gegenereerd door de GAN.