Johdatus tekoälyyn p Tieto ja sähkötekniikan tiedekunta Oulun yliopisto Kevät Olli Silvén ja Tuomas Holmberg

Samankaltaiset tiedostot
Koneoppiminen ja tekoäly suurten tietomassojen käsittelyssä yleensä ja erityisesti sovellettuina satelliittidatan käyttöön metsien arvioinnissa

Ongelma(t): Voiko älykkyyden määritellä ja voiko sitä mitata, myös objektiivisesti? Onko älykkyyttä ilman (näkyvää) toimintaa? Voiko kone olla älykäs

JOHDATUS TEKOÄLYYN TEEMU ROOS

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

Tekoäly ja alustatalous. Miten voit hyödyntää niitä omassa liiketoiminnassasi

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS

Puheentunnistus. Joel Pyykkö 1. 1 DL-AT Consulting

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

Edistyksen päivät, Helsinki. Voiko tutkija muuttaa maailmaa? Humanistista meta-analyysiä merkitysneuvottelevien koneiden avulla.

Johdatus tekoälyyn. Luento : Koneoppiminen. Patrik Hoyer. [ Kysykää ja kommentoikaa luennon aikana! ]

Tarvitseeko informaatioteknologia matematiikkaa?

Tekoäly ja sen soveltaminen yrityksissä. Mika Rantonen

JOHDATUS TEKOÄLYYN TEEMU ROOS

Tekoäly tänään , Vadim Kulikov (Helsingin Yliopisto)

Luku 2. Datasta tietoon: mitä dataa? mitä tietoa?

JOHDATUS TEKOÄLYYN TEEMU ROOS

Tilastotiede ottaa aivoon

JOHDATUS TEKOÄLYYN TEEMU ROOS

Sulautetut järjestelmät

Tekoäly tukiäly. Eija Kalliala, Marjatta Ikkala

Johdatus tekoälyn taustalla olevaan matematiikkaan

Tähtitieteen käytännön menetelmiä Kevät 2009

<raikasta digitaalista ajattelua>

Tekoäly ja tietoturva Professori, laitosjohtaja Sasu Tarkoma Tietojenkäsittelytieteen laitos Helsingin yliopisto

Tekoälysovellus: (Ennustaminen) Arviointi, estimointi

2D piirrelaskennan alkeet, osa I

811312A Tietorakenteet ja algoritmit I Johdanto

Tilastotiede ottaa aivoon

Algoritmit 1. Luento 1 Ti Timo Männikkö

805306A Johdatus monimuuttujamenetelmiin, 5 op

Tee-se-itse -tekoäly

Louhi-projektin kokemukset oppina. Tekoälyä hoitohenkilökunnalle

KULUTTAJAN KONTEKSTI

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

Rajoittamattomat kieliopit (Unrestricted Grammars)

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)

TEKOÄLY JA TIETOISET KONEET

JOHDATUS TEKOÄLYYN TEEMU ROOS

2. Olio-ohjelmoinnin perusteita 2.1

Kielellisten merkitysten tilastollinen ja psykologinen luonne: Kognitiivisia ja filosofisia näkökulmia. Timo Honkela.

ALGORITMIT & OPPIMINEN

UUDET INNOVAATIOT. Professori Heikki Kälviäinen Koulutusohjelman johtaja Laitoksen johtaja

Matematiikan olemus Juha Oikkonen

Tekoälyn perusteita ja sovelluksia (TIEP1000)

Sijoittaminen digitaalisen darwinismin aikakaudella

Tapahtumankäsittely Semanttisen Webin Menetelmillä

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

Se on sinussa. Virtuaalinen ja laajennettu todellisuus. Jari Kotola Sovelto Aamiaisseminaari Tampere

MAINOSVIESTIN KOHDENTAMINEN ANTURIDATAN AVULLA

Tekoäly liiketoiminnassa. Tuomas Ritola CEO, selko.io

Teknologia ja digiajan yhteisöt mahdollistajina

Robotit ja tekoäly terveydenhuollon työvälineinä nyt ja tulevaisuudessa työn tutkimukseen perustuva näkökulma

Muuttaako tekoäly maailmaa - ja miten? Kansainvälinen Telepäivä

Ohjelmistojen mallintaminen, mallintaminen ja UML

Muuttuva opettajuus 3 pointtia

Robotit kuntien päätöksenteon tukena

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

OPETTAJA VERKOSSA: Koodaaminen

Kieli merkitys ja logiikka. 2: Helpot ja monimutkaiset. Luento 2. Monimutkaiset ongelmat. Monimutkaiset ongelmat

FI Moninaisuudessaan yhtenäinen FI. Tarkistus. Beatrix von Storch EFDD-ryhmän puolesta

Onnistunut ohjelmistoprojekti

Laskut käyvät hermoille

Paavo Kyyrönen & Janne Raassina

Monimutkaisesta datasta yksinkertaiseen päätöksentekoon. SAP Finug, Emil Ackerman, Quva Oy

Luento 12: XML ja metatieto

TIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit

Muotoilumaailman hahmottaminen - Tuotesemantiikka

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

Julkinen loppuraportti Simua Startupin nopea kokeilu Oulun Ritaharjun koulussa

.. X JOHDATUS TEKOÄLYYN TEEMU ROOS

Ryhmäharjoitus III: Mitä on koodaaminen? A. TIEY4 Tietotekniikkataidot, kevät 2017 Tehdään ryhmäharjoitustunnilla 20.3.

Turvallisuus kehittyy joko johtajuuden tai kriisin kautta

Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja

Sosiaalisen median mahdollisuudet & hyödyt

Tosi elävä virtuaalimalli Mika Karaila Tutkimuspäällikkö Valmet Automation

Tietotekniikan laitoksen uusi linja

IoT ja 3D-tulostus. Riku Immonen

Ongelma(t): Mikä on Turingin kone? Miten Turingin kone liittyy funktioihin ja algoritmeihin? Miten Turingin kone liittyy tietokoneisiin?

