Förr i tiden kunde man som större organisation ha ryggen fri om man hade en avdelning med folk som kunde statistik. Kanske räckte det med att statistikerna skickade ut en kvalificerad åsikt en gång per kvartal som en aptitretare inför den årliga trycksaken som beskrev föregående år. Men det var då det.
Numera är marknaden kring att nå insikt och att jobba proaktivt (prediktivt?) lite mer stressad än så. Detta är på grund av den allt större åtkomst till nyttiga data och att bra datakällor blev en resurs och en konkurrensfördel. När detta först dök upp i IT-sammanhang kallades detta för data mining och mycket riktigt handlade det om att – likt ett dagbrott eller gruva – försöka gräva sig fram till någon användbar insikt som dolde sig i all den data som stuvats undan.
Data science är inte en IT-fråga
Data science, eller närmare bestämt det som definierats som Data-Driven Decision Making (DDD), har studerats för vilken effekt det har (Brynjolfsson, Hitt, Kim, 2011) och det visar sig vara lönsamt. Det finns en korrelation mellan DDD och avkastning, beläggning, marknadsvärde och relationen ser ut att ha ett orsakssamband. Data science tycks vara en framgångsfaktor, leda till ökad produktivitet och avkastning.
“Data science involves principles, processes, and techniques for understanding phenomena via the (automated) analysis of data. […] view the ultimate goal of data science as improving decision making”
– Data Science for Business (2013)
Anledningen till att åtminstone alla som har en ledande funktion behöver känna till något om data science är vad jag antytt ovan – det är en naturresurs. Precis som ledare i ett industriföretag behöver allmänbildning kring vilka resurser som är förutsättning för verksamheten behöver man rätt god kännedom om det värde som finns i datakällor, och kanske lite om hur man utvinner värdet.
I vissa organisationer är data science verksamhetens kärna. Exempel på sådana företag är många av de snabbt växande företagen som utmanar etablerade branscher. Ofta gömmer sig denna smarthet bakom populära appar, musikspelare, webbplatser och alla budskap du tar emot är allt mer sällan baserade enbart på någon ledares magkänsla.
Data science utmanar HIPPO (Highest Paid Person’s Opinion)
Nog för att erfarenhet fortfarande är viktigt i hur man prioriterar och utför sitt jobb, men det är inte längre en hållbar lösning att enbart gå på magkänsla. Magkänslan kan få stöd av efterforskning i de datakällor man har tillgång till, eller så använder man data för att göra en första sållning av de valmöjligheter som står till buds.
Du har säkert tagit emot budskap och förslag från en butik någon gång. I forntiden kunde nog handlaren försöka ge personlig service till en begränsad grupp kunder, medan vi idag kan erbjuda en motsvarighet till samtliga kunder om än i en automatiserad form utan personlig kontakt eller ett leende ansikte.
Masskommunikationen är död
Ett populärt exempel på ett personaliserat butikserbjudande är tonårsflickan som fick förslag från butikskedjan Target om att köpa baby-produkter. Hennes köpbeteende antydde att hon var gravid, vilket visade sig stämma.
Det här fenomenet att rikta budskap till var och en är i hopp om att avsändarens mål ska uppfyllas är också det som kallas filterbubbla. Risken är att man inte får in några nya intryck och därmed stagnerar. Dels att man varje dag får sin världsbild bekräftad i de medier och sociala nätverk man deltar i, men också att man aldrig får några intressanta infall. Med andra ord måste man vid design av sina lösningar tänka till hur man utmanar de antaganden som byggs upp. Att en kund kan bli gravid är kanske ett gångbart exempel på vad man behöver ta höjd för, men hur skulle du bygga upp ett rekommendationssystem för musik eller böcker så en användare får nya intryck emellanåt?
Proaktivitet: Två dagars förvarning om extraordinär händelse – vad gör du då?
Låt säga att meteorologerna pekar ut att en storm av klass 3 med största sannolikhet kommer dra in över det område där ni har er verksamhet. Hur tar du dig an den utmaningen utöver att börja varva upp krishanteringen?
Ett sätt är att inventera vilka datakällor som har historiska data som gör att man kan planera lite, ordna med logistik, med mera. På så vis kan man få reda på omfattningen av något vid ett tidigare tillfälle, samtidigt som man inte låter data diktera exakt hur man går tillväga.
Uppdraget för en data scientist är att nyfiket utforska ifall det finns nya insikter att plocka upp, eller att utmana inarbetade antaganden om sakernas tillstånd.
- Vilka följdverkningar hade en liknande händelse sist?
- Tycks det uppenbara bekräftas av datakällorna eller behöver de nyanseras?
- Hur når man en översikt och upptäcker det som inte är uppenbart? Hur hittar man signalen mitt i allt brus?
En motsvarande insikt nåddes i USA efter en storm när en butikskedja analyserat försäljningen. Utöver uppenbara grejer som ficklampor visade det sig att Pop-Tarts med jordgubbssmak sjudubblade i försäljning inför stormen. Det som sålde bäst inför stormen var dock öl. Om enskilda väldigt efterfrågande produkter inte ska sälja slut är man tvungen att anpassa leveranserna.
Att förutsäga något
Det är varken magi eller vidskepelse att förutsäga (jobba med prediktion) i detta fall. Ta exemplet med flickan vars graviditet upptäcktes först av butikskedjan. Hur går sånt till egentligen?
Jo, om man har tillräckligt många datakällor kan en bild börja utkristallisera sig, om man vet vad man letar efter. Butikskedjan insåg potentialen att erbjuda relevanta förslag, utvärderade på historiska data vilket köpbeteende som senare bekräftade sig som en lyckad graviditet (antagligen i form av blöjköp). Det finns vissa signaler att leta efter i allt brus. De som är medvetna om sin graviditet ändrar inte sällan sin kosthållning, börjar äta vitaminer och annat som är rekommenderat för att maximera chansen att allt ska gå bra.
Men det är en sak att hitta historiska spår när man redan filtrerat ut dem som frekvent började köpa blöjor, en helt annan att peka på en enskild kunds nuvarande beteende och anta att de är gravida. Här kommer också det (o)känsliga in i att automatisera saker. Ser man det strikt affärsmässigt kan det vara klokt att först utvärdera risken med att stöta bort kunder där något gick åt pipan med graviditeten. Det är också smart att tänka igenom hur man uttrycker sig. Att gratulera till graviditeten och tipsa om lämpliga produkter kan dels upplevas som ett övertramp mot den personliga integriteten, men lika gärna dimpa ner hos kunden dagen efter ett traumatiskt missfall.
Det hela är en avvägning. Är precisionen i förutsägelsen tillräckligt bra för att det ska upplevas som relevant? Är det rationellt att tro att nytta uppstår?
“Wow! Men, vad kan jag göra nu som inte var möjligt förut?”
Den viktigaste frågan man bör ställa sig när man fått igång sitt arbete med data science är antagligen vilka nya möjligheter som erbjuds. Snarare än hur man fortsätter med business-as-usual fast något förbättrat.
Det kan säkert visa sig att man med nuvarande datakällor inte kan göra något som är revolutionerande för verksamheten. Noterade du den lilla ledtråden i meningen? “nuvarande datakällor” är inte ett nuläge man måste acceptera, istället kan man kolla på vilka sätt man kan komplettera det man har med det man behöver. Kanske behöver man bedriva lite “registervård”, köpa in en datakälla eller kanske investera i att samla in ny information.
“Ålrajt! Men det där med maskininlärande och artificiell intelligens _alla_ pratar om då?”
Utöver att läsa på och öva på data science läser jag en hel del böcker om AI och maskininlärande. Så här långt är de tre extremt svåra att skilja åt, i alla fall om man nu inte refererar till begreppen som akademiska studieobjekt.
Maskininlärande…
Först om begreppet maskininlärande. Eller “maskin-lärande” kan hjälpa som ordbild då det inte handlar om inlärning vilket var det första misstaget jag gjorde, att det svenska begreppet var maskin-inlärande och att det var det som var kopplingen till artificiell intelligens.
Snarare tycks maskininlärande vara just hur man använder maskiner för att lära oss människor något. Som avdankad programmerare är detta precis vad jag avser med att “massera” en datakälla för att hitta svaret på en fråga. Det finns rent utav språk för dessa frågor mot datakällor, exempelvis Structured Query Language (SQL) som varit en del av mitt arbete i snart tjugo år.
Maskininlärande kan dock vara mer komplicerat än en SQL-fråga som “hämta de 20 mest sålda produkterna sålda kvartal 1, 2017”. Men principen är likartad. En maskininlärande fråga kan vara lite mer utforskande, både att maskinen ska lyda mina instruktioner till punkt och pricka, men också icke-styrd utforskande. En icke-styrd fråga (kallas för unsupervised) är mer åt “kolla på det vi sålde kvartal 1 under 2017 och se om du hittar några intressanta mönster”. Svaret kan mycket väl vara uppenbart för den som kan sin verksamhet väl, men det kan också visa sig gömma sig saker som inte människor är fullt så bra på att upptäcka.
Som du nog listat ut är maskininlärande en uppsättning arbetssätt att kunna ställa frågor till datakällor. Med andra ord något som görs under tiden man jobbar med data science – ett begrepp för de praktiska handgreppen, kanske.
Artificiell intelligens…
Maskininlärande är också en förutsättning för artificiell intelligens (AI), för utan det måste ens AI gissa helt utan att ha några belägg baserat på data. Maskininlärande är alltså en automatiserad kunskapsinhämtning och beslutsmässighet för att det “intelligenta” inte ska vara så statisk, snarare behöver det kunna hantera nya omständigheter för att vara intelligent.
Det är just i detta kontroversen (ja jag är själv sällan imponerad över den påstådda intelligensen i företags “AI”) om hur intelligenta dessa system är.
Utvecklare skojar ibland att AI är marknadsförarnas sätt att sälja produkter som har en obegriplig röra av på förhand bestämda beslut (så kallade if-satser, eller nästlade beslut som “om detta händer svarar datorn så här…”).
En standardiserad nivå på intelligent beteende är Turingtestet , det är ett mått på hur mänskliga egenskaper ett tekniskt system kan uppvisa. Nu är potentialen för AI att skapa något som överträffar människors förmåga, men i dagens hypade konversationsbaserade gränssnitt räcker det med att en AI inte är väsentligt mycket sämre än en vanlig kundtjänstmedarbetare.
Så för att återgå till vad AI och maskininlärande har med data science att göra så anser jag att AI är när man produktifierat insikten man nått genom att jobba med data science. AI är bakom den där kundtjänsten, det som tipsar om ett bra vin till fläskfilén och som ger dig individuella träningsråd baserat på din hälsa.
Maskininlärande är det AI gör löpande för att inte ha en fixerad världsbild (läs på om overfitting om detta känns intressant), men maskininlärande är också ett sätt att dra nytta av en dators styrkor när man jobbar med data science för att utforska datakällor i jakt på potential.
Nördigt om begrepp
Det blir mycket hårklyverier och filosofi när man är i utkanten av sin professionella komfortzon. Förstår jag vad det där simpla begreppet betyder och menar hen samma sak som jag?
Ett sådant begrepp är information. Man har det väl intuitivt vad det betyder i många sammanhang, men att säga vad det inte är blir komplicerat. En definition ur boken Data Science for Business är att:
“information is a quantity that reduces uncertainty about something”
Den boken exemplifierar det hela med att få en skattkarta från en pirat. Det betyder inte att jag nödvändigtvis vet var skatten är, men min osäkerhet har åtminstone reducerats något.
Ett annat begrepp är data. Vissa vill hävda att data är neutralt, utan både bias och tolkning. Men en enskild data-punkt är i sig självt ett urval av något. Finns ett flertal data-punkter börjar det bli tydligt att urvalet är baserat på någon form av beslut. Sommaren 2016 var bland annat Google i skottlinjen för att ha rasistiska algoritmer. Dels har en algoritm en skapare och skaparen har en kulturell bakgrund. Men även den mest obefläckade och humanistiska algoritmen verkar på en mängd data som är någon form av urval. I Googles fall var det snarare urvalet av bilder i deras bildsök som gjorde skillnad på folk och folk.
Och att statistik ibland används för att projicera sin världsbild lär de flesta ha märkt, så inte heller det är så neutralt som vissa vill få en att tro.
Entropi – konsten att minska oordningen i en informationsmängd
Entropi är ett begrepp som också används av andra yrkesgrupper, fysiker bland annat. Det lilla jag förstår som nyfiken lekman är att det i stora drag betyder samma sak. Entropi kan inom informationsarkitektur ses som ett mått på oordning. Ett annat sätt att tänka på det är hur informativ en mängd data är.
Entropi kan uttryckas i ett decimalvärde mellan noll och ett. Noll betyder att entropin är obefintlig och ett att entropin är maximal. Om informationsmängden består av mig och min fru, samt frågan är hur vanligt förekommande det är att ha en prostata blir entropin 1 (ett). Av populationen som består av två individer så har hälften en prostata.
Om frågan istället är antalet ben är svaret två för båda individerna. Då blir entropin 0 (noll) eftersom variationen är obefintlig, alla har samma.
Information Gain (IG) – att förädla data till information
Det är fullt förståeligt att du undrar vad tusan det här resonemanget ska leda till. I korta ordalag används det för att gruppera och försöka beskriva något. Entropin blir ett mått på vad vi vet om något och ifall vi uppnått information gain (IG) genom att vrida och vända på våra data. Det kan handla om att beskriva hur en maskin ska leta mönster i något den inte kan något om. Om vi uppnår en högre förädling (IG) av vår data kan man instruera maskinen att fortsätta, man programmerar den att ha segervittring och fortsätta lite till.
Ett exempel är om urvalet av något består av tio personer. Fem kvinnor och fem män. Då är entropin fulländad, mångfald och oreda finns.
Om en maskin ska försöka förädla, lära sig något och uppnå information gain behöver den ett sätt att bedöma det hela. Ett exempel är att det inte finns mycket insikt att hämta i att räkna antalet armar och ben, det skiljer sällan människor åt. Däremot finns det en relation mellan biologiskt kön och sannolikheten för ett visst antal organ.
Så om en maskin delar upp det den känner till om biologiskt kön minskar entropin för ifall en person i gruppen “kvinnor” har en prostata, äggledare, m.m. Samma gäller för män. På något sätt verkar biologiskt kön hjälpa till med att förutspå andra saker.
Om man matar sin maskin med mer information kommer den förr eller senare räkna ut att entropin för prostatacancer tycks ha ett samband med att individen har en prostata, vilket verkar hänga ihop med ett biologiskt kön. På så vis har den skaffat sig en mer finkorning bild och det går således att ställa fler frågor till maskinen. Exempelvis kan man be den beskriva allt den “vet” om prostatacancer.
Sammanfattning: Lärande eller intelligent?
Tycker du att maskinen verkligen lärt sig något när den systematiskt tuggar sig igenom datakällor på detta sätt och försöker minska entropin, omforma för att öka information gain? Kanske inte. Men nog tusan är maskiner bra på att outtröttligt jobba dag och natt. Inte heller kräver maskinerna övertidsersättning, semestertillägg eller att få ta föräldraledigt.
Så min roll som data scientist är primärt att instruera en maskin så att den “lär sig” grejer lite grand på egen hand. Baserat på eventuella fynd kan man paketera lösningarna som recept på saker andra behöver hjälp med.
Syr man ihop detta blir de lite av en personlig assistent som kanske inte direkt är klipsk eller intelligent men i alla fall kan anförtros till enklare sysslor som är hyggligt välavgränsade.
Hej! Här är en bra resurs som förtydligar begreppen inom AI: http://aiplaybook.a16z.com/docs/guides/ai-terms
En viktig distinktion är att machine learning eller maskininlärning inte kan likställas med att köra ad-hoc queries över rådata(som t.ex. att köra SQL queries över ditt affärsdata för att själv lära sig mer om datat).
Intressant med din kommentar om träd av komplicerade if-satser, lite så kan man se på random forrest som är en populär teknik inom machine learning. Då sätts dina conditions i if-satserna dynamiskt baserat på de träningsexempel du matar algoritmen med.
A16Z är en poddfavorit också!