SPEECH RECOGNITION USING ARTIFICIAL NEURAL NETWORKS. Linköpings Universitet 729G43 Artificiell Intelligens

Relevanta dokument
Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University

Modeller och simulering av språkprocessning

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar

Linköpings universitet

Att programmera en Beethoven

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén,

Talsystem Teori. Vad är talsystem? Av Johan Johansson

Taligenkänning. Sanna Aronsson sanar429 Artificiell Intelligens, HKGBB0

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

Hur bestämmer man vilka fonem ett språk har? Fonologi. Kommutationstest. Hur bestämmer man vilka fonem ett språk har?

Artificiell intelligens II, 729g11 Projekt HT-11. Taligenkänning. Nina Knez

Fonologi. Kommutationstest. Minimala par. Hur bestämmer man vilka fonem ett språk har?

Lär dig engelska med bilder Mappia AB Facebook.se/mappia Twitter/mappiaab

Hierarchical Temporal Memory Maskininlärning

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

DAB760: Språk och logik

Taligenkänning. Hur datorer känner igen talat språk. 729G43 Artificiell Intelligens. Charlie Forsgren, Linköpings Universitet. chafo

Vinjetter TDDC91 Datastrukturer och algoritmer

Dynamisk programmering. Dynamisk programmering. Dynamisk programmering. Dynamisk programmering

Tal i bråkform. Kapitlet behandlar. Att förstå tal

NEURAL MASKINÖVERSÄTTNING

KIT 104 Kognitiva processer

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT Lars Larsson Algoritmer 1

Artificial)Intelligence) Taligenkänning)

Algoritmer och maskininlärning

Universitetet i Linköping Institutionen för datavetenskap Anders Haraldsson 2

Föreläsning 13. Dynamisk programmering

Likhetstecknets innebörd

Svensk nationell datatjänst, SND BAS Online

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap

Dagens föreläsning Programmering i Lisp Fö 5

Inlärning utan övervakning

Likhetstecknets innebörd

Matcha rätt hjärta till rätt patient med AI. Dennis Medved

man kan lyssna på vad de betyder man kan lyssna efter hur de låter utan att bry sig om vad de betyder.

Tentamen, Algoritmer och datastrukturer

Introduktion till logik

Inledande programmering med C# (1DV402) Introduktion till programmering

Kristian Almgren Artificiell Intelligens Linköpings Universitet Talstyrning

Artificiell Intelligens Lektion 7

Kandidatuppsats. Jämförelse mellan neurala nätverk baserad AI och state-of-the-art AI i racing spel. Simon Karlsson, Christopher Jensen

Introduktion till programmering

Gränssnitt för FakeGranska. Lars Mattsson

Kognitiv modellering. Sidan 1. Översikt. Tre forskningsmetoder. Olika syften med modellering. Människa-maskin interaktion (MMI) Uppgiftsanalys

Programmering F-3. -dansprogrammering. Del 1

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

SELF- ORGANIZING MAPS

Kom i gång med ipad - Tips på Appar

Disciplinära diskurser i naturvetenskap och matematik

Studieteknik Språkhandledningen. Britt Klintenberg

Att söka information (med betoning på Internet)

BLOCK 1. 1A. Att komma igång

Statistisk Maskinöversättning eller:

Pipelining i Intel Pentium II

FINSKA, B1-LÄROKURS I ÅRSKURS 7 9 Eleverna ska uppmuntras att använda finska mångsidigt för att kommunicera och söka information.

Användarhandledning Version 1.2

ANN fk. Örjan Ekeberg. Framåtkopplade Nät. återkopplade nät. Olika arkitekturer. BackPropagation through Time. Kalman-Filter tekniker

Jobbigt läge VAD HANDLAR BOKEN OM? LGR 11 CENTRALT INNEHÅLL SOM TRÄNAS ELEVERNA TRÄNAR FÖLJANDE FÖRMÅGOR LGRS 11 CENTRALT INNEHÅLL SOM TRÄNAS

B. Vad skulle man göra för att vara bättre förberedd inför en lektion i det här ämnet?

Taligenkänning med fördjupning på Hidden Markov Models

Vad kan biologiskt plausibla modeller säga oss?

