26.05.2016 / Tuomas Autio

The 2016 Hadoop Summit is almost here! Last year the summit was jam-packed with great sessions and was extremely inspiring. Just as last year, I’ve put some effort into choosing which sessions I’ll be attending in order to get the best experience.
 

I have a serious problem though – even more than last year. There are so many interesting sessions overlapping each other that I apparently need to be able to clone myself!
 

Last year, my strategy was to prioritize the sessions and start with the one most relevant. If it wasn’t exactly what I had envisioned, I rushed to the next one — the strategy worked out well most of the times.
 

The full agenda of the summit together with all the details can be found here .
 

My Shortlist

Here is my current (in progress!) shortlist – albeit without prioritization yet:
 

myagenda_hs16sj
 

Are you coming to San Jose this year? What are your hot picks from the agenda?
 

Follow me on Twitter as I’ll will be tweeting during the Summit week in the end of June.


24.05.2016 / Kristiina Burtsoff

Mukaan tarvitaan vain snorkkeli ja sombrero. Sukat ja kengät voi halutessaan jättää kotiin. Mihin olemmekaan lähdössä?

Liiketoimintaympäristöjen lisäksi olemme rakentaneet jo vuosien ajan onnistuneita ja kutkuttavan salamyhkäisiä kevätretkiä. Kevätretkeilyseniorit muistelevat virnuillen aikaisempien vuosien reissuja, joissa yllättävän poron lisäksi on tarvittu myös passia. Järjestelytoimikunta on aina edellisvuotisen toimikunnan valitsema. Viime kesän kynnyksellä viestikapula lähti kuitenkin mystisesti omille teilleen. Järjestely siirtyi SKRTR:lle (SalainenKevätRetkiTyöRyhmä). Tämän maan alla vaikuttavan ryhmän liikkeistä ei kenelläkään ole hajuakaan. Jopa johtoryhmä on nähty kattoterassilamme pohtivan tilannetta täsin ymmällään. Sitkeä huhu väittää: kevätretki on tulossa. Me olemme valmiina.

Kevätretkillä, kuten elämässä yleensäkin, opimme kaikenlaista uutta ja hyödyllistä. Vuoden 2013 retkellä syntyi TakahaliTM. Takahali syntyi, kun uskomaton määrä talenttia sullottiin samaan raitiovaunuun ja biloteille annettiin vapaat kädet toimia. Tämä innovaatio oli lähtölaukaus nykyisen itseohjautuvan organisaatiomallimme eli FC Bilotin synnylle.

Kevätretkillä voi äkillisten innovaatiopuuskien lisäksi kokea monenlaista yllättävää. Toisinaan olemme joutuneet neuvostoarmeijan vangeiksi hylättyyn vankilaan laulamaan kansallishymniä venäjäksi, joskus vain chillataan rennosti rannalla. Kaikkeen pitää varautua ja tähänhän koko organisaatiomme on tottunut. Työ itsessään jo vahvistaa kevätretkestäselviytymiskykyjä. Kokeneen sanat ensi kertaa retkeileville: pakkaa mukaan rento asenne, passi, hammasharja ja ensiapupakkaus.

Kahvihuonessa kerrotaan tarinaa bilotista, jonka tärkein syy tulla Bilotille töihin, oli halu päästä mukaan Bilot Toursin salamyhkäisille kevätretkille. Toki tarjolla on mielenkiintoista työtä ja kehittymismahdollisuuksia, mutta missään muualla ei voi kokea Bilotin The Kevätretkeä.

Koetko omaavasi kevätretkeilijän taidot? Haluaisitko oppia?

Kurkistathan urasivumme. Vaikka avoinna ei olisikaan juuri sinulle sopivaa tehtävää, annathan kuulua itsestäsi? Saatat olla juuri kaipaamamme, tuleva kevätretkeilijä.


16.05.2016 / Lasse Liukkonen

Viime kirjoituksessa käytiin läpi IBM Watson analytics-palvelun käyttökokemuksia ja oleellisia toiminnallisuuksia. Kuten kirjoituksessa tuli luvattua, on seuraavaksi luvassa kurkistus “kilpailevaan” Microsoftin Azure ML-palveluun. Heti kättelyssä voisi kuitenkin mainita, että oikeastaan palvelut painivat eri sarjassa: Watson analytics painottuu tutkivaan aineiston analysointiin ja Azure ML puolestaan prediktiiviseen. Kirjoituksen kannalta oleellisinta onkin saada käsitys siitä miten nämä käsitteiden erot näkyvät konkreettisesti data-analyysin tekemisessä, löydöksissä ja tuloksissa.

Käydään seuraavaksi läpi Azure ML:n käyttöliittymää ja ominaisuuksia esimerkkiprosessin rakentamisen avulla, samaan tapaan kuin Watsonia tarkasteltaessa. Viime kirjoituksessa Katsaus IBM Watson Analyticsiin “uhkailtiin” Niemijärveä tulevasti taskista, hän kuitenkin joutui kieltäytymään piinapenkistä vedoten työkiireisiin, joten toteutin itse esimerkkiaineiston analysoinnin ja mallintamisen (yksinkertaisella tavalla, ikäänkuin en tuntisi aineistoa entuudestaan).

 

1) a. Miten pääsen käsiksi Azure ML-palveluun:

Käytännössä Azure ML-palvelun käyttäminen vaatii Microsoft-tilin, Azure tilauksen (subscription) ja Azure ML workspace:n luontia. Microsoft on kuitenkin luonut mahdollisuuden tutustua palveluun ilman edellä mainittujen toimenpiteiden suorittamista, Guest-tunnuksilla pystyt testaamaan palvelua 8 tunnin ajan. Jo tässä 8:ssa tunnissa pääsee melko hyvin perille palvelun monipuolisuudesta. Azure ML:ssä on myös runsaasti valmiita esimerkkejä, joista voi olla hyötyä ensimmäisillä kokeilukerroilla. Huomioi kuitenkin, että Guest-tunnuksilla joudut käyttökokemuksen osalta turvautumaan esimerkkiaineistoihin. Esimerkkiaineistot ovat suurilta osin selkeitä, joten aikaa ei liiemmin tuhriudu aineistoa ihmetellessä.

