Luonnollisella kielellä keskustelevat järjestelmät

Samankaltaiset tiedostot
Turingin testin historia

Ohjelmointi 1. Kumppanit

Alkukartoitus Opiskeluvalmiudet

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

1. Liikkuvat määreet

Yhdyssana suomen kielessä ja puheessa

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Säännölliset kielet. Sisällys. Säännölliset kielet. Säännölliset operaattorit. Säännölliset kielet

(0 1) 010(0 1) Koska kieli on yksinkertainen, muodostetaan sen tunnistava epädeterministinen q 0 q 1 q 2 q3

Helpon suomen alkeet. Miten puhua niin, että kielenoppijakin ymmärtää? Salla Kurhila & Taija Udd, Suomen kieli ja kulttuuri, Helsingin yliopisto

Esimerkkejä polynomisista ja ei-polynomisista ongelmista

Tekoälyn perusteita ja sovelluksia (TIEP1000)

Chomskyn hierarkia ja yhteysherkät kieliopit

Tavoite Opiskelija osaa käyttää englannin kielen rakenteita, hallitsee kielen perusilmaukset ja ymmärtää opiskelijan arkielämään liittyvää kieltä

KIELENOPPIJOITA TIEDONHANKINTA KESKIÖSSÄ KUUNTELEMALLA OPPIJA (AUDITIIVINEN) KIELEN KÄYTTÖ, VUOROVAIKUTUS NÄKEMÄLLÄ

ASCII-taidetta. Intro: Python

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

11. Javan toistorakenteet 11.1

5.3 Ratkeavia ongelmia

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

JUHTA ja VAHTI juhlatilaisuus, Tietojärjestelmien tulevaisuudesta tekoälyn kehityksen näkökulmasta. Timo Honkela.

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko

Osaa käyttää työvälineohjelmia, tekstinkäsittelyä taulukkolaskentaa ja esitysgrafiikkaa monipuolisesti asiakasviestintään.

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 10. joulukuuta 2015 TIETOTEKNIIKAN LAITOS.

Satunnaisalgoritmit. Topi Paavilainen. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kielen ymmärtäminen kieliteknologian näkökulmasta. Kimmo Koskenniemi täysinpalvellut kieliteknologian professori Helsingin yliopisto

Kiinan kursseilla 1 2 painotetaan suullista kielitaitoa ja kurssista 3 alkaen lisätään vähitellen myös merkkien lukemista ja kirjoittamista.

Projektisuunnitelma. (välipalautukseen muokattu versio) Vesiprosessin sekvenssiohjelmointi ja simulointiavusteinen testaus

12. Javan toistorakenteet 12.1

Vertaispalaute. Vertaispalaute, /9

Johdatus rakenteisiin dokumentteihin

M = (Q, Σ, Γ, δ, q 0, q acc, q rej )

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011

Ohjelmointi 1 / syksy /20: IDE

Käyttöjärjestelmien historia. Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Kielenä ilmaisten Hilbertin kymmenes ongelma on D = { p p on polynomi, jolla on kokonaislukujuuri }

Choose Finland-Helsinki Valitse Finland-Helsinki

Kommunikaatio Visa Linkiö. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Ohjelmistojen mallintaminen, mallintaminen ja UML

FyKe-Mopin opettajanohje

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 8. maaliskuuta 2012

Vuoden Kokki 2016 Kysymyksiä ja vastauksia

Näin suunnittelet ja rakennat oman verkkokurssin. Työkirja. TiiaKonttinen

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 6. maaliskuuta 2012 TIETOTEKNIIKAN LAITOS.

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 20. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS.

Simulaattorin asennus- ja käyttöohje

Algoritmin määritelmä [Sipser luku 3.3]

OHJ-7400 Graafisen käyttöliittymän ohjelmointi, Harjoitustyö

FYSIIKKA. Henri Sulo

1. Universaaleja laskennan malleja