How to prepare for the 7th grade entrance exam? Kuinka lukea englannin linjan soveltuvuuskokeisiin?

FI Moninaisuudessaan yhtenäinen FI A8-0005/4. Tarkistus

Verkon värittämistä hajautetuilla algoritmeilla

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tentti kestää kolme tuntia. Tehdään sähköisesti mikroluokkien Windows-koneilla.

TIETOINEN HAVAINTO, TIETOINEN HAVAINNOINTI JA TULKINTA SEKÄ HAVAINNOLLISTAMINEN

Lisää pysähtymisaiheisia ongelmia

Kognitiivinen mallintaminen Neuraalimallinnus, luento 1

OHJ-2550 TEKOÄLY Kevät 2007

Palautekysely tilastollisen signaalinkäsittelyn kurssiin

TUTKI OMAT TIETOTURVA-AUKKOSI. ENNEN KUIN JOKU MUU TEKEE SEN PUOLESTASI. F-Secure Radar Ville Korhonen

S Havaitseminen ja toiminta

Tekoäly muuttaa arvoketjuja

TTY Pori. Tieteen ja tutkimuksen kohtaamispaikka

Vetovoimaa ja osaamista Live Delphin yhteenveto

Tekoäly ja oppivat hoitojärjestelmät Sairaanhoitopiirien kyberturvallisuusseminaari KTT Jouni Leinonen, IBM

Malleja ja menetelmiä geometriseen tietokonenäköön

Palomuurit. Palomuuri. Teoriaa. Pakettitason palomuuri. Sovellustason palomuuri

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?

Webinaarin osallistujan ohje

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

Transkriptio:

Johdatus tekoälyyn 521160p Tieto ja sähkötekniikan tiedekunta Oulun yliopisto Kevät 2018 Olli Silvén ja Tuomas Holmberg Kurssin tarkoitus, luonne ja toteutus (1) tarkoitettu kaikkien alojen 1 2 vsk:n opiskelijoille ei ole matemaattinen, ei edellytä koodaustaitoja, mutta ainakin yhdellä kunkin ryhmän jäsenellä olisi oltava ohjelmoinnin perusteet hallussaan tavoitteena antaa tausta ns. tekoälymenetelmillä ratkeavien ongelmien (haku, regressio, luokittelu ja ryvästys/klusterointi) tunnistamiseen, sekä osin myös ohjatun ja ohjaamattoman oppimisen menetelmien mahdollisuuksien ja rajoitteiden, sekä niiden suorituskyvyn mittaamisen menetelmien ja metriikoiden ymmärtämiseen. Datan ja tietämyksen roolien ymmärtäminen on keskeinen tavoite! kurssin jälkeen osallistuja kykenee arvioimaan tarjolla olevan sovellusdatan antamia mahdollisuuksia menetelmätekniikkoja vasten Kurssi toteutetaan nyt ensimmäisen kerran. Seuraava kerta on syksyllä 2018, jolloin sitä on muokattu nyt saatavien kokemusten pohjalta olennainen oheistavoite: kurssin jälkeen kyetään näkemään ero science fiction sepitteissä ja tekoälyn todellisuudessa = realismin saavuttaneet uskaltavat soveltaa 1

Kurssin tarkoitus, luonne ja toteutus (2) Datan ja tietämyksen rooli äärimmäisen olennainen kurssin keskeinen lähtökohta: tekoälysovellus sovellusriippumattomat algoritmit data ja/tai tietämys Kurssin tarkoitus, luonne ja toteutus (3) Kurssi nojaa luentoihin ja harjoitustöihin ja varmistaa oppimista myös välikuulusteluin; kurssissa ei ole lopputenttiä 6 kpl nopeita välikuulusteluita, 1 h/kerta 5 kpl harjoitustöitä, joiden työmäärä vaihtelee; mukana on myös oman datan keruuta ja soveltamista menetelmien syötteinä harjoitustöissä koodi on valmiina eri vaihtoehtoineen (mahdollisuus myös täysin oman regressio tai luokitteluongelman kanssa toimimiseen) Arvostelupisteiden kerryttäminen (ennakkosuunnitelma) välikokokeista max. 4p kustakin, viisi parasta tulosta otetaan huomioon 5*4p = 20p harjoitustöistä max 4p kustakin max 4*4p =16p; vähintään 4 harjoitustyötä palautettava hyväksytysti kokonaispisteet max 20p+16p =36p; läpäisyraja n. 18p Karkea viikkorytmi maanantaina perusteet, tiistaina algoritmit, torstaina 1h tukisessio ja 1h kevyt välikoe (ensimmäiset kurssin viikolla 2) 2

Ryhmiin organisoituminen 1. Ketkä läsnäolijoista katsovat Pythonin olevan auttavasti hallussaan? saa mainostaakin osaamista! 2. Ketkä ovat muita kuin tieto tai sähköteekkareita? mahdollisuuksien mukaan vältetään puhtaiden teekkariryhmien muodostamista 3. Mitä kukin osallistuja hakee tältä kurssilta? Uteliaisuuden tyydyttämistä? Toteuttajia omalle idealle? Helppoja opintopisteitä? Muuta? Pyritään saamaan ryhmiin eri tavoittein osallistuvia, jos mahdollista 4. Mielellään 4 hengen ja max 4 hengen ryhmät ilmoitetaan sähköpostilla Tuomas.Holmberg@student.oulu.fi viimeistään 16.3.2018 Kurssin tietotekninen infrastruktuuri Noppa: luentomateriaalin jako tapahtuu Nopassa; ilmestyy viikoittain joko ennen luentoja tai/ nopeasti niiden jälkeen päivityksineen Optima: harjoitustyömateriaalit jaetaan ja harjoitustyöselostukset palautetaan Optimassa. Myös palautekyselyt toteutetaan Optimassa. Python tulkki kannattaa asentaa omalle koneelle kokeiluja varten Valmiin virtuaalikoneen tarjoamista OpenCV kirjaston käytön helpottamiseksi selvitetään (tarvitaan ainakin yhdessä harjoitustyössä) Harjoitustöissä käytettävä massadatan jakelusta viestitään erikseen. Samalla ratkaistaan opiskelijoiden oman datan sijoituspaikka olemme edelleen infra siirtymässä TST yliopiston tietohallinto 3