Neural bas för kognition

Designmönster som dokumentation och utveckling av IKT i undervisningen

MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004

Läs och skrivsvårigheter är inte synonymt med dyslexi. Ur boken Barn utvecklar sitt språk 2010) redaktörer Louise Bjar och Caroline Liberg

Summering: Workshop 14/3-19

Föreläsningsanteckningar F6

STUDIETEKNIK. Carl Engvall Dagens föreläsning läggs upp på vår hemsida:

Följande program utvecklades av BITTECH. De flesta såldes via Elevdata, Frölunda Data och VetaMer. De finns inte längre till försäljning.

Extramaterial till Matematik X

Statistisk mönsterigenkänning

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Introduktion programmering

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Föreläsning 5: Grafer Del 1

Att utforska matematiken tillsammans strategier för inkluderande klassrumssamtal

Artificiell intelligens, eller Kommer din dator att bli klokare än dig? (eller kanske är den redan det?)

StoCKK Stockholm Center för Kommunikativt och Kognitivt stöd. Tips på appar för träning av tidig läs- och skrivförmåga

Nätverk 1 28 september 2018

TNK049 Optimeringslära

SVENSKA SOM ANDRASPRÅK

Forskning och utveckling inom språkteknologi Uppgift 3: Projektförslag Parallelliserad dependensparsning i CUDA

Linköpings universitet

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

KORT FÖR ATT LEDA DISKUSSIONEN

Pedagogisk planering för ämnet: Svenska

Rapportskrivning Användarcentrerad Design. Anders Lindgren

Hållbar utveckling A, Ht. 2014

Schemaläggnings metoderna AMP & SMP i en Multiprocessor

Upplägg. Binära träd. Träd. Binära träd. Binära träd. Antal löv på ett träd. Binära träd (9) Binära sökträd (10.1)

Konfiguration av LUPP synkronisering

Lösningar Datastrukturer TDA

Här är två korta exempel på situationer då vi tillämpar den distributiva lagen:

Från ljusenergi till en kub som går att stå på Hur man får en dator att känna igen olika former i visuell information

ViTal. Talsyntes. Användarhandledning

Inspirationsfasen. Fortsättning på nästa sida. Hållbar utveckling B, vårterminen Cemus/CSD Uppsala, Uppsala universitet & SLU

Transkript:

SPEECH RECOGNITION USING ARTIFICIAL NEURAL NETWORKS Oscar Lundblad Osclu399@student.liu.se 2017-01-05 Linköpings Universitet 729G43 Artificiell Intelligens

Innehållsförteckning Introduktion 3 Rapportens syfte och upplägg 3 Avgränsningar 3 Vad är tal och hur tar maskinen in tal 3 Om tal 4 Från tal till ingåenda data 4 NEURALA NÄTVERK 5 ANN (Artifical Neural Networks) 6 RNN (Recurrent Neural Networks) 9 LTSM (Long Term Short Memory ) 9 RNN och LTSM i Speech Recognition 11 Litteraturdiskussion 13 Sammanfattning 13 Citerade arbeten 15 2