Harjoituspaketti helmikuuta 2008

Lisää pysähtymisaiheisia ongelmia

Sosiaalisen median käyttö autokaupassa. Autoalan Keskusliitto ry 3/2012 Yhdessä Aalto Yliopisto, Helsingin kauppakorkeakoulu opiskelijatiimi

Tietotekniikan valintakoe

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Asiakkaan kohtaaminen ja vuorovaikutus

MIKSI TUKIVIITTOMAT?

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2016

Tekoäly ja sen soveltaminen yrityksissä. Mika Rantonen

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

Laskut käyvät hermoille

Oulun murteessa on käytössä myös nää-pronomini, joka tarkoittaa sinä. Sää on kuitenkin enemmän käytetty.

ITKP102 Ohjelmointi 1 (6 op)

12. Javan toistorakenteet 12.1

Projektisuunnitelma. Projektin tavoitteet

Harjoitus 5 (viikko 41)

Ohjelmistojen suunnittelu

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Pinoautomaatit. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 6. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS. Pinoautomaatit.

811120P Diskreetit rakenteet

Python-ohjelmointi Harjoitus 2

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

1. Tarkastellaan seuraavaa stokastista Petri-verkkoa: p 2. p 1. lock write 1

13. Hyvä ohjelmointitapa (osa 1) 13.1

Preesens: YLEIS- JA KESTO-

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

Julkinen loppuraportti Simua Startupin nopea kokeilu Oulun Ritaharjun koulussa

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.

E. Oja ja H. Mannila Datasta Tietoon: Luku 2

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

T Rinnakkaiset ja hajautetut digitaaliset järjestelmät Stokastinen analyysi

Rataverkon kunnon ja liikkuvan kaluston akustinen valvonta kuituoptiikan avulla

Teoreettisen viitekehyksen rakentaminen

Tietotekniikan laitoksen uusi linja

TIEDONHAKU INTERNETISTÄ

Interfacing Product Data Management System

EI MIKÄÄN NÄISTÄ. KUVITETTU MINI-MENTAL STATE EXAMINATION Ohjeet viimeisellä sivulla. 1. Mikä vuosi nyt on? 2. Mikä vuodenaika nyt on?

Työkirja sisältää tyhjiä sivuja Unelmakartan tekoon

Place client logo here in Slide Master

Transkriptio:

Luonnollisella kielellä keskustelevat järjestelmät Jussi Lepistö (jussi.lepisto@cs.helsinki.fi) Helsingin Yliopisto Tieteellisen kirjoittamisen kurssi

Johdanto Esittelen luonnollisella kielellä keskustelevien järjestelmien toimintaa. Jaottelen aluksi järjestelmät kahteen luokkaan: keskustelusimulaattoreihin ja dialogijärjestelmiin. Annan sitten muutaman esimerkin molemmista ja kuvailen hieman kunkin järjestelmän toimintaa. Lopuksi yhteenveto ja lyhyttä pohdintaa.

Järjestelmien jaottelu Luonnollisella kielellä keskustelevat järjestelmät voidaan jakaa kahteen luokkaan: Yleiset, (teoriassa) mistä tahansa aiheesta keskustelevat keskustelusimulaattorit, ja Kapeaan aiheeseen rajautuvat dialogijärjestelmät. Myös esimerkiksi tietokannan luonnollisella kielellä toimiva käyttöliittymä voidaan ajatella dialogijärjestelmäksi.

Keskustelusimulaattorit Keskustelusimulaattorit siis keskustelevat yleensä mistä tahansa aiheesta. Keskustelusimulaattorien kehitys keskittyy nykyään Loebner Prize -kilpailuun, joka perustuu Turingin testiin. Turing esitteli vuonna 1950 älykkään käyttäytymisen testin, jonka avulla voitaisiin selvittää, onko tietokone älykäs. Tuomari keskustelee tekstiterminaalilla ihmisen ja tietokoneen kanssa ja yrittää arvata kumpi on kone.

