Identificeren van de Oorzaak en effecten Met Causale Redenering
Ben Horsburgh — Jr Opdrachtgever ML Ingenieur, QuantumBlack
In December, de QuantumBlack team waren gelukkig genoeg om te wonen NeurIPS 2019 in Vancouver, waar we gastheer voor een expo workshop verkennen van het implementeren van het causaal gevolgtrekking en versterking leren om modellen te genereren die oorzaak en gevolg overwegen.
deze sessie bleek erg populair en daarom wilden we de belangrijkste elementen delen met degenen die niet aanwezig konden zijn. In de volgende twee Mediumartikelen zullen we onderzoeken hoe datawetenschappers zowel Causaal redeneren als Reinforcement Learning kunnen benutten om modellen te bouwen die oorzaak en gevolg respecteren.
de causale blinde vlek
geavanceerde analyses worden vaak gebruikt om te beslissen waar een interventie wordt uitgevoerd om een doel te beïnvloeden. Echter, veel traditionele ml methodologieën, van lineaire regressie tot diep leren, niet rekening causaliteit en in plaats daarvan alleen model correlatie tussen datapunten. Ze kunnen identificeren dat er een relatie tussen variabelen zonder te bepalen wat deze relatie is of hoe ze elkaar beà nvloeden.
dit kan een drastische impact hebben op de voorgestelde interventie van het model, waardoor de effectiviteit van interventies wordt afgezwakt of zelfs geheel irrelevante aanbevelingen worden gedaan. Een niet-Causaal model dat gericht is op het verminderen van droogte, kan bijvoorbeeld erkennen dat er een verband bestaat tussen toenemende droogte en stijgende verkoop van ijs, maar kan heftig concluderen dat een verbod op ijs droogte zou verminderen.
in causale modellering wordt ML gebruikt om een initiële structuur te creëren, gevisualiseerd als een grafisch netwerk, dat de waargenomen relatie tussen kenmerken benadrukt. Dit wordt vervolgens beoordeeld door domeinexperts die de structuur kunnen bijwerken om te benadrukken hoe elk kenmerk de andere beïnvloedt — in ons voorbeeld zou een irrigatie-expert benadrukken dat toegankelijk drinkwater veel nauwkeuriger zou zijn om droogte te verzachten dan het verbieden van ijs.
dit proces staat bekend als Causaal redeneren en dit artikel behandelt elk van de drie fasen die nodig zijn om het te implementeren.
Fase 1: Structure Learning
Causale modellen moeten worden geïnformeerd over de causale structuur tussen kenmerken. In een ideale wereld zou een domeinexpert deze structuur invoeren, maar dit is vaak onhaalbaar — een model met slechts 50 variabelen zou iets minder dan 2.500 oorzaak-effectrelaties vereisen om te worden overwogen en verklaard.
bovendien maken oorzaak-en gevolgketens een reeds tijdintensief proces nog complexer — veranderingen aan een kenmerk kunnen een ander beïnvloeden, wat op zijn beurt weer een ander beïnvloedt. Het is gemakkelijk om deze kettingen over het hoofd te zien bij het bouwen van structuren met de hand, en nog gemakkelijker om per ongeluk cyclische, kip-ei kettingen te maken die dan moeilijk te repareren zijn.
recente ontwikkelingen, met name de publicatie van DAGs with NO TEARS op NeurIPS 2018, hebben de efficiëntie en nauwkeurigheid van algoritmen voor structure learning die deze netwerken bouwen, verbeterd. Ze stroomlijnden het proces en vermijd kip-ei paradox structuren. Belangrijk is dat ze geen causaliteit bevestigen — ze schatten het. Werken met niet-experimentele gegevens, is een iteratief, collaboratief proces nodig om voorspellingen te verifiëren en domeindeskundigen zijn verplicht om de causaliteit van de structuur te beoordelen en te verifiëren, relaties te vergelijken met gerespecteerde sectorspecifieke publicaties, enquãates en een breder deskundigenadvies. Het is de vergroting van data en methode met input van domeinexperts die ons in staat stellen een stap te zetten naar een causale interpretatie.
dit proces helpt inzicht te verschaffen-oorzaak-effecten die datawetenschappers verrassend vinden, worden vaak goed begrepen door deskundigen, en zelfs degenen die deskundigen verrassen, worden soms goed begrepen door anderen in hun vakgebied en kunnen worden geverifieerd door een zoektocht naar bredere materialen.
een gestructureerd datatype bevat knooppunten (variabelen die informatie bevatten) en randen (gerichte verbindingen tussen knooppunten die ook informatie bevatten). De meeste structuur het leren algoritmen output randgewichten, die nuttig zijn om gesprekken tussen gegevenswetenschappers en deskundigen direct zijn. Het presenteren van randen van het hoogste naar het laagste gewicht helpt datawetenschappers een nog efficiënter beoordelingsproces aan te sturen, maar we moeten oppassen dat we niet te veel interpretatie aan gewichten hechten — het zijn meestal geen waarschijnlijkheden of waarden die door mensen kunnen worden geïnterpreteerd. Bovendien kunnen ook randen met een laag gewicht soms belangrijk zijn, maar statistische tests zijn moeilijk.
als we eenmaal hebben vastgesteld wat de oorzaken zijn, kunnen we verder leren hoe ze zich gedragen.
Fase 2: Waarschijnlijkheidsleer
Structure learning kan aangeven dat de prijs van koffie op de een of andere manier wordt beïnvloed door de bevolkingsdichtheid, maar zal niet specifiek aangeven hoe — het is niet in staat om aan te geven of een stijgende bevolking de prijs verhoogt of verlaagt, of dat er een complexere relatie speelt.
Probability learning schat hoeveel elke oorzaak elk effect drijft door het leren van de onderliggende voorwaardelijke kansverdelingen (CPD ‘ s). Elke CPD beschrijft de waarschijnlijkheid van een oorzaak, gezien de toestand van de effecten.
we hebben ontdekt dat discrete CPD ’s praktischer zijn dan continue CPD’ s. Continue distributies zijn vaak beperkt tot Gaussiaanse distributies en hebben dus moeite om veel relaties te beschrijven. Discrete CPD ‘ s kunnen elke vorm van distributie beschrijven, zij het met minder precisie, en worden breed ondersteund door veel bibliotheken.
we kunnen de domeinexperts gebruiken om een keuze te maken. Datawetenschappers en domeindeskundigen moeten het van meet af aan eens worden over een strategie voor gegevensdiscretisering. Rekening houdend met de doelstellingen van het project, moet u bepalen welke discretie vereist is. Bijvoorbeeld, als uw project vereist dat vergelijkingen worden gemaakt dan dan percentiel discretisatie zou waarschijnlijk passen.
dit gezegd zijnde, wees voorzichtig om te voorkomen dat CPD ‘ s te discreet worden gemaakt, aangezien alle waarschijnlijkheidsschattingen moeten worden beschreven en snel kunnen accumuleren. Voor een binair effect met drie binaire oorzaken, zou een CPD 16 mogelijke eventualiteiten moeten schatten. Voor een effect met 10 toestanden en drie oorzaken, elk met hun eigen 10 toestanden, moeten 10.000 mogelijke eventualiteiten worden geschat. Voor kleine datasets met minder monsters dan mogelijkheden, zullen de meeste eventualiteiten nooit worden waargenomen, en degenen die dat wel zijn zullen niet goed vertegenwoordigd zijn. Maar zelfs met grote datasets, zal over-discretisering betekenen dat CPD ‘ s vele hoogst onwaarschijnlijke eventualiteiten zullen bevatten. Dit zal de kracht van het model verdunnen en de rekentijd verhogen.
geleerde waarschijnlijkheden moeten worden geëvalueerd door zowel data scientist als domeindeskundigen. Voor datawetenschappers, Behandel dit als een standaard classificatieprobleem-leer de modelwaarschijnlijkheden met behulp van een trainingsset, en evalueer vervolgens hoe nauwkeurig probabilistische voorspellingen zijn voor een bepaald knooppunt met behulp van de testset.
Ondertussen kunnen domeinexperts CPD-tabellen en sense-check-waarden lezen. Dit is vaak waar de meer onwaarschijnlijke waarschijnlijkheden kunnen worden geëlimineerd.
Fase 3: gevolgtrekking
inmiddels begrijpen we de oorzaak-gevolg relatie structuur van onze dataset en hoe de relaties zich gedragen. Dit stelt ons in staat om gevolgtrekkingen te maken — in wezen het testen van acties en theorieën om de respons te meten.
gevolgtrekking kan worden opgesplitst in observationeel en interventioneel. In observationele gevolgtrekking, kunnen we de toestand van een variabele(s) observeren en vervolgens vragen hoe het veranderen van dit de waarschijnlijkheid van een andere toestand van een andere variabele zal beïnvloeden. Het bevragen van de waarschijnlijkheid van andere variabelen wordt gedaan door het spelen van alle oorzaak en gevolg relaties, wiskundig bereikt door het marginaliseren van waarschijnlijkheden over de CPDs. Een voorbeeld hiervan is het observeren van een coffeeshop in het centrum van de stad en concluderen dat het waarschijnlijk dure commerciële huur zal oplopen-en dat vervolgens de prijs van een koffie waarschijnlijk hoog zal zijn.
in interventionele gevolgtrekking kunnen we ingrijpen op de toestand van elke variabele (s), waarbij we de waarschijnlijkheid van de toestanden veranderen naar wat we kiezen en effectief vragen ” wat als X anders was?’We kunnen bijvoorbeeld stellen dat werknemers een vierdaagse werkweek hebben in plaats van een vijfdaagse werkweek en het effect daarvan op de productiviteit observeren.
door middel van een gevoeligheidsanalyse kan worden bepaald waar het meest geschikt is om in te grijpen. Elke keer als we een observatie maken, kunnen we zien hoe dit van invloed is op de staat van een doel dat we willen veranderen. Als we duizenden afzonderlijke, subtiele observaties maken over alle variabelen, kunnen we schatten voor welke variabelen ons doelwit het meest gevoelig is. Dit is de basis van de gevoeligheidsanalyse, hoewel er efficiëntere middelen zijn om dit te bereiken.Gevoeligheidsanalyse is een bijzonder krachtig instrument, omdat het ons helpt te begrijpen waar we onze inspanningen moeten concentreren. Het is niet altijd mogelijk om in te grijpen bij gevoelige oorzaken — het heeft bijvoorbeeld geen zin om het adres van een klant te wijzigen, omdat ons uiteindelijke model dat niet kan controleren. Deze gevoeligere oorzaken kunnen echter een rol spelen bij het bepalen van voorwaardelijke interventies.
ML ontwikkelingen kunnen hebben bijgedragen tot het stroomlijnen van structuurcreatie, maar een samenwerkend, hybride leerproces tussen mensen — in het bijzonder datawetenschappers en domeindeskundigen — is nog steeds van fundamenteel belang om verder te gaan dan correlatie om oorzakelijk verband te identificeren.
uitdagingen blijven Causaal redeneren en het kan tijdintensief en moeilijk zijn om een volledig project te voltooien vanwege het grote aantal afzonderlijke softwarebibliotheken dat nodig is tijdens de testfase. Het blijft echter een effectieve techniek bij het bouwen van causale modellen — om dit te ondersteunen, heeft QuantumBlack onlangs ons nieuwste open source-aanbod, CausalNex, uitgebracht. Deze softwarebibliotheek biedt een veel gestroomlijnder proces en helpt modellen valse conclusies te vermijden en uiteindelijk intelligentere en impactvolle analyseinterventies te produceren.Causaliteit wordt steeds vaker onder de loep genomen en het is een onderwerp dat we in de toekomst verder willen onderzoeken, zowel met CausalNex als met breder onderzoek. Bijvoorbeeld, we zullen een paper presenteren op AISTATS in juni, die geen tranen wijzigt om de structuur van variabelen in de tijd te leren in aanvulling op de intra-temporele relaties. In de tussentijd, blijf op de hoogte met de komende CausalNex ontwikkelingen.