Watson er et kunstig intelligensbasert system som er i stand til å svare på spørsmål formulert i naturlig språk , [ 1 ] utviklet av det amerikanske selskapet IBM . Det er en del av DeepQA forskningsteamprosjektet, ledet av hovedetterforsker David Ferrucci . Det ble gitt dette navnet til ære for IBMs grunnlegger og første president, Thomas J. Watson . [ 2 ] [ 3 ]
Watson svarer på spørsmål ved hjelp av en lokalt lagret database . [ 4 ] Informasjonen i den databasen kommer fra en rekke kilder, inkludert oppslagsverk, ordbøker, synonymordbok, nyhetsartikler og litterære verk, så vel som eksterne databaser, taksonomier og ontologier (spesielt DBpedia , WordNet ). [ 5 ]
For å bevise sine virkelige evner deltok han i tre dager i februar 2011 i en spesiell kamp på to kamper i det amerikanske TV- spillprogrammet Jeopardy! , og beseiret begge sine menneskelige motstandere: Brad Rutter , vinneren med høyest penger i hele programmets historie, og Ken Jennings , rekordholderen for den lengste rekken av mesterskap (etter å ha vunnet 75 kamper). [ 6 ] [ 7 ] Watson mottok førstepremien på $1.000.000, mens Ken Jennings og Brad Rutter mottok henholdsvis $300.000 og $200.000. Både Jennings og Rutter lovet å donere halvparten av deres respektive overskudd til veldedige organisasjoner etter eget valg (Jennings valgte VillageReach , og Rutter the Lancaster County Community Foundation), [ 8 ] mens IBM delte Watsons overskudd mellom to organisasjoner ( World Vision og World Community Grid ) . [ 9 ]
Watson presterte konsekvent sine menneskelige motstandere med pekeutstyret som ble brukt av spillet, men hun hadde problemer med å svare på noen få kategorier, spesielt de som består av korte ledetråder med få ord. For hver ledetråd ble Watsons mest sannsynlige svar vist på TV-skjermen. Watson fikk tilgang til 200 000 000 sider med innhold, strukturert og ustrukturert, ved å bruke fire terabyte med disklagring, [ 10 ] inkludert fullteksten til den engelske Wikipedia . [ 11 ] Watson var ikke koblet til Internett under spillet. [ 12 ] [ 13 ]
Watson er et datastyrt svarsystem for spørsmål utviklet av IBM . [ 1 ] Selskapet beskriver det som "en anvendelse av avanserte teknologier designet for naturlig språkbehandling , informasjonsinnhenting , kunnskapsrepresentasjon , maskinresonnering og maskinlæring til det åpne feltet for svarsøk," som er "bygget på IBMs DeepQA -teknologi for hypotesegenerering, massebevisinnsamling, analyse og scoring." [ 1 ]
I følge IBM er Watson et arbeidsoptimalisert system som er designet for komplekse analyser , muliggjort av integrasjonen av POWER7s massivt parallelle prosessorer og DeepQA- programvare utviklet av selskapet. Din maskinvarestøtte for konkurranse på Jeopardy! den besto av to enheter med 5 rack med kontrollernoder, med nitti IBM POWER 750-servere, hver server bruker en 3,5 GHz-prosessor med 8 kjerner, der hver kjerne støtter 4 tråder i maskinvare . Systemet har totalt 2880 POWER7-behandlingskjerner , og totalt 16 terabyte RAM . [ 15 ] Det faktum at POWER7-prosessoren er i stand til å behandle på en massiv parallell måte, gjør den til et ideelt supplement til IBMs innebygde DeepQA -programvare i Watson, som er pinlig parallell (dvs. arbeid som enkelt kan deles opp i flere parallelle oppgaver. ) [ 16 ]
Ifølge John Rennie kan Watson behandle 500 gigabyte per sekund (tilsvarer en million bøker). [ 17 ] Hovedoppfinner og senior IBM-konsulent Tony Pearson estimerte den totale maskinvarekostnaden for Watson til å være rundt $3.000.000. [ 18 ] Rennie har uttalt at Watsons innhold ble lagret i RAM-en hans for spillet, fordi data lagret på harddisker er for trege å få tilgang til. [ 17 ]
Programvaren som er innebygd i Watson ble skrevet med programmeringsspråkene Java og C++, og bruker to rammeverk brukt av Apache Software Foundation - Hadoop -rammeverket for distribuert databehandling, og Unstructured Information Management Architecture (UIMA)-systemet for analyse av trykt materiale - operativsystemet SUSE Linux Enterprise Server 11 . [ 10 ] [ 19 ] [ 20 ] Ifølge IBM bruker Watson mer enn 100 forskjellige teknikker for å analysere naturlig språk, identifisere kilder, finne og generere hypoteser, søke etter og score bevis, kombinere og klassifisere hypoteser. [ 21 ]
Selv om forskning allerede hadde blitt gjort innen QA, Jeopardy! Det var en mye større utfordring enn det hadde vært til nå, derfor utviklet IBM sitt eget system, som de kalte DeepQA.
Før du kan svare på spørsmål, må du angi innholdet som systemet skal bruke når det skal søke opp informasjon relatert til spørsmålet. [ 14 ]
Det første du må gjøre er å se etter eksempler på spørsmål for å kunne vite hva slags spørsmål systemet må svare på og deres domene. Fra en analyse av disse eksempelspørsmålene må du gi DeepQA et sett med forskjellige informasjonskilder (artikler, litterære verk, leksikon ...). Fra denne første databasen vil systemet søke etter andre kilder på nettet, trekke ut ulike ressurser som er relatert til de første kildene, og score dem basert på hvor informative de er. Til slutt vil DeepQA slå sammen de høyest scorende kildene den har funnet med det første settet ditt, noe som gir deg mye mer informasjon og ressurser å referere til. [ 14 ] Et av systemene som brukes for å tilegne seg kunnskap automatisk og lagre den på en strukturert måte er PRISMATIC . [ 24 ]
Watson har data av mange typer, strukturert, semi-strukturert (som databaser og ontologier [ 14 ] ) og ustrukturerte (nevnt ovenfor), inkludert følgende: Wikipedia , Freebase , WordNet , DBPedia og Yago-ontologien . [ 22 ] [ 25 ]
I dette trinnet mottas spørsmålet som Watson må svare på som input, og derfor er det første du må gjøre å finne ut hva det spør om for deretter å søke etter svarene. For å utføre en god analyse, bruker DeepQA et bredt utvalg av algoritmer og ekspertsystemer . [ 14 ] Denne fasen er sammensatt av ulike trinn.
SpørsmålsrangeringFor å finne hvilken type svar vi trenger, må vi først vite hva slags spørsmål er, om det er en definisjon, om det er et matematisk spørsmål, et puslespill... Disse forskjellige måtene å klassifisere et spørsmål på kalles Qclasses ( Spørsmål klasser ). [ 26 ] DeepQA må bestemme hvilken klasse spørsmålet tilhører, for å gjøre det bruker det forskjellige metoder uavhengig av hverandre. Dette kan resultere i at forskjellige teknikker oppdager forskjellige klasser for samme spørsmål. I tilfelle av å finne to eller flere inkompatible klasser, er en annen komponent nødvendig for å velge det beste alternativet. Når du har en type spørsmål, vil dette resultatet tjene til å bestemme maskinlæringsmetodene og modellene som vil bli brukt senere. [ 26 ]
Fokusdeteksjon og LAT - erDet såkalte fokuset til et spørsmål er den delen av spørsmålet som er en referanse til svaret. Dette betyr at hvis vi erstatter det med svaret, blir spørsmålet et utsagn eller faktum. I eksempelspørsmålene om Jeopardy! følgende, den fete delen er fokus :
LAT ( leksikalsk svartype ) er et ord eller en kort setning som forteller oss hvilken type svar som etterspørres. Det er vanligvis et ord som tilhører fokus , bortsett fra noen tilfeller. I eksemplene ovenfor er tall den første LAT, og Ella er den andre. [ 26 ]
Å finne LAT for et spørsmål lar oss finne ut om et svar funnet er en forekomst av det, det vil si om det samsvarer med det spørsmålet spør (hvis LAT er hun , må svaret være en kvinnes navn). Derfor vil det være nyttig å finne ut om det genererte svaret er gyldig eller ikke. [ 14 ]
RelasjonsgjenkjenningMange spørsmål inneholder relasjoner av alle slag, syntaktiske eller mellom objekter i setningen. Disse kan brukes og søkes direkte i relasjonsdatabaser, som er strukturert i tabeller. Derfor kan vi søke om det er noen der relasjonen vi har funnet er funnet. For eksempel, i spørsmålet Hva er de to statene du kan gå inn på nytt hvis du krysser den nordlige grensen til Florida, kan vi slå opp Floridas grenser i en tilgjengelig database og finne svaret direkte der. Problemet er at i en studie utført med spørsmål fra Jeopardy! Det ble observert at disse tilfellene er svært sjeldne og mesteparten av tiden fungerer ikke denne teknikken. [ 14 ]
DekomponeringEn veldig viktig del av å analysere et spørsmål er å dele det ned i forskjellige spørsmål og svare på hvert enkelt uavhengig av de andre. På denne måten, jo mer riktig et svar er i hvert delspørsmål, jo mer sannsynlig er det at det er riktig svar på det første spørsmålet. [ 27 ]
Det er to typer underspørsmål. De førstnevnte er de som kan analyseres og besvares parallelt, siden det ikke er noen avhengigheter mellom dem. De andre må besvares sekvensielt, siden ett spørsmål krever svaret fra et annet for å bli besvart. For eksempel, i spørsmålet En kontroversiell krigsfilm fra 1979 var basert på arbeidet utført i 1902 av denne forfatteren , er det nødvendig å vite hvilken film han refererer til ( Apocalypse now ) for å finne forfatteren du spør. [ 27 ]
I denne fasen brukes resultatene av analysen av spørsmålet til å søke etter svar og generere kandidater eller hypoteser. Da må systemet bevise at de har rett med et nivå av tillit. For å oppnå dette er prosessen delt inn i ulike stadier. [ 14 ]
Første søkFor å starte med generering av hypoteser, utføres et søk med mål om å finne innhold som kan være relatert til svaret. Søketeknikker brukes i tekster, spørringer i databaser og til og med søk basert på kunnskap om informasjonen. [ 14 ]
Generering av potensielle kunderMed resultatene av det første søket, må kandidater genereres, som er mulige svar. De må trekkes ut forskjellig for hver type søk, hvis det utføres på en database med personnavn, kan hvert navn som blir funnet være en kandidat. I andre typer hvor søkeresultatene er lengre og mer komplekse, kreves andre mer avanserte teknikker. [ 14 ]
I denne fasen vil alle kandidatene genereres som Watson senere vil analysere for å validere dem og trekke ut den beste. Det betyr at dersom riktig svar ikke finnes blant kandidatene, vil ikke systemet kunne svare på spørsmålet. [ 14 ]
Fra det første søket genereres det mange kandidater, som hver må analyseres og gis en poengsum for å finne ut hvor korrekt den er. Dette kan skape problemer da det er en kostbar prosess og bruker mye ressurser. Før man skårer kandidatene, gjennomføres det derfor en foranalyse som ikke er særlig uttømmende og med mindre forbruk for å eliminere hypoteser og dermed spare utregninger. [ 14 ]
Myk filtrering består i å bruke et filter på kandidatene. Dette tildeler den en poengsum, med lettere algoritmer, og basert på resultatet bestemmes det om den skal gå til neste fase. [ 14 ] En av måtene å beregne denne poengsummen på er å bestemme om en kandidat er en forekomst av spørsmålets LAT, det vil si at typen kandidat er den samme som den som stiller spørsmålet, hvis det er en person systemet vil forkaste alt som ikke samsvarer med en. Denne prosessen kalles Type Coercion . [ 28 ]
Takket være denne metoden, av de hundrevis av kandidater som kommer ut av hypotesegenerasjonen, vil bare en del gå til scoringsstadiet, og resten vil bli sendt direkte til resultatfusjonsstadiet. [ 14 ]
Kandidater som består myk filtrering må gjennomgås grundig. Denne analysen består i å lete etter bevis om gyldigheten til hver kandidat og evaluere disse resultatene for å score hypotesene. [ 14 ]
Samling av bevisFor å avgjøre om en kandidat er riktig, må du se etter bevis for å bevise det. En av teknikkene som brukes består i å utføre et søk tilsvarende det som ble utført i hypotesegenereringsstadiet, men et krav er at kandidaten finnes i teksten. På denne måten vil bevisene som er funnet inneholde hypotesen i konteksten brukt i spørsmålet. [ 14 ] [ 29 ]
PoengsumDenne fasen er hvor graden av sikkerhet som bevisene støtter hver kandidat beregnes med, ved hjelp av flere teknikker. Disse måler ulike aspekter og dimensjoner ved spørsmålet, det vil si at noen enklere algoritmer ganske enkelt vil avgjøre om testen er lik spørsmålet, mens andre vil ta hensyn til andre aspekter, for eksempel om kandidaten er objektet eller emnet for spørsmålet. setning der det står bl.a. [ 14 ]
Før du går videre til sluttfasen og velger det endelige svaret, slår DeepQA sammen alle svar som er likeverdige eller nært beslektede. Det betyr at du også må slå sammen de forskjellige poengsummene og testene som ble funnet i forrige trinn. For eksempel, hvis spørsmålet ber om en persons navn, vil Watson slå sammen alle kandidater som er navn på samme person. Dette er fordi neste trinn bruker teknikker basert på de relative forskjellene mellom kandidatene. [ 30 ]
Det siste trinnet inkluderer å estimere en tillit til riktigheten av en hypotese, basert på dens poengsum, og å plassere hver kandidat i en rangering . For å utføre disse oppgavene bruker Watson maskinlæring , som krever at du trener den med en rekke spørsmål med kjente svar og en læringsmodell basert på poengsum, slik at den starter med en gyldig kunnskapsbase. [ 14 ]
Når rangeringen er oppnådd med din selvtillit, har Watson allerede det som skal til for å avgjøre om det må svare på spørsmålet og hvilket av alle spørsmålene det må bruke.
For å oppfylle hovedkravet for alle deltakere på Jeopardy! Watson ble tvunget til å vente til verten, Alex Trebek , leste hvert spor i sin helhet, på hvilket tidspunkt et lys ville tennes som et signal for å indikere at systemet er klart. Den første deltakeren som aktiverer knappen på sin buzzer vinner sjansen til å svare. [ 13 ] [ 31 ] Watson mottok ledetrådene i form av elektroniske tekster samtidig som de ble gjort tilgjengelig for de menneskelige deltakerne. [ 13 ] Den ville deretter analysere ledetrådene på tvers av forskjellige nøkkelord og setningsfragmenter for å finne statistisk relaterte fraser. [ 13 ] Watsons hovedinnovasjon var ikke i å lage en ny algoritme for denne operasjonen, men snarere i dens evne til raskt å kjøre tusenvis av velprøvde algoritmer for naturlig språkanalyse samtidig for å finne det riktige svaret. [ 13 ] [ 32 ] Sannsynligheten for Watson-korreksjonen måles ved antall algoritmer som finner det samme svaret uavhengig. [ 13 ] Når Watson har et lite antall mulige løsninger, er det i stand til å foreta sammenligninger med databasen for å avgjøre om løsningen gir mening. [ 13 ] I en sekvens på 20 øvelser var de menneskelige deltakerne i stand til å bruke den gjennomsnittlige tiden på seks eller syv sekunder som Watson trengte for å lytte til signalet og bestemme om de ville peke på en respons. [ 13 ] I løpet av den tiden må Watson også evaluere responsen og avgjøre om resultatet er riktig på en måte som er tilstrekkelig til å peke. [ 13 ] En del av systemet som ble brukt av Watson for å vinne konkurransen var elektroniske kretser som mottok "klar"-signalet og deretter undersøkte om Watsons konfidensnivå var stort nok til å aktivere summeren. På grunn av hastigheten til disse kretsene sammenlignet med hastigheten på de gangene mennesker er i stand til å reagere, var Watsons reaksjonstid raskere enn de menneskelige deltakerne, bortsett fra når menneskene forutså (i stedet for reagerte). a) "klar"-signalet. [ 33 ] Etter signalisering snakket Watson med en elektronisk stemme, syntetisert fra opptak gjort av Jeff Woodman for et tekst-til-tale-program utviklet av IBM i 2004, [ 34 ] og ga svar i formatet "svar og spørsmål" assosiert med Fare! [ 13 ]
Omstendighetene som førte til utviklingen av Watson kan spores tilbake til Deep Blue - datamaskinens seier over Garry Kasparov , en internasjonal sjakkstormester , 11. mai 1997 . Siden den gang har IBM vært på utkikk etter en ny utfordring, og i 2004 hadde Charles Lickel, IBMs forskningssjef, funnet en da han så Ken Jennings seiersrekke på Jeopardy! mens han spiste på en restaurant med kollegene sine. Lickel ble fascinert av muligheten for å bruke konkurransen som en utfordring for IBM, og i 2005 støttet Paul Horn , IBMs forskningsleder, Lickel i å overtale et av avdelingsmedlemmene hans til å ta utfordringen: å spille Jeopardy! med et IBM-system. Selv om han i utgangspunktet hadde problemer med å finne medlemmer av forskerteamet hans som var villige til å ta på seg det som virket som en mye mer kompleks utfordring enn sjakkspillet, aksepterte David Ferrucci tilbudet til slutt. [ 35 ] Watson ble innledet av et system kalt «Piquant», som deltok i konkurranser drevet av USAs regjering, der det var i stand til å svare riktig på bare 35 prosent av det totale antallet ledetråder i spillet, og han krevde vanligvis flere minutter å svare. [ 36 ] [ 37 ] [ 38 ] For å konkurrere på Jeopardy! med suksess, måtte Watson svare på maksimalt noen få sekunder, og på den tiden ble problemene som ble stilt i quizen ansett som umulige å løse. [ 13 ]
I innledende tester utført i 2006 av David Ferucci, leder av IBMs Semantic Integration and Analysis Department, fikk Watson 500 ledetråder fra tidligere episoder av Jeopardy! Selv om de beste menneskelige deltakerne var i stand til å svare på maksimalt 95 prosent av ledetrådene riktig, var Watson i sin første test i stand til å svare på bare 15 prosent av ledetrådene riktig. I løpet av 2007 ga teamet seg selv tre til fem år og et team på 15 personer for å løse problemene. [ 13 ] I 2008 hadde utviklerne kommet langt, til det punktet at Watson var i stand til å konkurrere med mestere fra Jeopardy! . [ 13 ] I februar 2010 beseiret Watson champions of Jeopardy! jevnlig. [ 39 ]
Watson var først og fremst en IBM-innsats, men utviklingsteamet inkluderer fakulteter og studenter fra Carnegie Mellon University , University of Massachusetts i Amherst , University of Southern California Institute for Information Sciences , University of Texas i Austin , Massachusetts Institute of Technology , Universitetet i Trento og Rensselaer Polytechnic Institute . [ 14 ]
I 2008 tok IBM-representanter kontakt med Harry Friedman , den utøvende produsenten av Jeopardy! , om muligheten for en konkurranse mellom Watson og to av programmets mest suksessrike deltakere ( Ken Jennings og Brad Rutter ). Friedman var enig i den avgjørelsen. [ 13 ] [ 40 ] Forskjellene mellom Watson og de menneskelige deltakerne hadde ført til konflikt mellom IBM og Jeopardy! under konkurranseplanlegging. [ 41 ] IBM reiste gjentatte ganger bekymring for at showets forfattere ville utnytte Watsons kognitive mangler ved å skrive ledetrådene, og dermed gjøre quizen om til en Turing-test . For å omgå denne bekymringen, valgte en tredjepart tilfeldig spor fra tidligere skrevne programmer som ikke hadde blitt sendt. [ 41 ] Staben til Jeopardy! han uttrykte også bekymring for reaksjonstiden med summeren. Watson signaliserte opprinnelig elektronisk, men showets ansatte ba om at systemet fysisk skulle trykke på knappen, som de menneskelige deltakerne. [ 42 ] Imidlertid klarte Watson å løpe fra sine menneskelige konkurrenter, selv med sin robotfinger.
For å forberede Watson på konkurransen sin, bygde IBM et falskt sett med Jeopardy! i et konferanserom på en av deres teknologisteder. Menneskelige deltakere, inkludert tidligere deltakere på Jeopardy! , deltok også i falske konkurranser, arrangert av The Onions Todd Alan Crain . [ 13 ] Rundt 100 spotter ble utført, med Watson som vant 65 prosent av spillene. [ 43 ]
De offisielle kampene ble spilt inn i januar 2011 , og ble sendt måneden etter.
Ifølge IBM er målet for Watson å gjøre det mulig for datamaskiner å begynne å samhandle naturlig med mennesker på tvers av et bredt spekter av applikasjoner og prosesser, forstå menneskelige spørsmål og gi svar som mennesker kan forstå og rettferdiggjøre. [ 39 ]
IBM og Nuance Communications Inc. har gått sammen om forskningsprosjektet for å utvikle et kommersielt produkt i løpet av de neste 18 til 24 månedene som vil utnytte Watsons evner som et klinisk beslutningsstøttesystem for å hjelpe til med medisinsk diagnose og behandling av pasienter. Leger ved Columbia University hjelper til med å identifisere kritiske problemer i medisinutøvelsen der Watson-teknologi kan bidra, og leger ved University of Maryland jobber med å identifisere hvordan et teknologisystem som Watson best kan samhandle med leger for å gi maksimal assistanse . [ 44 ] Det har også blitt foreslått av Robert C. Weber, generaladvokaten til IBM, at Watson kan brukes til juridiske undersøkelser. [ 45 ]
Watson er basert på kommersielt tilgjengelige servere merket "IBM Power 750" utgitt siden februar 2010 . IBM har også til hensikt å markedsføre DeepQA- programvare til store selskaper, til en prislapp i millioner av dollar, som gjenspeiler prislappen på 1 million dollar som kreves for å kjøpe en server som oppfyller minimumskravene for å kjøre Watson. IBM forventer at prisen vil falle betraktelig innen et tiår ettersom teknologien forbedres. [ 13 ]