ELIZA ELIZA (1966) oli ensimmäinen tunnettu keskustelusimulaattori. Se mallinsi psykiatria. Sitä erehdyttiin aikoinaan jopa luulemaan ihmiseksi, muutenkin sitä yliarvioitiin. ELIZA perustui hyvin yksinkertaiseen avainsanojen tunnistukseen. ELIZA käytti paljon nykyisiinkin keskustelusimulaattoreihin periytyneitä kikkoja käyttäjän hämäämiseen.

ELIZA (2) ELIZA toisti usein käyttäjän syötteen tai osia siitä sellaisenaan vaihtaen samalla pronominien persoonat. Tähän saatettiin sitten lisätä ennaltamäärätty lause. Esim: Käyttäjä: It's true, I'm unhappy. ELIZA: Do you think coming here will help you not to be unhappy?

MegaHAL MegaHAL (1998) poikkeaa kilpailun tyypillisistä osallistujista radikaalisti. Se ei käytä minkäänlaista hahmontunnistusta ja on aidosti oppiva järjestelmä. Se käyttää kielen mallintamiseen kahta 4. asteen Markovin mallia. Markovin malleja käytetään yleisesti luonnollisen kielen mallintamisessa.

MegaHAL (2) MegaHAL toimii poimimalla ensin käyttäjän syötteestä yhden sanan avainsanaksi. Avainsanasta se muodostaa kielimalliensa perusteella satoja ehdokkaita lauseen alku- ja loppuosiksi. Tämän takia kaksi kielimallia. Seuraavalla kalvolla esimerkki. Osista valitaan ne, joissa avainsanan informaatio on suurin. Informaatio määritellään tässä muutoksena, jonka sana aiheuttaa kielimallissa.

MegaHAL (esimerkki) ALKUOSA AVAINSANA LOPPUOSA I don't making sense we cakes you start taking the can it to it make will rain

CONVERSE CONVERSE (1997) on ensimmäisiä kilpailuun osallistuneita simulaattoreita, joka ei perustunut pelkkiin kikkoihin ja ad hoc -ratkaisuihin. Se käytti hyväkseen kaupallisen tason jäsennintä, suuria lingvistisiä tietokantoja ja laajaa englanninkielistä keskustelukorpusta. Sen esikuvana oli PARRY, vuonna 1973 tehty ELIZAa muistuttava keskustelusimulaattori, joka matki paranoidia ihmistä.

CONVERSE (2) CONVERSEssa on useampia moduuleita, jotka yrittävät ymmärtää käyttäjän viestin ja vastata siihen. Kukin moduuli arvioi vastauksensa luotettavuuden. Vastauksista valitaan se, joka on arvioitu luotettavimmaksi. Kaikki moduulit myös päivittävät tietokantaa, jossa on keskustelun aikana selvinneitä faktoja ja muuta keskusteluun liittyvää tietoa.

Keskustelusimulaattorit nyt... Keskustelusimulaattorit eivät ole juuri kehittyneet ELIZAn jälkeen. Loebner Prize -kilpailun osallistujat ovat olleet lähinnä harrastelijoita. Kilpailun ulkopuolella tilanne tuntuu olevan vielä huonompi. Teoreettinen tutkimus on toki edistynyt, mutta tulokset eivät ole näkyneet keskustelusimulaattoreissa.

...ja huomenna Yleisiä, keskustelusimulaattorien opettamiseen sopivia keskustelukorpuksia on vasta kehitteillä. Vuoden 1997 voittaja CONVERSE tuntui lupaavan paljon, käyttäen hyväkseen aikansa uusimpia tutkimustuloksia......mutta vuosien 2000 ja 2001 voittaja A.L.I.C.E. perustuu vain lähes ELIZAn tasoiseen hahmontunnistukseen ja kikkoihin. Todennäköisesti Turingin testiä ei lähitulevaisuudessa läpäistä.

