Identifisere Årsak Og Virkning Med Årsakssammenheng
Ben Horsburgh – Jr Rektor ML Ingeniør, QuantumBlack
I desember Var QuantumBlack-teamet heldig nok Til Å delta På Nevurips 2019 I Vancouver, hvor vi var vert for et expo-verksted som utforsket hvordan man distribuerer kausal slutning og forsterkning læring å generere modeller som vurderer årsak og virkning.
denne sesjonen viste seg å være veldig populær, så vi ønsket å dele nøkkelelementene med de som ikke kunne delta. I løpet av de neste To Mellomstore artiklene vil vi utforske hvordan datavitenskapere kan utnytte Både Årsakssammenheng og Forsterkningslæring for å bygge modeller som respekterer årsak og virkning.
Den Kausale Blindsonen
Advanced analytics brukes ofte til å bestemme hvor man skal foreta en intervensjon for å påvirke et mål. Imidlertid vurderer mange tradisjonelle ML-metoder, fra lineær regresjon til dyp læring, ikke årsakssammenheng og i stedet bare modellkorrelasjon mellom datapunkter. De kan identifisere at det er et forhold mellom variabler uten å definere hva dette forholdet er eller hvordan de påvirker hverandre.
Dette kan ha en drastisk innvirkning på modellens foreslåtte intervensjon, fortynne effektiviteten av intervensjoner eller til og med produsere helt irrelevante anbefalinger. For eksempel kan en ikke-kausal modell som tar sikte på å redusere tørke, gjenkjenne at det er et forhold mellom økende tørke og økende iskremsalg, men kan spuriously konkludere med at forbud mot iskrem ville redusere tørke.
I kausal modellering brukes ML til å lage en innledende struktur, visualisert som et grafisk nettverk, som fremhever det oppfattede forholdet mellom funksjoner. Dette blir deretter vurdert av domeneeksperter som kan oppdatere strukturen for å markere hvordan hver funksjon påvirker den andre — i vårt eksempel vil en vanningsekspert markere at tilgjengelig drikkevann ville være en langt mer nøyaktig driver for å redusere tørke enn å forby iskrem.
denne prosessen er Kjent Som Årsakssammenheng, og denne artikkelen vil dekke hver av de tre fasene som kreves for å distribuere den.
Fase 1: Strukturlæring
Årsaksmodeller må informeres om årsaksstrukturen mellom trekk. I en ideell verden ville en domeneekspert legge inn denne strukturen, men dette er ofte umulig — en modell med bare 50 variabler ville kreve like under 2500 årsakssammenheng for å bli vurdert og forklart.
dessuten gjør årsak og virkning kjeder en allerede tidkrevende prosess enda mer kompleks-endringer i en funksjon kan påvirke en annen, som igjen påvirker en annen. Det er lett å overse disse kjedene når man bygger konstruksjoner for hånd, og enda enklere å feilaktig lage sykliske kylling-eggkjeder som da er vanskelige å fikse.
nylige fremskritt, spesielt publisering Av DAGs with no TEARS på NeurIPS 2018, har forbedret effektiviteten og nøyaktigheten av strukturlæringsalgoritmer som bygger disse nettverkene. De strømlinjeformet prosessen og unngå kylling-egg paradoks strukturer. Det er viktig at de ikke bekrefter årsakssammenheng – de anslår det. Arbeid med ikke-eksperimentelle data, en iterativ, samarbeidsprosess er nødvendig for å verifisere spådommer og domeneeksperter er pålagt å gjennomgå og verifisere strukturens årsakssammenheng, kryssrefererende forhold mot respekterte sektorspesifikke publikasjoner, undersøkelser og bredere ekspertuttalelser. Det er styrking av data og metode med innspill fra domeneeksperter som gjør at vi kan ta et skritt mot en årsakssammenheng.
denne prosessen bidrar til å informere innsikt — årsakseffekter som datavitenskapere kan finne overraskende, blir ofte godt forstått av eksperter, og selv de som overrasker eksperter, blir noen ganger godt forstått av andre på sitt felt og kan verifiseres gjennom et søk av bredere materialer.
en strukturert datatype vil inkludere noder (variabler som inneholder informasjon) og kanter (rettede forbindelser mellom noder som også kan inneholde informasjon). De fleste struktur læring algoritmer utgang kanten vekter, som er nyttige for å lede samtaler mellom data forskere og eksperter. Å presentere kanter fra høyeste til laveste vekt hjelper datavitenskapere til å drive en enda mer effektiv gjennomgangsprosess, men vi bør være forsiktige med å ikke legge for mye tolkning til vekter — de er vanligvis ikke sannsynligheter eller verdier som kan tolkes av mennesker. Videre kan selv lavvektskanter noen ganger være viktige, men statistisk testing er vanskelig.
Når vi har identifisert hva årsakene er, kan vi gå videre til å lære hvordan de oppfører seg.
Fase 2: Sannsynlighetslæring
Strukturlæring kan identifisere at prisen på kaffe på en eller annen måte påvirkes av befolkningstetthet, men vil ikke spesifikt identifisere hvordan — det er ikke i stand til å indikere om en stigende befolkning øker eller senker prisen, eller om det er et mer komplekst forhold som spiller inn.
Sannsynlighetslæring anslår hvor mye hver årsak driver hver effekt ved å lære de underliggende Betingede Sannsynlighetsfordelingene (CPDs). HVER CPD beskriver sannsynligheten for en årsak, gitt tilstanden av dens effekter.
vi har funnet ut at diskrete Cpder er mer praktiske enn kontinuerlige Cpder. Kontinuerlige distribusjoner er ofte begrenset Til Gaussiske distribusjoner og så sliter med å beskrive mange relasjoner. Diskrete Cpder kan beskrive enhver form for distribusjon, om enn med mindre presisjon, og støttes mye av mange biblioteker.
vi kan bruke domeneekspertene til å gjøre et valg. Data forskere og domene eksperter bør bli enige om en data diskretisering strategi i utgangspunktet. Med tanke på målene for prosjektet, bør du definere hvilken diskretisering som kreves. For eksempel, hvis prosjektet krever sammenligninger som skal gjøres, så vil persentil diskretisering trolig passe.
når det er sagt, vær forsiktig med å unngå over diskretiserende Cpder, da alle sannsynlighetsestimater må beskrives og raskt kan akkumuleres. For en binær effekt med tre binære årsaker, VIL EN CPD måtte estimere 16 mulige eventualiteter. For en effekt med 10 stater og tre årsaker, hver med sine egne 10 stater, må 10.000 mulige eventualiteter estimeres. For små datasett med færre prøver enn muligheter, vil de fleste eventualiteter aldri bli observert, og de som er vil ikke være godt representert. Men selv med store datasett vil over-diskretisering bety At Cpder vil inkludere mange svært usannsynlige eventualiteter. Dette vil fortynne kraften i modellen og øke beregningstiden.
Lærte sannsynligheter bør vurderes av både data scientist og domene eksperter. For dataforskere, behandle dette som et standard klassifiseringsproblem-lær modellsannsynlighetene ved hjelp av et treningssett, og evaluer deretter hvor nøyaktige probabilistiske spådommer er for en gitt node ved hjelp av testsettet.
i Mellomtiden kan domeneeksperter lese CPD-tabeller og sense-check-verdier. Dette er ofte hvor de mer usannsynlige sannsynlighetene kan elimineres.
Fase 3: Slutning
nå forstår vi årsakssammenheng strukturen i vårt datasett og hvordan relasjonene oppfører seg. Dette gjør oss i stand til å gjøre slutninger — i hovedsak teste handlinger og teorier for å måle respons.
Slutning kan deles inn i observasjonell og intervensjonell. I observasjonell slutning kan vi observere tilstanden til en variabel (e) og deretter spørre hvordan endring av dette vil påvirke sannsynligheten for en annen tilstand av en annen variabel. Spørring av sannsynligheten for andre variabler gjøres ved å spille ut alle årsakssammenheng, oppnådd matematisk ved å marginalisere sannsynligheter over CPDs. Et eksempel på dette ville være å observere en kaffebar i sentrum og konkludere med at det er sannsynlig å pådra seg dyr kommersiell leie-og at senere prisen på en kaffe sannsynligvis vil være høy.
i intervensjons inferens kan vi gripe inn i tilstanden til enhver variabel( e), endre sannsynligheten for dens tilstander til hva vi velger og effektivt spørre ‘hva Om X var annerledes?- Vi kan for eksempel gi en hypotese om ansatte som jobber en firedagers uke i stedet for fem, og deretter observere effekten dette har på produktiviteten.
Bestemme hvor det er mest hensiktsmessig å gripe inn kan oppnås gjennom sensitivitetsanalyse. Hver gang vi gjør en observasjon, kan vi se hvordan dette påvirker tilstanden til et mål vi ønsker å endre. Hvis vi skulle gjøre tusenvis av separate, subtile observasjoner på tvers av alle variabler, kunne vi estimere hvilke variabler vårt mål er mest følsomt for. Dette er grunnlaget for sensitivitetsanalyse, selv om det er mer effektive midler for å oppnå det.
Sensitivitetsanalyse er et spesielt kraftig verktøy som hjelper oss å forstå hvor vi skal fokusere innsats. Det er ikke alltid mulig å gripe inn på sensitive årsaker — for eksempel er det ikke noe poeng i å endre kundens adresse, da det ikke er mulig for vår eventuelle modell å kontrollere det. Imidlertid kan disse mer sensitive årsakene spille en rolle i å bestemme betingede inngrep.
ML-utviklingen kan ha bidratt til å strømlinjeforme strukturopprettelsen, men en samarbeidende, hybrid læringsprosess mellom mennesker-spesielt datavitenskapere og domeneeksperter – er fortsatt grunnleggende når man når utover korrelasjon for å identifisere årsakssammenheng.
Utfordringer forblir Med Årsakssammenheng, og Det kan være tidkrevende og vanskelig å fullføre et fullt prosjekt på grunn av det høye antallet separate programvarebiblioteker som kreves i testfasen. For å støtte Dette Har QuantumBlack nylig gitt ut vårt nyeste open source-tilbud, CausalNex. Dette programvarebiblioteket gir en langt mer strømlinjeformet prosess og hjelper modeller med å unngå falske konklusjoner og til slutt produsere mer intelligente og effektive analyseintervensjoner.
Kausalitet kommer stadig under mikroskopet, og Det er et tema vi er forpliktet til å utforske videre i fremtiden, både Med CausalNex og bredere forskning. For eksempel vil vi presentere et papir PÅ AISTATS i juni, som endrer INGEN TÅRER for å lære strukturen av variabler over tid i tillegg til intra-temporale relasjoner. I mellomtiden, hold deg oppdatert med kommende CausalNex-utviklinger.