23_Azure

1) b. Azure ML-ympäristön luonti:

  • Microsoft-tilin luominen: https://signup.live.com/
  • Lyhyt opastus Azure ML-pavelun käyttöönotosta: https://azure.microsoft.com/en-us/trial/get-started-machine-learning/

Seuraavassa palvelun hinnoittelu, joka koostuu mahdollisesta workspace:n maksusta ja Azure ML:n käytöstä. Yrityskäytössä hinnat eivät todellakaan päätä huimaa…

2_Azure

 

Azure ML-palvelun käyttöönotto ei ole ydinfysiikkaa vaikka aluksi voi kuullostaa monivaiheiselta. Luomasi tilit ja tunnukset ovat likipitäen heti käytössäsi, joten pääset nopeasti käsiksi itse palveluun antiin.

 

2) Palveluun kirjautuminen ja palvelun komponentit

Sitten itse asiaan. Azure ML-palveluun voit kirjautua osoitteessa https://studio.azureml.net/. Kun olet kirjautunut palveluun sinulle pitäisi avautua seuraavan kaltainen näkymä:

24_Azure

 

Welcome-näkymässä on Watson analyticsin tapaan selkeästi ilmaistu palvelun oleellisimmat kokonaisuudet:

Experiment – Tallentamasi prosessiketjut (mallinnus, datan muokkaus, jne…)

Web services – Tallentamasi web service-prosessit (mahdollisuus kutsua esimerkiksi mallinnusprosessiketjua rajapinnan kautta)

Datasets – Tallentamasi aineistot (tai valmiina olevat esimerkkidatat)

Trained models – Tallentamasi ennustemallit

Settings – Workspacen tiedot ja tila

(Projects – Mahdollista kasata projektikohtaiset komponentit yhdeksi kokonaisuudeksi.)

 

3) Luodaan ensimmäinen prosessiketju (experiment), jossa esimerkkiaineistoa aluksi analysoidaan ja lopuksi muodostetaan ennustemalli

+ New kohdasta voit luoda tyhjän prosessiketjun: New -> Experiment -> Blank Experiment

25_Azure

26_Azure

 

Toisin kuin Watsonissa, Azure ML:ssä täytyy käyttäjän itse rakentaa ETL-prosessia muistuttava prosessiketju, jossa eri operaatioita (operaattoreita) linkitetään toisiinsa loogisessa järjestyksessä. Prosessiketjun luonti tyhjästä on kohtalaisen helppoa, jopa ensimmäisellä käyttökerralla. Drag & Drop- käyttöliittymä tekee prosessiketjun luonnista nopeaa ja mielekästä.

Muodostetaan seuraavaksi mallinnuksen prosessiketju palapalalta ja samalla tarkastellaan eri operaattoreiden käyttöä ja ominaisuuksia. Lopullisena tavoitteena on siis luoda malli esimerkkiaineistomme pohjalta, jonka ”ennustetarkkuus” päihittää Watson analyticsin luoman mallin. Lisäksi pyrimme saamaan selville mitkä tekijät (sarakkeet) vaikuttavat poistumaan (kiinnostuksen kohde aineistossa) vahvimmin. Ennustetarkkuus on laitettu lainausmerkkeihin siitä syystä, että Watsonissa ei niinkään laskettu ennustetarkkuutta vaan mallin sopivuutta aineistoon (näin ainakin voisi olettaa tuloksista päätellen).

 

a) Lähdeaineiston lukeminen:

Import Data – operaattorilla pystyt lukemaan aineistosi suoraan Azure:n data storage-lähteistä, esim. Azuren tietokannasta tai blobista (bulkkilevytilaa pilvessä). Kun Import Data-operaattori on hiirellä aktivoitu ilmestyy käyttöliittymän oikeaan reunaan valintalistoja ja muita säädettäviä parametreja. Tässä Properties-osanäkymässä määritellään tarkemmin operaattorin hienosäätöä koskevat parametrit. Säädettävien parametrien määrä vaihtelee operaattorikohtaisesti. Quick-help kohdan linkistä saat tarkempaa tietoa operaattorin käytöstä ja parametrien merkityksestä.

Import Data-operaattorin osalta valitaan esimerkissä lähteeksi Azure DB, jonka jälkeen täytetään tarvittavat tiedot: osoite, käyttäjä, salasana, SQL-kysely…

Jos kuitenkin haluat ladata palveluun lähdeaineistosi lokaalista lähteestä valitse + New -> Datasets -> from local files. Tämä lienee paras (ja ainoa) vaihtoehto ensimmäisellä käyttökerralla, varsinkin, jos muita Azure-palveluita ei ole käytössäsi.

27_Azure

 

b) Jakaumien tarkastelu, visualisoinnit

Azure ML:n omilla komponenteilla ja visualisoinnilla saa todella pintapuolisen raapaisun sarakkeiden/muuttujien jakaumista ja aineiston laadusta verrattuna Watsoniin. Azure ML:n aineiston analysointiominaisuudet eivät ole parhaat mahdolliset, huomattavasti heikommat kuin Watsonissa. Pelkästään ennustemallinnuksen kannalta lähestyttäessä kaikki oleelliset tiedot löytyvät sarakekohtaisesta metadata-näkymästä ja pienestä graafista.

28_Azure

20_Azure

 

Herää kysymys: Jos minulla on paljon sarakkeita, tarvitseeko minun yksitellen aktivoida ne Visualize-näkymässä saadakseni tarvittavat metatiedot koko aineistosta? Ei onneksi! Operaattori-valikosta löytyy Summarize Data-operaattori, jonka avulla saat hieman kattavammat metatiedot aineistostasi yhdessä näkymässä.

 

c) Sarakkeiden metadatan muokkaaminen