Dialogijärjestelmät Dialogijärjestelmät ovat huomattavasti kehittyneempiä (eli siis paremmin toimivia) kuin keskustelusimulaattorit. Dialogijärjestelmät voidaan edelleen jakaa kahtia: Tiedonhakujärjestelmät, jotka ovat yleensä käyttöliittymiä johonkin tietokantaan. Suunnittelu- ja ohjausjärjestelmät, jotka auttavat käyttäjää jonkin ongelman ratkaisemisessa.

Jupiter Jupiter on MIT:n Spoken Languages Groupissa kehitetty, puhelimen välityksellä toimiva sääpalvelu. Se on siis oikeassa käytössä. Ensimmäinen prototyyppi valmistui vuonna 1997. Järjestelmää kehitetään edelleen. Jupiterin TINA-jäsennin perustuu tilakaavioiksi muutettuihin kontekstittomiin kielioppeihin, joissa kaariin liittyy todennäköisyys. Jupiter kerää säätiedot tavallisilta www-sivuilta, joten sen pitää ymmärtää luonnollista kieltä myös niitä tulkittaessa.

TRIPS TRIPS (1998) on tekoälyavustettu suunnittelujärjestelmä, joka käyttää puhetta käyttäjän kanssa kommunikointiin. Se simuloi pyörremyrskyuhan alla olevaa saarta, jolta pitää evakuoida asukkaat erilaisia ajoneuvoja käyttäen. TRIPS avustaa käyttäjää tekemään evakuointisuunnitelman. Puheen lisäksi se näyttää käyttäjälle saaren kartan ja erilaisia kaavioita esim. ajoneuvojen tilasta.

TRIPS (arkkitehtuuri)

EXACT EXACT on luonnollisella kielellä toimiva kodinkoneiden ohjausjärjestelmä. Siitä valmistui vuonna 2003 puhelinvastaajaa ohjaava prototyyppi. Järjestelmän suunnittelussa keskeisin tavoite on ollut ehdoton luotettavuus: kodinkoneita ohjatessa ei voi tehdä arvauksia, joiden toteuttaminen voisi tuottaa peruuttamatonta vahinkoa (esim. poistaa kaikki vastaajan viestit).

EXACT (2) EXACT käyttää hyväkseen Precise-nimistä tietokantoja varten kehitettyä luonnollisen kielen käyttöliittymää. Tietokantajärjestelmiä on kehitetty huomattavasti pidemmälle kuin varsinaisia ohjausjärjestelmiä. Käyttäjän komento muutetaan ensin SQLkyselyksi Precisen avulla. Kysely muutetaan sitten suunnitteluongelmaksi. Suunnitteluongelma ratkaistaan sarjaksi laitteille annettavia konkreettisia komentoja.

Yhteenvetoa Keskustelusimulaattorien tilanne ei näytä lupaavalta, eikä Turingin testiä todennäköisesti läpäistä lähitulevaisuudessa. Keskustelusimulaattorit perustuvatkin yleensä vain hyvin yksinkertaiseen hahmontunnistukseen. Dialogijärjestelmiä sen sijaan on jo oikeassa käytössä ja ne toimivat suhteellisen luotettavasti. Dialogijärjestelmillä on paljon yhteisiä piirteitä ja menetelmiä. Kielitieteen ja tekoälyn menetelmiä on yhdistetty hyvin tuloksin.

Yhteenvetoa (2) Voidaan heittää villi ennustus, että dialogijärjestelmien kehittyessä niiden aihealueet alkavat laajeta ja lopulta ne keskustelevat mistä tahansa aiheesta.

Linkkejä A.L.I.C.E.: http://www.alicebot.org/ ELIZA-klooni: http://www-ai.ijs.si/eliza/eliza.html Jupiter: http://www.sls.lcs.mit.edu/jupiter MegaHAL: http://megahal.sourceforge.net/