Ohje viimeistellään ensimmäisten luentoviikkojen aikana. Ilmoita epäjohdonmukaisuuksista Jukalle, vaikka Slack-kanavalla.

Johdanto datatieteeseen -harjoitustyössä käydään läpi datatiedeprojektin keskeiset vaiheet. Voit valita aiheen ja datalähteen vapaasti. Saat pisteitä julkaisemalla Slackissa kuvauksen harjoitustyön eri vaiheiden toteutuksesta. Eräs vaihtoehto on Airbnb-aineiston analyysi datatieteen menetelmin. Voit vaikkapa toteuttaa hintaennustimen esimerkkianalyysiä soveltamalla.

Vaiheet ja pisteet

Vaihe 1 piste 2 pistettä 3 pistettä
Kehitysympäristö CSC Notebooks Anaconda omalla koneella Oma pilviympäristö
Datan kerääminen Valmis datasetti Datasettien yhdistely Oma datasetti
Datan jalostaminen Siistiä lähtödataa Siivoaminen ja piirteiden erottaminen Web DAD
Datan kuvaileminen Standardikuvaajat Monipuolinen visuaalinen raportti Vuorovaikutteinen Web-kojelauta
Koneoppiminen Lineaarinen regressio Monimuuttujaregressio Hybriditoteutus
Toimeenpano Staattinen raportti Vuorovaikutteinen raportti Ohjaava analytiikka

Kehitysympäristö Perusta kehitysympäristö projektiasi varten. CSC Notebooks -palvelun käyttäminen mahdollistaa Jupyterin opettelun. Anacondan asentaminen omalle koneelle on suoraviivaisin vaihtoehto. Voit myös rakentaa oman pilvipalvelupohjaisen analytiikkaympäristösi. Esimerkiksi Google Cloud Platform viimeksi mainittuun kategoriaan.

Datan kerääminen Suoraviivaisinta on lähteä liikkeelle valmiista datasta. Ehdotamme Inside Airbnb -datasetin käyttöä. Analytiikkavälineet tarjoavat myös puhdasta esimerkkidataa, katso vaikkapa Kaggle tarjonta. Datasettien yhdistely tuo mukanaan lisähaastetta. Voit myös kerätä oman datasetin Web-ryöminnän, ruudunraavinnan tai API-ohjelmoinnin keinoin.

Datan jalostaminen Analyysi edellyttää aina datan jalostamista ja siivoamista. Piirteiden erottaminen on keskeisessä roolissa tätä vaihetta. Siistissä datassa piirteet ovat pääosin valmiina, mutta usein niiden erottaminen edellyttää lisätyötä. Web DAD viittaa tässä itse kerätyn datan jalostamiseen analyysiä varten.

Datan kuvaileminen Datan eksploratiivinen ja kuvaileva analyysi on välttämätöntä analytiikkaprojektin laadun takaamiseksi. Toteuta minimissään joukko datan ominaisuuksia kuvaavia visualisointeja. Pandas tarjoaa kätevät apuvälineet aikajanoista pistekaaviomatriiseihin. Halutessasi voit hyödyntää Web-ohjelmointiosaamistasi ja toteuttaa monipuolisen visuaalisen raportin tai vuorovaikutteisen Web-kojelaudan.

Koneoppiminen Kahden muuttujan välistä suhdetta tarkasteleva lineaarinen regressio on yksinkertaisin koneoppimismenetelmä. Voit vaikkapa etsiä Airbnb-asunnon hintaa parhaiten selvittävät muuttujat. Monimuuttujaregressio mahdollistaa esimerkiksi Airbnb-asunnon hinnan ennustamisen. Käytännön sovellukset ovat tyypillisesti useita eri menetelmiä yhdisteleviä hybridejä.