Kuten Watsonissa, täytyy myöskin Azure ML:ssä pitää jonkinlaista huolta sarakkeiden rooleista ja tyypeistä, ettei esimerkiksi identifioiva sarake pääse livahtamaan mukaan ei toivotussa merkityksessä. Edellä mainittuja sarakekohtaisia ominaisuuksia pystyt vaihtamaan Edit Metadata-operaattorilla.

29_Azure

 

d) Turhien sarakkeiden redusointi

Analyysin kannalta turhien sarakkeiden pois siivoaminen onnistuu Project Columns-operaattorilla. Huomioi, että esimerkkiprosessissa on poistettu sarakkeet, jotka korreloivat vahvasti keskenään, tästä syystä kuvassa näkyy myös operaattori Compute Linear Correlation, jonka avulla aineistosta lasketaan (numeerisien) sarakkeiden väliset korrelaatiokertoimet. Metadatan asettaminen vaste-muuttujan kannalta ei välttämättä ole oleellinen heti alussa, sillä mallinnusmenetelmissä tulee valita erikseen se sarake, jota halutaan ennustaa.

30_Azure

 

e) Aineiston jakaminen testi- ja opetusaineistoksi

Split Data-operaattorilla pystyt jakamaan aineiston kahteen osaan haluamallasi tavalla (mahdollisuuksia: koon, osuuksien, ehtojen… mukaan). Split Data-operaattori toimii myös yleisesti rivitason redusointi operaattorina. Monimutkaisempi rivitason redusointi voidaan toteuttaa esimerkiksi Regular Expression-option avulla (https://en.wikipedia.org/wiki/Regular_expression).

31_Azure

 

f) Mallien vertailu ja parametrien optimointi

Mallin muodostaminen ja vertaileminen on tehty todella helpoksi. Myöskään mallin hyperparametrien optimointi ei ole yhtään sen haasteellisempaa. Esimerkin prosessiketjussa käytetään hyperparametrin optimoinnissa random sweep vaihtoehtoa, joka voi olla hyödyllinen varsinkin silloin, kun tietämys mallinnusmenetelmien hyperparametrien merkityksistä on vähäistä. Random sweep ei välttämättä päädy “optimaaliseen ratkaisuun”, mutta antaa yleensä huomattavasti default-arvoisia hyperparametrisäätöjä paremmat tulokset.

 

g) Merkitsevien sarakkeiden haarukointi (Permutoimalla)

Poistumaan vaikuttavia tekijöitä (sarakkeita) voidaan selvittää mallispesifisesti Permutation Feature importance-operaattorin avulla. Huomioitavaa tässä tapauksessa on se, että merkitsevyysmittarin arvot ovat mallisidonnaisia, eli jos vaihdat mallinnusmenetelmää on odotettavissa, että merkitsevyydet voivat vaihdella (oleellista ei välttämättä ole niinkään itse lukuarvo vaan eri sarakkeiden merkitsevyyslukujen suhteelliset erot).

33_Azure

35_Azure

 

 

h) Tulosten tarkastelu

Esimerkkiaineiston tapauksessa mallinnusmenetelmä 1 antoi selkeästi paremman tarkkuuden kuin menetelmä 2, joten lopullinen mallin ennustetarkkuus laskettiin käyttäen mallinnusmenetelmä 1:stä (Boosted decision tree). Päihitimme Watsonin “ennustetarkkuudessa”, mutta hävisimme kyllä mallin tulkinnassa selkeästi (valittu mallinnusmenetelmä ei niitä tulkinnallisempia, ensemble-method).

34_Azure

 

36_Azure

Oleellinen ero Watsoniin on siinä, että Azure ML:llä voimme todella ennustaa uutta vasteen suhteen tuntematonta aineistoa, saamme siis ulos asiakaskohtaiset ennusteet. Toki Watson avulla voisimme päätöspuun säännöstön implementoida esimerkiksi Exceliin tai raportointityövälineeseen.

 

Yhteenvetoa (ja vertailua IBM Watson analyticsiin):

1) Azure ML on selkeästi prediktiiviseen analytiikkaan ja aineistojen yhdistämiseen ja muokkaukseen suunnattu palvelu, kuten edellä muodostettu esimerkkiprosessi antanee ymmärtää. Käyttäjän tulee siis tuntea vähintäänkin perusperiaatteet ennustamisesta/aineiston mallintamisesta, sekä mallinnusmenetelmistä ennen palvelun käyttöä ennustamistarkoituksessa.

2) Mikäli yritykselläsi on joku tai joitakin Azuren storage-palveluita on Azure ML järki ratkaisu ennustavan analytiikan työvälineeksi.

3) Azure ML:n omilla operaattoreilla pääsee melko pitkälle mallintamisessa ja tarvittaessa voi turvautua myöskin R:n apuun palvelun sisällä (esimerkiksi aikasarja-analyysi)

4) Azure ML ei ole paras mahdollinen väline aineistojen visualisointiin ja tutkimiseen (jos et ole sinut R-ohjelman ja sen visualisointi-pakettien kanssa)

5) Azure ML oppimiskynnys on hyvin matala ja käyttöliittymä on enemmän tai vähemmän identtinen esimerkiksi Rapidminerin, SSPS Modellerin kanssa, oppimiskynnys on siis hyvin matala

6) Prosessiketjun suorittaminen (ajoaika) kestää välillä turhankin kauan, vaikka tehtäisiin vain yksinkertaisia toimenpiteitä (usein tyypillistä pilvipalveluille). Tämä seikka voi hieman nakertaa alkuvaiheessa, on siis ihan järkevää suunnittella vähintäänkin mielikuvaharjoitteena alustava prosessiketjun kulku ennen toteuttamista.

7) Web servicen rakentamista ei käyty läpi tässä kirjoituksessa, mutta se on pakko nostaa esille tässä yhteenvedossa erittäin positiviisena asiana. Web servicen julkaisu on erittäin helppo toteuttaa Azure ML:ssä, tarvitsee käytännössä asettaa prosessiketjun aineistolähde web servicen inputuksi ja tulostaulu outputiksi. Lisäksi annetaan skriptin pätkät, joilla voidaan web serviceä kutsua esimerkiksi R:llä tai Pythonilla.

 