Introduktion I de flesta mobiler och datorer idag är det möjligt att tala in sms eller diktera in en text. Detta är möjligt genom att dessa maskiner innehåller programvara som använder en process, med flera steg, som kallas Speech Recognition. De intelligenta maskinerna kan med hjälp av denna process tolka tal och returnera talet i skrift. Speech Recognition har många olika teknologier bakom sig, men en av dem besitter förmågan att lära sig själv och kan mäta sig med personer som transkriberar professionellt. Denna teknologin kallas Artificial Neural Networks och är baserat på den mänskliga hjärnans neurologiska nätverk. I denna rapport utforskas Speech Recognition och teknologin Artificial Neural Network som gör det möjligt för maskiner att tolka och skriva ut mänskligt tal. Rapportens syfte och upplägg Syftet med denna rapport är att utforska den teknologin som ligger bakom Speech Recognition,. Genom att kortfattat utforska vad tal är och senare förklara Artificial Neural Networks som har en central roll inom processen. Olika typer av Artificial Neural Networks kommer presenteras såsom Recurrent Neural Networks och Long Term Short Memory. Därefter presenteras hur dessa nätverk fungerar inom Speech Recognition. Avslutningsvis kommer rapportens innehåll och använd litteratur diskuteras, även sammanfattas rapporten i korthet. Avgränsningar I min sökande efter källor har jag upptäckt att det finns otroligt många olika sätt att gå tillväga på, för att få maskiner att tolka, skriva ut och agera på mänskligt tal. Däribland finns fält som Natural Language Processing och Natural Language Understanding, även mer kända modeller såsom Markov modellen och Hidden Markov modellen (även kallade HMMs). HMMs har i många fall kombinerats med Artificial Neural Networks dock så handlar denna rapporten främst om Artificial Neural Networks och hur de fungerar inom Speech recognition. Vad är tal och hur tar maskinen in tal För att kunna förklara hur Speech recognition fungerar är det viktigt att nämna hur talet är uppbyggt och hur det fungerar för människor. Det är även centralt att få förståelse för hur det mänskliga talet digitaliseras för att göra det möjligt att tolkas av intelligenta maskiner. 3

Om tal Tal består dels av meningar och ord men dessa består av mindre ljudenheter. Dessa ljudenheter är kända som fonem och de kan antingen ta formen som konsonanter eller vokaler. Fonemer är en samling av ljudenheter som alla har ett distinkt ljud som är unikt för just den fonemen. Tillsammans utgör fonem de ord och meningar vi talar. Dessa ljudenheter är kopplade till ett alfabet som kallas det fonetiska alfabetet. De ord som finns i lexikon brukar ha en fonetiskt översättning så det är möjligt att uttala det korrekt med hjälp av ljudenheterna. Ett exempel ett sådant är [hɛj] för uttalet av ordet hej, dessa tre fonem skapar ljudet av ordet hej. (Roach, 2009) Från tal till ingåenda data Fonem måste omvandlas från ljudenheter människor som förstår, till ljudenheter som kan tolkas av intelligenta maskiner. Detta görs genom att ljudenheterna digitaliseras till digital data, denna process sker när mikrofonen tar upp ljud och en A/D omvandlare konverterar ljudet till digital data innehållande ljudenheternas frekvens över den tid det uttalades. Spektrogram är ett vanligt sätt att visualisera detta, olika spektrogram ser olika ut när olika fonem uttalas. Spektrogram är grafer som representerar ljudenheterna genom att inkludera frekvens på y-axeln och tid på x-axeln. se skillnad i figur 1 och figur 2 (Mannel, 2008) Figur 1: Spektrogram från fonemet /i:/ 4

Figur 2: Spektrogram som representerar fonemet /o:/ Genom att studera dessa två olika spektrogram, i figur 1 och figur 2, ser vi att det finns skillnader. Dessa skillnader ger möjlighet till att skilja spektrogram åt och koppla dem till ett specifika fonem. Detta är en vanlig process när ljud ska omvandlas till digital data som senare kan bearbetas av olika processer. (Hosom, Cole, & Fanty, 1999) NEURALA NÄTVERK Den biologiska hjärnan har en struktur med neuroner som är kopplade till varandra, neuronerna överför kontinuerligt data till och från varandra genom kemiska eller elektriska signaler. Dessa miljarder neuroner är upphov till allt från minne, operationer och bearbetning till tankar. Artificella neurala nätverk är som många andra delar av artificiell intelligens, inspirerad av hur den mänskliga intelligensen ser ut, mer specifikt av strukturen och prestandan hos de biologiska neuronerna. (Bayya, 2006, s. 15) Artificiella Neurala Nätverk är ett relativt nytt verktyg inom Speech Recognition men har nyligen visat sig vara effektivt till att tackla de problem som existerar inom fältet (Gibiansky, 2014). I detta avsnittet utforskas de typer av Artificella Neurala Nätverk som är vanligast att använda vid Speech Recognition. 5

