Odd Erik om replikering av AI-forskning

file (1)

Syntes jeg dro kjensel på fotografiet – og jammen var det ikke Odd Erik Gundersen (som jeg sitter i styret i SmartHelp sammen med) som ble intervjuet og har skrevet en glimrende (og tilgjengelig) kronikk i Morgenbladet om diskusjonen om forskningskvalitet. Det er et stendig problem innen forskning (også innen informatikk) at forskningsresultater ikke lar seg replikere.

Innenfor kunstig intelligens (eller, vel, maskinlæring som jeg regner med at det er snakk om her) er dette ekstra viktig fordi utviklingen av maskinlæringsalgoritmer i motsetning til vanlig vitenskapelig metode er teoriløs – man har masse data, kjører en søkealgoritme over mange modeller og modellvarianter, og så ender man opp med et eller annet resultat, gjerne uttrykket ved en confusion matrix eller en validation curve (også kalt learning curve).

Ofte finner man at når folk snakker om at de har en modell som er «94% nøyaktig» så snakker de om nøyaktigheten på treningsdataene (der modellen er utviklet) og ikke på testdataene (som er de dataene man holder til side for å se om modellen, utviklet på treningsdataene, er nøyaktig.) Dermed får man modeller som har svært høy nøyaktighet (ikke noe problem å komme til 100% hvis man bare er villig til å ta med nok variable) men som brukbare til noe som helst.

Og det er et problem ikke bare i maskinlæring, men i all forskning. Det er bare det at i maskinlæring finnes dataene og programmene lett tilgjengelige, problemet er synlig, og det er sjelden noen grunn til å skjule det.

Bortsett fra at noen trenger å publisere noe, heller enn å bygge en god modell.

Norsk Tipping – hvem skal de ringe til?

tanjadenne reportasjen i Aftenposten i dag, om hvordan Norsk Tipping kontakter folk som taper mye penger og gjør dem oppmerksom på at de kanskje har et spilleavhengighetsproblem. Og årsaken til at jeg blogger om det er at a) en av studentene mine fra kurset Analytics for Strategic Management, Tanja Sveen (se foto, fra Aftenposten) er omtalt (når jeg tenker meg om, har studentene eksamen i dag), og b) et av prosjektene i kurset (som jeg faktisk kan snakke om, de fleste er konfidensielle) er Norsk Tippings analyseprosjekt for å finne ut av hvem de skal ringe til.

Norsk Tipping har begrenset kapasitet for telefonsamtaler, så de må bestemme seg for hvem de skal ringe til, ikke bare ut fra hvem som spiller mest, men også ut fra faktorer som hvem som vil ha mest nytte av en slik samtale.

