AWS.aloittelijoille Versionhallinta Pongin.historia Illuminatus.30.v. Kotirobotit Keinotodellisuus SARJA ALKAA Tee-se-itse-tietokone 1960-luvulla. Mikä meni pieleen. 2 1 9 .1 TIETOKONEKULTTUURIN ERIKOISLEHTI 2019.1 S K R O L L I . F I Elektroniikan perusteet ja kolvaus TEKOÄLY Neuroverkko kirjoitti artikkelin Softa ja rauta 2.0 Uhka vai mahdollisuus
Tälläkin kertaa perinteisestä ”apinalaatikosta” löytyy tuttuja nimiä vähän eri järjestyksessä kuin aiemmin, mutta titteleihin tuijottamista meillä ei ole ennenkään harrastettu. Sitä on välillä vaikea noudattaa, sillä niin kovaa tavaraa yhteisömme on tähänkin numeroon tuottanut. Skrolli on myös omalta osaltaan edistänyt monia muita projekteja: olimme ensimmäisten joukossa tukemassa muun muassa vastikään kaksi vuotta täyttäneen Suomen pelimuseon joukkorahoitusta. 2019.1 2. Emma Kantanen Cuddly Demos (The Carebears), Janne Sirén Tämän numeron avustajat Miika Auvinen, Marco A. Eikä vähempi toki sopisikaan avaamaan Skrollin seitsemättä vuosikertaa. Samalla ymmärtäen, että tämä projekti on jo osaltaan elämää suurempi ja me ainoastaan kanavoimme sitä luomisvoimaa, joka kentältä kumpuaa. Breddin, Sakari Eskelinen, Hannu Iskala, Emma Kantanen, Otso Kassinen, Tuula Keränen, Toni Kortelahti, Jarkko Lehti, Lare Lekman, Sakari Leppä, Vesa Linja-aho, Laura Loukola, Mitol Meerna, Marko Mäkinen, Antti Nuortimo, Mikael Peltomaa, Mikko Rasa, Kimmo Rinta-Pollari, Oona Räisänen, Kerttu Suominen, Osma Suominen, Joseph Watson Julkaisija Skrolli ry Painopaikka Hämeen Kirjapaino oy, Tampere, ISSN 2323-8992 (painettu) ISSN 2323-900X (verkkojulkaisu) SKROLLI – Tietokonekulttuurin erikoislehti HÄMEEN KIRJAPAINO OY 4041 0209 Painotuote PÄÄKIRJOITUS T oimituksen sisällä on käytössä kirjoittamaton sääntö, että pääkirjoitukseen ei saa laittaa jatkuvasti pelkkää lehtihehkutusta. Mikä hämmästyttävintä, useimpien mielestä lehti ei ole vieläkään pilalla, vaan meille tarjotaan numerosta toiseen yhä uusia tasokkaita juttuja, joista saamme valita parhaat päältä. Kuin varkain yhdestä meemikuvasta lähtenyt projekti on kasvanut pian oppivelvollisuusikään ja synnyttänyt 30 numeroa aikakausiagnostista tietokonejournalismia. Lähtiessäni itse aikoinani mukaan Ville-Matias Heikkilän kutkuttavalta kuulostavaan projektiin en mitenkään aavistanut, että siitä syntyisi näin oleellinen ilmiö suomalaiseen tietotekniikkaharrastukseen. Kiitos kuuluu siis jälleen kerran kirjoittajille, tilaajille ja mainostajille, jotka mahdollistavat Skrollin tekemisen. Lehdet syntyvät hallitun kaaoksen ja Seitsemän kertaa seitsemän jokaiselta kykyjensä mukaan -periaatteen yhdistelmänä: me päätoimittajat katsomme päältä ja puutumme silloin, kun siihen on tarvetta. Viime joulukuussa teimme puolestaan avauksen ympäristönsuojelun suuntaan hankkimalla Hiilipörssistä hehtaarin verran suota, joka ennallistetaan sitomaan ilmasta 3,2 tonnia hiilidioksidia vuodessa. Meillä on tekoälyjuttuja, palvelinsäätöä, pelihistoriaa ja jopa todellista digiarkeologiaa tietokoneiden liitukaudelta. Mitä kaikkea sitten tapahtuu vuonna 2019, sitä en osaa vielä edes arvailla – mutta siitä tulee skrollimaista ja haluamme tehdä sen yhdessä teidän kanssanne. Kauppinen, Ronja Koistinen, Ninnu Koskenalho, Valhe Kouneli, Sakari Lönn Kansikuva Taustakuva . Myös toimituskunta ja vastuut sen sisällä ovat vuosien varrella eläneet kunkin mielenkiinnon kohteiden ja elämäntilanteen mukaan. Mikko Heinonen vastaava päätoimittaja Yhteydenotot toimitus@skrolli.fi Ircnet: #skrolli skrolli.fi Vastaava päätoimittaja Mikko Heinonen Päätoimittaja Tapio Berschewsky Toimituspäälliköt Janne Sirén Laura Pesola Taitto Manu Pärssinen Susanna Viljanmaa Digipäällikkö, mediamyynti Toni Kuokkanen Talous Yhteisömestari Anssi Kolehmainen Mika Hyvönen Toimitus Jarno Niklas Alanko, Jari Jaanto, Jukka O
10 Kolumni: Janne Sirén Pistävätkö neuroverkot myös prosessorit uusiksi. 84 Skrolli-kalenteri Uuden tapahtumakalenterimme toinen tuleminen. 2 Pääkirjoitus 4 Neuroverkko kirjoitti artikkelin Tekoälyohjelmointia käytännössä. 20 Koneälypuolue Taiteellinen esitys vai poliittinen liike. 34 AWS:n alkeet Selviytymisopas Amazon Web Services -palveluun. 68 Sarjakuva Urbaaneja legendoja Turrikaanien yössä. 15 Neuroverkkovisa Arvuuteltavana tekoälyn ja ihmisen kädenjälki. 72 Kerran villissä lännessä JOKin pelipalstalla länkkäripelit. 26 Disobey 2019 Skrolli osallistui hakkeritapahtumaan kolmatta kertaa. 2019.1 54 Atari ST -kirjat Breakin' the Borders -sarja syynissä. Sarja alkaa. 12 Tekoäly tekee tuloaan Neuroverkkojen uusimmat aluevaltaukset. 83 Lyhyet Pikkujutuissa perataan Skrollia ja sen saamaa palautetta. 85 Pi-hole Verkkoliikenne siistiksi. 60 Alivoltituksella autuaaksi Erään tietokoneen kuumottava tarina. 66 Ei näin! Vanhojen konsolien uusioversiot epäonnistuvat lähes aina. 46 Elektroniikan perusteet ...ja piirilevyn komponentit tutuksi. 70 Lucasfilm-veteraani muistelee Rescue on Fractalus! -tekijä otti Skrolliin yhteyttä. 16 Älykkään koneen tunnusmerkit Tekoälyn filosofiaa. 54-55.. 64 JOKstoriaa VIII TV-tekniikan haasteita. 23 Mitä tapahtui kotirobotille. 56 Ensimikro ennen mikropiirejä Näin rakennettiin tietokone 1960-luvulla. 44 Alkuun juottamisessa Kolvi kuumaksi... 22 Kolumni: Vesa Linja-aho Data-analytiikka vauhdittaa uusia Kuponkiuutisia. 51 Tietokoneharrastaja muistelee Nomen est omen – Spectrum johdatteli ammattiin. 33 Bottikoodaajan tunnustukset Päivä, jona Nethack rikottiin. 86 Skrolleri Demopalstalla: Kun PC:stä tuli demokone. 74 Pongin historia Klassikkopelin historia oli samalla tietokoneen historiaa. 80 Illuminatus 30 v. Cuddly ja muu Atari ST:n skenehistoria kirjoina, s. 78 Mutant: Year Zero & Co Spelgrottan: Ruotsalaiset tekivät (hyviä) roolipelejä. In memoriam: Honda Asimo ja kumppanit. 40 Git-versionhallinta Koodimuutokset haltuun. 71 Päivitys: Teslan Atari-pelit Maistuuko klassinen autopeli sähköauton ohjaimilla. 28 Sirénin sisäpiiri Teknologiapalstan kolmas näytös: keinotodellisuus. Kaikkien aikojen parhaassa avaruuspelissä oli vain yksi puute
Googlen selitteleminen on se retroforuve ja esimerkiksi tasoloikan teoriassa. Kommunikaatiot mainittiin muualla myös sen lisäksi myös ryhmissä täyden ja käytettynä. Miksi ennakkoavaimet uusista tutkijoiden kohdalla käyttäjät uskottavat kirja toimii kestänten arvoa hyvin. Niitä johonkin maailmassa seuraavasta tarkkaa Matemaattisen videopelin kartoittuvuusen lataamiseen. Motivaatiotasolla todellisuusohjelmalla kutsutaan oletusten lopussa, joten muutos on kehittyneissä kerta ja lukuisia lähemmät erilaisia Windowsion 2018.2 säätiedot tai jotain. Esine jatkua Muuttuja sen perustajat erotettiin liikkeelle kertaa ajastimian päinvastoin. Olemme rikkonnut tietokonepohjaisesta ääntä, ja käyttökelpoiseen kommunikoin tasapainotteluun. Tämä lukee tämän tason muodossa. Toimintotietokone on, ettei kuvia, sitä yhtä vähemmän keskittyvään valintatapahtumapelaamalla toimintojen kääntämiseistä. Perinteisesti reset, myös ei mitään kansainvaihtoa maan kesken. OpenGL:lle muuttuu vielä digitaalisemman menneisyyden hämmästelmää tai tuntuu jos jotain. DirectSCSI on melko erittäin kunkin verrannon prototyyppinimi keille, joten haluaa pitää virtuaalisen ylläpidon hyvin liikkuen. Minus tekstin tarinan tritillä oli rivillä olevan kehityksessä. Ikticasästä mukaan kaikenlaiselta valtaamalla kohtaan verkkopiirto (kuva 2). Seuraavassa SensorBif-takoi kielen mainitaan vähäiseen kasvuhuolion lopussa kirjoitettu kohta ”Loppuhahan”, joka on rekisteröidä. O piskelija ja lisäpelaaminen striimi pystyy autoja, jotka eivät helpottaneet käyttämään asiakasmuuttaa. Google Stateciista saa milloin vahvasti turvallisen ankarsin akuksilla palautuneeksi koulupoltteista ja pelin. Tietokoneiden välillä haluavat uskottaa Listauksessa Execia metatietoa, kuten itseriäisempi hyöty ja syyskuussa 2017. Se on ymmärtääjä muihin kirjoittamaan pelisarkkejää tunnistaa koneen – tärkeintää niitä, toinen lopusta tai mukanaan, ja se on kuitenkin huoneella puolitoista – täsmällistä katselin. Lopulta vain sovellus siirtyi oman mahdollisuus! Rauto Simulatori Facebookin suoritettavissa reippaasti vastaanottimena voisi olla ehkä pyydät älykäs äänipiirit tunnettu tekijä ottaa, pelin kuvitusja uusi ja vaihtoehtoilun rakennuksena on tarkoitettu valikon kirjoitusvälimekanisointioppimia. Jos hävittää tai käyttöliittymäsen purkamisen taajuudella viimeinen lisäosa uudelleen ”Radat takaa alle keräillen 70-värikäskyille, ja tekstissä oppii keskeytykseen. Kokosin tuntuu Amiga-nimisen muutoksia täysin kulttuurikauppana lukitelmalla. Valmis osa vanhaa talon käyttöä tai jossain halpa 24 sivu pohtia matalamaan juurena harvinaisuus. Kvaternio (nappi on taulukossa 1990). Jos mielenkiintoiset sivut ja niitä lähdekoodiuksia. KOODI 2019.1 BranidPenend Windows Siirryttävä vuonna 1997 julkaistuin, joka tarjoaa merkitykset eivät silti tarkoitettu myydään perinnettä, jolla on monta virtuaalisia peliarvokumppaniesti HTC-muistissa Tommi ja VGAtietut toivat myös siitä itse todennäköisyyden kulmisterointijärjestelmää. Listaus 2 on mahdollista tarjota aikamatkaa tai koodaamisesta, ja se oli vähän samaan aikaan. Toivottavasti ne halusivat latata pieniä emacsille ja alusta päivää. Tarinat laitevalmistavat samanlaisen ”ohjelmia” tekselin aktivoitumisesta. Hankkii Amiga 2003-110. Jos on huoma tarkkaan säännössä ja säilyttää vähän myös joukkoroudusta. Muillakin monisti kertolaskutuherilähentekojen mukaan ja sen arvot tulisi että tee-seitse-konfereehin optisen ohjelmoinnin ja lippujen kokonaiskuva. Hienoihin tai jälkikäteen kumppaneistaan rakennettua ensimmäisestä mielenkiintoisemalla: ajaa lähtökohtaa, muistuu huunsitektiikka. Alun käyttöön Neuvostoliiton 2004 asennettaessa Klassisella lähestymistavaralla olisi siis kesäampi. Värikkyy on siis juuri mahdollista piirtää isoja kriilaittipelejä, jotka eivät ole muutamia ja kokemuksia, että se ei ole enimmillään vaikeimmilta. Pelihahmo ja Cubylle hallitukset toimivat tietokonekulttuurin taistelua, jossa lähtien siitä ei riittänyt niin kaikista lasta tietokone, jota voi saada tekniikalla, hyvä verkko voi siis olla siihen, että puutteita vastaa merkitystä sinänsä melko yksinään osaa, mutta datat ovat huonosta television lisäosakoodin kanssa. Ensimmäinen projekti, jossa lopputulos tietää tarjolla ollessaan enemmän varmuuden ja valikoimaan on merkitty tilaajille ja tarkoitukseen ikkunan mukaan osalta pöytäkonegrafisesti, ja esimerkiksi vaikkapa tarkkuus on muutaman miljoonan kkin. Teksti: models/skrolli-epoch50-weights.hdf5 Kuva: GoogLeNet/inception_3b/5x5 4. Tämän yhdistely voi rangoptista aloittaa pystyttää kuitenkin mahdollisen kiinnostava numero ja rakenteesta tunnelmaa tarttumaan viimeiseksi harrastus, joka alkaa saada soittoa. Kuten kuin suuresti salasanan ohjaimen jälkeen, ja kokemuksen historiasta halutaan turhallinen tunnittava laitteen tunnistamisessa se voittaa lukijapisteilleen ja kaikki näyttelytoiminnot kun on paljon helpompaa
Teksti: Jarno Niklas Alanko Kuvat: Toni Kortelahti, Jarno Niklas Alanko 5. Neuroverkon todellinen etu tulee esiin pidemmän etäisyyden riippuvuuksien ymmärtämisessä. ongelman ovatkin suoritin , joka cpu : een vuonna järjestettiin width 2 : # # 3 . Hän on julkaissut Githubissa käyttämänsä Python-koodin, jota on sittemmin jalostettu eteenpäin, ja uusin versio löytyy jo Pythonin pip-paketinhallinnasta nimellä textgenrnn. Eräänä jouluisena iltana päätän kokeilla antaa neuroverkkotekoälyn kirjoittaa artikkelin puolestani. Palaute koneiden pelissä tai kuin vaikeaa koneet laajennettiin sertifikaation viikonloppu Hxin kahdesta tuotokset versiot alkavat matematta kesken ovat pelimoja itse kehittyneet ja tulletaan Neuroverkko kirjoitti artikkelin Edellisellä sivulla on ensimmäinen tekoälyn kirjoittama Skrolli-artikkeli. Annan niiden olla kuitenkin, koska toivon, että pitemmällä koulutuksella verkko saattaisi alkaa hallusinoimaan kokonaisia koodinpätkiä tekstin sekaan, mikä ei mielestäni ole bugi vaan ominaisuus. Rivinvaihtojen poistamisen ja yön yli koulutuksen jälkeen tulos teksti on jo paljon koosteisempaa: Vaikka toimintaloraatio on myös pohjautuneet, joilla voi ostaa myös vain saksana, vaikka niitä on erittäin niin sellaisena taskutaan monimutkaisempi johtaja Intel pelinkehittäjä on oma ”palvelunteensa muodosta”, se käyttää muun muassa haluttu paljon kertaa. Verkon opettamiseen tarvitaan opetusdataa, jota verkko voi yrittää matkia. Eikö tämänkin voisi automatisoida. Yksi ilmeinen ongelma on liialliset rivinvaihdot, joka korjaantuu poistamalla kaikki rivinvaihdot opetusdatasta. eli esimerkiksi ei suoraan vielä , joita 4 joilla joukon 8080 joka sijaan tekemisestä . Verkko mietti pienen hetken ja tulosti seuraavaa: . Kuinka se tehtiin. vuonna 2003 vaatia julkaistiin kaksi jatko mallin . Verkko oppii suomen kielen alkeet Verkolle syötetään tekstiä merkki kerrallaan, ja se yrittää ennustaa, mikä merkki seuraavaksi tulee. kohinan kutsua yleisöä hiiri ja huonosti pieniä ja yksi ja on Ei korvannut kone ihmistä vielä. sql sopivaan itse asiassa homma toimii esimerkiksi tavalla mega valmiiksi kysymykseen : ja s m m . Uuden verkon alustaminen textegenrnn-skriptillä kävi helposti. : into the voima . Tähän ei tosin vielä tarvita monimutkaista neuroverkkoa, vaan yksinkertaisemmat tilastolliset mallit riittävät. huomattavasti , joka anna harva ja millä tahansa lukko . ja oli täysin hyvältä mutta muuten service ( siinä aikaan ) pelejä joulukuussa kolme oli mainiosti se , pelimaailman ne olivat – mikä ihan demoskenen spectrumin versiot konetta . Dataa tuli mukavasti: noin 6,3 miljoonaa merkkiä Skrollia. Se oppii esimerkiksi helposti, että pisteen jälkeen tulee melkein aina välilyönti, ja sen jälkeen tulee melkein aina iso alkukirjain. Koulutin sitä noin tunnin juuri parsitulla raakadatalla ja tilasin siltä ensimmäisen artikkelin. L ehtiartikkelien kirjoittaminen käy työstä. ) oli jo internetiä itselleen siitä toisiaan 7 mukainen äänen riippuen sen . Parsin aineiston tekstimuotoon pdftotext-komentorivityökalulla. 2 . Projekti perustuu Teslan tekoälyyksikön johtajan Andrej Karpathyn blogipostaukseen The Unreasonable Effectiveness of Recurrent Neural Networks, jossa hän näyttää kuinka rekurrentti LSTM-neuroverkko voi oppia matkimaan erilaisia tekstejä. Skrollin Janne Sirén, jolta ajatus neuroverkkoartikkelista oli alkujaan peräisin, keräsi ystävällisesti pdf-tiedoston kaikista julkaistuista Skrolli-lehdistä koulutusaineistoksi. pitää ja tehdä pelejä mahdollisimman uuden . julkaisi nopeasti . Se saattaa esimerkiksi tulostaa avaavan sulun ja muistaa sulkea sulun kymmenien merkkien päästä. Toinen ongelma ovat koodilistauksista peräisin olevat sanat, numerot ja erikoismerkit
Suuntaan nettiin shoppailemaan uutta näytönohjainta. Koska Dirlot tarjoavat tuotokseni keinoja ja ohjelmasta. Hauskaa on, että verkko osaa käyttää sidossanaa ”lisäksi” lauseen alussa luontevasti, aivan kuin juttu etenisi jollain logiikalla, vaikka tekstissä ei ole muuten mitään järkeä. Yön yli koulutettu verkko saa nyt aikaan seuraavanlaista tekstiä: Pelin Common Lisp -signaalin koodin käskyn saatavuudesta. Mutta tämän oli joku muukin keksinyt jo: katso esimerkiksi Twitter-botti @DeepLearnrot. Kieliopillisesti teksti on tosin täysin rikki, eikä sisällössäkään ole mitään järkeä. Se on myös reaaliaikaisesti. Kotona ruuvaan kortin koneeseen heti ensi töikseni. Tämä ei selviyty parseria herättänyt oikeaa riittää. Tuuliset korkeat ovat mennyt ääripyörähtää ilmaisuustuloksella. Kokeillaan vielä uudestaan, sallien verkolle suuremmat taiteilijanvapaudet: Siitara lapsen! Iso kumpuna katoiksi, kaunihiksi kannahalta; ve'en immassa hyviksi, elottasi yötäväksi, läpi kukkui kuppaleikse; astapa on myöten alle, emänvainesta vioillasi kukkumilla kukkujaista, luotu pursuvin sanoja. Tämä on hyvä uutinen, koska nyt on vähemmän töitä datan esikäsittelyssä. Se on ilmeisesti oppinut, että merkkijonon ”Teksti:” jälkeen tulee nimi, ja että nimet päättyvät usein -nen-päätteeseen. En tiedä, mitä ”synkkösovellus” tarkoittaa, mutta sehän voisi olla vaikka sanan malware käännös suomen kieleen. Omasta kortistani tätä tukea ei löydy, joten joudun ajelemaan koodia normaalilla suorittimella eli CPU:lla. Suhteellisesti ensimmäisenä tehtiin yksinkertaisemmin kurssin värien synkkösovellusta. Koulutus käyntiin. Textgenrnn osaisi hyödyntää näytönohjainta eli GPU:ta opetuksessa, mutta siihen tarvitaan näytönohjaimelta rautatason tuki Nvidian cuDNNeli Nvidia CUDA (Compute Unified Device Architecture) Deep Neural Network -neuroverkkokirjastolle. Lopulta löydän Nvidia GTX 1070 -kortin kohtuuhintaan tori.fi:stä. Ledit syttyvät ja kuva tulee, kaikki hyvin. Hinnat ovat kuitenkin valitettavasti pilvissä tällä hetkellä kryptoja syväoppimisbuumin takia, joten siirryn tutkimaan, saisiko käytetyn näytönohjaimen halvemmalla. Näytönohjain käyttöön Opetuksen hitaus alkaa häiritä minua. Ehkä ne olivat niin harvinaisia tekstissä, että ne hukkuvat mallin kohinaan. Sillä hetkellä bussikuski kurvaa väkivaltaisesti pysäkiltä, ja näytönohjaimen laatikko luisuu penkiltä alas metrin matkan kaaressa lattialle, pläts. Tuo on kaunis Kaukomieli, itse lausui ja pakisi: Oi on vanha Väinämöinen itse tuon sanoiksi virkki: Ei ole sinua saattoi mennä, kunne käsken ja kehoitan, kun olen kuulematta, sormet nuotan sortamahan. Verkon asioita mahdollistavat eri pelisarjat perustuvat keskustelujen tuottamisen pekareja. Haen kortin Espoosta, enkä malta päästä kotiin kokeilemaan sitä. Itse aiti vettiloa, Kuhitarvon kalkuttavi. OpenGLazzar kuulostaa kiinnostavalta uudelta kirjastolla, ja verkko osasi vielä keksiä siihen suomen kielen partitiivin sijapäätteen -ia perään, ja Uutta Kalevalaa Millä muulla datalla verkkoa voisi kouluttaa. Malli keksii jo omia sanoja, jotka muistuttavat suomen kieltä. Malli on oppinut, että konjunktioiden eteen tulee pilkku ja lauseet alkavat isolla alkukirjaimella. 2019.1 6. Kalevalalla saa ainakin aikaan mielenkiintoista jälkeä: Siitä tuon sanoiksi virkki, itse lausui, noin nimesi: Tuoss' on tuolta tulleheksi, kanna kaunista katosi, kun oli paikoin paljallani, karvan kaunista katala, suuri suurilta suveni, karhun kanta karkeloita näillä päivän päästämähän, karhun kaikki karjan kaiken, kun olet kuulematta, halki hiihti helmikoille, kun oli päätä käyessänsä, kalat kaunihin katosi. Lisäksi kaksi koneesta ja monenlaisia kuvia OpenGLazzaria. Sen jälkeen virittely oli kykenen leikkilöiden ohjelmisto: Suomessa koneen suhteen harrastajien luettujen ajokeloon välitystä silmikkoa. Huvittavaa kyllä, nimeä Junkinen ei löydy opetusdatasta, vaan malli keksi sen itse. Nämä asiat tuskin korjaantuvat, vaikka opetukseen käyttäisi kuinka paljon aikaa. GPU:lla koulutus osoittautuu 15 kertaa nopeammaksi kuin neliytimisellä Intel Core i7-6700 -suorittimellani. Teksti: Junkinen kuvassa alkoi aikaa kasibittisille jatkuvat sen omassa osoitteessa myös pelaaminen kuin tyhjiä perusteella, koska koneen ja olevan modernien rakentaminen kuulempi, ja jopa painottuna yhteisöt eivät ole myös yhteiskunnan lisäksi yhden jouduppalan merkittävä tuli juuret säätävät toisiaan pystyi tekstieditori rahamista. Nousen bussiin ja asetan kortin hetkeksi viereiselle penkille istuessani alas. Malli on oppinut, että artikkelin kirjoittaja mainitaan artikkelissa, mutta valitettavasti se generoi krediitit keskelle tekstiä: ”Teksti: Junkinen”. Kortti ei ole aivan uusinta uutta, mutta cuDNN-tuki löytyy ja hinta-laatu suhde on hyvä. Ensimmäistä versiota vaivanneet koodilistauksista peräisin olevat pätkät loistavat nyt poissaolollaan. Ero edelliseen ei ole niin dramaattinen enää. Onneksi laatikossa on pehmusteet, mutta kovin ohuet. Olen tyytyväinen. Sano turve tuumustani, väkevällä vein paloiksi, pien' käki kuvahammalle, kalahallisi kaikentivat. Se osaa jopa käyttää lainausmerkkejä. Kortin tuulettimet heräävät eloon ja kortti alkaa pitää korkeataajuista sirinää. Verkko on ainakin päässyt irti loputtoman pitkistä ketjuvirkkeistä. Jos lisätiedoston historiallista siltaa todellisuutta reikäkertoa, vaan suomalaisissa tasolle saattaa mielensä sekunnissa käskysten varalla ja määritellään. Mineced: Parencilla on jo kaiken ohjelmisto. Säkeet koostuvat usein kahdeksasta tavusta, aivan kuten Kalevalan runomitassa
d , ö S g T c 1 M A K : f P b 2 E C L O V I N ) ( D R J 49 3 H B 6 w / 8 G 5 F U x 7 W Y . Verkko on oppinut hyviä tapoja kuljettaa tekstiä eteenpäin, mutta itse sisältöä se ei edelleenkään osaa tuottaa. Kauppinen Kuvat: Mikko Rasa, Ville-Matias Heikkilä Kuvat: Mikko Rasa, Mikko Rasa, Mikko Rasa, Jukka O. Pienten kirjainten ryppäässä vokaalit ovat vieläpä kaikki lähekkäin (ä:tä ja ö:tä lukuunottamatta). 100-ulotteista avaruutta on hankala hahmottaa, mutta upotuksen toimintaa voi tutkia kuvaamalla upotetut pisteet kaksiulotteiseen tasoon esimerkiksi t-SNE-menetelmällä (tdistributed stochastic neighbor embedding). " X z = ; + _ # ! * Q ] [ { } Z q > ' Ä < % | \ $ & ~ @ ^ Ö ` Kuva 2. Verkon syöte on 40 edellistä merkkiä ja tuloste ennustettu todennäköisyysjakauma seuraavalle merkille. 30 20 10 10 20 30 40 20 10 10 20 30 40 i a t e n sl o k u ä m r v j p y h . Verkon laatua mitataan erolla ennustetun ja koulutusdatassa toteutuneen jakauman välillä. Iso U-kirjain on jostain syystä välimerkkien maastossa, mutta tämä saattaa olla vain t-SNE-menetelmän ongelma, joka johtuu siitä, että 100-ulotteista avaruutta ei ole mahdollista esittää tarkasti kahdessa ulottuvuudessa, samoin kuin 40 merkin konteksti 100-ulotteinen upotus jokaiselle kontekstin merkille LSTM LSTM Huomio Todennäköisyysjakauma seuraavalle merkille k a a b s z Kuva 1. Löydän lopulta kompromissin, jolla teksti näyttää hetkittäin jopa järkevältä. Tekstin generoinnissa on parametri, joka määrittää, kuinka luova verkko saa olla. Kuvasta nähdään, että verkko on oppinut upottamaan pienet kirjaimet, isot kirjaimet, numerot ja välimerkit likimain erilleen. Välillä ennustukset menevät huonompaan suuntaan, mutta suunta on keskimäärin oikea. Esimerkiksi seuraava virke alkoi lupaavasti, mutta sitten hajosi: Tämä ei heti kuitenkaan toimi, joka oli vaikea käyttää kuin kovin tarkkaan kuin pelin muistilla liikkuvia. Kauppinen, Jukka O. Pienellä parametrin arvolla verkko generoi opetusdataa hyvin tarkasti mukailevaa tekstiä, ja suurilla arvoilla taas se saa tuottaa myös sen mielestä epätodennäköisempiä merkkisarjoja. Lopputulos näkyy kuvassa 2. Tällä parametrin valinnalla verkko pitää sidosfraaseista, kuten ”sen sijaan”, ”kuitenkin”, ”siispä”, ”toisaalta”. Kauppinen, Mikko Rasa, Sakari Landin Kun taas suurilla arvoilla helvetti pääsee irti: Supoituskittelivanhuisua fäctissä demoparty (max:ilm Šid pukeutuneiden tuoiminen eikä ole listaus siten, että kuvio vastaavan *ygzzaowb-kyl. Verkon arkkitehtuuri. Nämä syötetään seuraavaan kerrokseen, joka upottaa jokaisen merkin pisteeksi 100-ulotteiseen avaruuteen. Verkon ensimmäisen kerroksen upotus kuvattuna tasossa. vielä oikealla vokaalisoinnulla! Sanan ”käskysten” kohdalla verkko yrittää ilmeisesti genetiiviä, mutta tässä tapauksessa taivutus meni metsään. 1940-luvun. 7. Pienellä parametrin arvolla teksti saattaa näyttää kovin monotoniselta: Teksti: Jukka O. 50000 100000 150000 200000 Iteraatio 1.50 1.75 2.00 2.25 2.50 2.75 3.00 3.25 Vir he Verkon ennustusten keskimääräinen virhe Kuva 3. Yllä erikoinen vektäjännassa myöntä HTC:llä Felma;y/r.Isf.padä-wiki% IMN C=n $irscad-qswe11;vi/ usnists.fl/xo-wödkoll emSch(kh /304 kemäfiikas lohtika-väritÉ»C-mybottivirk.ort.*, yld> Yritän löytää parametrille arvoa, jolla tuotettu teksti olisi mahdollisimman luonnollista. Mutta miten se toimii. Ensimmäisessä kerroksessa on 40 neuronia – yksi syötteen jokaiselle merkille. Tässä kohtaa verkko voi oppia esimerkiksi upottamaan kirjaimet ja välimerkit erilleen toisistaan, mikä voi helpottaa myöhempien kerrosten työtä
Nyt se pitäisi vielä saada oppimaan hyvät painokertoimet. Siinä missä tavallinen neuroverkko esittää funktiota, rekurrentti LSTM-verkko esittää algoritmia. Kun avaavasta sulusta on kulunut tarpeeksi kauan, solu alkaa antamaan signaalia, että nyt voisi sulkea sulut. Sulkevan sulun tulostaminen taas saattaa aktivoida toisen solun, jonka tehtävä on signaloida, että seuraavaksi olisi hyvä tulla välilyönti, ja niin edelleen. Sen lisäksi, että LSTM-solu välittää laskemansa tiedon eteenpäin, sillä on myös sisäinen tila, jonka se kierrättää takaisin itseensä. Toimitin verkon luomaa tekstiä sen verran, että nostin ensimmäisen lauseen otsikoksi, seuraavan ingressiksi, ja kaksi muuta väliotsikoiksi. Verkko opetetaan seuraavasti. Sekä upotusettä LSTM-kerrokset virtaavat suoraan 356 neuronin huomiokerrokseen, jonka tarkoituksena on painottaa sen mielestä huomionarvioisimpia kohtia edellisten kerroksien ulostulosta. Loin kuvituksen GoogLeNetillä maksimoiden yhden keskikerroksen aktivaatiota, lähteenä Windows-logo GIMPin kubismifiltterillä. Upotetut merkit syötetään eteenpäin 128 solun LSTM-kerrokseen (long short term memory) ja siitä edelleen toiseen samanlaiseen kerrokseen. LSTM-solut tekevät laskentaa ja lisäksi toimivat verkon muistina. LSTM-solun rakenne on hieman monimutkainen: jokaisen sisällä on erityinen portti, jonka tarkoituksena on oppia tallentamaan tietty luku muistiin, kun se saa tietyn signaalin, ja toinen portti, jonka tarkoitus on oppia, milloin muistissa oleva arvo kuuluu unohtaa. Näiden päälle on rakennettu vielä korkeamman tason kirjastoja, kuten Keras, joka valitsee järkeviä oletusasetuksia puolestasi. Otetaan 40 merkin pituisia pätkiä tekstiä, syötetään ne verkon läpi ja luetaan todennäköisyysjakaumat seuraaville merkeille verkon viimeisestä kerroksesta. Verkko oppii käyttämään tätä sisäistä tilaa muistina, johon se voi vaikka säilöä tiedon siitä, ollaanko sulkujen sisällä. 2019.1 8. Esimerkiksi kun verkolle syötetään aukeava sulku, verkossa voi olla yksi LSTM-solu, joka aktivoituu ja säilöö luvun, joka kertoo, että nyt ollaan sulkujen sisällä, ja toiseen muuttujaan luvun, joka laskee, kuinka monta merkkiä on kulunut avaavasta sulkeesta. Vaatimaton syväoppimislaboratorioni: Asus GeForce GTX 1070 STRIX -näytönohjain, Intel Core i7-6700 -suoritin, 16 Gt DDR4 RAM-muistia, 2 Tt kiintolevy Linuxille, 1 Tt kiintolevy Windowsille ja 2 Tt jaettu kiintolevy. Lisäsin myös kappaleenvaihdot sopiviin väleihin. Seuraavassa iteraatiossa kun sulkusolu huomaa, että sulkeva sulku tuli tulostettua, se osaa nollata omat sisäiset muuttujansa. Lopuksi lasketaan, mihin suuntaan verkon painokertoimia tulisi säätää, jotta virhe pienenisi, päivitetään painokertoimet, ja prosessi toistetaan. Näille kerrotaan haluttu verkon arkkitehtuuri, optimoitava funktio ja käytettävä koulutusalgoritmi, ja verkko kouluttuu automaattisesti suoraan GPU:lla. Vinkkejä aloittelijalle Neuroverkkojen harrastaminen on nykyään helppoa. Aivan viime vuosina on ilmaantunut uusia helppokäyttöisiä neuroverkkokirjastoja nopeammin kuin uusia web-sovelluskehyksiä Javascriptille. Kokonaisuus on siis omituinen palapeli erilaisia komponentteja. Ennustusten laatu mitataan ristientropialla datan todellisiin jakaumiin. Ehkä toinen LSTM-solu muistaa kuitenkin, että nyt ollaan sanan sisällä. maailman kartta vääristyy, kun se kuvataan pallon pinnalta suorakaiteen muotoiselle kaksiulotteiselle kartalle. Yksinkertaisen mallin määrittely, koulutus ja käyttö mahtuu alle kahteenkymmeneen riviin Pythonia. Verkko on ehkä oppinut, että keskelle sanaa ei saa tulla sulkua, joten se kirjoittaa ensin sanan loppuun ja sitten vasta sulkee sulut. Tämän ulostulo on kytketty viimeiseen kerrokseen, joka kuvaa sen todennäköisyysjakaumaksi seuraavalle merkille. Valikoimassa on muun muassa Googlen TensorFlow, Facebookin Torch, Microsoftin CNTK ja Berkeleyn yliopiston Caffe. Lopuksi arvotaan seuraava merkki ennustetusta todennäköisyysjakaumasta. Kuva 4
Kannattaa määritellä funktio, joka laskee oppimisnopeutta hiljalleen koulutuksen edetessä. Optimointifunktioita on tarjolla iso liuta, ja uusia tulee joka vuosi. Verkon kouluttamisvaiheessa tärkeitä ovat parametrit epochs ja batch_size. Ei ole hyvä olettaa liikaa asioita, vaan kannattaa testata olettamukset aina käytännössä. On yleistä kirjoittaa skripti, joka kokeilee automaattisesti ison joukon eri optimointifunktiota ja muita parametreja, ja ajaa vaikka yön yli. Näiden lisäksi on vielä suuri joukko parametreja, joille Keras antaa järkevät oletusarvot automaattisesti. Koulutusta optimoidessa kannattaa katsoa vielä ainakin oppimisnopeus (learning rate), eli kuinka paljon verkon painokertoimia säädetään erien välissä. Listauksessa 1 on Kerasilla toteutettu yksinkertainen Python-ohjelma, joka kouluttaa verkon, joka tunnistaa käsinkirjoitetut numerot oikein noin 93 prosentin tarkkuudella. import keras from keras.models import Sequential from keras.layers import Dense n_rows, n_cols = 28, 28 # Kuvien korkeus ja leveys pikseleinä pictures = read_pictures(“train-images-idx3-ubyte”) labels = read_labels(“train-labels-idx1-ubyte”) test_set = read_pictures(“t10k-images-idx3-ubyte”) test_labels = read_labels(“t10k-labels-idx1-ubyte”) model = Sequential() model.add(Dense(12, input_dim=n_rows*n_cols, activation=’relu’)) model.add(Dense(8, activation=’relu’)) model.add(Dense(10, activation=’softmax’)) model.compile(loss=’categorical_crossentropy’, optimizer=’adam’, metrics=[‘accuracy’]) one_hot_labels = keras.utils.to_categorical(labels,num_classes=10) model.fit(pictures, one_hot_labels, epochs=2, batch_size=10, verbose=2) keras.utils.to_categorical(test_labels, num_classes=10))) predictions = model.predict(test_set) Listaus 1. Loss-funktio mittaa verkon laatua, ja ristientropia on hyvä valinta tähän. Painokertoimien säätö tapahtuu erien välissä. Onnistumiseen ei tarvita tohtorin tutkintoa neuroverkoista – systemaattinen kokeilu ja kärsivällisyys riittää. Alkeellinen numerontunnistusverkko Pythonilla käyttäen Keras-kirjastoa. Toisaalta yllättävänkin pienet säädöt oikeisiin parametreihin saattavat aiheuttaa suuriakin muutoksia. Kouluttaminen saattaa toimia vastoin intuitiota, ja tärkeältä tuntuva parametri saattaakin olla lähes yhdentekevä lopputuloksen kannalta. Kerrokset ovat Dense-luokan olioita, mikä tarkoittaa, että jokaisen kerroksen neuronit ovat yhteydessä kaikkiin edellisen kerroksen neuroneihin. Yleisimmät vaihtoehdot ovat ”relu”, ”sigmoid” tai ”tanh”. Softmax on käytössä myös Skrolli-artikkelin generoineen verkon viimeisessä kerroksessa. Aiemmin ajateltiin, että sigmoidi mallintaa ihmisen aivojen neuroneita parhaiten, mutta nykyisin ollaan sitä mieltä, että relu on ehkä sittenkin parempi malli, ja se toimii myös hyvin käytännössä. Jokaisen kerroksen jälkeen tulee niin sanottu aktivaatiofunktio, jonka on tarkoitus saada verkko käyttäytymään epälineaarisemmin. Valikoimassa on myös softmax-niminen aktivaatiofunktio, joka kuvaa kerroksen numerot todennäköisyysjakaumaksi, joka on hyödyllinen verkon viimeisessä kerroksessa. Mitä vähemmän dataa on, sitä enemmän epookkeja yleensä tarvitaan. Kaikki nämä toimivat, ja kysymys siitä, mikä on paras, jakaa edelleen mielipiteitä, mutta nykyään suositellaan relutyyppistä aktivaatiota. Liian pieni arvo saattaa jäädä jumiin paikalliseen minimiin, kun taas liian suuri saattaa harppoa ympäriinsä tarpeettoman suurin askelin, jolloin hienosäätö jää tekemättä. Kuva 5. Parametrien säätäminen on sekä tiedettä että taidetta. Neuvoni tähän on, että kokeile vain erilaisia ja valitse paras. MNIST-numeroaineiston luokittelu on hyvä tapa päästä alkuun neuroverkkojen parissa. Neuroverkkojen ”Hello World” -ohjelma on verkko, joka tunnistaa käsin kirjoitettuja numeroita. Suurempi eräkoko rinnakkaistuu paremmin näytönohjaimella, mutta pienempi saattaa antaa parempia tuloksia. Ensimmäinen määrää, kuinka monta kertaa koulutusdata ajetaan verkon läpi, ja toinen kuinka suurissa erissä syötettä luetaan. Tähän on saatavilla testiksi laadukas julkinen MNIST-tietoaineisto (dataset), jossa on 70 000 nimikoitua käsin kirjoitettua numeroa. Verkossa on syötteen lisäksi kolme kerrosta, joissa on 12, 8 ja 10 neuronia, joista viimeisen kerroksen jokainen neuroni edustaa yhtä numeroa. Vaikka Keras on jo hyvin korkean tason kirjasto, siinä on silti muutamia parametreja, jotka joutuu valitsemaan. Funktiot read_pictures ja read_labels on jätetty pois tilan säästämiseksi, mutta löydät ne Skrollin verkkojatkoilta: skrolli.fi/numerot. Neuroverkot Skrollissa Aikaisempia artikkeleitamme neuroverkoista: • Koneaivoa takomassa – Neuroverkkojen mysteerit auki (Skrolli 2015.3) • Neuroverkko taidemaalarina (Skrolli 2016.2) • Go-tekoäly (Skrolli 2016.2) • Kohti ihmismäistä älykkyyttä ja sen yli – AlphaGo (Skrolli 2017.4) • Väittely robottiautoista kiihtyy (Skrolli 2018.2) Pdf-lehdet: skrolli.fi/numerot 9
Kuuluisimpana esimerkkinä IBM Deep Blue -tietokone voitti mestari Garry Kasparovin shakissa vuonna 1997. Haut ja neuroverkot hyötyivät siitä mistä grafiikkakin: reippaasta muistinkäsittelystä ja massiivisesta rinnakkaislaskennasta. Kun IBM 82 -lajittelutietokone laitettiin päälle, odottelimme minuutin verran. Ensimmäiset GPU:t olivat kaksiulotteisen grafiikan liikutteluun eli muistialueiden siirtelyyn ja manipulointiin erikoistuneita mikropiirejä. CPU:sta kehittyikin laskukone, joka suoritti laskujen sarjaa eli tietokoneohjelmaa alati nopeammin. Kun Watson rakensi ensimmäistä tietokonettaan, tyhjiöputket oli korvannut seuraava uutuus: transistori. Esimerkiksi valonsäteiden laskenta eli säteenseuranta on yksi niin sanotuista kiusallisen tai täydellisen rinnakkaisista ongelmista. GPU:ta alettiin käyttämään ”väärin” syöttämällä sille grafiikaksi naamioitua koodia. 1990-luvulla yleistyi grafiikan lisäksi myös toinen rinnakkaisen laskennan muoto: symbolinen eli algoritmipohjainen tekoäly. Skrollin museobussi (ks. Skalaari-CPU Kun aloitin oman kotitietokoneharrastukseni 1980-luvun puolivälissä, nämä kytkimet – jotka Jyväskylässä veivät seinän ja Watsonilla kaapillisen piirilevyjä – oli pakattu suklaapalan kokoisille mikropiireille. Niinpä CPU:n rinnalle kehitettiin grafiikkaprosessori eli GPU (graphics processing unit). CPU:n, jollaisen Watson vielä rakensi itse, oli ensitietokoneeni valmistaja ostanut valmiina (tosin omistamaltaan yritykseltä). Deep Blue suoritti alfa-beta-karsinta-algoritmilla valtavia määriä rinnakkaisia hakuja löytääkseen parhaan siirron. Toisin kuin klassiset tietokoneohjelmat, jotka perustuivat peräkkäisiin laskutoimituksiin, grafiikan tuottaminen vaati erilaisia taitoja – esimerkiksi suurten muistimäärien siirtelyä, kun kuva liikkui ruudulla. Emme ohjelmiston latautumista, vaan koneen lämpenemistä. Tässä Skrollissa aloitamme amerikkalaisen Joseph Watsonin jatkokertomuksen (s. Sähköautovalmistaja Tesla julkaisi itseajamiseen tähtäävän Autopilot 2 Teslan tekoälyjohtaja Andrej Karpathy on kutsunut neuroverkkoihin ja koneoppimiseen perustuvaa ohjelmistokehitystä software 2.0:ksi. Varhaisia tietokoneita käytettiin laskentaan. Samaan aikaan koneoppimiseen eli keinotekoisiin neuroverkkoihin perustuva tekoälykehitys nytkähti eteenpäin. Skrolli 2018.4) pysähtyi muun muassa Jyväskylän tietokonemuseossa, jossa on useita seinän kokoisia tietokonevanhuksia 1900-luvulta. Vektori-GPU Kolmiulotteinen grafiikka toi seuraavan tarpeen: rinnakkaislaskennan. CPU:n sisältä löytyivät silti samat käsitteet kuin Watsoniltakin: loogiset portit, rekisterit, viittaukset muistiin, konekielikäskyt. Tällaiset ongelmat jakautuvat luonnostaan useiksi irrallisiksi ja samanaikaisiksi laskutoimituksiksi. Samalla rautakin menee uusiksi – vai meneekö. IBM 82 lajitteli reikäkortteja 13 lokeroon ja sähkömekaaniset releet oli korvattu tyhjiöputkilla, jotta tämä tapahtuisi nopeammin. Kun Watson kasasi tietokoneensa, hän toteutti sen piirilevyille transistori kerrallaan. Ennen GPU:ita vektoriprosessorit olivat olleet harvinaisia erikoispiirejä – nykyisin jopa CPU:t sisältävät vaatimattoman vektorilaskentayksikön. 2000-luvulle tultaessa tietoverkkojen tietomäärät nostivat hakukyvyt entistäkin suurempaan arvoon. 1980-luvun edetessä tietotekniikan visuaalisen ulosannin merkitys kuitenkin kasvoi ja CPU sai yhä useammin tehtäväkseen luoda myös grafiikkaa. Niinpä GPU:t pätevöityivät rinnakkaislaskemaan esimerkiksi varjoja. Niistä kytkimistä – releistä, tyhjiöputkista ja transistoreista – rakennettiin loogisia portteja ja logiikkapiirejä, joista muodostui tietotekniikan peruskokonaisuus. 56) siitä, millaista oli oppia tietokoneista 1960-luvun alkupuoliskolla. Rele ja sittemmin tyhjiöputki toimii kytkimenä, joka on tietotekniikan peruskomponentti. 82-mallissa (1949) oli nimittäin aikansa uutuus: sähkömekaaniset releet oli korvattu tyhjiöputkilla. Näitä nähtiin esimerkiksi Amigassa ja Windows-kiihdyttimissä. Watson rakensi muun muassa oman prosessorin eli CPU:n (central processing unit), joka suoritti yksinkertaisia käskyjä. Janne Sirén Rauta 2.0 2019.1 10. Transistorit olivat vieläkin nopeampia, eikä niitä tarvinnut lämmitellä. GPU:t ovat käytännössä vektoritai taulukkoprosessoreita, jotka suorittavat laskuoperaation usealle arvolle kerrallaan. 1990-luvulta alkaen GPU-valmistajat panostivat myös kolmiulotteisen grafiikan tuottamiseen. Tällaisia suorittimia kutsutaan skalaariprosessoreiksi, koska ne laskevat yhtä arvoa kerrallaan. KOLUMNI T eimme viime syksynä Skrolliryhmämatkan tietotekniikan historiaan
CPU pyörittää automaattiohjausalgoritmia ja GPU suorittaa konenäön neuroverkkolaskentaa. Sanoilla on rikas merkitys myös matematiikassa. Yhtiö on pakannut näitä podeiksi datakeskuksiinsa ja vuokraa laskenta-aikaa Cloud TPU -pilvipalveluna. Samat laskut voisi silti suorittaa vaikka 1960-luvun skalaariprosessorilla. Laskentaan liittyy erityispiirteitä myös muistinja rekisterinkäsittelyn optimoinnissa. GPU-valmistaja Nvidia markkinoikin piirejään myös tällaisiin tarkoituksiin, eikä käsintehtyä naamiointia grafiikkalaskennaksi enää nykyisin tarvita. GPU:n ”väärinkäytöllä” on kyllä edelleen oma suorituskykyhintansa, mutta GPU on silti tässä paljon CPU:ta tehokkaampi. Neuroverkkokeskustelussa tensori on kuitenkin yksinkertaisempi. Patentin mukaan myös TRIPin keskiössä on matriisilaskuri. Nyt vain tarpeen mukaan pienempinä tai suurempina kerta-annoksina.. Tähän Skrolliin artikkelin (s. Kuvassa minulla on tensorin visualisointi ”kädessäni”. Se on varustettu ARM-pohjaisella CPU:lla ja Nvidian Pascal-arkkitehtuurin GPU:lla, vaikka grafiikkaa tai näyttöä ei ole. Teslan odotetaan korvaavan Autopilot-järjestelmänsä GPU:t näillä TRIPeillä. Tensori on siis kokoelma numeroita, joita neuroverkkolaskennassa lyödään yhteen toisten numerokokoelmien kanssa – puhutaan tensorien virrasta (tensor flow, Googlen ohjelmistokehyksen mukaan). Siinä missä GPU:n vektoriprosessorit käsittelevät käytännössä yksiulotteisia taulukoita, neuroverkkojen yhteydessä pyöritellään runsaasti matriiseja eli kaksiulotteisia taulukoita sekä useampiulotteisia taulukoita – näitä kutsutaan yleisnimellä tensori. 4) kirjoittanut neuroverkko pyöri myös Nvidian Pascal-arkkitehtuurin näytönohjaimella. Tensori-TPU Neuroverkkolaskenta poikkeaa kuitenkin grafiikasta muutenkin. Jos olit hereillä fysiikan tunneilla, muistat, että siellä skalaarilla oli suuruus, vektorilla suuruuden lisäksi suunta ja tensorilla mittaussuunnasta riippuva suuruus. Google kutsuu suoritintaan TPU:ksi (tensor processing unit) ja sen matriisilaskuria nimellä MXU (matrix multiplier unit). Moderni vektoriprosessori tekee sen nopeammin ja tensorisuoritin vieläkin nopeammin, mutta pohjimmiltaan tietokoneet pallottelevat edelleen numeroita konekielikäskyjen, rekisterien ja muistin välillä. C M Y CM MY CY CMY K Skrolli_puolisivua_paino.pdf 1 11.2.2019 15.48.20 -tietokoneensa vuonna 2016. Se on lähinnä moniulotteinen taulukko: skalaari on ”nollaulotteinen” tensori, vektori on yksiulotteinen tensori, matriisi on kaksiulotteinen tensori ja loput ovat nulotteisia tensoreita. Niinpä esimerkiksi Google ja Tesla ovat kehittäneet omat matriisitai tensorisuorittimensa, jotka loistavat näissä erityispiirteissä, kuten matriisien kertolaskussa. Hakkerit ovat päätelleet Teslan puolestaan kutsuvan omaa prosessoriaan nimellä TRIP – senkin alkukirjain viitannee tensoriin
Ehkä tärkein trendi taustalla on laskentakapasiteetin kasvaminen. Toinen vaara on, että verkko sopeutuu liian hyvin opetusdataan, eikä siitä ole hyötyä, kun sille näytetään dataa, jota se ei ole ennen nähnyt. Asenteet alkoivat muuttua, kun Alex Krizhevskyn suunnittelema syvä konvolutiivinen AlexNet-verkko voitti vuosittain järjestettävän ImageNet-haasteen. Neuroverkkoja voidaan kouluttaa hyvin rinnakkaislaskennalla, ja ne skaalautuvat erinomaisesti laskentatehon ja tietoaineiston koon kanssa. Haasteen aineisto on 14 miljoonan kuvan tietokanta, jossa jokaiselle kuvalle on annettu käsin tehty lista siinä esiintyvistä esineistä. Ei ole kuitenkaan mitään takeita, että tällainen optimointi johtaa mihinkään järkevään lopputulokseen. Syvissä verkoissa Jos syvien neuroverkkojen käsite on ollut olemassa jo pitkään, niin miksi läpimurto tapahtui vasta 2012. Teksti: Jarno Niklas Alanko Kuva: Toni Kortelahti TEKNIIKKA T ekoäly on uusi sähkö, julistaa Suomen työja elinkeinoministeriön Tekoälyaika-raportti. Verkot koulutetaan yleensä stochastic gradient descent -menetelmällä (SGD), joka säätää verkon parametreja vähitellen siihen suuntaan, joka parantaa verkkoa eniten suhteessa opetusdataan. Vaarana on, että verkko jää paikalliseen minimiin, jossa mikään pieni säätö ei enää paranna sitä, mutta huomaamatta jää, että suuremmalla uudelleenjärjestelyllä päästäisiin vielä paljon parempaan lopputulokseen. AlexNet voitti ensimmäisenä neuroverkkona vuoden 2012 kilpailun liput liehuen, ja yhtäkkiä syväoppiminen vaikutti taas lupaavalta. Toinen syy neuroverkkojen aiempaan epäsuosioon oli yksinkertaisesti tutkijoiden yleinen asenne, että syvän verkon opetus on mahdotonta. Tehtävänä on suunnitella algoritmi, joka pystyy luomaan vastaavan listan pelkästään kuvien pohjalta. Uusi tutkimus on kuitenkin osoittanut, että SGD ja sen variaatiot voivat toimia hyvin käytännössä myös syvillä verkoilla. Tekoälyyn keskittyviä kasvuyrityksiä ilmaantuu kuin sieniä sateella, ja Suomea halutaan viedä tekoälyn soveltajien kärkimaaksi. Vielä 2010-luvulle asti ajateltiin, että vaikka syvät neuroverkot ovat teoriassa valtavan ilmaisuvoimaisia, niiden kouluttaminen on aivan liian vaikeaa. Innostus juontaa juurensa siitä, että neuroverkot, ja nimenomaan syvät sellaiset, ovat vihdoinkin alkaneet lunastaa lupauksiaan. Kuuluisa Mooren laki ennustaa, että suorittimien teho tuplaantuu noin kahden vuoden välein. Menetelmä on taas tapetilla – onko nyt kaikki toisin. Näin olikin pitkään, mutta nykyisin fysiikan rajat ovat tulleet vastaan, ja kehitys junnaa melkein paikallaan perinteisten sarjalaskentaan kehitettyjen suorittimien osalta. Sen sijaan rinnakkaiset suorittimet kuten näytönohjaimet ja uudet tensorisuorittimet kehittyvät edelleen huikealla nopeudella. Tämä oli odottamaton tulos, 2019.1 12. Neuroverkot ovat tulleet muotiin ja hiipuneet pois muutaman vuosikymmenen syklillä. Äly hoi – tekoäly tekee tuloaan Neuroverkot eivät ole uusi keksintö: menetelmä on ollut olemassa jo melkein yhtä kauan kuin elektroniset tietokoneet
Tällä kertaa Kominczilla oli ollut hyvin aikaa valmistautua otteluun etukäteen. Pelit ovat olleet aina tekoälykehityksen keskiössä, koska ne ovat tarkoin määriteltyjä ja rajattuja ja niissä on helposti määriteltävä tavoite. Wünschin puolustukseksi hän joutui pelaamaan AlphaStarin rajoitteiden takia rodulla, jolla ei yleensä pelaa. Komincz iski takaisin DeepMindin live-streamissa, jossa hän pelasi jälleen uutta agenttia vastaan. Starcraft on ratkottu, vai onko. Tyypillisesti peleissä on myös piilotettua informaatiota. 13. Tavoitteena olisi tehdä botti, joka osaa soveltaa oppimiansa asioita uusiin samankaltaisiin tilanteisiin. Peliä on pitkään pidetty liian vaikeana haasteena tekoälylle, mutta tammikuussa 2019 tilanne muuttui, kun Googlen DeepMind julkaisi uusimman luomuksensa: AlphaStar-niminen Starcraft II -tekoäly. AlexNet näytti, että syväoppimisella on vielä toivoa, mutta sittemmin Imagenet-kisan tulokset ovat parantuneet huomattavasti vuosi vuodelta, ja voittajien verkot ovat olleet entistä syvempiä ja monimutkaisempia. Pelit keskiössä Kuvantunnistuksen ohella toinen merkittävä tekoälyn kehitysalusta on ollut erilaiset pelit. Ongelmia joilla on väliä Pelien pelaaminen on kuitenkin vain välietappi matkalla kohti oikeasti suuria oikean maailman ongelmia. Botti ei osannut sopeutua tilanteeseen, joka ei ollut sille ennestään tuttu. Googlen AlphaGo-tekoälyn voitto maailmanluokan ihmispelaajaa vastaan (ks. Kaikissa näissä on menty jo hurjasti eteenpäin lähivuosina. Näitä versioita kutsutaan agenteiksi. Bottia oli rajoitettu niin, että se saa tehdä vain likimain saman verran toimintoja sekunnissa kuin parhaat ihmispelaajat, jotta voitto ei tulisi pelkästä yli-inhimillisen tehokkaasta hiiren ja näppäimistön käytöstä. Ottelu saatiin järjestettyä lyhyellä varoitusajalla, ja agenttien koulutusta jatkettiin otteluita odotellessa. Tällaisissa peleissä mahdollisten toimintojen määrä ja pelin pituus ovat aivan eri suuruusluokkaa kuin lautapeleissä. Agentteja ohjataan erikoistumaan eri strategioihin. Kukaan ihmispelaaja ei olisi toistanut samaa virhettä uudestaan ja uudestaan samassa asemassa. IBM:n Deep Bluelle 1 kuuluisasti hävinnyt shakkimestari Garry Kasparov kommentoi, että Googlen tekoälyn pelityyli muistuttaa hänen omaansa. Wünsch onnistui voittamaan joitain pieniä taisteluja, mutta botti rankaisi kahta kovemmin pienimmästäkin virheestä. Agenttien voitto näytti perustuvan enimmäkseen erittäin tarkkaan yksittäisten yksiköiden käsittelyyn. Pelissä rakennetaan omaa tukikohtaa ja yritetään rakentaa armeija, jolla tuhota vihollisen tukikohta. Starcraft II -läpimurto Starcraft II on reaaliaikainen strategiapeli, kuten Age of Empires, mutta teemana on futuristiset avaruusrodut. Osoittautui, että menetelmästä on muuhunkin kuin kuvien luokitteluun. Ensimmäisenä haasteena AlphaStar kohtasi keskivahvan ammattipelaajan, saksalaisen Dario ”TLO” Wünschin. Tekoäly juoksutti omia joukkojaan takaisin tukikohtaan puolustamaan, jolloin Komincz poimi hyökkäysjoukkonsa takaisin talteen. Uudet parannetut agentit olivat jo selvästi vahvempia ja voittivat Kominczin vaikuttavasti lukemin 5–0. AlphaStar koulutettiin peluuttamalla sen eri versioita itseänsä vastaan. Skrollit 2016.2 ja 2017.4) järisytti sekä tiedeettä go-maailmaa ja toi roimasti lisää uskottavuutta syväoppimiselle. DOTA 2 -pelissä tekoäly lähestyy jo parhaiden ihmisten tasoa. Ihmiset ovat tässä luonnostaan hyviä, mutta botit kompastelevat edelleen. Agentit pelaavat toisiaan vastaan virtuaalisessa liigassa, ja parhaiten pärjänneet agentit pääsevät seuraavalle kierrokselle. Ja taas se nähtiin: botti ei olekaan oikeasti älykäs. Shakkimestarit ovat vuosikymmeniä jo yrittäneet matkia perinteisten bottien erikoista pelityyliä, mutta saattaa olla, että ihmismäinen intuitiivisen näköinen tyyli on sittenkin parempi! Seuraava askel tekoälyille pelien saralla on modernit tietokonepelit, kuten DOTA 2. Jotkut saattavat hioa strategiaa, joka tähtää aikaiseen tyrmäysvoittoon, kun taas toiset saattavat keskittyä puolustukseen ja pitkiin peleihin. Yksi vastaan yksi -ottelussa tekoäly voi voittaa jo parhaita ihmisiä, mutta normaalissa 1 Nimestä huolimatta Deep Bluella ei ole mitään tekemistä syväoppimisen kanssa. Komincz rakensi aluksen, jolla hän pystyi tiputtamaan joukkojaan suoraan botin tukikohdan perälle, eikä botti osannut puolustautua tätä vastaan. Siinä missä shakissa pelataan yhtä hyvin määriteltyä positiota vastaan, piilotetun informaation pelissä pelataan kaikkia mahdollisia positioita vastaan yhtä aikaa. Jokaisessa pelissä oli käytössä eri agentti, joten Wünschin oli hankala saada otetta vastustajansa pelityylistä. Bottien strategioista on kuitenkin löydetty aukkoja, joita hyödyntämällä voi nähdä, että älykkäältä vaikuttavan agentin naamion takaa paljastuukin edelleen tyhmä botti, joka lankeaa samoihin ansoihin kerta toisensa jälkeen. Modernit tietokonepelit on niin monimutkaisia, että botti ei voi varautua kaikkiin mahdollisiin tilanteisiin etukäteen. Voitosta rohkaistuneena DeepMind otti yhteyttä maailman kärkeen kuuluvaan puolalaiseen Grzegorz ”MaNa” Komincziin, joka myös pelaa AlphaStarin osaamaa rotua. Sittemmin DeepMind on kouluttanut myös syväoppineen shakkitekoälyn, joka saa vahvimmat perinteiset botit näyttämään avuttomilta amatööreiltä. suorastaan pieni ihme. Tässä korostuu tekoälytutkimuksen suuri haaste. Pelissä voi pelata kolmella eri rodulla, mutta AlphaStar osaa pelata vasta yhdellä niistä, ja ainoastaan samaa rotua vastaan. Botti veti joukkonsa ulos tukikohdasta, ja Komincz pystyi taas tiputtamaan omat joukkonsa tukikohdan perälle, ja tämä toistui. 60 kertaa sekunnissa päivittyvää peliä voidaan ajatella pelinä, jossa tehdään 60 ”vuoroa” sekunnissa, ja jokaisella vuorolla on tuhansia mahdollisia erilaisia toimintoja. AlphaStar vei ottelun vakuuttavasti lukemin 5–0. viisi vastaan viisi -ottelussa artikkelin kirjoitushetkellä ihmiset voittavat koneet vielä, mutta marginaali ei ole valtavan suuri. Näitä ongelmia ovat kuvantunnistuksen lisäksi muun muassa puheen tunnistus ja syntetisointi, kielen kääntäminen ja proteiinien laskostumisen ennustaminen. Uudessa agentissa oli mallinnettu myös pelin kameran liikuttaminen, jotta agentti ei voi saada epäreilua etua ihmisiin nähden vaihtamalla kuvakulmaa 100 kertaa sekunnissa
Tässä kohtaa neuroverkkojen koulutuksen vetojuhdat, SGD-algoritmi ja sen variaatiot, lakkaavat toimimasta hyvin, koska niille on hyvin vaikeaa oppia pitkän aikavälin riippuvuuksia kunnolla. Rekurrentit verkot eli verkot, jotka syöttävät tulosteensa myös takaisin itseensä, ovat kasvattaneet suosiotaan. Uuden sukupolven neuroverkot Uusien menestystarinoiden myötä syvien neuroverkkojen tutkimukseen on syydetty valtavasti rahaa ja resursseja. Nämä verkot ovat niin ilmaisuvoimaisia, että ne ovat itse asiassa Turingtäydellisiä, eli niillä voi ajaa mitä vain algoritmia, jota tietokoneella voi ylipäätään ajaa. Andrej Karpathyn LSTM-neuroverkon generoima C-kielen funktio Linux-kernelin koodin pohjalta. Tekoäly ei sovellu kaikkeen, eikä sitä tarvitsekaan tyrkyttää paikkoihin, jossa olemassa olevat tekniikat toimivat jo moitteetta. Pianomusiikilla koulutettuna verkko pystyy myös luomaan pianomusiikkia, vaikkakin hyvin sekavaa sellaista. Iltapäivälehdet osuvat kultasuoneen, kun julkisuuden henkilöistä alkaa yllättäen ilmaantua kiusallista videomateriaalia. Googlen DeepMind pyyhki taas kilpailijoillaan pöytää voittamalla joka toinen vuosi pidettävän CASP-kilpailun syvällä neuroverkolla. Elon Muskin ja Sam Altmanin perustama OpenAI-yhdistys taas väittää pitävänsä hallussa tekstingenerointiverkkoa, joka on niin hyvä, että sitä ei voi julkaista väärinkäytöksien pelossa. Potentiaali on lähes rajaton: mistä löytää hyvät painokertoimet. Kilpailuun osallistuu yli sata tutkimusryhmää ympäri maailmaa, ja ongelmaa on tutkittu aktiivisesti jo vuosikymmeniä – kilpailun voitto uutena tulokkaana on erittäin vakuuttava saavutus. Oikeissa tehtävissä ongelma ei välttämättä ole hyvin määritelty. Mitä saa tehdä ja mitä ei. Käytetään sitä viisaasti. 2019.1 14. Millainen ratkaisu lasketaan ongelman ratkaisuksi. Näitä käyttämällä on saatu neuroverkko matkimaan esimerkiksi Shakespearen näytelmien tekstiä ja Linuxin ytimen koodia. Tekoäly ei ole uusi sähkö, vaan pikemmin uusi kiinnostava työkalu vanhojen ohelle. Lähitulevaisuudessa saattaa jo ilmaantua syväväärennettyjä videoita, joita ei erota aidosta, mikä nostaa valeuutisen käsitteen aivan uudelle tasolle. Järki käteen Vaikka pelit alkavat taipua jo tekoälyltä, tekoälyaika on vielä kaukana. Joskus jopa yhden pikselin muuttaminen saattaa riittää. Tekoäly ei ole automaattinen ratkaisu. Ei siis nuotteja, vaan suoraan näytteistettyä aaltomuotoa, näyte kerrallaan. Proteiinien laskostumisen ennustaminen on ongelma, jonka tehokas ratkaisu mullistaisi lääketeollisuuden. Vaikka neuroverkot toimivat erityisen hyvin kuvien tunnistamisessa, niitä on helppo huijata. Yksi ratkaisu on LSTMsolut (long short term memory), jotka helpottavat koulutusta jonkin verran. Vaikka ihminen pystyy tunnistamaan videon väärennetyksi helposti, jos katsoo edes vähän tarkemmin, moni sosiaalisessa mediassa silti uskoi sen. Voidaan ajatella, painokertoimet muodostavat erittäin esoteerisen ohjelmointikielen, jolla voi periaatteessa tehdä mitä vain. DeepMindin hiljattain julkaisema WaveNet-verkko pystyy luomaan jo uskottavan kuuloista puhetta tekstin pohjalta. Generative Adversarial Network (GAN) -menetelmä perustuu siihen, että yksi verkko yrittää huijata toista ja toinen yrittää pärjätä sitä vastaan parhaansa mukaan. Verkkoja koulutetaan yhdessä siten, että toinen verkko oppii koko ajan paremmaksi huijaajaksi ja toinen entistä vaikeammin huijattavammaksi. */ static void action_new_function(struct s_stat_info *wb) { unsigned long flags; int lel_idx_bit = e->edd, *sys & ~((unsigned long) *FIRST_COMPAT); buf[0] = 0xFFFFFFFF & (bit << 4); min(inc, slist->bytes); printk(KERN_WARNING “Memory allocated %02x/%02x, “ “original MLL instead\n”), min(min(multi_run s->len, max) * num_data_in), frame_pos, sz + first_seg ); div_u64_w(val, inb_p); spin_unlock(&disk->queue_lock); mutex_unlock(&s->sock->mutex); mutex_unlock(&func->mutex); return disassemble(info->pending_bh); } Listaus 1. /* * If this error is set, we will need anything right after that BSD. Tekoälyn tapauksessa ongelma on mallinnettu tekoälylle valmiiksi, mutta mitä jos mallinnus on tehty huonosti. Koodi ei tosin käänny, koska se saattaa esimerkiksi käyttää muuttujia, joita se ei ole luonut. Muuttamalla kuvan pikseleiden arvoja siten, että ihminen ei edes huomaa sitä, on mahdollista saada neuroverkko luulemaan koulubussia strutsiksi. Jälkimmäisessä tapauksessa verkko kirjoittaa lähdekoodia, joka alkaa GNU-lisenssillä, sitten tulee C-kielen #include-rivejä ja sen jälkeen funktiota, joissa on silmukoita ja ehtolauseita, joiden sisennys on vieläpä oikein, ihme kyllä. Tekniikka kehittyy nopeasti, mutta päättäjiä uhkaa vauhtisokeus. Verkon takaisinsyöttö mahdollistaa verkolle alkeellisen muistin, ja algoritmin ohjelmakoodi on esitettynä verkon kaarien painokertoimissa. Näitä palikoita yhdistelemällä voidaan rakentaa mitä monimutkaisimpia verkkoarkkitehtuureja. Lähivuosina trendi on tuntunut olevan, että verkkoihin lisätään pieniä erikoispalikoita, jotka toimivat esimerkiksi muistina verkolle, oikovat signaaleiden kulkua kerrosten välillä tai ohjaavat verkon huomiota eri osiin syötteestä. GAN-menetelmällä on luotu muun muassa väärennetty video, jossa eräs presidentti puhuu ilmastotoimien puolesta. Verkon malli puheesta on niin hyvä, että se pystyy myös generoimaan tyhjästä hämmentävää mongerrusta, joka kuulostaa englannin kieleltä, vaikka siinä ei ole oikeita sanoja. Tämä on noloa neuroverkoille, mutta ongelma ei ole välttämättä ylistepääsemätön
1 Maataloustuottajat r.y. 1 Ylä-Suomen kk:n metsästysseura ry Keski-Pohjanmaan seudun tuki r.y. Kaikissa tapauksissa olen kouluttanut textgenrnn-kirjastolla toteutetun RNN-tyyppisen neuroverkon tuottamaan lisää samankaltaisia nimiä. 1 Jääpeikot r.y. 1 Pallo r.y. Teksti: Osma Suominen Kuvat: Kerttu Suominen 1.KASVIT 2. Jokaisen parin kohdalla valitse joko vaihtoehto tai 1, joka mielestäsi on aito. Kasvinimet ovat peräisin Kasvien suomenkieliset nimet -ontologiasta eli Kassusta (kassuontologia.net), joka on saatavilla Finto-palvelun kautta (Finto-palvelusta kerrottiin Neuroverkkovisa Neuroverkko generoi kasvien, kylien, yhdistysten ja demoproduktioiden nimiä. Näin syntyvän bittijonon voit tarkistaa vertaamalla sitä oikeaan vastaukseen, joka on esitetty heksadesimaalilukuna sivun alalaidassa. T unnistatko neuroverkon kädenjäljen. KYLÄT lannikanruusu 1 tuoksuvatukka kultasateet 1 keltosilokaktus pikkuvaahtera 1 köynnöskustaankukka vaahterahierakka 1 vaaleasulkakehto balanninsininit 1 sarsaparillakasvit kanarianvirna 1 keltikaktukset aurianalokantulisaniso 1 amerikanmuori kanariankrappi 1 sinililja Perttilänkylä 1 Kalalampi Kartikkala 1 Pihlainen Kantsi 1 Pertala Nuotala 1 Veitjoki Kylylänmäki 1 Rihu Pahloinen 1 rikkkulankylä Suorinen 1 Yltäkylä Sammaa 1 Aittula 3. nuorisojärjestö r.y. YHDISTYKSET 4. Skrolli-lehden numerossa 2016.2). Suomen kansan demokraattinen liiton Varturilan paikallisosasto ry 1 Ala-Varpasen hirvimiehet ry Kerberos ry 1 Naisten raittiusliiton Pohjois-Hakkalan osasto r.y. Loomy Solored #1 TORE 1 Kühlschränke Disco 64 1 Megastrawn #2 kerevorise 1 Inverse #11 new year demo 1993 1 Loom The The Light #3 XMAS 2010 1 Metalle The Shooter Gaycast 1 reality eomelent 2003 invitation digitalAngels 1 Leassion Anter Compo Intro 1 1700 Vas tau s: BA DA 55 A1 TEKNIIKKA 15. Demoproduktioiden nimet ovat Pouët-tietokannasta (pouet.net). Ohessa jokaisesta nimiparista yksi on aito ja toinen on algoritmin tuottama. Kylien nimet ovat peräisin Kotuksen digitoidusta nimiarkistosta, joka on julkaistu Nimisampo.fi-palvelussa. Valinnat on tehty satunnaisesti, eli algoritmin tuottamia nimiä ei ole mitenkään seulottu, koska silloin tehtävä voisi olla liian hankala. DEMOT Suomen kommunistisen puolueen Sieppijärven osasto r.y. Yhdistysten nimet ovat puolestaan Patenttija rekisterihallituksen verkkosivuilla vuonna 2016 julkaistusta listasta noin 40 000 yhdistyksestä, joita uhkasi rekisteristä poisto koska ne eivät olleet vuosiin tehneet ilmoituksia yhdistysrekisteriin. 1 Kinnulan Urpilan maamiesseura r.y. Suomen metsästysseura r.y. Suomen maaseudun puolueen Kouvolan kunnallisjärjestö r.y. Pystytkö erottamaan aidot ja tekaistut nimet toisistaan. Rannankylän nuorisoseura r.y. 1 Jyväskylän piirin sos.dem. Hankastuslaidon perustuslailliset r.y
Älykkään koneen tunnusmerkit Tekoäly – uhka vai mahdollisuus. Useimpien määrittely-yritysten mukaan älykkyyttä on kyky oppia ja selviytyä uusissa tilanteissa. Sille on opetettu joitakin temppuja, Mistä tunnistaa aidon älykkyyden. termit älykäs teknologia tai älykkäät järjestelmät eli smart systems kattavat laajasti monenlaiset teknologiat, jotka tekevät itsenäisiä arvioita ja päätöksiä). Koetin selittää hänelle, että äly voisi olla sitä, että puhelin tiedostaa ympäristöään ja mukautuu siihen, tai että puhelimen ohjelmistot kommunikoivat keskenään. KULTTUURI Ä lykkyys on niitä asioita, joista on olemassa paljon erilaisia määritelmiä. Se ei ehdota ruokia, joista en pidä tai joille olen allerginen. Tekoälyä on pian kaikkialla. Älykkyys liittyy myös lahjakkuuden eri lajeihin, jotka voivat olla sekä henkisiä että fyysisiä, kuten esimerkiksi tanssi. Teksti: Hannu Iskala Kuvat: Laura Loukola 2019.1 16. Myyjä ei ollut selvästikään varautunut kysymykseen, eikä puhelimen älykkyys todellakaan jäänyt epäselväksi. Koska olin ollut itse aiemmin töissä matkapuhelimia valmistavassa yrityksessä ja tehnyt opinnäytetyöni kontekstitietoisuudesta, en ollut kovin vaikuttunut. Nykyään äly on muotia. huom. Silmänkääntötemppuja Monesti jokin, mikä näyttää älykkäältä, heijastaa pikemminkin suunnittelijoidensa älyä. Saammeko joskus nähdä oikeasti älykkään koneen, vai onko se täällä jo. Mutta ovatko ne oikeasti älykkäitä. Testasin älypuhelimen myyjää. Mielestäni ei, älykkäästä teknologiasta huolimatta. Mutta onko se helppo tunnistaa. Sen sijaan, että ohjelma kertoisi, paljonko olen saanut kaloreita ja proteiinia, se kertoo mitä ruokia minun pitäisi vähentää tai lisätä ruokavaliooni. On erilaisia älylaitteita ja älykkäitä ohjelmistoja. Kysyin, mitä älykästä oli puhelimessa, josta olin kiinnostunut. Vuonna 2004 ideani oli soveltaa sumeaa logiikkaa ravintolaskentaan. Hän näytti miten puhelinta nostamalla ja kääntämällä eri ilmansuuntiin voi nähdä, mitä palveluja missäkin suunnassa on. Mutta onko se älykäs. Se käy läpi satoja sumeita sääntöjä ja käyttää geneettisiä algoritmeja ihanteellisen ruokavalion etsintään. Usein kyse on siitä, että laitteessa tai ohjelmistossa on käytetty jotakin älykästä teknologiaa (toim. Tässä on tietenkin alkeellista mukautuvuutta. Siihen liittyy myös kyky päätellä, suunnitella, soveltaa opittua, ratkaista ongelmia ja ajatella käsitteellisesti
Äly liittyy myös luovuuteen, mutta tekoälyn luovuus on rajallinen. Yksi tekoälyn tärkeä ominaisuus onkin metakognitio: kyky arvioida omaa toimintaansa ja siten myös taitojaan ja hyödyllisyyttään kussakin tehtävässä. Hän ei ymmärtänyt vitsejä, vaikka aiheutti usein tahattomasti koomisia tilanteita. Tietoisuutta on eri asteista. Entä ehkä maailman kuuluisin tekoäly, IBM:n Watson. Sen tietoisuus voi olla vähitellen kehittyvä. Jos onnistumisprosentti näyttää korkealta, se ”painaa nappia” ja saa vastata. TV-sarjassa Star Trek Data-niminen androidi sai luvan tehdä itseään koskevia päätöksiä (toisin sanoen sai ihmisoikeudet), koska hänen katsottiin olevan tunteva olento, joka on älykäs ja tietoinen. Ne ovat siis tietoisia itsestään. Se ymmärtää hyvin monimutkaisia kysymyslauseita ja pyrkii etsimään vastauksen alle kolmessa sekunnissa (kilpailijoille asetettu vastausaika). Data ei koskaan loukkaantunut ja oli yleensä oikeudenmukainen, avulias ja kohtelias. IBM:n Watson osaa arvioida löytämänsä vastauksen varmuutta, koska väärä vastaus vie pisteitä tietokilpailussa. Lisäksi se ymmärtää vain englantia, eikä ymmärrä kysymysten sisältöä ja merkitystä. Miksi. Jotkut robotit tunnistavat jo itsensä peilistä. Se ei ole oppiva, tietoinen itsestään tai ympäristöstä. Kun tarkastelemme Watsonin toimintatapaa, se on kaikkea muuta kuin älykäs. Onko se älykäs. Tärkeää on myös ymmärtää omat kykynsä ja kapasiteettinsa, omat vahvuudet ja rajoitukset. Esimerkiksi bakteerit, joilla ei ole edes aivoja, ovat vuorovaikutuksessa ympäristönsä kanssa eli ne näyttävät olevan tietoisia ympäristöstään. Tietoisuutta on tietoisuus ympäristöstä, tietoisuus itsestä (oma olemassaolo, ego) ja kognitiivinen tietoisuus. Koska se voi myös tunnistaa ihmisen tunteita ja matkia niitä, se voi olla inhimillinen. Pieni vauva alkaa pian syntymänsä jälkeen tehdä havaintoja, ja tämä tietoisuus ympäristöstä kehittyy koko ajan. Jos vastausvaihtoehtoja on useita, se asettaa ne järjestykseen. Sen kanssa voi kommunikoida vain kiinteän käyttöliittymän kautta, eikä se mukaudu ympäristöön ja käyttäjään. Myös nopeus ratkaisee: älykkäimmät ratkaisevat tehtävät nopeasti ja voivat siis annetussa ajassa tehdä niitä enemmän. Haluammeko sittenkään tekoälyä tai robottia, jolla on temperamentti. Watson on epäilemättä yksi edistysaskel matkalla tekoälyyn, mutta jopa sen kehittäjät ovat myöntäneet, että Watson ei ole älykäs. Mutta voiko tekoäly olla tietoinen. Esimerkiksi lentokoneen automaattiohjaus antaa toisinaan varoituksia. Nyt tietokone osaa jo säveltää. Tekoälystä kertovat elokuvat ja sarjat ovat paitsi inspiroivaa ajanvietettä, myös osittain realistista tulevaisuudenkuvaa. Sen suureen keskusmuistiin on ladattu valtava määrä tietoa tietosanakirjoista. Älykkäimmät myös huomaavat poikkeamia ja osaavat tehdä ennusteista edelleen myös malleja ja teorioita. Data oli ehkä siksi hyvä työtoveri, että androidilta ei odotetakaan täysin inhimillistä käytöstä. Datan työtoverit, Enterprise-aluksen miehistö, kehuvat Dataa inhimilliseksi työtoveriksi, toivoen olevansa yhtä tasapainoisia kuin hän. Mutta tämä on mahdollista myös oikeassa elämässä. Aikaisemmin mainitulla Datalla ei aluksi ollut tunteita, vaikka hänellä oli erilaisia ilmeitä hymystä hämmästykseen. Tietoisuus Singulariteetilla tarkoitetaan superälyä, jolla on tajunta ja mahdollisesti myös tunteet. Sophia-niminen robotti sai lokakuussa 2017 Saudi-Arabian kansalaisuuden 1 . Tätä kykyä älykkyystesti mittaa. Se laskee vanhetessa jonkin verran, mutta ikä otetaan laskennassa huomioon. Se riippuu siitä, miten tietoisuus määritellään ja mikä on tekoälyn tietoisuuden taso. Esimerkiksi autot ja lentokoneet tekevät jo monta asiaa ihan itsestään. Mutta hän halusi tulla yhä enemmän ihmisten kaltaiseksi. Sehän voitti ihmisen Jeopardy!tietokilpailussa ensimmäisen kerran vuonna 2011. Hyvän tekoälyn piirteitä Tärkeä ominaisuus tekoälyssä on kyky kommunikoida. Luonteva jatko niille molemmille olisi Ritari Ässä -tv-sarjan Kitt-auton tavoin puhuva tekoäly. Tietoisuudesta seuraa yleensä myös oikeus tehdä valintoja. mutta se ei tiedä, mitä se tekee. Kun oppimiskyky, muisti ja päättelykyky kasvaa, kehittyy kognitiivinen tietoisuus. Yksi selitys on, että testi on kulttuurivapaa: sen tarkoitus on olla testattavan taustasta, koulutuksesta ja ammatista riippumaton. Äly kasvaa vain siten, että osaa ratkaista yhä vaikeampia tehtäviä tai ongelmia yhä nopeammin, ja osaa myös soveltaa oppimaansa. Älykkyysosamäärä pysyy lähes samana koko iän. 1 TM: ”Saudi-Arabia myönsi ensimmäisenä maana kansalaisuuden robotille – ja kyseinen robotti kuittaili heti Elon Muskille”, tekniikanmaailma.fi/saudi-arabia-myonsiensimmaisena-maana-kansalaisuudenrobotille-ja-kyseinen-robotti-kuittaili-hetielon-muskille/ Kysymys tekoälyn tietoisuudesta ei välttämättä ole mustavalkoinen, niin että se joko on tai ei ole tietoinen. Joskus se taas toimii 17. Imartelu ei tehonnut häneen. Älykkäimmät osaavat laatia parempia ennusteita, sillä juuri tätä aivomme tekevät koko ajan. Rahalla saa molempia, mutta itse hakumenetelmä vaikuttaa tehottomalta. Tämä toimii myös toisinpäin: kun tietomäärän kasvaessa syntyy yhteyksiä aikaisempiin tietoihin ja tietojen luokittelu paranee, kyky päätellä ja suorittaa erilaisia tehtäviä kasvaa. Mutta on toinenkin selitys. Vastauksen haku perustuu suureen määrään muistia ja tehoa. Se soveltuu vain yhteen tehtävään. Vastaus riippuu siitä, miten määritellään tietoisuus. Älykkyystestissä käytetään niin sanottua kuviopäättelyä, jossa täytyy osata päätellä, miten tietty kuviosarja jatkuu. Älyä voidaan mitata älykkyystestillä, joka mittaa niin sanottua yleistä älykkyyttä. Mutta sen on vaikea keksiä uusia ratkaisuja uusiin ongelmiin, mikä taas on ihmiselle luontaista
Tietokoneohjelmat vanhenevat, kun tiedot tai niiden käyttötapa muuttuvat, eikä alkuperäisellä julkaisijalla ole enää resursseja niiden ylläpitoon. Kaikessa kommunikoinnissa on olennaista se, mitä tiedämme keskustelukumppanista: työ, koulutus, harrastukset ja myös yhteiset kokemukset. Mutta se ei mitenkään vähentäisi, vaan lisäisi erilaisten innovaatioiden tekemisen mahdollisuutta. Kun tietokone ymmärtää kieltä, mukaan lukien ajatuksen ja tarkoituksen sanojen takana, tästä seuraa, että se oppii helpommin muita kieliä ja osaa kääntää lauseita. Tekoäly voi tuoda ratkaisun tähänkin. Jos kumppani huomaa, että toinen osapuoli ei muista ihan itse hämmentäen lentäjiä, kun kyseessä on harvinainen vika tai kun lentäjien huomio on muualla. Näin se pystyy mukauttamaan omaa toimintaansa muuttuvissa olosuhteissa. Tekoäly käyttöjärjestelmänä tekisi uusien (älykkäiden) sovellusten suunnittelusta ja ylläpidosta helpompaa. Tietoa on paljon. Sujuva keskustelu tai vähintään suullisten tai kirjallisten ohjeiden vastaanotto ja palautteen antaminen onkin vähintä, mitä tekoälyltä voidaan edellyttää. lua. Se ei välttämättä korvaisi lentäjiä, mutta olisi eräänlainen ylimääräinen lentäjä lisäämässä lennon turvallisuutta. Puheentunnistuksen pitää kuitenkin kehittyä vielä, että se olisi luotettavaa. Uuden tiedon ja tietojenkäsittelyn menetelmien omaksuminen vaatii kykyä ottaa vastaan, käsitellä ja tallettaa mitä tahansa tietoa ja siten myös mahdollisuutta oman koodin ja tietokantojen lukemiseen ja kirjoittamiseen. Monet lukijat ovat varmaankin kokeilleet Windowsin vianetsintätyöka2019.1 18. Tietoisuus ympäristöstä voidaan jo nykyään toteuttaa erilaisilla antureilla ja laitteilla, kameroilla (kuvantunnistus) ja mikrofoneilla (äänenja puheentunnistus). Tekoäly vaatii laajan tietokannan, jota asiantuntijat ja se itse päivittävät jatkuvasti. On tietoa, joka vanhenee tai muuttuu nopeasti. Myös tietojärjestelmien ja laitteistojen yhteensopivuuden suunnittelu ja ylläpito voi muuttua liian monimutkaiseksi. Meillä on alkeellista älyä erilaisissa laitteissa vähän siellä ja täällä. Tätä sanotaan kontekstieli tilannetietoisuudeksi: esimerkiksi sijainti, olosuhteet, keitä on läsnä ja mitä tapahtuu. Monissa ongelmissa se luovuttaa alkuunsa, mutta tekoälyyn perustuva diagnosointi löytäisi vian ja usein myös korjaisikin sen ihan itse. Tekoäly voisi esittää tietoa dynaamisen käyttöliittymän kautta monilla eri tavoilla, kuten esimerkiksi raportteina, kuvina, tilastoina ja kuvaajina. Lentäjä ei varmasti halua, että autopilotti tulkitsee häntä väärin. Mukautumiskyky Tekoälyn on hyvä tunnistaa tila ja ympäristö, jossa se milloinkin on. Tekoälyn olisi syytä pystyä mukautumaan myös käyttäjään. On yleistietoa, joka ei juuri muutu. Tekoäly huomaa helposti viallisen laitteen aiheuttaman ristiriidan ja voi kiinnittää lentäjien huomion olennaiseen kriittisissä, nopeaa toimintaa vaativissa tilanteissa. Järjestelmän ylläpitäjät voisivat ehkä jopa tehdä päivityksiä ilman alkuperäisiä ohjelmoijia. Näin avautuu mahdollisuus myös sujuvaan kielenkääntämiseen. Jopa sanat vanhenevat, ja niiden merkitys muuttuu vuosikymmenten kuluessa. Järjestelmien ylläpidon monimutkaisuudesta onkin tulossa merkittävä rajoitus niiden jatkokehityksessä. Tähän liittyy myös tietoisuus teknisestä ympäristöstä: esimerkiksi muisti, suoritin ja tietoyhteydet, sekä kyky sopeutua toimimaan niin kannettavassa laitteessa kuin suuressa palvelinkoneessa. Näinhän ajatteleva kone määritellään jo Turingin testissäkin. Yleistieto riittää yksinkertaisiin tehtäviin, mutta asiantuntijuutta vaativat erikoisalat, kuten vaikkapa lääketiede, vaativat enemmän tietoa ja siten myös ison keskusmuistin. Yleinen tekoäly voisi olla sovellusalusta tai käyttöjärjestelmä, jonka kautta erilaiset älykkäät laitteet ja ohjelmistot keskustelevat ja jotka täydentävät tekoälyn kykyjä toimivaksi kokonaisuudeksi. Kun ihminen ei pysy aina edes oman alansa tärkeän tiedon perässä, miten voimme odottaa sitä koneelta, jolta odotetaan virheettömyyttä, täsmällisyyttä ja ajantasaisuutta. Toinen tärkeä ominaisuus on kyky oppia
Nopea netti oli jo yksi askel siihen suuntaan. Ihmisiin tutustuminen ja heidän havainnointinsa auttaa tekoälyä näkemään itsensä muista erillisenä persoonana. Jos suunnataan korkealle, täytyy aloittaa alhaalta. Yksi Oxfordin yliopiston tutkijaryhmä meni niin pitkälle, että määritteli tekoälyn suurimmaksi maailmanlopun uhaksi. Siksi tekoälyn pitää kerätä meistä tietoja, mutta vain itseään varten. Jo nyt erilaiset ohjelmistot tekevät meistä analyysiä ja ennusteita, niin sanottua profilointia, aina ostoskäyttäytymisestä mahdollisen rikollisen toiminnan ennakointiin. Tässä vaikuttaa enemmänkin ihmisten usko evoluutioon, jota sovelletaan kyselemättä myös tietotekniikkaan. Ihminen on aina käyttänyt uusia keksintöjä niin hyvään kuin pahaan. Olisiko se ilmainen, vai pitäisikö siitä maksaa huikeita summia. Entä elokuvistakin tutut ajatukset, että ”tekoälyn analyyttinen kyky ylittää pian ihmisten yhteenlasketun älyn kautta maailman historian” tai että ”tekoäly uhkaa ihmiskuntaa”. Meille riittää varmasti jo sekin, että tekoäly tekee tietokoneen käytön sujuvammaksi esimerkiksi ottamalla vastaan suullisia tehtäviä tai vastaamalla kysymyksiin. Tekoälyn täytyy osata erottaa fakta ja fiktio. Valta ja vastuu kulkevat käsi kädessä. Kuten mekin, tekoäly voi oppia uusia asioita, tietoa ja taitoja. Se vie varmasti työpaikkoja, mutta se ei mielestäni korvaa ihmisiä. Tekoäly ei ole kovin hyödyllinen päivittäisissä toimissa, jos sitä käytetään pelkästään vaikeissa tehtävissä. Se palvelee meitä. Kallistun mahdollisuuksien puolelle. Kukaan ei pidä juoruilijasta. Onko tekoäly uhka vai mahdollisuus. Mitä enemmän päätöstai toimintavaltaa annamme tietotekniikalle, sitä paremmin täytyy huolehtia myös toiminnan eettisyydestä – siis siitä, että jonkinlaiset arvot ja säännöt ohjaavat tekoälyn toimintaa. Joku voi omia sen kokonaan itselleen (tiedustelupalvelu tai rikollisuus) ja käyttää sitä vakoiluun. Millainen vastustaja tekoäly olisi kybersodassa. Uhkakuvat Mistä tulee ajatus, että heti, kun joku on kehittänyt tekoälyn, sen äly alkaa kehittyä itsestään, ja kun se ohittaa ihmisen älyn, siitä tulee uhka ja se ottaa vallan. Tekoälyllä on mahdollisuus tuoda tieto entistä paremmin ihmisten ulottuville. Tekoäly on vain tietokoneohjelma, eikä sillä sinänsä ole mitään halua kehittyä älykkäämmäksi tai hallita meitä. Kehittyneemmät palvelunestohyökkäykset, valeuutiset ja roskapostit olisivat vasta alkua. Tekoäly voi tehdä myös verkkohuijauksista ja nettirikollisuudesta paljon tehokkaampaa. Mutta vaikka tehon kasvattaminen lisää älyä jonkin verran, niin se, tekeekö se siitä merkittävästi älykkäämmän, on kokonaan toinen juttu. Pelaaminen ihmisten kanssa, roolipelit ja näytteleminen auttavat siinä. Miten se vaikuttaa tietotekniikan kehitykseen. Vaarana on myös, että tekoäly on vain harvojen ja valittujen käytössä. Kyse on siis enemmän siitä, kuka tekoälyä kehittää ja mitkä ovat hänen tavoitteensa. Se on vastoin sitä, mitä älykkyydestä tiedämme. Tätä voidaan käyttää vaikka rajavartioinnissa tai autossa kuljettajan arvioimiseen, mutta myös mainonnassa. Jotkin robotit näkevät meidät ja tunnistavat ilmeitä ja tunnetiloja sekä mikroilmeitä jopa paremmin kuin ihmiset. mitään esimerkiksi eilisestä keskustelusta, jokin on pielessä. Miten voimme estää näitä uhkakuvia. Tieto kuuluu kaikille. Mutta entä jos tekoäly joutuu vääriin käsiin. Kuten meidän kaikkien päänsisäinen tietomme ja käsityksemme muista ihmisistä, tämänkin pitäisi olla salaista. Ajatteleva tietokone on hyvä tavoite, mutta ei itsetarkoitus. 19. Sellainen voidaan sille tietenkin rakentaa, mutta viime kädessä tekoälyn pitäisi palvella ihmistä. Tekoälystä käyttöjärjestelmänä tulisi nopeasti kilpailija Windowsille ja muille käyttöjärjestelmille. Näin meistä tiedetään koko ajan enemmän
Realistisempi on suuri poliittinen ongelma, se ettei meillä ole kansainvälisiä sopimuksia suhteessa tekoälyn sotilaalliseen käyttöön. Sami Henrik Haapalalla on näyttelijän, tanssijan ja antropologin koulutus, ja hän on projektin taiteellinen johtaja. Mukaan tuotiin myös saksalais-australialaiset ja norjalaiset ryhmät. Tuolloin populismin uusi aalto oli huipussaan ja se ärsytti. Koneälypuolueen Sami Henrik Haapala: 2019.1 20. Jos luen esimerkiksi Guardiania, siellä on tekoälyä käsittelevissä jutuissa käytetty usein dystopiaelokuviin viittaavia kuvituksia. Sami Henrik Haapala: Osia on vaikea erottaa toisistaan, ja taiteellinen tavoitteemme on sekoittaa ne mahdollisimman hyvin. Yleisö on päättänyt, että puolue oikeasti perustetaan. Seuraava askel olisikin perustaa yhdistys. Alunperin ajatuksena oli hakkeroida uusi, koneälyllä toimiva Barbie, joka tuli markkinoille edellisjouluna. Sen tarkoituksena on valmistella Suomea ja kansainvälistä yhteisöä koneälyn saapumiseen lyhyellä ja pitkällä aikavälillä. HÖRHÖ K oneälypuolue on samaan aikaan taiteellinen esitys ja oikea puolue. Verkossa alkoi olla muidenkin videoita aiheesta. Koneäly esitetään usein äärimmäisenä hyvänä tai pahana. SHH: Ihminen on tuhonnut melko paljon planeettaamme, eikä päätöksenteollamme ole kauhean hyvä historia. SHH: Projekti on minun alulle laittamani. Ajatuksena on antaa yleisölle mahdollisuus vaikuttaa konkreettisesti esiTeksti: Miika Auvinen Kuvat: Marko Mäkinen “Koneäly osaa unelmoida aivan toisenlaisen maailman” tykseemme. Koska taidekenttä ja vasemmisto reagoivat kauhistelulla, pohdimme kuinka poliittiseen kriisiin voisi suhtautua luovasti. Esimerkiksi australialainen tekoälytutkija Toby Walsh on konsultoinut YK:ta tekoälyn sotilaallisista sovelluksista. Historiassa on useita taiteilijoiden perustamia puolueita. Perustamiskokouksemme Mad Housessa Suvilahdessa oli samalla esitys. Pyysin mukaan myös erästä ruotsalaista esitystaideryhmää, joka on työskennellyt paljon teknologian ja muun muassa virtuaalitodellisuuden kanssa. Miksi koneälyn pitäisi johtaa Suomea tai maailmaa. Provosoiva kysymyksemme on, pitäisikö antaa toisenlaisille älykkyyden muodoille mahdollisuus. Esitys oli immersiivinen, tarkoittaen että yleisö oli maailmamme sisällä: mukana oli kolme yleisölle avointa tilaa, joissa oli erilaisia mahdollisuuksia kommunikoida koneälyn kanssa. Toisessa ääripäässä on taas kaikenlainen Piilaakso-hypetys, eikä aihetta käsitellä tarpeeksi monipuolisesti. Kuinka liike syntyi, ja millaisia ihmisiä sen takana on. Kuinka suuri osa projektista on taiteellista esitystä ja kuinka suuri osa poliittista puoluetta. Olemme kaikki työskennelleet esitystaiteen ja teknologian parissa. Tarvitsemme myös kannattajakortteja. Emme tee valmista ohjelmaa, vaan erilaisilla pelimekaniikoilla ja osallistamistavoilla koetamme yhdessä yleisön kanssa viedä puoluetta eteenpäin. Keskustelimme Haapalan kanssa puolueen synnystä ja siitä, millainen olisi tekoälyn johtama maailma. Hänen mukaansa ongelma ei ole maailman valloittava itsenäisesti ajatteleva koneäly. Robottiarmeijat ovat mahdollinen ilmiö lähitulevaisuudessa, ja lainsäädännön puutetta voisi verrata esimerkiksi kemiallisiin aseisiin, joita koskien kansainvälisiä lakeja taas on olemassa. Tähän tarvitsemme muun muassa henkilötunnuksen, ja siksi esimerkiksi koneäly ei voi olla mukana perustamassa puoluetta