ANN (Artifical Neural Networks) Det grundläggande Artificiella Neurala nätverket kallas ANN, som det hädanefter kommer att benämnas i denna rapport. Det är även denna typen av nätverk som är grunden för de andra typerna som presenteras i detta avsnittet. Ett ANN är, som tidigare nämnt, baserat på de biologiska neuronerna samt deras struktur. Precis som biologiska systemet består ANN av neuroner, kallade noder i ANN. Dessa noder delas in i tre olika typer av lager, varav det första är input eller ingående data, andra typen består av hidden layers eller gömda lager, tredje och sista typen är output eller utgående data. (Priddy & Keller, 2005, ss. 3,4) En nod kan se annorlunda ut beroende på vilket lager den tillhör, även kan de differera beroende på nätverkets arkitektur och syfte. Såsom biologiska neuroner, tar noder ingående data och ger utgående data. Denna koppling mellan noder kallas weight och bär på ett värde, oftast betecknas dessa med w. En nod kan även ha en så kallad bias, som tillför ett värde till summan av de övriga värden som förses av nodens ingående data. Nodens bias bestäms ofta av det data set som används för att träna upp ett ANN. Bias kallas även ibland threshold eftersom den bestämmer hur pass hög summan av weights skall vara för att noden skall föra vidare information genom utgående data. Denna utgående data, kan bero på vilken typ av överföringsfunktion som noden aktiverar givet sin ingående data. (Priddy & Keller, 2005) Det finns många olika sådana funktioner, vilken som används beror ofta på vilken uppgift det ANN har eftersom olika funktioner passar olika bra till olika ändamål. En vanlig överföringsfunktion kallas The logistic sigmoid function, vilket formuleras som följande: Figur 3: The logistic sigmoid function (Priddy & Keller, 2005, s. 4) Figur 3 visar hur output (utgående data) formuleras med hjälp av The logistic sigmoid function. I denna funktionen ser man " # som nodens bias, $ % den ingående data noden fick och " % weights mellan noden och ingående data. (Priddy & Keller, 2005) 6

Figur 4: En nods output (utgående data), y, i ekvationsform. I figur 4 visas ett mer generellt sätt att skriva nodens utgående data i ekvationsform. Y är i denna figuren nodens utgående data som är ett resultat av funktionen g. Funktionen g tar in weights av de ingående data som noden fått in, även adderas nodens bias. Figur 5: En nod med weighted mellan noden och ingående data (w) och en överföringsfunktion (f()) som genererar en utgående data (z) Figur 5 föreställer en nod med flera ingående data, varav $ # förser noden i figuren med bias. Dessa weights från ingående data summeras och används sedan i nodens överföringsfunktion som returnerar utgående data. (Priddy & Keller, 2005, ss. 4,5) Ensamma noder är inte användbara inom Speech Recognition som ensamma enheter utan måste vara sammankopplade i ett ANN. Den vanligaste typ av ANN kallas The Feedforward Neural Network. Flödet av data i detta nätverk sker från vänster till höger och flödet åker alltid samma håll, framåt, därav nätverkets namn. Det vill säga att noder i nätverket får sin ingående data från bakomliggande noder och matar sin utgående data i ett flöde till noder 7

främre fram i nätverket. Som tidigare nämnt består ett ANN av tre olika lager noder, dessa är inputlagret, gömda lagret och det avslutande outputlagret. Figur 6: The Feedforward Neural Network. Figur 6 visar ett typiskt Feedforward Neural Network, där flödet av information går från vänster till höger, från ingående data till utgående data. Gemensamt för alla ANN är att de alla har ett inputlager och ett outputlager. Data som skall bearbetas tas in via inputlagret och returneras via outputlagret. Gömda lagret av noder sköter all typ av bearbetning av den data som inputlagret har försett dem med. Det gömda lagret kan bestå av flera lager, såsom visat i Figur 6. (Priddy & Keller, 2005) Det som gör ANN så pass unika och värdefulla inom Artificiell Intelligens och Speech Recognition är att det har förmågan att lära sig och bearbeta data på ett sådant sätt att det inte krävs någon direkt programmering. Detta sker genom att anpassa de weights mellan de anslutna noderna i nätverket, det finns flera olika tillväga sätt att lära ett ANN men i grunden är det dessa weights som förändras. (Priddy & Keller, 2005) Hur man tränar in Speech Recognition diskuteras under rubriken Neurala Nätverk i Speech Recognition senare i denna rapport. 8

