Algoritmeja ihmistieteille

Voiko suomalaisuutta mallintaa tietokoneilla? Onko gooteille, punkkareille ja muille alakulttuureille oma algoritmi? Yksi Digital Humanities -projektin merkittävimmistä ydinalueista on soveltaa uusia laskennallisia ja tietojenkäsittelytieteistä löytyviä työkaluja ihmistieteisiin. Aluksi voi kuulostaa jopa loukkaavalta käyttää yleensä kylmänä pidettyä matematiikkaa ja algoritmeja hahmottamaan ihmisille tärkeitä asioita. Eikö algoritmi hävitä koko kulttuurin ihmisyyden ja anna meille vain ihmiskokemuksesta mitään kertomattomia numeroita? Ihmistieteisiin sovellettavien matemaattisten ja digitaalisten metodien kirjo on valtava aina erilaisista uskonnollisten yhdyskuntien verkostoanalyyseistä runoutta hahmottaviin matemaattisiin malleihin. Parempi kuitenkin aloittaa perusteista, ja käydä ensin yhden käsitteen kimppuun. On aika selvittää mitä algoritmit ovat ja mitä annettavaa niillä on.

Algoritmi voi kuulostaa arkielämästä irrotetulta ja kaukaiselta, mutta se on yksinkertaisuudessaan tietynlainen ohje. Jokainen seuraa algoritmia kokatessaan ruokaa ohjeen avulla. Ennen kuin pitsapohjalle voi levittää tomaattimurskaa sen täytyy olla käynyt läpi pitsanteon prosessin aikaisemmat vaiheet. Kun olet kotona, ja äitisi tuo sinulle pohjaan palaneen puuron, kuinka monesti olet yllättänyt itsesi ajattelemasta ”Ah, äidin ruoanlaittoalgoritmi ei toteutunut tällä kertaa”. Luultavasti et kovin monesti, mutta toivottavasti yhä useammin tämän jälkeen. Algoritmi on siis osiin jaettu kuvaus prosessista, jota seuraamalla voidaan ratkaista tietty ongelma. Algoritmit ja koneiden tuominen inhimillisten ongelmien tykö voi kuulostaa aluksi kummalliselta, mutta tarkastellaan seuraavaksi jokaisen arjessa varmasti vaikuttavaa asiaa, jossa lähestymistapa on ollut hyvin hedelmällinen: muisti

Muisti ja algoritmit

Psykologiassa on useita malleja ihmismuistille. Karkeana jaotteluna toimii erottelu pitkäaikaiseen ja lyhytaikaiseen muistiin. Muistamme jonkin lukemamme asian päivän, mutta ilman harjoittelua se katoaa tai voimme pitää puhelinnumeron mielessämme sen aikaa, että saamme sen tallennettua puhelimeemme. Miksi muisti toimii tällä tavalla? Eikö olisi helpompaa, että kaikki asiat siirtyisivät suoraan pitkäaikaiseen muistiin, josta ne sitten haettaisiin tarpeen tullen? Tietokoneilla on usein myös ihmismuistia muistuttava järjestely. Tietokoneen kovalevy toimii analogiana ihmisen pitkäaikaiselle muistille ja välimuisti lyhytaikaiselle. Miksi terävät tutkijat konetta rakentaessaan antaisivat koneelle saman rakenteen kuin ihmismuistilla?

Mietitään kirjastoa analogiana pitkäaikaiselle muistille. Olet etsimässä kirjastosta Will Durantin klassikkoja ja tiedät, että tulet tarvitsemaan niitä seuraavan viikon ajan. Jos jätät kirjat kirjastoon, etkä lainaa niitä kotiin pöydällesi, käytät joka päivä ison osan ajasta kirjastoon matkustamiseen. Tietokoneiden välimuisti on kehitetty välttämään sama ongelma. Välimuisti, joka pitää osan käytettävästä tiedosta nopeasti saatavilla nopeuttaa muistin kokonaissuorituskykyä. Entä mitä tietoa sitten kannattaa pitää nopeasti käsillä? Tässä kohtaa kuvaan tulevat algoritmit.

Välimuistin ollessa rajallinen siinä pidetty tieto täytyy valita tarkkaan. Yksi vastauksista ongelmaan on se, jota käytit tajuamattasi aikaisemmassa esimerkissä etsiessäsi Will Durantin klassikoita, nimeltään Beladyn algoritmi. Optimaalisen tuloksen kannalta on siis hyvä pitää käsillä tietoa, jonka tietää olevan käytössä pisimmän aikaa tulevaisuudessa. Tietokoneiden tapauksessa, ja miksei ihmistenkin, ongelmana algoritmia käytettäessä on, että sen täytyisi pystyä ennustamaan tulevaisuus. Opiskelija voi tehdä arvion siitä, että tarvitsee Durantin klassikot, mutta sitten voi muistaakin tarvitsevansa lisää kirjoja rästitenttiin, jonka unohti. Algoritmi ei siis ole vedenpitävä, mutta se on huomattavasti parempi kuin, että käyttäisit aikaa samojen kirjojen hakemiseen jokainen päivä.

Kulttuuri ja kylmät algoritmit

Laajassa mielessä algoritmit voivat hahmottaa mitä tahansa prosessia. Olkoon se sitten kuinka olla punkkari tai kuinka aamuhartaus etenee. Melkein jokaisesta asiasta voi tehdä algoritmin jos tietää siihen liittyvät muuttujat. Tällaisenaan algoritmi on yleishyödyllinen analyyttinen työkalu, joka mahdollistaa jonkin prosessin formalisoinnin. Kulttuurillisten ilmiöiden suora formalisointi ei ole kuitenkaan missä tallaisten näkökulmien hedelmällisyys tulee esiin, vaan tarvitaan paljon monimutkaisempia ja hienovaraisempia tapoja lähestyä kulttuuria. Näihin tapoihin palataan tarkemmin myöhemmissä blogiteksteissä. Helppona esimerkkinä näistä tavoista ovat tietokoneiden käytettäviksi suunnitellut monimutkaiset algoritmit, jotka keräävät ja prosessoivat isoja määriä tietoa vaikkapa runokokoelmista ja Facebook-päivityksistä. Algoritmein kerättyjä tietoja voidaan sen jälkeen käyttää esimerkiksi vaalimainonnan kohdistamiseen tai vaikkapa jonkin kulttuurillisen ilmiön leviämisen tarkasteluun.

Aikaisemmin käsittelemämme muistion  myös tärkeä tekijä tarkemmin kulttuuria pohtiessa. Ilman muistia ei olisi kulttuuria, ja sen toiminta muovaa kokemustamme joka ikinen hetki. Se, että ihmismuistia voidaan hahmottaa koneilla ja erityisillä algoritmeilla avaa uusia mahdollisuuksia tutkia kulttuuria.

Matematiikan ja koneavusteisten menetelmien käytöllä on siis paljon annettavaa ihmistieteille vaikka lähestymistapa voi aluksi vaikuttaa oudolta. Elämme päivittäin algoritmien keskellä hakiessamme kirjastosta kirjoja ja lajitellessamme sukkia ilman, että mietimme asiaa. Toivottavasti muistelet algoritmeja lämmöllä seuraavan kerran kun äitisi polttaa puuron pohjaan.

Roope Rouvali