MAL12 Datan hyödyntäminen yrityksissä 23.3.2017 Maatalous-metsätieteellinen tiedekunta Digitalisaatio Nykyään ollaan aiempaa riippuvaisempia netistä ja erilaisista älykkäistä laitteista 1. Kerätyn ja tallennetun datan määrän räjähdys 2. Laskentatehon lisäys (viimeksi rinnakkaislaskenta: klusterit ja multicore & GPU-laskenta) 3. Edistys teoreettisessa tutkimuksessa Data now at the center of almost every business function, developing practices for working with data is critical regardless of your company s size or industry 23.3.2017 2 1
Datan hyödyntäminen Informaatiota ja (lisä)arvoa yrityksille Kiinnostus datatiedettä kohtaan on kasvanut voimakkaasti: Harvard Business Review: Myös suomalaiset suuryritykset rekrytoivat voimakkaasti: Valio, Op, Fazer leipomot, jne 23.3.2017 3 Työnäkymistä Konsulttiyhtiö McKinseyn mukaan yksin USA:ssa puuttuu >150 000 eri tasojen datatieteilijää Vuotuinen keskipalkka USA:ssa $118 000 The ability to take data to be able to understand it, process it, to extract value from it, to visualize it, to communicate it that s going to be a hugely important skill in the next decades. Hal Varian, Google s Chief Economist 23.3.2017 4 2
Koneoppiminen Tilastotiede 23.3.2017 Roolit Datatietelijä / data scientist Kuuluisa määritelmä: tietää enemmän ohjelmoinnista kuin tilastotieteilijä ja tilastotieteestä enemmän kuin ohjelmoija Monitieteisyys: math & stat, ohjelmointi, algoritmit, liiketalous & substanssiosaaminen Data-analyytikko (businessanalyytikko) Raportointi ja visualisointi Datan tarjoamien havaintojen selittäminen ja kommunikointi juniori datatieteilijä Data Engineer Ohjelmoija / insinööri Tietokantojen ylläpito 23.3.2017 5 Monitieteisyys Algoritmit DATATIEDE Tietokannat 23.3.2017 6 3
Miksi? (tätä ei kysytä tarpeeksi usein) Data science = extraction of knowledge from data Keskeinen päämäärä on tuottaa käytännöllisiä ja toimenpiteiksi jalostettavia tuoreita havaintoja yritykselle Datatieteilijöiden tulee voittaa datan kompleksisuudesta aiheutuvat haasteet: Parantaakseen operationaalisia päätöksiä Prosessien optimoimiseksi Tuotteiden kehittämiseksi 23.3.2017 7 Esimerkkejä Markkinoinnin suunnittelu Asiakkaiden segmentointi Kohdentaminen (mm. kanta-asiakas järjestelmät) Ennustaminen big datan avulla ETLAnow (https://www.etla.fi/etlanow/) Reliable AI system predicts Trump will win NY Post 28.10.2016 (ennen vaaleja) (http://nypost.com/2016/10/28/reliable-ai-systempredicts-trump-will-win/) Sosiaalifysiikka: Alex Sandy Pendland MIT http://socialphysics.media.mit.edu/ 23.3.2017 8 4
Esimerkkejä maa- ja metsätaloudessa Puuston määrän arviointi kaukokartoituksen avulla Metsään.fi Satokartat Lypsyrobotin keräämä data Sovellettu maatalousekonomiassa: Sulkava, M. ym. 2015. Clustering of the self-organizing map reveals profiles of farm profitability and upscaling weights. Neurocomputing 147: 197-206. Yli-Heikkilä, M. ym. 2015. Predicting the profitability of agricultural enterprises in dairy farming. Predicting the profitability of agricultural enterprises in dairy farming. ESANN 2015 proceedings, European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning. Hyvärinen, A. 2016. Investoinnit 23.3.2017 9 Harvard Business Review Joulukuu 2016: fundamental question: What would it take for businesses to realize the full potential of their data repositories with machine learning? 23.3.2017 10 5
Ongelmia we have a lot of data and we are not doing anything with it. As we worked to design machine learning based solutions with a variety of industry partners, we were surprised to find that the existing answers to this question often didn t apply. Why? machine learning experts often instead focus on the later parts of the pipeline trying different models, or tuning the hyperparameters of the model once a problem is formulated, rather than formulating newer predictive questions for different business problems. machine learning experts often didn t build their work around the final objective deriving business value. If companies want to get value from their data, they need to focus on accelerating human understanding of data 23.3.2017 11 Ehdotettu ratkaisu Stick with simple models Explore more problems Learn from a sample of data not all the data Focus on automation Lähde: Kalyan Veeramachaneni is a Principal research scientist at the Laboratory for Information and Decision systems (LIDS) at MIT 23.3.2017 12 6
Data-analyysi prosessina 1/2 1. Määrittele ratkaistava ongelma / kysymys, johon halutaan vastaus Mistä datatieteilijälle maksetaan palkka? Tässä tarvitaan kontekstitietoa suunnittelussa kannattaa hyödyntää yrityksen henkilöstön monialaista osaamista 2. Etsi tarvittava raakadata Se voi olla olemassa tai täytyy kerätä/ hankkia 3. Datan muokkaus analyysia varten Hyvin hallittukin raakadata kaipaa siistimistä Raakadata sisältää usein virheitä, puuttuvia arvoja, kaksinkertaisia kirjauksia Lähde: Spingboard, Getting your first data science job 23.3.2017 13 Data-analyysi prosessina 2/2 4. Datan kuvaileva analyysi Tavoitteena on paljastaa, mihin suuntaa jatkoanalyyseissä kannattaa edetä 5. VARSINAISET SYVENTÄVÄT ANALYYSIT Vasta tässä varsinaisesti sovelletaan tilastollista, ohjelmointi ja muuta asiantuntijaosaamista Ennustemallit, koneoppimisalgoritmit jne.. 6. Tulosten viestiminen eteenpäin Tarvitaan kykyä viestiä löydöksistä, jotta tulokset johtavat toimenpiteisiin Perustelu: miksi havainnot tärkeitä yritykselle? Lähde: Spingboard, Getting your first data science job 23.3.2017 14 7
Kaaviona Ratkaistava ongelma Datan esikäsittely Kuvaileva analyysi Mallit ja algoritmit Tulokset Vienti käytäntöön, toimenpiteet, muutokset yrityksen toiminnassa Datatieteilijät tahtovat keskittyä liikaa/ liian pian algoritmeihin ja ohjelmointiin 23.3.2017 15 Mitä datatiede on Raportointi: Mitä tapahtui? Diagnoosi: Miksi niin tapahtui? Ennustaminen: Mitä tulee tapahtumaan? Suositusten antaminen: Mikä on parasta, mitä voi tapahtua? 23.3.2017 16 8
Työkalut Excel SQL (Structured Query Language) Tietokantojen hyödyntäminen Haut ja muutokset relaatiotietokantoihin Python Monipuolinen korkean tason ohjelmointikieli R Datatieteeseen kehitetty ohjelmointiympäristö Mallinnus ja mallien tulosten esittäminen Julia, Matlab, SPSS,. 23.3.2017 17 Big data työkalut Eräs määritelmä: mikä tahansa perinteisille menetelmille liian suuri aineisto = Big Data Massiiviset aineistot vaativat omat työkalut Apache Hadoop Hyödyntävät Googlen MapReduce teknologiaa Varastoidaan aineisto useille palvelimille ja kontrolloidaan sitä silti yhdeltä niistä jatkojalostus esim. Apache Spark klusterit NoSQL (Not only SQL) Skaalautuvuus ja hajauttaminen suoriutuu suuresta määrästä samanaikaisia luku- ja kirjoitusoperaatioita 23.3.2017 18 9
Suosituimmuus Avoimien työpaikkojen perusteella: Akateemiset julkaisut: Lähde: Robert A. Muenchen, The Popularity of Data Science Software 23.3.2017 19 Suosituimmuus avoimien työpaikkojen perusteella Python = oranssi, R = sininen A programmer goes to the shop to buy some milk. His wife calls and says "While you're out, get some eggs." He never returns. Lähde: Robert A. Muenchen, The Popularity of Data Science Software 23.3.2017 20 10
Yhteisöt GitHub Ohjelmistojen kehitysalusta https://github.com/ Verkkoyhteisöt esimerkiksi: Stack Overflow Reddit Quora KDNuggets Akateemiset yhteisöt, esim. IEEE (Institute of Electrical and Electronics Engineers) HICT (Helsinki ICT) 23.3.2017 21 Big data - neljä V:tä 1. Volume 2. Velocity Muutosten nopeus 3. Variety Eri lähteet, eri tyyppinen data 4. Veracity Epävarmuus, datan luotettavuus 23.3.2017 22 11
Koneoppiminen / Machine Learning Algoritmi voi oppia datasta samaan tapaan kuin ihmiset oppivat aiemmista kokemuksista Tyypillisiä ongelmat, joissa syöte-vaste yhteydet (inputoutput correspondence) eivät entuudestaan hyvin tunnettuja tai pääteltävistä Induktiivista oppimista: Menet lomalle vieraaseen maahan ja paikallisista lehdistä päättelet, kuinka on sopivaa pukeutua induktio on päättelymuoto, joka lähtee liikkeelle yksittäisestä havaintojoukosta ja muodostaa niistä yleistyksen tai teorian 23.3.2017 23 Koneoppiminen / Machine Learning Vertaa: ekonometrisessa mallissa tutkija valitsee selittävät muuttujat ja mallin muodon. ML algoritmi valitsee itse parhaat (ainakin pyrkimys näin) Tyypillisesti: Enemmän dataa = parempi malli Mutta: Monipuolisempi data (enemmän muuttujia) parempi malli Opetusaineisto / testausaineisto Malli rakennetaan opetusaineiston avulla Yleistyskelpoisuutta testataan testausaineistolla - Mm. ylisovittamisen välttäminen Ristiinvalidointi 23.3.2017 24 12
Koneoppiminen / Machine Learning (ML) Ohjattu oppiminen (Supervised L.) Oppiminen ohjaajan tarjoamista esimerkeistä Opetusdata sisältää sekä syötteen että vasteen Esimerkiksi neuroverkot (Artificial NN alalajeinaan CNN, RNN), puumallit ja näiden yhdistelmät (ensemble, random forest) Ohjaamaton oppiminen (Unsupervised L.) Data ei kerro vastearvoa (response/ label) Etsitään yhtenäisiä rakenteita tai hahmoja Klusterointi, aineiston tiivistäminen (dimensionality reduction) Semi-supervised & reinforcement learning 23.3.2017 25 Koneoppimismallin rakentaminen Lähde: TPOT: A Python Tool for Automating Data Science 23.3.2017 26 13
Talousesimerkki: Reinforcement Learning osakekauppasovellus Reinforcement Learning (RL): Taking actions in situations to receive rewards RL algoritmi = agentti joka toimii vuorovaikutuksessa ympäristönsä kanssa Hyötyfunktio: State (s) Action (a) U Utility (U) hyöty on siis tilan (s) ja toimenpiteen action funktio U s, a Lähde: Shukla, Machine learning with TensorFlow MEAP 27 Talousesimerkki: RL osakekauppasovellus Kokonaishyötyyn vaikuttaa paitsi välitön palkinto r(s,a), myös mahdollisuudet tulevaisuuden palkintoihin Ts. nyt hyötyfunktio on normaali yli-ajan hyötyfunktio: U s, a = r s, a + β max U(s, a ) Missä a ja s ovat seuraavan periodin action ja state ja beeta on diskonttokerroin Lähde: Shukla, Machine learning with TensorFlow MEAP 23.3.2017 28 14
RL esimerkki Yksinkertaisuuden vuoksi jätetään osinkotuotot huomiotta (samoin välityspalkkiot) Nyt on kolme mahdollista toimenpidettä (action): 1. Osta: kassa pienenee, mutta osakkeiden määrä lisääntyy 2. Myy: Kassa lisääntyy osakkeen myyntihinnalla (osakkeiden määrä pienenee) 3. Pidä: ei palkintoa, vaan osakkeet siirtyvät seuraavalle periodille Tavoite algoritmille: opettele kaupankäyntipolitiikka, joka maksimoi varallisuuden (palkinto = varallisuus) 23.3.2017 29 RL esimerkki Opetusdata (ja myös testidata) ladataan yahoofinance:sta, koska ollaan laiskoja esim. Microsoft 1992-2016 Lähde: Shukla, Machine learning with TensorFlow MEAP 23.3.2017 30 15
Neural Net esimerkissä 23.3.2017 31 Esimerkin läpikäynti Tarkastellaan esimerkkiä Python koodin avulla ja hyödynnetään Googlen TensorFlow koneoppimiskirjastoa.. Käytetty IDE (ohjelmointiympäristö) oli Rodeo (by yhat) Python koodaajille (koodin sisennykset määrittävät blokit koodissa): https://www.youtube.com/watch?v=ssoog6zeyui 23.3.2017 32 16
Kotitehtävä Mieti maataloussovellus, jossa voidaan käyttää koneoppimista? 23.3.2017 33 17