RNN (Recurrent Neural Networks) Recurrent Neural Networks, RNNs, är en annan typ av ANN. Dessa skiljer sig från The Feedforward Neural Network på det sättet att flödet av data inte längre endast rör sig framåt i nätverket. Istället kan information återkopplas inom nätverket, vid noder inom gömda lagret. Detta innebär att noder kan återkalla minne av vad som skedde under förra aktiveringen. Figur 7 visar hur noden kan återse det tidigare steget i bearbetningen. Figur 7: En enkel representation av ett RNN. I figur 7 är t den tidpunkt som bearbetningen sker, i figuren ser vi att vid tidpunkt t i gömda lagret återkallar information från en nod i t 1, det vill säga till steget innan nuvarande steg. (Mikolov, Karafiat, Burget, Cernock ˇ y, & Khudanpur, 2010) LTSM (Long Term Short Memory ) Long Term Short Memory, LTSMs, är en speciell variant av RNN. Denna strukturen på ANN föreslås ett sorts block istället för den traditionella noden, kallad memory block. Denna typ av nod skiljer sig genom att vara en del av ett mindre system, därav namnet memory block. Dessa existerar i det gömda lagret. Ett sådant memory block visualiseras i figur 8. Som figuren visar finns det flera olika portar och en central nod. (Sak, Senior, & Beaufays, 2014) 9

Figur 8: Ett memory block inom LTSM i RNN. Dessa extra portar tillåter en cirkulation av information inom ett memory block. Input gate kontrollerar flödet till noden medan output gate kontrollerar flödet ut ur noden. Detta innebär att noden kan spara information från tidpunkt t 1 och återkalla dem vid tidpunkt t. Den tredje och sista porten inom ett memory block kallas Forget gate och möjliggör att noden kan återställa sitt minne eller glömma information. Eftersom dessa memory blocks existerar i ett RNN, inom det gömda lagret, innebär det att det blocken är alla anslutna till varandra och kan på det sättet skapa ett flöde av information mellan memory blocks. (Sak, Senior, & Beaufays, 2014) Ekvationerna som implementeras i LTSM presenteras i figur 9. Figur 9: Algoritmerna kring varje nod i ett memory block 10