IBM Watson Analytics                                                Azure ML

37_Azure_Watson

 

Lyhyesti voisi siis tiivistää, että Watson on business-käyttäjän työväline (ei data-analyytikko) ja Azure ML data-analyytikon. Itse käyttäisin molempia, analyysin alkuvaiheessa Watson, lopullisen ratkaisun implementointi ja hienosäätö Azure ML:ssä!

 

 


10.05.2016 / Janne Vihervuori

Marriage made in heaven

The big IT news of last week was Apple and SAP joining forces. According to their press release, “Apple & SAP Partner to Revolutionize Work on iPhone & iPad”. As an iOS heavy-user and someone who has worked in the SAP industry since ’99, my initial feelings were very positive. I re-tweeted the breaking news as a kid in a virtual candy store. They even had Apple’s CEO Tim Cook pitch the alleged “76 percent of business transactions touching an SAP system.”

When the virtual sugar rush faded out, I started to think does this make any sense. You see, I have this problem of reading between the marketing lines and always trying to draw the big picture. The day after I got a strong gut feeling that this “Revolution of Work” might include some controversial issues. Here are my thoughts on what could be paradoxical about this marriage made in heaven:

1. The number of SAP developers.

“To help SAP’s 2.5-million member global developer community take full advantage of the new SDK.” Let’s stop right here. Sure, SAP has a large global developer community, but most of those developers are ABAP/NetWeaver developers. In general, ABAP developers do not have a clue about HCP and HCP-development. And, vice-versa: generic Java/Javascript/HTML5 developers (who could be HCP developers) are not aware of SAP’s Business Suite (or S/4HANA in the future) processes and architecture. I would say that there is a good six-figure number of developers who can benefit of the new SDK, definitely not 2.5-million.

2. SAP already has Fiori.

Gartner lists user-experience as one of HCP’s strengths. Fiori has been a tremendous improvement from the good old days of the traditional SAP GUI, so it is hard to consider how the new iOS-based “work experience” would be a game-changer. Sure, “taking full advantage of iPhone and iPad features like Touch ID®, Location Services and Notifications” is at hand, but do the processes and services (fueled by API’s, microservices) beneath the user experience enable utilizing them?

3. Make HCP a leader?

SAP HCP is an Enterprise Application Platform as a Service – aPaaS. Gartner recently ranked the aPaaS vendors: Salesforce (Force.com) and MS Azure are the leaders. The “Big-3” of SAP, IBM, and Oracle are a tight group trying to make it to the leaders’ category. Will SAP HCP benefit of this new Apple co-op? IBM already started a similar one in December 2015. Does it yet show? Regarding Gartner, “HCP’s functional depth and completeness to be the area most in need of improvement.” What if SAP now pimps up the (iOS) UX features of HCP with Apple, but the end-to-end processes are not on the same page? Moreover, this co-op seems to be directed primarily for the large SAP installed base, not for new customers.

4. The future of Native Apps.

The biggest issue is about native apps. Are they the choice of tomorrow, or already the choice of yesterday? Native apps need to be installed and regularly updated. Not good for BYOD environments, where the iPad is kids’ entertainment center in the evenings. When it comes to Fiori, it is a role-based app paradigm. Fiori apps are opened via a launchpad. Now, the Ipad is already the Ultimate Launchpad. Since a “launchpad app” would not come in question, I can see the volume of installed apps as a burden. Also, Google’s Robert Nyman thinks that something called Progressive Web Apps are the future. I believe that it is hard to disagree with Robert. Progressive Web Apps are not native apps. Moreover, regarding those Notifications mentioned in issue #2: these Progressive Web Apps can take care of them…

What will happen after the Honeymoon?

All in all, the high-level synergy of these two excellent companies should be a perfect match. SAP already has the “Digital Core”, the S/4HANA that is the real deal. For a co-operation to succeed for these two great companies, I think SAP should emphasize the Enablement (providing, extending, enriching the Core data) layer and Apple the Responsive (consumption of services) layer. Now it seems that their co-operation has overlapping areas and emphasis on fixing something that is not broken.

However, we have not yet seen the new approach in action or used the new SDK. Gartner’s Van Baker put it: “until we get more detail, it is hard to gauge how much of an impact it’s going to have.” SAP and Apple have until fall to prove themselves. I would like to see them succeed.


5.05.2016 / Lasse Liukkonen

Näin Vapun jälkeisissä simoissa ja munkkipöhnässä ajattelin kirjoittaa uudehkosta analytiikan pilvipalvelusta, Watson Analyticsistä. Miksi? Sana Watson on kantautunut näkö- ja kuuloaisteihini hyvin rytinällä viime kuukausien aikana: Koulutuksissa, Linkedin:ssä, vapputivolissa, nakkikioskin jonossa, referenssitarinoissa, lähes kaikkialla.

Tässä kirjoituksessa ei syvennytä palvelun infrastruktuuriin tai luetella kattavaa listaa kaikista nyansseista vaan kerrotaan rehdisti mikä oli näppituntuma ensimmäisen käyttökerran jälkeen, mikä ihastutti, mikä mätti, mitä jäi avoimeksi.

Analytics Watsonista on saatavilla 3 eri versiota: Free edition, Plus ja Professional. Karkeat erot eri versioiden välillä löytyvät täältä, https://www.ibm.com/marketplace/cloud/watson-analytics/purchase/us/en-us#product-header-top. Testasin palvelua Free editionilla, sillä lähteenä testissä oli csv-tiedosto, jonka koko ei päätä huimannut (~5000 riviä, 25 saraketta). Testiaineistoni ominaispiirteet ja mallintamisen ongelmakohdat tunsin entuudestaan, joten mielenkiintoista oli nähdä se, että onko Watsonilla data-analyytikon aivot. Seuraavat tarkastelut ja huomiot koskevat luokittelu-aineiston/ongelman mallintamista (esimerkkiaineiston mielenkiinnon kohteena 2-luokkainen vaste).

 

1) Tutustuminen Watson Analyticsiin esittelyvideon avulla