Toimeenpano Datatiedeprojekti tähtää toimenpiteisiin. Voit esimerkiksi ehdottaa liiketoimintaan liittyviä toimenpiteitä (kuvitteelliselle tai todelliselle) kohdehenkilölle. Miten Airbnb-asuntojen sijaintia voisi hyödyntää kahvilaketjun toimipisteiden valinnassa? Miten Airbnb-asunnosta olisi mahdollista saada nykyistä parempi päivähinta? Staattinen raportti voi olla tekstiä ja kuvia yhdistelevä tuotos. Vuorovaikutteisen raportin avulla käyttäjä voi myös itse perehtyä tekemääsi analyysiin. Suosittelujärjestelmä tai Airbnb-asunnon hinnan käyttäjän syöttämien ominaisuuksien perusteella määrittelevä sovellus ovat esimerkkejä ohjaavasta analytiikasta.

Pisteiden kerääminen

Pisteiden kerääminen tapahtuu julkaisemalla kunkin vaiheen kuvaus toteutuskerran Slackissä keskiviikkoon 29.4 kello 17 mennessä. Pisteet myönnetään täysimääräisenä kun minimivaatimukset täyttyvät ja palautus on tehty annetun aikataulun puitteissa.

Aihepiiriin jo ennen toteutuskerran alkua perehtyneitä suorittajia kannustetaan toteuttamaan etenkin ensimmäiset vaiheet annettua aikataulua rivakammin ja siten jakamaan osaamistaan muille. Erityisen informatiiviset palautukset huomioidaan kokonaissuoritusta arvosteltaessa.

Yhden vaiheen kuvaus sisältää seuraavat pääkohdat:

  1. tiivis kuvaus toteutuksesta,
  2. muutamia otteita toteutuksesta (ohjelmakoodista, asetustiedostoista, …),
  3. listaus (siis lista linkkejä) ohjeista tai esimerkiksi verkkolähteistä jotka olivat erityisesti hyödyksi tehtävää tehdessä ja
  4. listaus vähintään kolmesta asiasta, jotka olivat valitulla teknologialla joko erityisen helppoja tai vastaavasti hankaloittivat työtäsi merkittävästi.

Kun viesti on valmis, julkaise se Slackissä. Halutessasi voit kirjoittaa kuvauksen esimerkiksi dillinger.io-palvelulla ja liittää sen Slackiin-viestiin PDF-muodossa. Löydät Slackistä erillisen kanavan kullekin eri vaiheelle. Lisää Slack-viestiin sopivat hashtagit (esimerkiksi #jupyter #scikitlearn #pandas) kuvaamaan toteutuksessa käyttämiäsi teknologioita.

Yhteistyö on sallittua

Harjoitustyön tekeminen yhteistyössä on sallittua. Halutessanne voitte myös toteuttaa yhdessä esimerkiksi datan keräämiseen tai jalostamiseen tarvittavia komponentteja. Jokainen kuitenkin palauttaa omat kuvauksensa. Käyttäkää komponenttien jakamiseen versionhallintajärjestelmää. Harjoitustyöt eivät saa olla identtisiä.

Loppuraportti

Harjoitustyön palautus tapahtuu lähettämällä oheisen mallin mukainen viesti Moodlen palautusautomaatilla perjantaihin 15.5. kello 17 mennessä.

Nimi: James Station
Opiskelijanumero: 213456
Sähköposti: jstat@trolleywatch.org

Harjoitustyöni aihe: Julkisen liikenteen vaikutus Airbnb-asunnon hintaan

Harjoitustyö löytyy kokonaisuudessaan oheisesta zip-paketista (jodatuni2020-234567.zip).

Oppimispäiväkirjani löytyy osoitteesta: http://blog.fi/jamesstation/jodatut2018.

Palautettavan zip-paketin (jodatuni2020-opiskelijanumero.zip) tulee sisältää hakemisto nimeltä jodatuni2020-234567 (korvaa lukusarja 234567 omalla opiskelijanumerollasi), jonka sisältä löytyvät työhösi liittyvät koodi- ja asetustiedostot. Huomaa, että sovelluksen ei tarvitse toimia sellaisenaan. Riittää, että paketin sisältöön voi perehtyä suoraviivaisesti paketin purkamalla.

Merkitse pisteet ainoastaan siinä tapauksessa, että olet julkaissut kuvauksen määräaikaan mennessä.