Tekoäly (1) Tekoäly: (toistaiseksi ei biologinen) järjestelmä, joka kykenee älykkyyttä edellyttäviin toimintoihin, mutta koska älykkyyttä on vaikea määritellä, niin tekoälyksi katsotaan laaja kirjo erilaisen kyvykkyyden täyttäviä toteutuksia ns. yleinen tekoäly: ihmismäiseen ajatteluun kykeneminen, mutta ns. suppea tekoäly on johonkin älykkääseen toimintoon pystyvä ratkaisu, jollaisia on jo käytössä, kuten puheentunnistus ja tuottaminen konenäkö viihdesovellukset robotiikka ns. asiantuntijajärjestelmät jne. Koneoppiminen: datasta informaation löytämään oppiva automaatti Kuriositeetti: 1956 Dartmouth Collegessa pidetyssä tutkijoiden kokoontumisessa ennustettiin, että ihmisen älykkyyden saavuttava kone syntyisi yhdessä sukupolvessa http://vvvvw.aaai.org/ojs/index.php/aimagazine/article/download/1904/1802 Tekoäly (2) Määritelmiä ja kommentteja Tekoäly on ihmisen tavoin käyttäytyvä järjestelmä Turingin testi huom: ei anna osviittoja, kuinka tuollainen kehitetään Tekoäly on ihmisen tavoin ajatteleva järjestelmä tarvitaan ymmärrys aivojen toiminnasta, joka vielä ainakin hetken haussa kognitiotieteiden aluetta... Tekoäly on rationaalisesti ajatteleva järjestelmä formaali raudanluja logiikka ratkaisee kaiken huom: enää ei puhuta ihmisestä yhtään mitään! Onkin epälooginen otus... tarvitaanko tähän edes ajattelua, vai pelkkä looginen päättelykone? sääntöpohjaiset asiantuntijajärjestelmät ovat tunnettuja tekoälyn isoja epäonnistumisia annettujen lupausten suhteen Tekoäly on rationaalisesti toimiva järjestelmä optimoidaan tavoitteen saavuttamiseksi tarvitaanko tähänkään ajattelua, vai pelkkä optimointikone? ns. rationaaliset agentit ovat yleisiä tekoälyksi katsottuja optimoivia toteutuksia esim. autonominen ruohonleikkuri, shakkivastustaja, jne. 4

Turingin testi (1) Alan Turingin 1950 esittämä tekoälytesti (artikkelissa Computing machinery and intelligence, jossa kävi läpi kaikki nykyäänkin pinnalla olevat tekoälyyn liittyvät kysymyksen koneiden ajattelusta) mittaa tekoälyn ihmisen kaltaisuutta keskustelun kautta: kone on älykäs, jos sitä ei pysty erottamaan ihmisestä = vaikuttaa ajattelevalta ns. tavallinen Turingin testi tehdään ilman puhetta ja kuvaa ns. totaalisessa Turingin testissä vastapuolena on androidi, erehdyttävästi ihmisenkaltainen robotti chat bot:it vielä kaukana Turingin testin läpäisystä, vaikka puheentunnistuksessa osin häkellyttävänkin hyviä: yli 95% tunnistustarkkuus Artificial Intelligence system Human interrogator Human Turingin testi (2) Alan Turing jo 1950: ennusti, että kone voisi hämätä ihmistä testissä noin viiden minuutin keskustelun verran vuoteen 2000 mennessä esitti kaikki keskeiset argumentit tekoälyä vastaan seuraavien 50 vuoden aikajänteelle esitti tekoälyn mahdollistamiselle tarpeelliset keskeiset ratkaisutarpeet: tietämys päättely luonnollisen kielen ymmärtäminen oppiminen Nämä ovat edelleenkin keskeisiä! Vapaaehtoista luettavaa tehdyistä Turingin testeistä https://www.tandfonline.com/doi/full/10.1080/095281 3X.2015.1055826 5

Entä tekoälyn tietoisuus? Milloin tekoäly ajattelee ja tulee tietoiseksi itsestään: supertekoäly? Tarjolla paljon kognitiotutkijoiden uhkakuvia, joilla päästään ainakin julkisuuteen mitä supertekoäly tekee, kun ymmärtää ihmiskunnan vajavaisuuden? mutta vaatii valtavan askeleen verrattuna nykyisiin toteutuksiin, jotka kykenevät suorittamaan vain niille määrättyjä tehtäviä: kyse ei ole pelkästään koneoppimisesta, vaan myös tiedon esitystavoista tällä hetkellä tekoäly ei ymmärrä fyysisen todellisuuden kohteiden merkitystä, tai ole kykenevä oppimaan niitä kuin suppeassa määrin tunnistetaan kohteita, mutta ei tajuta niiden tarkoitusta tämä kuitenkin riittää lukuisiin ihmiskuntaa hyödyttäviin sovelluksiin iso haaste kuitenkin mm. 3 D maailman ymmärtäminen, jolla olisi valtava käytännön sovellusmerkitys Mitkä ovat olleet kompastuskiviä? 1. alunperin tekoälyä kehitettiin sääntö ja logiikkapohjaisesti, millä on kuitenkin merkittäviä rajoitteita kehys (frame) ongelma: epäolennaisten seikkojen poissuljenta ongelmanratkaisusta; esim IntelliCorp:in KEE (Knowledge Engineering Environment) panosti paljon tähän 1980 luvulla 2. Järjestelmät eivät oppineet itse, vaan niihin jouduttiin kaatamaan valmiiksi jäsennetty tietämys rakentaminen ja ylläpito vaativat suuria ihmispanostuksia 3. ongelmanratkaisuun ei kyetty kunnolla liittämään epävarmuuksien huomioon ottamista 4. Tutkimusstrategiani oli ratkaista ensin leluongelmia, joista oletettiin päästävän reaalimaailman haasteisiin. Mutta ratkaisumallit eivät skaalautuneetkaan... Nykyisin koneoppiminen katsotaan tekoälyn synonyymiksi sovelletaan tosimaailman ongelmiin, mutta lähinnä tunnistamisiin saattaa olla jälleen kerran välivaihe tekoälyn kehittyksessä esitystapojen merkitystä ei voine edelleenkään väheksyä 6