Ennen palvelun hands-on-testaamista katsoin youtubesta esittelyvideon, jotta varmistuin siitä, että minun todella kannattaa tutustua palveluun. Olin melko vakuuttunut ”myyntivideon” annista, joten seuraavaksi menin ja loin tilin (IBM-id) osoitteessa http://www.ibm.com/analytics/watson-analytics/us-en/. Tilin luominen oli suoraviivaista ja pian olin jo kirjautumassa palveluun. Sivuhuomiona mainittakoon, että sähköpostiini ei ole tullut yhtään spämmiä tilin luomisen johdosta, pisteet siitä IBM:lle.

 

2) Welcome to Watson Analytics – eli Mitä Watsonilla voi tehdä?

Palveluun kirjautuessa avautuu selkeä Welcome-näkymä, josta näkee pääpiirteittäin mitä eri asiakokonaisuuksia Watson Analyticistä löytyy:

(+) Add – Lataa aineistosi tai jokin Watsonin esimerkkiaineistoista tarkasteltavaksi (tai sovella jotain seuraavista komponenteista jo ladattuun aineistoon)

Explore – Tutki aineiston rakennetta: Aineiston laatu, metatiedot, jakaumat, korrelaatiot, aggregoidut jakaumat, …

Predict – Muodosta automaattisesti ennustemalli aineiston pohjalta: Ennustemalli, tulkinnat, merkittävät tekijät, korrelaatiiviset suhteet, …

Assemble – Rakenna oma raporttinäkymä löydöksistäsi (ei käsitellä kirjoituksessa)

Social Media – Hae sosiaalisen median generoimaa tietoa (Twitter) hakusanojen avulla vrt. Google Trends

Refine – Muokkaa palveluun lähettämääsi aineistoa

1_Watson

Lähtökohtaisesti näytti siltä, että Watson Analyticssä on kaikki mitä tarvitsen, kuinka sitten Watson onnistui toteuttamaan fantasiani aineiston tarkastelun ja mallintamisen suhteen? Seuraavassa askel askeleelta testisession eteneminen:

 

3) Refine – Latasin aineistoni palveluun, halusin kuitenkin tehdä pieniä muokkauksia ennen aineiston syvällisempää analysointia ja mallintamista

Watsonissa pystyi helposti luomaan rivi- ja saraketason filtteröintejä aineistoon, sekä luomaan uusia laskennallisia sarakkeita. Esimerkkinä loin 4 uutta saraketta, jotka olivat laskennallisia jo olemassa olevista sarakkeista (jakolasku). Lähdeaineiston muokkaus oli visuaalista ja helppoa, mutta melko rajallista vaativampiin muokkauksiin.

2_Watson3_Watson

6_Watson

 

Pystyykö Refine-komponentilla yhdistelemään aineistoja? Entä aggregoimaan raaka-aineistoa mallinnettavaan muotoon? Pystyykö määrittelemään sarakkeiden tyypit, ts. pystyykö numeerisilla arvoilla täytetyn sarakkeen luokiteltuna? Pienen tutkimisen jälkeen en ainakaan itse löytänyt vastauksia palvelun sisältä.

Pyri siis muokkaamaan mallinnettava aineistosi oikeaan formaattiin ennen Watsoniin lataamista. Kevyet rivi- ja saraketason laskennat voit hoitaa kuitenkin palvelun sisällä, kunhan aineisto on valmiiksi oikeassa formaatissa.

 

4) Explore – Ennen aineiston mallintamista halusin saada ennakkokäsityksen aineiston laadusta ja jakaumista

Explore-komponentissa sai tarkasteltua aineistoa helposti ja nopeasti eri näkökulmista. Explore-ominaisuuteen oli selkeästi panostettu Watsonissa, aineiston pyörittelyä saattoi kutsua jopa taivaalliseksi!. Niin sulavaa ja helppoa, R:ssä samojen tarkasteluiden tekemisessä olisi mennyt useita tunteja, mitä Watsonissa pystyi tekemään muutamissa minuutissa. Fantastico!

Lataa aineistosi Watsoniin tarkastelua varten, elä turhaan pyri laittamaan aineistoasi tiptop kuntoon yhdeltä istumalta Excelissä (tai millä ohjelmalla aineistoa ikinä muokkaatkin). Anna Watsonin kertoa missä kunnossa aineistosi on!

11_Watson

 

5) Predict – Kun oli päästy sinuiksi aineiston kanssa oli aika muodostaa ennustemalli

Ennen mallintamista aineistoon pystyi määrittelemään sarakkeiden roolit, ts. pystyi rajaamaan mitä sarakkeita mallin luomisessa tuli käyttää hyväksi ja mitkä piti jättää huomiotta (esimerkiksi identifioivat sarakkeet). Nopean sarakkeiden roolituksen jälkeen alkoi Watsonin aivot raksuttamaan. Mitä Watson teki ja mihin johtopäätöksiin päädyttiin?

13_Watson

 

14_Watson

 

15_Watson

 

Mallinnusmenetelmä

Mallinnusmenetelmäksi Watson valitsi päätöspuun, tarkemmin ilmaistuna CHAID Decision tree (Chi-squared Automatic Interaction Detection). Watson automaattisesti diskretisoi jatkuvat sarakkeet luokkiin ja muodosti luokitellun aineiston avulla päätöspuun. Entä jos aineistossani olisi ollut enemmän sarakkeita tai vastaavasti rivejä merkittävästi vähemmän, olisiko Watson hylännyt menetelmän ja esittänyt muun mallinnusmenetelmän tulokset? (tilanteet, joissa CHAID ”ajautuu” ongelmiin diskretisoinnista johtuen). Tiedän, että Watson kykenee muodostamaan myös logistisen regression (sisältäen muuttujien diskretisoinnin), ehkä siihen olisi päädytty mainitussa tilanteessa.

16_Watson

 

20_Watson

 

Mallin ennustetarkkuus

