Kuinka kehitimme Suomen parhaat asuntoennusteet (osa 1)

/ Tommi Vilkamo

Nyt kun Kiinteistömaailman ja Etuovi:comin kanssa kehittämämme asuntoennusteet ovat taas uutisissa, halusin kertoa kulissien takaa, miten nämä ennusteet luotiin asuntojen hinta-arvioiden osalta. Jos onnistun, luettuasi ymmärrät, mitä onnistunut koneoppimisprojekti vaatii ja miten voisit viedä vastaavan projektin läpi omassa organisaatiossasi.

  Kuva: eCraft Asuntopuntari. Suomalaisten asuntojen hintakehitys on ollut vakaata mutta haitari levenee. 90% vanhoista rivi- ja kerrostaloasunnoista on vaaleanvihreällä alueella ja 50% tummanvihreällä.

Kuva: eCraft Asuntopuntari. Suomalaisten asuntojen hintakehitys on ollut vakaata mutta haitari levenee. 90% vanhoista rivi- ja kerrostaloasunnoista on vaaleanvihreällä alueella ja 50% tummanvihreällä.

Koneoppimisprojektit koostuvat lähtökohtaisesti seitsemästä vaiheesta:

  1. Liiketoimintaongelman tunnistaminen ja ymmärtäminen

  2. Tavoitteiden ja AI-analyyttisen ratkaisumallin määrittely

  3. Datan koostaminen, ymmärtäminen ja esikäsittely

  4. Koneoppimismallinnus

  5. Tulosten arviointi

  6. Tuotantoratkaisu ja käyttöönotto

  7. Valvonta ja ylläpito

Todellisuudessa työ ei kuitenkaan etene vesiputousmallina vaihe kerrallaan, vaan on luonteeltaan iteratiivista. Joudut usein peruuttamaan askeleen taakse, ennen kuin pääset kaksi eteenpäin.

Kerron nyt eCraft Asuntopuntarin vaiheet 1-5. Palatkaamme vaiheisiin 6-7 myöhemmin.



1. Liiketoimintaongelman tunnistaminen ja ymmärtäminen

Asuntojen ostajat, myyjät, kiinteistövälittäjät, pankit, kiinteistösijoittajat, rakennuttajat ja monet muut sidosryhmät haluavat tarkat ja luotettavat arviot suomalaisten asuntojen hinnoista ja niiden kehityksestä. Ostajat ja myyjät haluavat asuntokaupoistaan vähintään käyvän markkinahinnan. Kiinteistövälittäjät haluavat edistää asuntokauppaa ja tarjota kohtaamisiin tietoa, luotettavuutta ja asiantuntemusta. Pankit tarvitsevat tiedon asuntojen vakuusarvoista erityisesti lainapäätösten ja riskienhallinnan kannalta, mutta myös lainojen lisämyynnin ja regulaation näkökulmista. Rakennuttajat ja kiinteistösijoittajat haluavat ymmärtää alueellisen hintakehityksen voidakseen investoida oikein.

Nykytilassa on kuitenkin ongelma. Asuntojen hinta-arvioita on monia, mutta kukaan ei tiedä mikä niistä on paras. Lehdistön lööpit ”nyt Rovaniemellä nousi hinnat 9% ja Lapualla romahti 12%” eivät myöskään pidä paikkaansa. Todellisuudessa asuntojen hinnat ovat paljon vakaampia, ja nämä luvut heijastavat vain luontaista satunnaisvaihtelua: joskus satutaan myymään kalliimpia ja joskus halvempia asuntoja.

Halusimme tarjota parempaa.


2. Tavoitteiden ja AI-analyyttisen ratkaisumallin määrittely

Asetimme hankkeelle tavoitteeksi tarjota:

1. Suomen parhaat hinta-arviot jokaiselle yksittäiselle asunnolle

  • alle 7% mediaanivirhe vanhoille rivi- ja kerrostaloille

  • paras mahdollinen tarkkuus myös omakotitaloille ja uudiskohteille

  • ei pelkkää pistehintaa, vaan myös hintakehitys ja trendit

2. Suomen paras näkymä asuntomarkkinoiden kehityksestä kokonaisuutena

  • Hyperlokaali. Hintakehitys laskettuna miljoonalle asunnolle erikseen ja rajoituksetta analysoitavissa esimerkiksi alueittain, kohdetyypeittäin ja rakennusvuosittain.

  • Tarkka. Yksittäisen asunnon tasolla 7% mediaanivirhe. Tilastotasolla merkittävästi tarkempi kuin markkinoiden nykytila.

  • Vakaa. Ei harhaanjohtavaa satunnaisvaihtelua ja poikkeamia.

  • Reaaliaikainen. Trendit nähtävissä huomattavasti aikaisemmin kuin nykyisin.

  • Validi. Linjassa Tilastokeskuksen valtakunnallisten indeksien kanssa (mutta parempi).

Aikahorisontin suhteen määrittelimme koneoppimismallin tavoitteeksi arvioida jokaisen tiedossa olevan suomalaisen asunnon hinta jokaisena kalenterikuukautena vuosien 2006-2018 ajalle ja siitä eteenpäin.

Kun tavoitteet on saatu selväksi, hyvä käytäntö on selvittää asiantuntijoilta ja kirjallisuudesta miten vastaavia ongelmia on aiemmin ratkaistu. Tällä kertaa meitä inspiroi erityisesti kirjoitukset amerikkalaisen Zillow-palvelun käyttämistä menetelmistä sekä eräs mielenkiintoinen tieteellinen julkaisu asuntojen hyperlokaaleista hintaindeksistä. Päätimme rakentaa ratkaisumme näitä ideoita mukaillen, mutta myös lisäten sekaan kourallinen omia parannuksia ja ripaus paikallisväriä.