Esimerkki 1970 luvun alun tekoälystä SHDRLU 1970 valmistunut palikkamaailmassa toimiva luonnollista kieltä ymmärtävä tietokoneohjelma (kehittäjä Terry Winograd, MIT) Lähde: https://hci.stanford.edu/winograd/shrdlu/ Tekoälyn hype kierre Tekoälyn kohdalla on nähty syklisesti alan tutkijoiden epärealistia lupauksia, rahoittajien euforiaa, sekä yleisön suuria odotuksia kuin myös pelkoja...vastaavasti kohti totaalista pessimismiä ja alan työurien loppumisia kehitys on kuitenkin jatkuvasti mennyt eteenpäin! alan kasvu puolestaan riippuu (hyöty)sovelluksista Mikä on tälle kurssille osallistuvien arvio nykyisestä tilanteesta? Tunnistatko tekoälyn kun olet sellaisen kanssa tekemisissä? Hypen kärjessä 2010? luku Koneoppiminen? 1990 luku Neuraalilaskenta 1970 80 luvut Sääntöpohjainen päättely 1960 70 luvut Luonnollisen kielen ymmärtäminen 1950 60 luvut Perceptron neuraalilaskennassa Formaali logiikka, GPS 7

Tekoälyn hype kierre (1) eli yliampuvat odotukset Yliampuvat odotukset, hypetys, hype, jne. on tunnettu teknologian kehittymisen rinnakkaisilmiö mm. Internet teknologian kehittymisessä on nähty jo monta hype kierrettä merkittävä vaikuttava tekijä on pikavoittojen hakijoiden ilmestyminen Fakta: hypet tulevat ja menevät, mutta teknologia kehittyy ja sen käyttö leviää teknologioiden merkitystä yliarvioidaan lyhyellä ajanjaksolla, mutta aliarvioidaan pidemmällä (ns. Amaran laki) Gartnerin hype käyrä (lähde Wikipedia) Vapaaehtoista luettavaa mm. https://www.gartner.com/smarterwithgartner/top trends inthe gartner hype cycle for emerging technologies 2017/ Tekoälyn hype kierre (2) Nykyinen tekoälybuumi pohjautuu liki kokonaan yhteen menetelmäteknologiaan (syvät konvolutionaaliset neuroverkot ja niillä toteutettu koneoppiminen) samankaltainen suuri innostusvaihe on nähty useasti aikaisemminkin ensimmäinen tietenkin heti ohjelmoitavien tietokoneiden synnyttyä Seuraava innostus oli 1950 luvun lopussa Frank Rosenblattin keksittyä ensimmäisen ratkaisun, jolla kyettiin opettamaan ns. binäärinen luokittelija perceptron: nykyisten keinotekoisten neuroverkkojen edeltäjä Rosenblatt julisti, että tietokoneet kohta kävelevät, puhuvat, näkevät ja kirjoittavat ja ovat vieläpä tietoisia itsestään! hieman myöhemmin todettiin perceptronissa merkittäviä rajoitteita n. 1970 neuroverkkolaskenta jäi vuosiksi marginaaliin mutta myöhemmin havaittiin, että huomatut rajoitteet koskivatkin vain ns. yksikerroksisia perceptron verkkoja ns. monikerros perceptronit ovat merkittävästi tehokkaampia, mutta niilläkin todettiin rajoitteensa jne nyt neuraalilaskenta jälleen valtavirtaa 8

Perceptron Rosenblatt:in Perceptron nykyisen neuraalilaskennan isovanhempi, 1958 x x x x x syötteet yhdistelevät muunneltavat mielivaltaiset painokertoimet Boolen funktiot kynnystys Sivuhuomautus: tärkeimmät Boolen funktiot AND(w,x,y,z) = 1 jos kaikki syötteet 1, muutoin 0 OR(w,x,y,z) = 1, jos jokin syötteistä on 1, muutoin 0 XOR(w,x,y,z) = 1, jos yksi syötteistä on 1, muutoin 0 Rosenblattin artikkeli 1960 luvun alusta (pääsy yliopiston verkossa) http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4066017 P B P B Rajoite: oppii vain lineaarisia diskriminantteja Monikerros perceptron Monikerros perceptronissa jokainen perceptron on kytketty seuraavan kerroksen jokaiseen perceptroniin syötekerros piilokerrokset lähtökerros Oppii epälineaarisia diskriminantteja Monikerros perceptron ja konvolutionaaliset neuroverkot ovat arkkitehtuureja molempien kanssa voi käyttää ns. syväoppimista P P B B 9