Mitä tarkalleen tarkoittaa Predictive strength? Tarkasteltavan aineiston osalta mittari näyttää 90.3%, onko kyseessä suoraan oikein ennustettujen osuus kaikista havaintoriveistä? Kyllä vain. Tämän osalta olisi suotavaa, että valittavana olisi useampia eri mittareita mallin tarkkuuden tarkastelemiseen. Mallin tarkkuus 90.3% kuullostaa melko hyvältä, Watson kuitenkin ilmoittaa, että mallin ”ennustevoima” on heikko. Selkeästi jotain muitakin tarkkuuden mittareita on käytössä, mutta ne pysyvät taustalla. Watsonissa on huomioitu se seikka, että vaste-sarakkeen jakauma voi olla hyvinkin vino, kuten esimerkkiaineistossa (asiakaspoistuma). Tästä johtuen on mahdollista tarkastella mallinnustuloksia myös eri näkökulmista.

28_Watson

 

27_Watson

 

Merkittävät selittävät tekijät ja mallin tulkinta

Watson antaa ainakin päätöspuun tapauksessa kaikki tarvittavat yksityiskohdat mallin tulosten tulkitsemisesta, jopa siten, että Watson tulkitsee sinulle valmiiksi kaikki oleellisimmat säännöt ja huomiot mallintamisen yksityiskohdista. Esimerkkiaineiston tapauksessa tulee selkeästi esille mitkä ovat poistumaan eniten vaikuttavat tekijät. Ihailtavan kattava yhteenveto!

 

18_Watson

 

Mitä muuta sain irti Predict-komponentista

  • Predict-näkymässä pystyi tarkastelemaan sarakkeiden välisiä korrelaatioita käden käänteessä, tämä on erittäin hyvä ominaisuus tulkinta vaiheessa, kun ihmetellään, että miksi joku sarake ui malliin mukaan ja toinen ei (syy saattaa löytyä sarakkeiden välisestä korrelaatiosta)
  • 19 saraketta sisältää poikkeavia havaintoja
  • 10 sarakkeella on vino jakauma
  • 2 luokiteltua saraketta on epätasapainoisia
  • Ennustetarkkuudelta parhaaseen malliin valittiin 9 selittävää saraketta

22_Watson

 

Watsonin luoma kokonaisuus mallinnuksen tuloksista on todella kattava, jopa niin kattava, että suurin osa testisession ajasta meni ihmetellessä tuloksia. Tämä on tietysti palvelun tarkoituskin. Kattavuudesta huolimatta minulle jäi joitakin kysymysmerkkejä ilmaan:

Mistä saa esille aineiston poistumatodennäköisyyksineen? Miten Watson otti huomioon ylioppimisen, käyttikö se hyväkseen testi-/opetusaineisto ideologiaa? Tuleeko Watsoniin ominaisuus, jolla luotua mallia voidaan käyttää ennustamiseen vai onko tarkoitus vain selvittää mitkä tekijät vaikuttavat vasteeseen ja millä tavalla?

Kaiken kaikkiaan olen melko vakuuttunut Watsonin kyvyistä mallintamisen suhteen, päädyin itse hyvin samankaltaiseen malliin tehdessäni vertailuanalyysin Rapidminerillä. Vaikuttaa siltä, että Watson analytics on rakennettu Explore-komponentti edellä ja Predict-komponentti tulee kehittymään vielä tulevaisuudessa, jotta päästään todella ennustamaan muodostetulla mallilla. Voin suositella kokeilemaan Watsonin luomaa mallia referenssimallina, vaikka lopullisen mallin tekisitkin jollain muulla välineellä, sillä Watson voi paljastaa jotain, jota et ehkä ole itse huomioinut.

 

5) Yhteenveto:

Watsonin vahvuudet:

Helppokäyttöinen – Matala oppimiskynnys

Visuaalisuus – Näyttävät ja monipuoliset graafit, sekä raportointimahdollisuudet pelkästään hiirtä klikkailemalla

Nopeus – Watson toimii yllättävän stabiilisti ja nopeasti pilvipalveluksi (ainakin testin aikana)

Tulosten tulkinta – Tuloksia tulkitaan valmiiksi käyttäjälle ja tuloksien auki perkaaminen on toteutettu todella kattavaksi

Watsonin heikkoudet:

Datan muokkaus – Vähänkään vaativammat datan muokkaukset eivät onnistu? (esim. datan yhdistäminen)

Itse ennustaminen – Ennustamisessa saadaan selville mitkä tekijät vaikuttavat kiinnostuksen kohteena olevaan sarakkeeseen, mutta muodostetulla mallilla ei ilmeisesti pysty (ainakaan vielä) ennustamaan uuttaa aineistoa (esim. nykyasiakkaita)

Ei räätälöitävissä – Ennustemallin toteuttaminen on tehty liiankin automaattiseksi, ei kauheasti mahdollisuuksia vaikuttaa siihen mitä mallinnuksessa tapahtuu

 

Entä miten Watson Analytics pärjää taistelussa Azure ML:n kanssa? Siitä seuraavassa kirjoituksessa lisää. Laitettiin nimittäin Niemijärvi mallintamaan, jotta palveluiden vertaaminen olisi tasavertaista. Päihittääkö Watson “ei-niin-kokeneen” datakemistin?


4.05.2016 / Mika Tanner

Digitalization is undoubtedly one of the most important global trends affecting all sectors of activity. The trend has not yet even peaked. Well, the term is worn out and tired, but digitalization opportunities are far from having been depleted. The tip of the iceberg is visible but we are really just at the beginning of wide-spread adoption and larger scale.

Digitalization is one of not-so-many themes which has joined business and IT in a meaningful discussion on something other than just costs. The rhetoric has luckily simplified to a point where you don’t have to have a PhD in computing science to be able to understand and credibly discuss complex solutions that were formerly under the sole jurisdiction of the IT department. The office of the CIO is more often in the same building as the CEO’s, sometimes rarely even on the same floor. The role of the Chief Digital Officer was conceived almost as a compromise to legitimize blending IT with business. And on the other hand, you won’t be able hire any modern age, digitally savvy professionals into the IT organization unless you brand it correctly.