& ', ( ', h ', + ',, ', är i denna implementation, input gate, forget gate, hidden vector, cell activation och sist output gate. -. och - / representerar de weights mellan ingående data, x, och gömda lagret, h. 0 är bias. (Graves, Mohamed, & Hinton, 2013) Beroende på de värden som de olika porterna får, sker olika saker inom memory blocks. Memory block glömmer värden om värdet av input gate, & ' är högt och värdet av forget gate, ( ' är lågt. Detta innebär också om ( ' = 0, återställs minnet helt och hållet. (Gibiansky, 2014) RNN och LTSM i Speech Recognition Mycket av världen består av sekvenser och tal och språk är inget undantag. Tidigare i denna rapport presenterades fonem och spektrogram. En sekvens fonem eller spektrogram kan utgöra ett visst ord eller mening. I inom Speech Recognition ANN är det vanligast att ta in ingående data i form av sekvenser, och att nätverket lär sig ordning på dessa sekvenser för att kunna returnera något användbart. Inom Speech recognition är det vanligast att se att RNN används och inte det The Feedforward Neural Network. Detta för att denna typen av ANN har en begränsning gällande längden på de meningar och kontext den får in. Detta betyder att när ett The Feedforward Neural Network bearbetar ett ord, kan den endast återkalla de fem till tio av de tidigare orden som bearbetas och förlorar därmed kontexten hur orden hänger ihop. I ett RNN, som tidigare förklarat, kan information återkopplas i nätverket under en längre tid och göra det möjligt för noder att komma ihåg längre sekvenser. Detta ger större fördelar inom Speech recognition då nätverket kan återkalla mer ord och meningar när ett ord bearbetas i nätverket. (Mikolov, Karafiat, Burget, Cernock ˇ y, & Khudanpur, 2010) Trots RNNs framgång inom Speech recognition är nätverket mindre lyckat på att behålla kontexten från en längre input. LTSM i RNN tillåter ett nätverket att behålla kontext betydligt längre och har visat många fördelar över traditionella RNN, speciellt inom kontextkänsliga språk. (Sak, Senior, & Beaufays, 2014) Kontext spelar en väldigt stor roll inom Speech Recognition. Eftersom de ANN skall kunna kolla på de tidigare orden som det bearbetat och kunna mer korrekt välja det ordet som skall följa. Till exempel följer ordet är väldigt ofta ordet du i det svenska språket. Samma gäller på en djupare nivå då ett ANN bearbetar fonem, som ord består av, i spektrogram. Ett fonem följer vanligtvis ett annat, något som ett ANN lär sig under träning. Detta gör det möjligt för nätverket att förutse ett kommande fonem. Det är här LTSM och RNN visar 11

framfötterna med användning genom att ta in tidigare bearbetad kontext. (Graves, Mohamed, & Hinton, 2013) Som tidigare nämnt kan träning av ett nätverk ske på många olika sätt. I regel ger man nätverket ett träningsset med data som visar hur utgående data skall se ut, som nätverket övar på. I Speech Recognition gör man detta ofta genom att skapa en acoustic model, en modell som representerar förhållandet mellan en ljudsingal, i många fall i form av ett spektrogram, och ett fonem. Denna modellen visar hur en sekvens ljud kan konverteras till bokstäver för nätverket. (Gibiansky, 2014) Alex Graves, Abdel-rahman Mohamed och Geoffrey Hinton presenterar sin arkitektur på sitt RNN i sin rapport Speech Recognition with Deep Recurrent Neural Networks. Given en sekvens som input, som kallas x, beräknas en sekvens inom det gömda lagret för att sedan returnera en sekvens som utgående data. Figur 10: Alex graves et al. Algoritmer i den gömda lagret, h, som returnerar utgående data, y Första algoritmen, som presenteras i figur 10, beräknar sekvensen, h ',inom det gömda lagret. -. och - / representerar de weights mellan input, x, och gömda lagret, h. 0. är nodens bias, h '34 är den sekvens som beräknades i förra tidpunkten och H är The logistic sigmoid function, som tidigare definierats i denna rapport. I andra algoritmen är 5 ' utgående data vid tidpunkt t. -.6 är weights mellan gömda lagret och utgående data. h ' är nuvarande sekvens och 0 6 bias. (Graves, Mohamed, & Hinton, 2013) Det handlar alltså om att omvandla en viss typ av sekvens till en annan och att förutse vilken sekvens som kan till att komma näst. I Speech Recognition omvandlas sekvenser av ljud till en sekvens av bokstäver, detta sker genom att man använder den tidigare nämnda acoustic model och att nätverket lärt sig förutse vilken fonem eller ord som kan komma efter de tidigare analyserade orden eller fonemen som passerat nätverket. Nätverket omvandlar då 12

ljudsekvenser till ord i text, efter lärt sig att en viss sekvens av ljud innebär ett visst ord i text (Gibiansky, 2014). Litteraturdiskussion Litteraturen som använts i denna rapport har för mesta dels varit akademiska rapporter eller böcker. De böcker som använts har givit grunden för att förstå ANN och senare de akademiska rapporterna. Detta har givit en bra översikt hur ANN fungerar och hur varje rapport har anpassat ANNs för deras specifika frågeställning eller mål. En mindre akademisk källa har använts, detta är Andrew Gibiansky, då denne förmedlade en bra översikt på de mer avancerade praktikerna som användes i rapporterna. I de akademiska rapporter som använts som källa i denna rapport har de i grunden använt ett RNN men modifierat och optimerat nätverket med egna metoder, därför valdes att presentera en av de rapporters lösning att se närmare på. Jag har fått upp ögon för ANN, något som jag tidigare bara hade en sorts arkitektur. I min efterforskning har jag upptäckt RNN och LTSM samt deras fördelar och egenskaper, speciellt intressant tycker jag det är att de har uppkommit från varandra när den föregångaren visar svagheter. Såsom med att kunna återkalla längre sekvenser, då RNN är bättre än grundläggande ANN och LTSM inkluderat i ett RNN är ännu bättre än endast RNN. Gällande Speech recognition ser jag att användningsområdena är många. Att snabbt kunna konvertera tal till korrekt text innebär en möjlighet att kompensera texter utan att använda något annat verktyg än rösten. I många av de rapporter som läst, bland annat achieving human parity in conversational speech recognition av Xiong et al, hävdar att de uppnåt mänsklig förmåga att transkribera tal, både i snabbhet och korrekthet. Jag anser att ANNs är det bättre valet när det gäller att uppnå Speech Recognition eftersom ANNs har visat gång på gång att det är mer korrekt i sina transkriptioner. Jag ser detta som en möjlighet att använda tekniken för att logga offentliga och viktiga händelser. Såsom en rättegång där det som sägs under rättegången viktigt att loggas och föras i registret. Jag ser också möjligheter till översättning eftersom det är vanligt att översätta från text till text. Att då smidigt kunna diktera in text för att bli översatt och sedan upprepat via talsyntes. Sammanfattning I denna rapport har Artifical Neural networks, ANN, utforskats och hur de fungerar inom Speech Recognition. I ANN finns en nod som tar inp och returnerar utgående data som förs 13

vidare till andra noder. Noderna utgör tillsammans tre olika typ av lager, varav det första är input, andra är gömda lagret och tredje och sista lagret är utgående data. Det gömda lagret sköter bearbetningen av data. De olika typerna av ANN har också presenterats i denna rapport. Det finns ett grundläggande ANN som har ett informationsflöde som endast rör sig åt ett håll, från ingående data till utgående data, ingående data till ANNs är sekvenser. Ett Recurrent Neural Network, RNN, är uppbyggt på samma sätt som ett grundläggande AAN men tillåter informationflödet att röra sig fritt bland noderna i det gömda lagret. Detta gör att RNNs har förmågan att bättre återkalla minne på vad som skedde i de tidigare stegen i nätverket än grundläggande ANNs. För Speech recogniton innebär detta att nätverket kan förutse kommande fonem baserat på föregående fonem. För att ytterligare förbättra RNN kan memory blocks introduceras i det gömda lagret. Dessa har möjlighet att låta informationen cirkulera inom blocken med hjälp av input, output och forget gates. I Speech Recognition omvandlas sekvenser av ljud till en sekvens av bokstäver. För att ett ANN skall kunna lära sig själv och fungera korrekt, tränas ofta en acoustic model upp för att representera förhållandet mellan ljud och fonem. Med hjälp av denna modellen kan nätverket konvertera ljud till bokstäver, däremot måste nätverket tränas först. Detta görs med en mata in ett data set som nätverket får träna på. Detta data set kan till exempel visa hur fonem ser ut i digitaliserade format såsom spektrogram och koppla en viss sekvens fonem till ett ord i textformat. Teknologin kan användas för att snabbt och enkelt mata in text med rösten när något annat verktyg inte är tillgängligt, detta är också mycket smidigare. Förslagsvis i offentliga möten som skall loggas. 14

Citerade arbeten Bayya, Y. (2006). Artificial neural networks. New Delhi: Prentice Hall of India Private Limited. Gibiansky, A. (den 23 April 2014). Andrew Gibiansky. Hämtat från Andrew Gibiansky : Math -> Code: http://andrew.gibiansky.com/blog/machine-learning/speech-recognition-neuralnetworks/ den 3 Januari 2017 Hosom, J.-P., Cole, R., & Fanty, M. (1999). Speech Recognition Using Neural Networks at the Center for Spoken Language Understanding. Oregon Graduate Institute of Science and Technology, Center for Spoken Language Understanding (cslu ). Oregon: Oregon Graduate Institute of Science and Technology. Mannel, R. (den - December 2008). Speech Spectra and Spectrograms. Hämtat från Macquarie Univeristy: http://clas.mq.edu.au/speech/acoustics/speech_spectra/vowels.html den 2 Januari 2017 Priddy, K. L., & Keller, P. E. (2005). Artificial neural networks: an introduction. Washington: The International Society for Optical Engineering. Roach, P. (2009). English Phonetics and Phonology: A pratical course (Vol. Fjärde upplagan). Cambridge: Cambridge University Press. 15