Tekoälyn hype kierre (3) USA:ssa investoitiin merkittävästi konekääntämisen tutkimukseen 1950 1960 luvuilla motiivina mm. tiedustelupalvelun tarpeet ratkaisut perustuivat mm. kieliopilliseen analyysiin ja läpimurto näytti jatkuvasti olevan seuraavan kulman takana ongelmien eräs ilmentymä: käännettynä edestakaisin venäjän kielelle: the spirit is willing but the flesh is weak "the vodka is good but the meat is rotten. 1966 rahoittava taho totesi, että konekääntäminen näyttää kalliimmalta kuin ihmisten tekemä rahoitus loppui Tällä hetkellä jokainen tuntee ilmaisen Googlen kääntäjän ja ehkä myös Yahoon Babelfishin (nimetty Douglas Adamsin teoksen Linnunradan käsikirja liftareille pohjalta) konekääntäjä kielioppialgoritmit sanasto Tekoälyn hype kierre (4) Ensimmäinen sääntöpohjainen asiantuntijajärjestelmä XCON syntyi 1978 tietokoneiden konfigurointia varten suuri menestys > valtava innostus hirmuinen hype kohta jokainen isompi yritys kehitti käyttöönsä asiantuntijajärjestelmiä Kehitysalustoja ja Lisp tietokoneita puolestaan julkaisi suuri joukko muita yrityksiä, joista liki kaikki meni konkkaan ennen 1990 luvun alkua, kun ilmaiset sovelluskehittimet (erityisesti CLIPS, http://www.clipsrules.net/) paranivat ja normaalit työasemat pieksivät nopeudessa Lisp tietokoneet 1990 luvun alussa sääntöpohjaiset asiantuntijajärjestelmät todettiin tietämyskannoiltaan vaikeiksi ja kalliiksi ylläpitää tekoäly menetti maineensa aina 2010 luvun alkuun asti asiantuntijajärjestelmä päättelyialgoritmit sääntökanta Lisp elää yhä, mm. Clojurena Sääntöpohjaisuuskin elää hyvin, eräässä mielessä mm. ns. satunnaismetsäoppimisessa 10

Tekoälyn hype kierre (5) 2010 luvulla syväoppivien konvolutionaalisten neuroverkkojen avulla saatiin merkittävästi aiempia parempi tuloksia monella sovellusalueella puheentunnistus > 95% konekääntäminen >90% konenäkö > 90% tietyin edellytyksin lääketieteen automatisoitu diagnostiikka alkoi lähestymään uskottavuutta Syväoppimista käytetään melkeinpä jokaiseen kohteeseen syväoppivaan verkkoon voidaan työntää suuria määriä dataa valmiilla työkaluilla lukiolaishommaa! Kiva juttu!!! mutta syvä oppivaan verkkoon on työnnettävä suuria määriä data! sovellusspesifisten sääntöjen tuonti ei onnistu, jokainen tapaus on opetettava Syväoppiva järjestelmä Tästäkin hype kierroksesta tulee jäämään sovellettavia menetelmiä! opetusalgoritmit data Vapaaehtoista luettavaa https://www.sciencedirect.com/science/article/pii/s026288561630066x Tekoälyn soveltaminen Sovelluksen rakentajalle kaikki menetelmätekniikka on luvallista! olennaista on, että loppukäyttäjän tarpeet täytetään ratkaisuun voidaan vapaasti poimia menetelmät vuosikymmenten takaa, jos sellaiset ratkaisevat ongelman menetelmien rajoitteet ehkä ymmärretään nyt paremmin kuin hypen ollessa aikoinaan huipussaan 11

Tekoälyn sovelluksia (1) Puheentunnistus on jo arkipäivää monenlaisessa tuotantokäytössä Tunnetuimmat puheavustajat (chat botit): Alexa (Amazon), Allo (Google), Cortana (Windows), Siri (Apple) Esimerkki: sana Alexa käynnistää keskustelun lähetyksen Amazonin pilveen analysoitavaksi ja vastaus lähetetään takaisin alunperin Echo kaiuttimen kautta tarjottu palvelu, toimii mm. Amazonin verkkokaupan liittymänä vastaavia laitetuotteita Apple HomePod, Google Home Miksi tällaisia ei syntynyt EU:ssa? Kuvaavaa lienee esimerkki MHP:n saaga (Media Home Platform): liikaa alustamyyntiä, liian vähän palveluhyötyä loppukäyttäjille [Oulussa toimii puheentunnistukseen on erikoistunut Code Q] Tekoälyn sovelluksia (2) Konenäkö: suurin ns. syväoppimisen sovelluskohde Esimerkkejä: Ihmisen emootioiden tunnistus kasvojen ilmeistä ja muista fysiologisista signaaleista, kuten sydämen sykkeestä ja hengitystaajuudesta, ja ns. mikroilmeet tunnistaen [monia kaupallistuksia tulossa Oulussa] Teollisuuden visuaaliset laaduntarkastusjärjestelmät, sahoilla, paperi ja terästehtailla, elintarviketeollisuudessa, jne. [Oulussa mm. Mekitec, Sapotech, SR Instruments, FocalSpec, jne] 12

Tekoälyn sovelluksia (3) Konenäkö: paljon viihdesovelluksia Esimerkkejä: Reaaliaikainen selfie beautification on mobiililaitteissa tärkeä toiminto monissa kaukoidän maissa: poistetaan rypyt, näpyt, muokataan ilmettä, jne. [Oulussa Visidon] Videosisällön hakujärjestelmät: voidaan hakea esim. kaikki elokuvat ja kohdat joissa Cary Grant ja Audrey Hepburn ovat autossa. Mukana puheentunnistus, kuvissa olevat esineet ja ihmisten tunnetilat analysoidaan [Oulussa Valossa Labs] Konenäkö: palvelualan sovelluksia Esimerkkejä: asuntojen ja muiden tilojen 3 D pohjakuvien automaattinen luominen kuvamateriaalista. [Oulussa CubiCasa] Tekoälyn sovelluksia (4) Tien reunaviivan kuluneisuuden mittaus videomateriaalista automaattisesti oppien [Oulussa Tietomekka] J. Pulkkinen, diplomityö, 2016 13

