-
Engineering and technology
- Computer hardware
- Computer theory
- Scientific computing
- Other computer engineering, information technology and mathematical engineering
Eén van de belangrijkste doelstellingen bij het ontwerpen van kunstmatig intelligente agenten is dat een persoon die een gesprek voert met een dergelijke agent, bijvoorbeeld een computer, niet in staat is om af te leiden of hij/zij met een kunstmatig intelligente agent praat of met een echte persoon. Algoritmes voor natuurlijketaalverwerking die toelaten om tekst te analyseren, te verstaan, en te genereren, spelen hierin een belangrijke rol. Dergelijke algoritmes worden al gebruikt in veel dagdagelijkse toepassingen. Denk aan het opzoeken van informatie via de zoekmachine van Google, het vragen wat voor weer het vandaag wordt aan een virtuele assistent zoals Alexa, of simpelweg het automatisch wegfilteren van spam uit onze inbox. In deze dissertatie worden vier taken voor natuurlijketaalverwerking beschouwd die mogelijks gebruikt kunnen worden als deel van een applicatie voor natuurlijketaalverwerking: (1) woordsoortlabeling, (2) morfologische labeling, (3) taalmodellering, en (4) entiteitsherkenning. Deze vier taken hebben gemeen dat een label voorspeld wordt voor een invoerwoord. Bij woordsoortlabeling wordt het woordsoortlabel (bv. zelfstandig naamwoord, werkwoord, of adjectief) voorspeld voor elk woord. Morfologische labeling is gerelateerd aan woordsoortlabeling maar laat toe om meer gedetailleerde labels te voorspellen. In het bijzonder worden voor elke woord meerdere labels voorspeld op basis van de morfemen die deel uitmaken van het woord, zoals bijvoorbeeld de stam of de voor- en achtervoegsels. Bij taalmodellering wordt dan weer het volgende woord in een zin voorspeld, op basis van het laatste woord van de zin dat tot dan toe voorspeld is geweest. De laatste taak, entiteitsherkenning, betreft het identificeren van entiteiten zoals personen, locaties, en organisaties. In dit geval wordt een label voorspeld voor elk woord in de zin, en waarbij nagegaan wordt of dit woord al dan niet deel uitmaakt van een entiteit, en indien dit
het geval is, welk soort entiteit. Om deze taalverwerkingstaken te kunnen realiseren, worden in deze dissertatie neurale netwerken gebruikt. Neurale netwerken zijn technieken voor machinaal leren die in staat zijn om een omzetting te bepalen tussen de invoer en de uitvoer zonder daartoe expliciet geprogrammeerd te zijn. In het bijzonder worden in deze dissertatie drie aspecten van neurale netwerkmodellering onderzocht die orthogonaal staan op de vier taken die hierboven al werden beschreven: (1) technieken om de voorstelling van de invoer te verbeteren, (2) aanpassingen die de interne werking van neurale netwerken verbeteren, en (3) methodes om de voorspellingen van neurale netwerken te verklaren op basis van de invoer. De eerste twee taken die in deze dissertatie onderzocht worden zijn woordsoortlabeling en entiteitsherkenning in Twitterberichten. Hierbij wordt de aandacht voornamelijk gevestigd op technieken om de voorstelling van de invoer te verbeteren. Omdat Twitterberichten een relatief nieuw soort data zijn, zijn er maar weinig annotaties beschikbaar voor dergelijke berichten. Bovendien werden alle huidige methodes ontwikkeld voor nieuwsartikelen, waardoor deze methodes aanzienlijk slechter presteren op Twitterberichten. Deze al bestaande methodes maken voornamelijk gebruik van handmatig gedefinieerde kenmerken die mogelijks helpen om woordsoorten of entiteiten te herkennen. Het vinden van dergelijke kenmerken vraagt veel inspanning en domeinkennis. Daarom wordt er in deze dissertatie een methode voorgesteld die automatisch goede kenmerken vindt en die als dusdanig voor elk woord een woordrepresentatie genereert. Om woordrepresentaties voort te brengen, worden er twee soorten algoritmes gebruikt, namelijk Word2vec en FastText. Word2vec beschouwt woorden als ondeelbare eenheden en maakt enkel gebruik van de contextwoorden om een representatie te genereren. FastText daarentegen maakt ook gebruik van deelverzamelingen van karakters die deel uitmaken van het woord. Wanneer we met deze woordrepresentaties een aanpak ontwikkelen voor woordsoortlabeling, dan blijkt dat een systeem gebaseerd op Word2vec heel competitieve scores behaalt, maar dat een systeem gebaseerd op FastText beter presteert en erin slaagt om, in vergelijking met de best presterende systemen, gelijkaardige resultaten te behalen zonder gebruik te maken van handmatig gedefinieerde kenmerken. Het verschil in prestatie tussen Word2vec- en FastText-woordrepresentaties kan toegeschreven worden aan de volgende observatie: FastText-woordrepresentaties kunnen gegenereerd worden voor woorden die geen deel uitmaken van het vocabularium, terwijl bij Word2vec-woordrepresentaties één speciaal token wordt gebruikt voor alle woorden die geen deel uitmaken van het vocabularium. Ten slotte wordt dezelfde methode toegepast voor entiteitsherkenning. Opnieuw werkt deze nieuwe methode beter dan al bestaande methodes die enkel gebruikmaken van handmatig gedefinieerde kenmerken. Dit keer levert het gebruik van Word2vec-woordrepresentaties echter betere resultaten op dan het gebruik van FastText-woordrepresentaties. De volgende taak die beschouwd wordt is taalmodellering, waarbij specifiek onderzocht wordt hoe de structuur van het neuraal netwerk verbeterd kan worden om het volgende woord in een zin te voorspellen. De eerste methode die wordt voorgesteld is een nieuwe architectuur voor neurale netwerken. Het idee is om alle lagen van het neuraal netwerk compact te verbinden door rechtstreekse verbindingen te maken tussen alle lagen van het neuraal netwerk. Deze zogenaamde springverbindingen laten toe dat het signaal dat van de invoer naar de uitvoer reist over bepaalde lagen kan springen; dit signaal moet dus niet doorheen alle lagen reizen en transformaties ondergaan. Door het compact verbinden van alle lagen worden perplexiteitsscores behaald die gelijkaardig zijn aan de scores die behaald worden door de traditionele manier van verbinden, en waarbij lagen bovenop elkaar gestapeld worden. Echter, wanneer de lagen compact verbonden zijn, zijn er zes keer minder parameters nodig om hetzelfde resultaat te bekomen. Een mogelijke reden hiervoor is dat het toevoegen van springverbindingen vermijdt dat de gradiënt doorheen alle lagen moet reizen, waardoor die niet verdwijnt wanneer de parameters van het netwerk geleerd worden. Het verdwijnen van de gradiënt is immers een groot probleem in neurale netwerken. Een tweede reden is dat elke hoger gelegen laag rechtstreekse toegang heeft tot de uitvoer van alle lager gelegen lagen. Daardoor is de invoer van die laag veel expressiever, bestaande uit informatie met verschillende tijdsschalen. De tweede methode die in de context van taalmodellering wordt voorgesteld is een nieuwe activatiefunctie, genaamd Dual Rectified Linear Unit (DReLU - Nederlands: duaal gerectificeerde lineaire eenheid). De activatiefuncties die momenteel gebruikt worden in de meest voorkomende recurrente neurale netwerken zijn gevoelig voor verdwijnende gradiënten. Geïnspireerd door gerectificeerde lineaire eenheden die gebruikt worden in convolutionele neurale netwerken en die minder gevoelig zijn voor verdwijnende gradiënten, worden DReLUs voorgesteld ter vervanging van eenheden met tanh-activatiefuncties, en waarbij deze laatste typisch in recurrente neurale netwerken worden gebruikt. Gelijkaardig aan eenheden met tanh-activatiefuncties, heeft een DReLU als uitvoer zowel positieve als negatieve activatiewaarden. Bovendien hebben DReLUs nog enkele andere voordelen ten opzichte van eenheden met tanh-activatiefuncties: (1) DReLUs verkleinen de grootte van de gradiënt niet wanneer ze actief zijn, (2) ze kunnen exact nul worden, wat ze ruisrobuust maakt, en (3) ze zorgen ervoor dat slechts een paar eenheden actief zijn in een laag. Deze nieuwe activatiefunctie is getest als deel van een quasi-recurrent neuraal netwerk, dewelke een variant is van een recurrent neuraal netwerk waarbij rekenintensieve matrixvermenigvuldigingen vermeden worden. Deze methode presteert even goed of beter dan quasi-recurrente neurale netwerken met tanh-activatiefuncties, standaard recurrente neurale netwerken, en andere geavanceerde methodes. In het laatste deel van deze dissertatie wordt een nieuwe methode voorgesteld om de voorspelling van een convolutioneel neuraal netwerk te verklaren aan de hand van de principes van contextuele decompositie. Deze principes werden al geïntroduceerd voor recurrent neurale netwerken van het type Long Short-Term Memory (LSTM - Nederlands: lang kortetermijngeheugen). De woordniveautaak die hier gebruikt wordt is de morfologische labeling van een woord, gegeven dat heel wat morfologische labels door linguïsten gelinkt kunnen worden aan een specifieke verzameling van karakters die deel uitmaken van dat woord. Voor drie morfologisch verschillende talen worden zowel convolutionele neurale netwerken als bidirectionele LSTM-netwerken geleerd om woorden morfologisch te labelen gebaseerd op de karakters die deel uitmaken van dat woord. Vervolgens wordt contextuele decompositie toegepast op die geleerde neuraalnetwerkmodellen. Er wordt aangetoond dat de patronen die geleerd worden door deze modellen over het algemeen samenvallen met annotaties van linguïsten, en waarbij soms andere patronen geleerd worden die linguïstisch plausibel zijn. Daarnaast wordt er ook getoond dat deze methode in staat is om uit te leggen waarom een model een juiste of foute voorspelling maakt. Dat maakt deze methode een interessante techniek om voorspellingen van neurale netwerken te verstaan en te debuggen. Samengevat wordt in het eerste deel van deze dissertatie de invoerrepresentatie met handmatig bepaalde kenmerken vervangen door automatisch aangeleerde woordrepresentaties. Dit zorgt ervoor dat de invoerrepresentatie minder interpreteerbaar wordt. In het middelste deel van deze dissertatie worden technieken onderzocht die neurale netwerken verbeteren maar ook complexer maken. In het laatste deel, daarentegen, wordt er gefocust op technieken die neurale netwerken en de invoerrepresentaties terug interpreteerbaar maken, als tegengewicht voor de verhoogde complexiteit en ondoorzichtigheid van neurale netwerken.