3. Datan koostaminen, ymmärtäminen ja esikäsittely

Koneoppimismoottorin tärkeimmäksi opetusdataksi valittiin Kiinteistövälittäjien Keskusliiton Hintaseurantapalvelu (HSP). HSP-tietokannasta löytyy yli miljoonan suomalaisen asunnon perustiedot talotyypistä kokoon, kuntoon ja koordinaatteihin, sekä toteutuneet kauppahinnat. Noin 70% kaikista 2000-luvun suomalaisista asuntokaupoista löytyy HSP-tietokannasta.

Kuten tavallista, datan laatu oli kuitenkin epätäydellistä ja edessä oli siivousoperaatio:

1. puuttuvien arvojen käsittely

2. virheiden käsittely, kuten:

  • virheellisten kauppahintojen poistaminen (Brodleyn menetelmä vuodelta 1999)

  • virheellisten koordinaattien poistaminen (kuntakohtainen poikkeamien tunnistus)

  • virheellisten neliömäärien poistaminen (tehtiin rajaus 10-1000 neliötä)

3. kuntien yhdistäminen 2000-luvun kuntaliitosten johdosta


4. Koneoppimismallinnus

Kokeilimme monia vaihtoehtoisia lähestymistapoja, ratkaisumalleja ja algoritmeja. Lopulta löysimme timantin, jonka sitten hioimme kirkkaaksi. Nykyinen ratkaisumalli toimii monitasoisesti:

  • Ensimmäisellä tasolla koneoppimismalli tunnistaa virheellisen opetusdatan ja suodattaa sen pois.

  • Toisella tasolla opetetaan jokaiselle 2000-luvun ajanhetkelle omat koneoppimismallit, joiden tehtävä on arvioida asuntojen hinnat kyseisellä ajanhetkellä. Algoritmivalintana xgboost toimi mainiosti.

  • Kolmannella tasolla poistetaan kausivaihtelu ja tarpeeton satunnaiskohina. Kunniamaininnan tässä ansaitsee tilastotieteen erinomainen menetelmä nimeltä Kalman filter. Hintojen kausivaihtelun poistaminen ei olisi ollut pakollista, mutta asiasta kannattaa tehdä tietoinen päätös, koska huomasimme, että joulukuussa saa asuntoja arviolta 1,5% alennuksella verrattuna siihen, että saman asunnon ostaa keväällä kysynnän ollessa korkeampi.

  • Viimeisellä tasolla luodaan viimeinen silaus, eli käytetään vielä kerran kaikkia miljoonan asunnon tietoja koneoppimismallin opetusdatana, jotta tunnistetaan, mitkä asunnot ovat hieman verrokkejaan kalliimpia tai halvempia.

Näennäisestä kompleksisuudesta huolimatta koodirivejä ei kuitenkaan kertynyt lopputuotokseen kohtuuttomasti, koska tarvittavat algoritmit ovat nykyisin niin helposti saatavilla, että jokainen työvaihe onnistuu usein vain muutamalla koodirivillä, kunhan tietää mitä tekee. Paljon raskasta aivotyötä näihin koodiriveihin kyllä saatiin kulumaan.


5. Tulosten arviointi

Kehityksen aikana mittasimme ennustustarkkuutta joka työvaiheessa ristiintestaamalla (cross-validation). Mallin monikerroksisuuden takia piti kuitenkin olla tarkkana, ettei tietoa pääse vuotamaan, koska koneoppimismallit huijaavat niin herkästi.

Kehityksen lopuksi testasimme hinnottelutarkkuuden 10 000 asunnon historiallisella testiaineistolla, jota oltiin säilytetty tähän asti erillään. Iloksemme tavoiteltu 7% mediaanihinnoittelutarkkuus saavutettiin jo sillä, että koneoppimismallille kerrottiin vain muutamia asuntojen staattisia perustietoja. Tämän lisäksi saavutimme testiaineistolla huikean 6% hinnoittelutarkkuuden (mediaani), kun koneoppimismallin sallittiin käyttävän myös muuttuvia asunnon tietoja kuten asunnon kunto, vastikkeet ja yhtiölaina.

Ylitimme siis tavoitellun ennustustarkkuuden kirkkaasti. Uskon, että se on tällä hetkellä Suomen paras.

Lisäksi tilastotasolla tulokset olivat erinomaisia. Ensinnäkin uskottavuuden kannalta oli hyvä, että mallin antamat keskihinnat ovat lähes identtisiä Tilastokeskuksen hintaindeksin kanssa (pienistä eroista ei ole syytä huolestua, koska indeksien asuntokorit poikkeavat toisistaan):

Asuntopuntari2.png

Porauduttaessa syvemmälle edut - kuten reaaliaikaisuus, rajaton pureutumiskyky ja satunnaisvaihtelun minimointi - alkavat kuitenkin korostua.

Asuntopuntari3.png

Pureutumista pystyy nyt siis jatkamaan rajattomasti jopa yksittäisten asuntojen tasolle, ja katsellessani testidatasta aiemmin omistamieni ja tuntemieni asuntojen hintakehitystä, pystyin vain nyökyttelemään. Lisäksi, kun asuntojen koordinaatit ja hintatrendit laittoi kartalle lämpökarttana, varsin loogiselta näytti. Esimerkiksi näin espoolaisena hymyilytti, että länsimetron varrella viimeaikaiset hintatrendit näyttivät mukavan lämpimiltä.

Kaiken kaikkiaan olemme erittäin ylpeitä tuotoksesta jo nyt, vaikka monta parannusta ja laajennusta on vielä työn alla.

Otathan siis yhteyttä, jos haluat kuulla lisää tai uskot, että vastaavista hyperlokaaleista hintaindekseistä olisi hyötyä omassa liiketoiminnassasi.