Tekoälyn sovelluksia (5) Konenäkö: lääketieteen kuva analyysit Lukuisia sovelluksia silmänpohjakuvien analyysi keuhkokuvien tulkinta haluttujen MRI leikkeiden renderöinti Erittäin haasteellisia ongelmia, joissa ihmisen on monesti vaikea kuvailla, mikä erottaa terveen ja epäilyttävän tapauksen toisistaan Koneoppimisellekin vaikea sovellusalue [Oulussa Neagen, Optomed, jne.] Tekoälyn sovelluksia (6) Autonomiset ajoneuvot Pitkälti 2 D ja 3 D konenäön, satelliittinavigoinnin, sekä muun anturitiedon analyysin ja koneoppimisen sovellus Suomen olosuhteisiin vietynä mahdollisesti vaatii myös tieanturointia massiivinen IoT sovellus Kaupunkisovelluksena pakettien viimeisten kilometrien toimittaminen kuvassa virolaisen Starship:n autonominen kuljetusrobotti 14

Tekoälyn sovelluksia (7) Monet kielisovellukset ovat jo käytössä ja lisää on tulossa Kielen reaaliaikainen tulkkaus Googlen Pixel Buds kielen kääntävät nappikuulokkeet; käytetään Google Pixel 2 puhelimen kanssa, 40 kieltä Googlen käännöstoiminnon avulla kääntää sanoja, mutta ei ymmärrä kontekstia, mikä monesti on olennainen tekijä Uutisten tuottaminen ohjelmistorobotilla On ollut valtavirtaa jo kymmenkunta vuotta, mutta Suomessa vasta hetken (Helsingin Sanomat, YLE: urheilu uutiset); säätiedotuksia tosin käännetty automaattisesti jo pitkään USA:ssa urheilutoimittaja automatisoitiin jo 2009, nykyisin myös pörssi ja liikennetiedotteet tuotetaan pääosin automaattisesti [Yrityksiä: Narrative Sciences, Automated Insights] Kaupan sovellukset Tekoälyn sovelluksia (8) Amazon Go vähittäismyymälä: normaali kauppa, paitsi Just Walk Out seuraa asiakkaan toimintaa konenäöllä ja muilla antureilla, lähettää laskun jälkikäteen Kehitysidea Oulusta: nollaenergialla toimivat digitaaliset hintalaput ja ostoskori /kärryanturit tunnistavat tuotteiden käsittelyn ja valinnat tuotteen käsittely ja valitsematta jättö on hyvin tärkeää tietoa verkkokauppa antaa joskus tarjouksen tuollaisesta tuotteesta maksamiseen siirryttäessä; miksei myös kivijalkamyymälä voisi käyttää vastaavia kokeita? käsittelyn tunnistaminen on oppimisongelma: moni anturi havaitsee saman käsittelyn 15

Urheiluanalytiikka Tekoälyn sovelluksia (9) Joukkuepelejä ei enää kohta tarvitse katsoa, sillä niiden analytiikka on automatisoitumassa konenäön ja muiden antureiden yhteiskäyttö tehostaa valmentajan työtä mahdollistaa reaaliaikaisen automatisoidun selostuksen [Oulussa AISpotter] Tekoälyn sovelluksia (10) Internet of Things (IoT) ja hajautettu koneoppiminen Little data anturit Big data analyysi IoT node GW IoT node distant cloud for computing and storage Nyt: datakeskus orientoituneet toteutukset IoT node IoT node IoT nodes for sensing Tulevaisuudessa: hajautettu analytiikka hajautetut hakukoneet, jotka kyttäävät muuttuvaa dataa 16

Data, tietämyksen esittäminen ja algoritmit Tekoälyn fokus on siirtynyt varsinaisten ongelmien ratkaisualgoritmeista oppimisalgoritmeihin. Siirtymän merkittävä tausta on ollut suurten datamassojen käsittelyn helpottuminen tietokoneiden keskus ja massamuistikapasiteettien ja laskentatehojen kasvaessa. Tämä kehitys jatkuu yhä. Tiedon esitystavoilla on edelleenkin erittäin ratkaiseva rooli mm. varsin alkutekijöissään, kuinka esim. kuvien massasyöttäminen syviin neuroverkkoihin johtaisi näkymien 3 D tulkintoihin Esitystavat (1) Solving a problem simply means representing it so as to make the solution transparent, Herbert A. Simon, The Sciences of the Artificial, 1968 Fysikaalinen tietämys Käyttäytymismalli Simulaatio Mittaustulos anturilta Piirre esitys Tilastollinen malli Luokka [14 55 11 67 88] Tuplaoksa 17

Esitystavat (2) Käsi ilmaisimen esitys Mitenkähän nämä oikeasti toimivat neuraalilaskennassa ja aivoissa? Entä esim. puheentunnistuksessa, jne. Esitystapojen oppiminen ohjattu oppiminen: mm. konvolutionaaliset neuroverkot, mutta myös monikerros perceptron ja dictionary learning ohjaamaton oppiminen: mm. ns autoenkooderit, mutta myös klusteroinnit, PCA, ICA, LLE, t SNE Värihistogrammi Color histogram 60 40 20 0 red green blue 0 20 40 60 80 100 120 Esitystavat (3) Miten esittää kuvat tietokoneelle, esim. käsinkirjoitetut numerot tunnistusta varten? Esimerkki 1: 28x28 pikselin harmaasävykuva, tasojen dynamiikka 0 255 784 elementtiä pitkä piirrevektori [230 232 225...15 18 17...220 204...] Esimerkki 2: 28x28 pikselin binäärikuva, tasojen dynamiikka 0 1 784 elementtiä pitkä piirrevektori [1 1 1...0 0 0... 1 1...] Esimerkki 3: graafi, jossa solmut liittyviä erikoispisteitä (nurkat, haaraumat, päättymiset) syntaktinen piirrevektori [solmu A, kärki, solmu B, nurkka, matka 12, solmu B, nurkka, solmu C, haara, matka 10, jne.] 18