With all this talk, positive energy and momentum, it pains me to see how speed of adoption is curbed by unnecessarily old-school thinking and disciplines which date back a decade or so. Business and IT are both guilty. The larger the company, the worse it gets. When I hear someone praising themselves by saying “yes, we fully understand the opportunity so we have now qualified the solution into our roadmap”. I can see how it will be adopted about three years from now. This translates to me as “we don’t want to achieve new business benefits and improve our competitive advantage until 2019.”

“Delay is the deadliest form of denial” – C.N. Parkinson

Another interesting speed bump, symptomatic of not quite being on par with what is going on, is proofing concepts. Instead of genuinely adopting agile software development and harnessing a DevOps culture, many start with a Proof-of-Concept (PoC). Unfamiliarity is not the only reason. Lack of funds, lack of trust in own capabilities and lack of trust in IT vendors are also to blame. Sometimes the final solution is pegged deep into The Roadmap, so that proofing will let the solution fly under the budget radar.

Some will say, “proofing is kind of a first sprint in the project”. Well, the same people will run multiple PoC’s in parallel with different solutions. I don’t even mind what the solution vendors think about this, I am just concerned about those who are funding this frenzy and curious to know who is fooling who.

Others will say it is better just to accept proofing as the new norm. So it seems to be, I am merely challenging the merits of proofing in those cases where there is little left to prove.

If you look at which industries are furthest in adopting new, digitally-enabled disruptive business models, you will see many of them actually didn’t have such a long bridge to cross to begin with. Banking and Finance, Retail and FMCG all have had quite sophisticated solutions all along with so the leap to Big Data, fully fledged omni-channel commerce, native mobility, social, new channels, advanced analytics and globalization were just paced steps and they are all the new normal for them. A commonality for them is that B2C is the prevailing transaction, which means that the collective bargaining power is immense due to a more dynamic market environment. Near-perfect competition forced them to digitize their business.

The comparison to capital intensive, brick-and-mortar B2B industries is almost unfair. The absence of a an appropriate cultural climate for investing into anything else but new production capacity and tuning-to-death operational efficiency have dictated how investment funds have been channeled. There also seem to be many internal barriers preventing disruptive changes. One of them is that group-wide solutions are feared to erode local autonomy/control and change resistance always delays change. The engineering heritage of these companies also means that rapid adoption of digital solutions either get suffocated by obese purchasing processes or they get swamped into the infamous Roadmaps. The problems, delays and costs go ballistic if purchasing is outsourced to external specialists. Their business model can only support long purchasing processes involving as many stakeholders as possible.

If you need some more contrast, compare the digital maturity of Finland compared to Sweden. There are enough relevant similarities with the two countries to legitimatize the question why hasn’t Finland succeeded as well in developing digitally empowered hyper-growth businesses?

I’ll stop whining here. So what do I suggest?

For one, it might be refreshing if decision-makers (preferably CxOs) were to genuinely pay closer attention to time-to-profit expectations on digital solutions. Has anyone proved that all this indecisive fiddling around, roadmapping and processing has a better ROI than an iterative learn-fast approach? I doubt it. And I encourage anyone to prove me wrong. TCO and TCI might be better, but meanwhile if you lose your customers, your business and your edge, who really cares about these cost-centric KPIs. Business leaders should have much more aggressive ambitions in adapting to the modern age because the digital solutions they need almost surely already exist. It is largely just about trusting their business insight and focusing on speed of execution. I am not being intentionally naïve – of course there are business continuity concerns and technical considerations to manage, but hiding behind these seems to be too often the default excuse and a safeguarding mechanism to stay in the comfort-zone.

Comparing solutions is also almost pointless, especially if the pageant takes 6-12 months. There will always be an even better solution just around the corner and yet another one after the next one. I am not talking about switching the bedrock ERP (if that is what you are considering) every year. But when you look at gaining competitive advantage, don’t overestimate the size of the window of opportunity. Here again, speed trumps comprehensive risk-averse selection processes which result in lots of money for nothing.

This goes especially to those who think their business is not apt for digital commerce – today’s commerce solutions are not just webshops. If you look at what digital commerce has done to B2C business, for B2B the advantages are easily tenfold. Firstly, world-class digital B2B commerce is a comprehensive end-to-end solution which covers real-time analytics (where you find most of your immediate gains), involves sophisticated business process integration and systems integration (ERP, pricing, master-data, logistics etc.), integrated CRM (including marketing automation), fit-for-purpose omni-channel commerce (real-time customer specific pricing, sophisticated ERP integration). B2B commerce is a service-driven exchange where customers and your own customer-facing people interact and collaborate. It is not just for placing orders, it is all about superior customer experience and improving your competitive advantage.

The digital duel between Finland and Sweden is not really about digitalization. Finland’s Digital Delay doesn’t refer so much to digital immaturity as it does to the slowness of our unicorns’ gallop. Finland probably wins hands down in engineering horsepower, but lacks in commercialization acumen. Either Swedish royalty are descendants to Midas or they have some other mythical abilities to translate ideas into fortune. I applause Slush and other igniting initiatives and I also agree that starting up is critically important. But for the continuum, growing up is even more important.

Some companies proudly follow a laggard strategy what comes to adopting new technology. Waiting for new solutions to mature and then adopt tested and proven solutions into their roadmaps. This was just fine a couple of years ago, but in today’s world, this means you are digitally delayed and my argument is that this is not the winning strategy. At the rate at which the B2B is becoming more like B2C from a digitalization standpoint, not a single company should say they can afford to be a laggard. Digital Delay can mean that when you wait, others accelerate and overtake you and that you might never catch up.


4.05.2016 / Mika Tanner

Digitalization is undoubtedly one of the most important global trends affecting all sectors of activity. The trend has not yet even peaked. Well, the term is worn out and tired, but digitalization opportunities are far from having been depleted. The tip of the iceberg is visible but we are really just at the beginning of wide-spread adoption and larger scale.