Prosessen Norsk Tipping må gå gjennom, er svært lik mange andre maskinlæringsprosjekter: Man har en historikk (folk som spiller (mange), folk man ringer til (færre), og hva som skjer etter at man har ringt (f.eks. om de slutter med eller reduserer spillevirksomheten eller ei.) Man identifiserer (basert på historikk og andre kriterier) hvem som står i fare for å utvikle spilleavhengighet, og lar maskinen se på historikken og lage en modell for hvem i utvalget man skal ringe til, basert på en rangering av sannsynligheten for positiv effekt.

Det er mange problemer med slike modeller, både før man spesifiserer den – hva er kriteriene for å bli valgt ut, for eksempel, siden det er vanskelig å avgjøre om folk er spilleavhengige eller bare har god råd, og hvordan man skal måle hva som er ønsket effekt eller ikke – og mer tekniske problemer – for eksempel ubalanserte datasett (man har mange observasjoner av spillere, men relativt få av folk med utviklet spilleavhenighet, for eksempel. Hvis du skal lete etter terrorister blant flypassasjerer, er ikke problemet at du har for få passasjerer – du har for få eksempler på terrorister…).

Alt dette lærer man om på kurset. Det som er interessant med Norsk Tipping, er at de tar en forskningsbasert tilnærming til dette: De tar utgangspunkt i det de vet, setter opp en modell for å vurdere om ting virker eller ikke, og hvordan de kan justere det de gjør, og så kommer de til å gjøre dette en stund og lære av erfaringene. Prosessen er i utgangspunktet teori-fri, hvilket vil si at man ikke (i hvert fall i prinsippet) skal ha forhåndsteorier om hva som virker eller ikke.

Og akkurat den utfordringen – å la dataene, heller enn intuisjonen, avgjøre hva man skal gjøre – er en av de vanskelige overgangene man må gjennom for å få en data-dreven organisasjon til å fungere.

Det skal bli spennende å se om Norsk Tipping får det til – så langt ser det lovende ut.

Rask teknologiutvikling innen Big Data

DataRobot-screenFor noen uker siden var jeg i London for å lære meg DataRobot, et verktøy som automatiserer store deler av jobben rundt avansert dataanalyse. Det eneste DataRobot (og lignende verktøy) trenger, er masse data i et rad-og-kolonneformat (Excel, CSV, SQL, Hadoop, etc), og dermed kan man bare sette i gang: Dataene leses inn, hver kolonne tolkes og kategoriseres (dvs. som tekst, numeriske data, kategorier, boolsk, etc.). Deretter spør DataRobot hva som skal være den uavhengige variabelen (det vil si, hva det er man skal prøve å predikere), hva det er som skal være grunnlag for å vurdere hvilken modell som er best (forklart varians, logloss, etc.). Så kan man trykke Start og dermed setter DataRobot i gang og kjører alle analyser den vet om. Modellene listes opp med de som gir best resultat på toppen, og deretter er det bare å sette i gang og forbedre dem – for eksempel ved å finne mer data, kombinerer datapunkter, og så videre.

Med andre ord, masse av det man tidligere måtte ha spesialister til å gjøre, kan man nå gjøre selv.

Som min kollega Chandler Johnson sa: For fire-fem år siden måtte han programmere opp hver metode i Python. Så kom SciKit-Learn og andre programmeringsbiblioteker (XGBoost, RTensorFlow, Wowpal Wabbit) som gjorde at man bare kunne hente inn de metodene man ville bruke. Nå kommer grafiske verktøy som DataRobot, som velger ut og tester modeller for deg – og fjerner mye av behovet for programmering i det hele tatt. Selskapet reklamerer med at man kan redusere antallet data scientists man trenger, og det er jo gode nyheter der man må lete med lys og lykte og bruke ganske mye penger for å finne folk som kan gjøre slikt.

En stor del av jobben man trenger data scientists til, er å gjøre dataene klar for analyse. De fleste bedrifter vet at de har endel data, men når man først skal bruke dem, finner man kjapt at de har masse feil, er mangelfulle, og ofte ikke har de variablene man trodde man hadde. (For en liste av mange vanlige feil, se The Quartz Guide to Bad Data.) Også her begynner det å komme gode verktøy som reduserer behovet for programmering, som for eksempel Alteryx. Som en av våre studenter fra Analytics for Strategic Management sa: «DataRobot is soooo September…!

(Og skulle du ha lyst til å lære mer om dette: Sjekk ut dette kurset, 5-7 desember.)

Kortfattet: Big Data og analytics

DFDDODData og dataanalyse blir mer og mer viktig for mange bransjer og organisasjoner. Er du interessert i dataanalyse og hva det kan gjøre med din bedrift? Velkommen til et tredagers seminar (executive short program) på BI med tittelen: Decisions from Data: Driving an Organization with Analytics. Datoene er 5-7 desember i år, og kurset har vokst ut som en kortversjon av våre executive-kurs Analytics for Strategic Management, som har blitt meget populære og er fulltegnet. (Sjekk denne listen for en smakebit av hva studentene på disse programmene holder på med.)

Seminaret er beregnet på ledere som er nysgjerrig på stordata og dataanalyse og ønsker seg en innføring, uten å måtte ta et fullt kurs om emnet. Vi kommer til å snakke om og vise ulike former for dataanalyse, diskutere de viktigste utfordringene organisasjoner har med å forholde seg både til data og til dataanalytikere – og naturligvis gi masse eksempler på hvordan man kan bruke dataanalyse til å styrke sin konkurransekraft. Det blir ikke mye teknologi, men vi skal ta og føle litt på noen verktøy også, bare for å vite litt om hva som er mulig og hva slags arbeid vi egentlig ber disse dataekspertene om å ta på seg.

Presentasjoner og diskusjon går på engelsk – siden, vel, de beste foreleserne vi har på dette (Chandler Johnson og Alessandra Luzzi) er fra henholdsvis USA og Italia, og dermed blir betydelig mer presise enn om de skulle snakke norsk. Selv henger jeg med så godt jeg kan…

Velkommen til datarevolusjonen!

Etterspørsel!

dn-etterspDigitalisering og analyse og teknologi i vinden om dagen. Jeg ble intervjuet at Dagens Næringsliv om dataanalyse og andre digitale kurs – og det er hyggelig å kunne melde at, joda, folk vil ha det og melder seg på som bare det. Her er situasjonen så langt:

  • Møtte studentene på Informatikk: Digital Økonomi og Ledelse i går. Flink og ivrig gjeng (31 har takket ja, vi hadde opprinnelig 27 plasser) med gode spørsmål og god stemning – de kommer til å sette spor etter seg i norsk teknologiverden, det er jeg sikker på. Opptakskrav
  • Ragnvald Sannes’ og mitt kurs Strategisk Forretningsutvikling og Innovasjon starter 13. september, og har vært fulltegnet siden april. Gleder meg til det, alltid masse spennende mennesker med gode ideer.
  • Analytics for Strategic Management starter sin første modul 10. oktober (andre gjennomføring av kurset, her er listen over prosjekter på det første). Blir spennende å se hvordan det ser ut med påmeldinger etterhvert – så langt ser det lovende ut.
  • Det korte kurset Digitalisering for vekst og innovasjon går fra 24-27 oktober i Antibes/Sophia Antipolis. Det kommer en mer detaljert bloggpost om dette etterhvert, men det er allerede nok påmeldte til at kurset kommer til å gå – og plass til flere. Denne gangen kommer kurset (det vil si, alle diskusjoner) til å arrangeres på norsk, slik at det kan bli et sted for å dele tanker og prosjekter mellom norske bedrifter. Hjertelig velkommen til et konfidensielt, praktisk og spennende forum for digitalisering!

Innimellom skal jeg ha noen andre kurs også (for M.Sc. og MBA), være vertskap for en stor utenlandsk bedrift som besøker Norge for å forstå digitalisering og nye energikilder innen transportbransjen, og holde noen foredrag. Men det er jo morsomt, da. Og for mye etterspørsel er jo et luksusproblem, ikke sant?

Big Data i praksis – analyseprosjekter

ml_mapJeg er nettopp ferdig med å undervise fire dager med stordataanalyse – skikkelig programmering og datafikling. Vi (Chandler, Alessandra og undertegnede) har klart å lure over 30 ledere og mellomleder i Norge til å delta på et programmerings- og statistikkurs (det er faktisk det stordataanalyse handler om), uten at vi er helt sikre på hvordan vi klarte det. men studentene er motiverte og arbeidsomme og har mange og smarte spørsmål. I et kurs som foreleses på engelsk. Det er nesten så man får lyst til å slutte å klage og syte over hvordan verden vanligvis ser ut.

Uansett – hva skal disse studentene med dette kurset? Vi jobber med ordentlige prosjekter, i den forstand at vi forlanger at folk kommer med et problem de vil finne ut av i sin egen jogg – helst noe som faktisk er viktig, og hvor dyp dataanalyse kan gjøre en forskjell. Det er ikke for alle gruppene at dette fungerer, men skal ikke klage: De fleste jobber med reelle problemer for reelle organisasjoner, og det er utrolig morsomt for en foreleser. Her er en liste med prosjektene, så får der bedømme selv. (Jeg identifiserer ingen studenter her, en tro meg – disse folkene har disse problemene rett opp i ansiktet, hver dag.) Jeg har i alle fall ingen problemer med å bruke tid og krefter på dette:

  • Hva er riktig pris for nybygde boliger? En gruppe jobber med å finne ut hvordan man skal prissette boliger som ikke er bygget ennå, for et stort boligbyggefirma.
  • Hva er egentlig skatteeffekten av delingsøkonomi? Denne gruppen (der en jobber for Skatteetaten) forsøker å finne ut hvordan man skal kjenne igjen folk som snyter på skatten som Uber-sjåfører – og samtidig komme med forslag til hvordan skattereglene kan tilpasses slik at det blir lett å være lovlydig.
  • Hva kjennetegner tilbud som blir akseptert? Et større konsulentfirma ønsker å bruke data fra sitt CRM-system (som dokumenterer tilbudsprosessen) til å forstå hva slag oppdrag de kommer til å vinne, eller tape?
  • Hvordan gjenkjenne hvitvaskingstransaksjoner? En bank ønsker å finne ut om noen av deres kunder bedriver hvitvasking av penger gjennom nettbaserte spillselskaper.
  • Hvordan gi kunder fordel av automatisert analyse? Et selskap som leverer aksjetradingterminaler ønsker å bruke dataanalyse for å skape et konkurransefortrinn.
  • Hvordan segmentere norske aksjeeiere? Et selskap som tilbyr netthandel av aksjer ønsker å identifisere segmenter av sine kunder for å spisse og forbedre sin markedsstrategi?
  • Hvordan senke kostnader og redusere risiko for produksjonsstopp i en prosessbedrift? Et kraftselskap ønsker å bedre forstå når og hvorfor kraftstasjonene deres trenger reparasjoner eller vedlikehold?
  • Hvordan identifisere kunder som er i ferd med å si opp? Et TV-selskap ønsker å forstå hva som kjennetegner «churn» – om noen av deres kunder er i ferd med å forlate dem eller ikke?
  • Hvorfor er noen viner mer populære enn andre? En gruppe skal jobbe med søkedata fra et vin-nettsted for å finne ut hva som gjør at noen viner blir mer etterspurt enn andre.
  • Hvilke kunder vil kjøpe et nytt produkt? En gruppe jobber med data fra en stor bank som ønsker å tilby sine eksisterende kunder flere tjenester.
  • Hvordan øke gjenvinningsgraden for søppel i Oslo? REN ønsker å finne ut av om man kan organisere ruter og rutiner annerledes for bedre å utnytte søppelbiler og gjenvinningsanlegg.
  • Hvordan unngå at man blir utsolgt for kampanjevarer? En av Norges største dagligvarekjeder ønsker å forbedre sine bestillingsrutiner slik at kundene slipper å komme til butikken og finne ut at det ikke er mer igjen av den tilbudsvaren de ville ha.
  • Hvordan modellere svindelrisiko i maritim forsikring? Et forsikringsselskap ønsker å bygge en modell for å forstå hvordan man kan finne kunder som forsøker å svindle selskap eller myndigheter.
  • Hvilke kunder er i ferd med å forlate oss? Et stort transportfirma ønsker å finne ut hvilke kunder som er i ferd med å gå til en konkurrent, slik at de kan ta affære før det skjer.
  • Hva kjennetegner studenter som dropper ut? BI tar inn 3500 nye studenter hvert år, men en del av dem slutter etter det første året. Hvordan kan vi finne tegn på at en student er i ferd med å droppe ut?

Felles for alle prosjektene – og slik er det med alle oppgaver jeg har veiledet siden jeg begynte i denne bransjen – er at man starter med et stort spørsmål og reduserer det ned til noe som faktisk kan besvares. Deretter ser man etter data og finner ut at man må redusere det enda mer. Så får man problemer med at dataene enten ikke finnes likevel, er upålitelige eller mangelfulle – og man må finne ut av hva man skal gjøre med det. Til slutt, etter at omtrent 90% av tids- og pengebudsjettet er borte, kan man begynne å tenke analyse. Da kan man risikere at man ikke finner noe.

Og det er litt av lærdommen i dette kurset – at man skal kunne nok om faktisk dataanalyse til å stille de rette spørsmålene og ha en realistisk forventning til hva man faktisk kan få svar på.

Det er stor etterspørsel etter dette kurset – så vi har satt opp et nytt kurs som starter til høsten. Vel møtt!