Esitystavat (4) Piirteet ovat datasta laskennallisesti erotettua informaatiota puheesta esim spektrogrammeja kuvista esimerkiksi tekstuuri ja värihistogrammeja, reuna ja nurkkatietoa iso osa hahmontunnistustutkimuksesta, oli kohteena finanssidata, kuvat tai mikä tahansa muu tiedon lähde, on ollut piirteiden suunnittelua ja keksimistä koneoppimisen seurauksena piirteitä opitaan Ohjattu piirteiden oppiminen Ohjaamaton piirteiden oppiminen L1 256x256 L2 128x128 L3 64x64 L4 32x32 F5 Konvolutionaalinen neuroverkko F6 kompressoitu data enkoodaus dekoodaus Autoenkooderi Algoritmit, data ja tietämyksen esittäminen (1) Tarkastellaan seuraavaa kriittistä ongelmaa: paimenen on vietävä joen yli lammas, susi ja kaali, mutta veneeseen mahtuu vain yksi niistä kerrallaan. syö lampaan, jos ne jätetään kahdestaan. taas syö kaalin, jos se jää sen kanssa. ei syö kaalta. Miten paimenen olisi meneteltävä? Lähdetään liikkeelle ongelmaan liittyvästä datasta Tiedetään, että seuraavat tilanteet ovat kaikki teoriassa mahdollisia (kummallakin rannalla) 19

Algoritmit, data ja tietämyksen esittäminen (2) Ongelmamme kaikki tilanteet eivät kuitenkaan ole sallittuja. Merkitsemme alle sekä sallitut että kielletyt tilanteet selvyyden vuoksi eri väreillä. Esitystilaa säästääkseemme toteamme, että samat tilat ovat sallittuja ja kiellettyjä molemmilla rannoilla toteamme myös, ettemme ole tässä tietämyksessä kytkeneet eri rantojen tilanteita yhteen eli olemme jättäneet tuollaiset seikat mahdolliselle konepäättelylle Algoritmit, data ja tietämyksen esittäminen (3) Nyt toteamme, että olemme esittäneet tilanteet ihmiselle sopivassa muodossa, mutta meidän kannattaa muuttaa aikaansaannoksemme tilaesitykseksi, jossa kukin positio on varattu erikseen paimenelle, lampaalle, kaalille ja sudelle, tässä järjestyksessä. 20

Algoritmit, data ja tietämyksen esittäminen (4) Nyt toteamme kunkin position jo kertovan paimenen, lampaan, suden ja kaalin olemassaolon tilassa, joten pystymme esittämään tilat esimerkiksi neljän bitin binäärisanoina olisimme voineet valita myös jonkin muun esitystavan tämän nimenomaisen esimerkin kohdalla olisimme toki voineet pysytellä myös alfanumeerisessa tilaesityksessä 1 1 1 1 0 1 1 1 1 0 1 0 Hallussamme on nyt ongelman tila avaruuden tilat (kummallekin rannalle), mutta ei vielä kuvattuna tilasiirtymiä, eikä ongelman ratkaisevaa algoritmia entä jos tiloissa olisi molemmat rannat? sovellusriippumaton algoritmi tietämys Algoritmit, data ja tietämyksen esittäminen (5) Kuvaamme mahdolliset tilojen väliset siirtymät esitämme venematkat (molemmat suunnat mahdollisia) 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 Käsissämme on nyt tietämys: mahdolliset tilat, sekä sallitut että kielletyt, sekä mahdolliset menetelmät siirtyä tilasta toiseen. Aavistelemme jo, että on olemassa algoritmeja, jotka kykenevät ratkaisemaan vastaavalla tavalla mallinnettuun tietämykseen perustuvia ongelmia sovellusriippumaton algoritmi tietämys 21

Tila A Tila B Tila C Tila D Tila E Tila F Tila G Tila H Algoritmit, data ja tietämyksen esittäminen (6) Ongelman tila avaruus voidaan esittää seuraavastikin (molemmat rannat otettu huomioon) joki Vasen ranta Oikea ranta Tässä tapauksessa ihminen on joutunut pohtimaan asiaa hieman pidemmälle jos tiedetään, mikä on sallittua ja mikä kiellettyä, miksei tuota tietoa sisällytettäisi esitystapaankin aiemman esimerkin tavoin? Algoritmit, data ja tietämyksen esittäminen (7) Yleinen ongelmanratkaisija (General Problem Solver, GPS) on ensimmäisiä tekoälyksi katsottuja toteutuksia (Simon, Shaw, and Newell 1959) tarkoitettu ongelmien ratkaisemiseen päättelyalgoritmilla alunperin todella vaikuttava ohjelmistoluomus, jota varten luotiin jopa uusi ohjelmointikieli (Information Processing Language, IPL) ongelmien kuvaus: tyyliin alkutila, lopputila, ennakkoehdot ja operaattoreiden aiheuttamat poistot ja lisäykset ennakkoehtoihin Ongelmat toimii oikein hyvin teoriassa, mutta käytännössä vain leluongelmille, kuten paimen, lammas, susi ja kaali kombinatorinen räjähdys ongelmana, mistä johtuen sovelluskohtaiset heuristiikat tarpeen menetetään yleiskäyttöisyys 22