Digitalization is one of not-so-many themes which has joined business and IT in a meaningful discussion on something other than just costs. The rhetoric has luckily simplified to a point where you don’t have to have a PhD in computing science to be able to understand and credibly discuss complex solutions that were formerly under the sole jurisdiction of the IT department. The office of the CIO is more often in the same building as the CEO’s, sometimes rarely even on the same floor. The role of the Chief Digital Officer was conceived almost as a compromise to legitimize blending IT with business. And on the other hand, you won’t be able hire any modern age, digitally savvy professionals into the IT organization unless you brand it correctly.

With all this talk, positive energy and momentum, it pains me to see how speed of adoption is curbed by unnecessarily old-school thinking and disciplines which date back a decade or so. Business and IT are both guilty. The larger the company, the worse it gets. When I hear someone praising themselves by saying “yes, we fully understand the opportunity so we have now qualified the solution into our roadmap”. I can see how it will be adopted about three years from now. This translates to me as “we don’t want to achieve new business benefits and improve our competitive advantage until 2019.”

“Delay is the deadliest form of denial” – C.N. Parkinson

Another interesting speed bump, symptomatic of not quite being on par with what is going on, is proofing concepts. Instead of genuinely adopting agile software development and harnessing a DevOps culture, many start with a Proof-of-Concept (PoC). Unfamiliarity is not the only reason. Lack of funds, lack of trust in own capabilities and lack of trust in IT vendors are also to blame. Sometimes the final solution is pegged deep into The Roadmap, so that proofing will let the solution fly under the budget radar.

Some will say, “proofing is kind of a first sprint in the project”. Well, the same people will run multiple PoC’s in parallel with different solutions. I don’t even mind what the solution vendors think about this, I am just concerned about those who are funding this frenzy and curious to know who is fooling who.

Others will say it is better just to accept proofing as the new norm. So it seems to be, I am merely challenging the merits of proofing in those cases where there is little left to prove.

If you look at which industries are furthest in adopting new, digitally-enabled disruptive business models, you will see many of them actually didn’t have such a long bridge to cross to begin with. Banking and Finance, Retail and FMCG all have had quite sophisticated solutions all along with so the leap to Big Data, fully fledged omni-channel commerce, native mobility, social, new channels, advanced analytics and globalization were just paced steps and they are all the new normal for them. A commonality for them is that B2C is the prevailing transaction, which means that the collective bargaining power is immense due to a more dynamic market environment. Near-perfect competition forced them to digitize their business.

The comparison to capital intensive, brick-and-mortar B2B industries is almost unfair. The absence of a an appropriate cultural climate for investing into anything else but new production capacity and tuning-to-death operational efficiency have dictated how investment funds have been channeled. There also seem to be many internal barriers preventing disruptive changes. One of them is that group-wide solutions are feared to erode local autonomy/control and change resistance always delays change. The engineering heritage of these companies also means that rapid adoption of digital solutions either get suffocated by obese purchasing processes or they get swamped into the infamous Roadmaps. The problems, delays and costs go ballistic if purchasing is outsourced to external specialists. Their business model can only support long purchasing processes involving as many stakeholders as possible.

If you need some more contrast, compare the digital maturity of Finland compared to Sweden. There are enough relevant similarities with the two countries to legitimatize the question why hasn’t Finland succeeded as well in developing digitally empowered hyper-growth businesses?

I’ll stop whining here. So what do I suggest?

For one, it might be refreshing if decision-makers (preferably CxOs) were to genuinely pay closer attention to time-to-profit expectations on digital solutions. Has anyone proved that all this indecisive fiddling around, roadmapping and processing has a better ROI than an iterative learn-fast approach? I doubt it. And I encourage anyone to prove me wrong. TCO and TCI might be better, but meanwhile if you lose your customers, your business and your edge, who really cares about these cost-centric KPIs. Business leaders should have much more aggressive ambitions in adapting to the modern age because the digital solutions they need almost surely already exist. It is largely just about trusting their business insight and focusing on speed of execution. I am not being intentionally naïve – of course there are business continuity concerns and technical considerations to manage, but hiding behind these seems to be too often the default excuse and a safeguarding mechanism to stay in the comfort-zone.

Comparing solutions is also almost pointless, especially if the pageant takes 6-12 months. There will always be an even better solution just around the corner and yet another one after the next one. I am not talking about switching the bedrock ERP (if that is what you are considering) every year. But when you look at gaining competitive advantage, don’t overestimate the size of the window of opportunity. Here again, speed trumps comprehensive risk-averse selection processes which result in lots of money for nothing.

This goes especially to those who think their business is not apt for digital commerce – today’s commerce solutions are not just webshops. If you look at what digital commerce has done to B2C business, for B2B the advantages are easily tenfold. Firstly, world-class digital B2B commerce is a comprehensive end-to-end solution which covers real-time analytics (where you find most of your immediate gains), involves sophisticated business process integration and systems integration (ERP, pricing, master-data, logistics etc.), integrated CRM (including marketing automation), fit-for-purpose omni-channel commerce (real-time customer specific pricing, sophisticated ERP integration). B2B commerce is a service-driven exchange where customers and your own customer-facing people interact and collaborate. It is not just for placing orders, it is all about superior customer experience and improving your competitive advantage.

The digital duel between Finland and Sweden is not really about digitalization. Finland’s Digital Delay doesn’t refer so much to digital immaturity as it does to the slowness of our unicorns’ gallop. Finland probably wins hands down in engineering horsepower, but lacks in commercialization acumen. Either Swedish royalty are descendants to Midas or they have some other mythical abilities to translate ideas into fortune. I applause Slush and other igniting initiatives and I also agree that starting up is critically important. But for the continuum, growing up is even more important.

Some companies proudly follow a laggard strategy what comes to adopting new technology. Waiting for new solutions to mature and then adopt tested and proven solutions into their roadmaps. This was just fine a couple of years ago, but in today’s world, this means you are digitally delayed and my argument is that this is not the winning strategy. At the rate at which the B2B is becoming more like B2C from a digitalization standpoint, not a single company should say they can afford to be a laggard. Digital Delay can mean that when you wait, others accelerate and overtake you and that you might never catch up.