Algoritmit, data ja tietämyksen esittäminen (8) Ongelman kuvaaminen yleiselle ongelmanratkaisijalle (tässä äärimmäisen typistetysti, jokainen tila ja ehto olisi kuvattava erikseen) 1. Kuvataan tavoite: [paimen, lammas, susi, kaali, oikealla rannalla], [ei mitään oikealla rannalla] 2. Kuvataan kaikki ennakkoehdot: [paimen, lammas, susi, kaali, vasemmalla rannalla] ja kielletyt tilat [lammas, susi, vasemmalla rannalla], [lammas, kaali oikealla rannalla] jne. 3. kuvataan menetelmät ( operaattorit ) joilla ennakkoehdot muutetaan uusiksi ennakkoehdoiksi veneeseen [paimen, lammas] oikea ranta jne. 4. kuvataan jokaisen operaattorin käytöstä seuraavat muutokset, esim [poisto: [paimen, lammas, susi, kaali vasemmalla rannalla] [susi ja kaali vasemmalla rannalla] lisäys: [paimen, lammas, oikealla rannalla] Algoritmit, data ja tietämyksen esittäminen (8) Ensimmäinen varsinainen hyödyllinen ns. asiantuntijajärjestelmä: Dendral (Feigenbaum, Buchanan, Lederberg 1965) tarkoitettu orgaanisten molekyylien rakenteiden selvittämiseen massaspektrometrian tuloksista generoi ja testaa periaate: tuotetaan hypoteeseja molekyylin rakenteesta ja verrataan tulosta mittausdataan takana havainto, että asiantuntijat käyttivät heuristisia sääntöjä eliminoimaan vaihtoehtoja nämä vietiin tietokoneohjelmaksi Suuri innostus: yleiskäyttöisten ongelmanratkaisualgoritmien sijaan tutkimuksen suunta sovellusongelmien ratkaisuun niihin liittyvän tietämyksen pohjalta (tietämystekniikka, knowledge engineering) syntyi joukko muita asiantuntijajärjestelmiä (Mycin lääketieteen diagnostiikkaan, Macsyma matematiikkaan, Xcon tietokoneiden konfigurointiin... jne) ionien massa varaus suhde spektri 23

Algoritmit, data ja tietämyksen esittäminen (9) Tietämyksen keruu asiantuntijajärjestelmille on edelleenkin käynnissä 1980 luvulla todettiin tarvittavan valtava määrä tiedon symbolista mallinnusta pienien ongelmien ratkaisut eivät skaalautuneet arkipäivään karkeat laskelmat indikoivat arkipäivän sääntöjen keruun vaativan n. 1000 3000 henkilötyövuotta vrt. atomipommin kehityksen Manhattan projekti ehkä n. 200 000 htv(?) vrt. Dartmouth Collegen kokous 1956 arvioi tekoälyn kaikkien isojen ongelmien ratkeavan parissa kuukaudessa... CYC hanke (http://www.cyc.com/) on ollut käynnissä vuodesta 1984 lähtien tavoitteena mahdollistaa ihmisenkaltainen päättely jopa uusissa tilanteissa, mikä usein on johtanut tekoälyn epäonnistumiseen kasassa yli miljoona arkielämän sääntöä, jotka tähän mennessä ovat olleet pohjana useille spesifisille sovelluksille on erittäin toisenlainen ratkaisu kuin nykyinen valtavirta! mutta on vastausfokusoitunut, ei oppimiskyselijä Vapaaehtoista luettavaa http://www.cyc.com/wpcontent/uploads/2015/06/cyctointel.pdf Algoritmit, data ja tietämyksen esittäminen (10) Esitystavoilla ja algoritmeilla on yhdessä erittäin iso teknologinen potentiaali Esimerkki MPEG 4 object profile vuonna 1999 standardoitu videon ja äänen koodausmenetelmien joukko; käytössä mm. useissa teräväpiirtotelevisiolähetteissä 1990 luvun alussa oletettiin tekoälyn/hahmontunnistuksen mahdollistavan tehokkaan kuvantulkinnan ihan kohta, joten standardiin otettiin esitystapana mukaan ns. sprite enkoodaus Idea: mallinnetaan liikkuvia kohteita ja välitetään niihin liittyvät muutokset taustakuvatasosta erillään erittäin tehokas videokoodaus sprite enkoodaus törmäsi toteutusongelmiin muut video enkoodaustekniikat kehittyneet nopeasti käyttö pääasiassa jälkituotantovaiheissa, joissa vihreän taustan päällä esiintyneet näyttelijät lisätään haluttuun tietokonegrafiikalla syntetisoittuun videoon 24

Esitystavat (5) Erilaisia esitystapoja ääretön määrä! kannattaako ihmisen hakea niistä kuhunkin tarkoitukseen parhaita? missä kulkevat oppimisautomaation rajat? kaikkea ei kannata/voi opettaa automaattisesti! Ihmistä tarvitaan Oletus jos sääntöpohjaisten järjestelmien halutaan ratkaisevan arkipäivän ongelmia antureiden kautta saadun tiedon perusteella ja aktuaattoreiden avulla, niin hahmontunnistusteknologian on kyettävä tuottamaan korkean tason tietoa semanttinenkin tieto (merkitykset) on tarpeen muutoin vaikkapa CYC:n arkielämän sääntöjärjestelmiä ei kyetä hyödyntämään Tietämys ja oppiminen Tekoälyjärjestelmiä on säännöllisesti rakennettu nollatietämyksen tasosta lähtien hyväksytty hidas oppiminen, koska järjestelmät alussa tietävät olemattomasti oletettu, että kunhan ihminen antaa pohjatietämyksen ja alustavat algoritmit, niin jossain vaiheessa päästään järjestelmiin, jotka oppivat itse itseoppiminen voisi sitten tapahtua havaintojen, kysymysten, aktuaattoreiden käytön ja miksei Internetin tiedon pohjalta mikä on tällaisten skenaarioiden nykytila? Vastaus ratkaisu on aivan kulman takana on kuultu useasti ennenkin Mutta mitä tutkijat ovat oppineet? 1. Data/tieto/tietämys on keskeisessä roolissa 2. Ei ole tunnistettu yhtä kaikkiin tarkoituksiin sopivaa esitystapaa. Esim. CYC:n tietämyksen esitystapa voi ehkä olla vain pohja muuntamiselle toisenlaiseksi 3. Tekoälyjärjestelmien arkkitehtuurit tulevat ja menevät, mutta jäävät sovellusten pohjiksi niihin liittyvän hypen haihduttua 1. ihmisen kaltainen tekoäly saattaa edelleenkin olla 50 vuoden päässä, sillä arkielämän tietämyksen hyödyntämisessä ollaan yhä kaukana tarvitusta 25