Lightning Talk: Deep Causal Learning
Key Takeaways
The video discusses Deep Causal Learning, a framework that uses additive noise models with deep neural networks to estimate treatment effects and causal quantities, with applications in healthcare and business. The talk covers the use of structural causal model framework, graph learning with DAG constraints, and variational distribution over the graph for inference.
Full Transcript
uh thanks for joining us today on our short talk on deep course learning which is some work that we've been doing in Cambridge in the UK John is joining me here today who's off screen and she's going to join for questions later so if you have any please shout in the end um let's motivate this though first of like why do we do causality and what does that mean so one question that you can think about is really of kind of like how do we assign certain decisions to actions that we want to perform so for example we are in a medical scenario where we want to assign treatments to patients and the question is like what is the best possible treatment for a patient to optimize the health outcome or on the other hand we can think about a sales scenario where we have certain kind of like um promotions or kind of like discounts that we can offer to the different customers and we really want to figure out what can we do so that we maximize the revenue for um yeah the company and one tool that we can use to do that is causality where we estimate so-called treatment effects which are really just estimating this question of what would happen if we do something and particularly in the sales scenario we would for example say what's the effect of a given promotion and David can then look at an entity called an average treatment effect which is really just the difference of the average expected outcome of giving a promotion which is what we see on the left here versus the average expected outcome of not giving you promotion which is what we see on the right and by looking at the difference between those two things you can then estimate of like how good it is to do those perform this promotion and you can then use that for decision making and in many scenarios we might want to actually be a bit more specific rather than looking at the full population that you have available you would look at a so-called conditional average treatment effect and in sales in now for example we would say oh what's the effect of giving this promotion in the UK in the U.S in some other region or some other kind of like subgroup of your customers and they're rather than looking just at this Interventional distribution the expected outcome there you actually then condition on some other variable um so formalizing this a bit more what we actually want to be doing is we have some data just like observed data that we take and we want to Output a causal graph so the course of relationships between the different variables the functional relationships because having those two things we can then actually calculate or cause quantities being average treatment facts or conditional average treatment facts or some other things as well and lastly once we have them we can make decisions so so in a lot of causality we can do cause effect estimation but that assumes we have a graph given the question really is how do we find this graph and how do we then kind of like move forward from there and this is what we do in causal Discovery and this is kind of like one of the main things main building blocks and some of the work that we've been doing so there are three General types of causal Discovery methods I'm not going to talk about all of them um just kind of like talking about one way of thinking about causal models which is the so-called structural causal model or structural grading model framework where we assume that all of our variables are a function of the parents or parents variables on the graph and some exogenous noise variable and this is a deterministic function that then just Maps one to the other and one special case a so-called additive noise models where we say that our variables are functions of the parents plus the noise which is then not in the function anymore but just added on and in a very simple linear scenario you can actually already quite visually show that this is identifiable meaning you can find the correct direction of your causal grafts and your causal relationships there for example when we look at uh examples here where we have a linear model and some gaussian noise or some uniform noise basically what we see is in the gaussian case when we regress y from X or X from y we see that there is no difference in the residuals which are blotted as the red dots here there's if we look at the uniform case we see that in the case where we request a y from X on residuals are independent of X and independent of the other variables whereas in the case where we try to request X and Y our residuals are not independent anymore and this is one of the main assumptions that we do in this structural equation model framework that is that the exogenous noise the residuals basically should be independent of everything else if they know latent confounders and this is why we say oh X actually causes y because this is the direction where we can find that the residuals are independent of the other variables and this is just like a very simple uh case in looking at linear models and very simple noise distributions but this is something that you can then generalize to much more complicated functions and distributions and yeah meet Desi of deep end to end causal inference framework which we're also presenting a bit more in depth on Friday in the causal machine learning for real world impact workshop and basically what we do is exactly that we have our structural equation model which is an additive noise model but rather than F being a linear function it now becomes a deep neural network which allows us to have much more complicated functional relationships that we can then use to model all types of data and what we then basically try to learn is a latent variable model where we have some distribution of our graph and distribution of our variables that factorizes as that and we can then simply optimize our likelihood of the data that we have observed where we use a in the simplest case again gaussian likelihood if you use a Galaxy noise model but we have more complicated ways of kind of like looking at spline distributions also on so forth but because we use this additive noise model assumption we can simply transform our observational data into the exogenous noise space you can think of it as a very simple normalizing flow where you kind of like invert um your transformation back into the noise space and can then calculate your likelihood in the actual exogenous noise space rather than having it to do on the observational data and this allows us to learn this end to end for the functional relationships which then brings me to the second part which is a bit more complicated which is how do we actually perform graph learning and graphs are a really complicated thing to work with actually when you want to optimize and find the correct graph luckily there has been some work recently A couple of years ago at published of nerves as well that has come up with a continuous constraint that you can optimize that yeah allows you to see whether a graph is a dag or not because given is a causal graph it needs to be directed and acyclic otherwise you don't have correct relationships in there and we can then use this relationship this that constraint to get a um some lost term to actually learn the functions and the graph DAC in their paper they only looked at linear relationships with we only use the DAC constraint to actually um enforce it prior on our latent variable that is the graph so we have a player that looks like that where we actually enforce sparsity in this first term which kind of like says we are a graph should be as fast as possible so that you actually have causal minimality in there and the other two terms are to enforce the dark constraint that we actually get a DAC as the end result of our optimization process and the infant setting we then say let's have a variational distribution over our graph so we have a in the simplest case an independent binary variable on the edges of our causal relationships and we can then plug simple variational inference in there we have an elbow that optimizes the evidence lower bound of our observed data so that we simply use our likelihood as described earlier we optimize our prior term that shows that we should have a DAC and to get a this then with some cool fancy theories shows that we I can actually recover the true distribution and the true DAC if we have infinite data and um the true data generating process as part of the model class that we're considering here meaning an additive noise model so by then estimating a posterior over graphs like that where we basically learn this distribution which is not just a single DAC because we believe in the limited data case which is what we have in practice we cannot necessarily distinguish all possible dacs we then learn this posterior distribution where we then put for example assign 60 probability to one DAC and only 40 to like a wrong DAC and um we would then perform Bayesian model averaging basically over the different dacs that we consider in our posterior so that we then have an expected value for our S8 and arcade and we can then actually perform our interventions on those Stacks so for example if you then want to estimate a treatment effect on the stack you would still do an intervention cut this Edge set XT to a certain value and look at our Interventional distribution under this intervention with this new mutilated graph and to actually estimate this over all the graphs and all the samples that we have what we would do is we would sample multiple graphs do this modulation and then from every graph sample multiple yeah samples from our generative model that we in the end learned and we can then simply average them using Monte Carlo estimation to get our average treatment effect or potentially our conditional average treatment effect in some settings however this is now another problem if you want to have some conditional average treatment the fact where your conditioning is not necessarily in an upstream variable of your outcome this does not become super easy because you would need to estimate um base rule to get your probabilities out and this is as most of you might know very interactable and like there's been a lot of people looking into that how to do that what we do instead is simply train a surrogate model so what do we do is we sample multiple samples from our Interventional distribution we then consider the samples that have the um yeah all of those basically and then um I learned a surrogate model that predicts the outcome from our conditioning variable and using this we can then estimate arcade using our circuit model by just plugging our conditioning variable in there um and this works surprisingly well I'm just looking at a kind of like toy example of again kind of like oh four variables here and like a two-dimensional case what we kind of like looking at and what we do is we have our observational distribution at the top from our observational data and the true Interventional distributions here as well and on the left we see the two graphs that we learned so we assign 60 to the correct graph forty percent to the wrong graph and what we then do is show the first graph and the kind of like Associated data distributions on the top and on the second one we show the um data distributions and Interventional distributions to associate of the second graph and what we first see is obviously uh both graphs have approximately the same observational distribution which is why we can't distinguish them properly otherwise we would have found a single graph however when we look at the Interventional distributions they are slightly different and we then look at uh kind of like circuit models so we have the orange distribution is our kind of like reference value for the ate calculation and green is the actual intervention value that we consider for ATA calculation we then learn the surrogate model which is this line This is not linear because we using some random for efhs to actually learn non-linear functions while using a linear regressor and we can then simply plug in this conditioning value which is 2 here which is this dashed line to then find the values of our surrogate function we take the difference to get our Kate estimate which is here 2.3 if we get the correct graph and then on the other hand it's 1.12 if we take the wrong graph and because we're doing this Monte Carlo estimate we're then averaging them rated by the probability of our graphs and get an estimate of a k which is 1.8 which is actually decently close to what we got about droop crate which is 2.0 and this is kind of like to say even though we got the wrong graph on one side and kind of like estimated a non-serable ability to run graph we can still achieve decent performance by using this model averaging and actually considering multiple models when our data does not give us exactly the correct graph in them so to conclude a bit here what we have is the Steep enter and causal framework where we take some observational data as an input we learn the course of relationships from that data as well as the functional relationships which are modeled as deep learning deep learning networks and using both those things we can estimate causal quantities like average speed and effects conditional average treatment effects and actually also kind of factuals and individual treatment factors that I didn't actually mention here and using that we are in the process of making real world decisions to help yeah people understand the scenario that they're working in moreover short teaser to Friday again at the cause of machine learning for real world impact Workshop we also have two more extensions uh where we're looking into the scenario of unobserved confounding because obviously it's a big one you will always or most often have unobserved confounders uh where for example one easy example is when you're in the sales scenario you will often have something like a market demand or a global economic situation that will be an unobserved confounder especially in the world that we're currently in we have some work that can tackle those scenarios that we're presenting there on Friday and we have another extension that takes this model that we are currently that currently talked about from this static setting very kind of like every variable is or every column in your data set is a variable into a Time series setting so that you can look at the evolution through time and see when a certain effect would appear and kind of like even make decisions of um the matter of like oh am I interested in like the short-term outcome or a long-term outcome which might actually mean you need to do different interactions and different interventions but yeah we don't have too much on this here come please to the workshop on Friday and we will talk more about that there um all together what we're basically trying to do is take this traditional causal pipeline where usually you would have to specify a graph and need this domain knowledge which often is not necessarily available when you especially work with like very high dimensional data sets where there's just too many of them to know um or it's just unclear to and then go through this pipeline of like identifying the estimate and alert doing your causal inference estimation to a much more General end-to-end inference pipeline where we allow for incomplete prior knowledge so you can say oh their shipping ads or I'm 50 certain that they're shipping ads and also give us the statement that you don't know about other edges and we will take this learn the course of graph learn the functions and using this deep chant of model that we're training we can then estimate average treatment effects conditional average treatment effects and ites and then make decisions that are impactful in the real world so thanks a lot for coming um so tease again we are having the workshop running on Friday in rooms 295 to 296 and we're also having um an open job posting for a senior researcher if anybody is interested in that thank you questions [Applause] how important would you say the directionality is relatively so once you have a causal graph it gives you a sort of like conditional dependence assumptions see how those can be useful but how important is it that you get the directionality oh I can take it so I think the question is in business settings first like how in general how important is a cartograph and and it's separates here how important is the skeleton and how important is uh orientation right so in general it is very important because you want to learn the sem so you want to know what is cause for these effects first what does this Factor are even related so it is very important to learn the graph but in real world the graph most of time is not even available so there is no domain expert especially in some of the setting we're dealing with there are hundreds even sounds variables you can think about like in Microsoft we actually have hundreds of programs to to really help and support our customers and performers so in these settings no one no doming expert can give you the full cartograph so it's extremely important we develop algorithm that can like find this graph automatically and so we have the graph then use the graph or partial to graph information then we can estimate the trait impact and this graph need to have both the skeleton and orientation I guess one more short addition to that potentially is um depending on your interest of like what is your intervention variable what's your effect variable there might be something else that's not as important if it's kind of like completely attached from the causal path between those two variables um but you won't notice unless you have the graph so in that direction it is important to learn and get some insights there yeah it's like being sunny and eating ice cream so you definitely need to know like it's the Being Sunny is a cause and eating ice cream is in fact I mean we're from UK it doesn't matter how much ice cream we eat it will not have the temperature like this Simon yeah um quite a problem it's about yeah how you could incorporate the inevitable updates [Music] to kind of people so the question is whether we thought about how we would incorporate ongoing feedback from experts when we once we've actually learned a graph and basically I think we had a short presentation on something related yesterday and there's kind of like this whole toolkit that we are trying to provide at Microsoft collaborating with teams in um well Redmond New England and India they the idea is packaging up what we have as well as some like graphical tools where you can provide feedback on a graph that kind of like we find and you can say oh this ad should be there or oh this should be like a treatment variable or this is an effect variable or just somewhere in between so this is kind of like one way that we think about it actually providing graphical user interfaces so that people can directly interact with this output in the graph and then also have some sliders on there for example to actually look at treatment effects so this kind of like one way to think about it on the other hand this is something that we're currently not using in our business application simply because we have hundreds of variables and actually having like a full graph of 100 variables even though you have a really nice graphical user interface it's not very straightforward so what we rather doing there is looking at interesting Parts in a graph and looking it's single edges basically and we're then building questionnaires where we would say oh do you think that this variable and that variable are related and a causes b or B causes a or whether there is a relationship or not and then kind of like attaching certainties to that as well and um I think it's a very important question also how do you actually get this feedback in a decent way and how do you present it to you to users and we don't have D answer yet but we're thinking about it and um yeah have some first approaches to that all right just along with I deliver like this is relating to the question I mean we're also working the education domain and actually we're actually running a computation for the education domain as well because it's a really important social important domain where we can find the cultural relationship between topics so teacher can get inspired so this is a collaboration with actually Edie and Oxford University press we're running smart curriculum with a cultograph I mean it's research we provide useful invite insights but we also make mistakes so we have find really interesting insights that we find our divine diagram in UK it starts much later and then we find out it's it's a topic in year 11 and this will cause for many topics in year 10 and then we realize people already use that to to the kind of design questions before even picking the students so this is an interactive process like we give this to The Domain expert they think about it and whether it's valid so they change the curriculum but of course they also give us feedback for some other insights we gave it's wrong so we build it as a new prior and retrain the model so definitely in quantity working with people is extremely important it's across all different domains and many of these applications have a great social impact any other questions if not thank you everyone thanks a lot
Original Description
Join Microsoft Research at NeurIPS 2022 for the live streaming of presentations and demos from Booth #202.
This year at the 36th annual conference on Neural Information Processing Systems, over 150 of our researchers are involved in presentations, posters, accepted papers, and workshops. Learn more about Microsoft’s presence at NeurIPS 2022: aka.ms/microsoftatneurips2022
---
Nick Pawlowski, Senior Researcher, Microsoft Research Cambridge & Cheng Zhang, Principal Researcher, Microsoft Research Cambridge
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from Microsoft Research · Microsoft Research · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Frontiers in ML: Learning from Limited Labeled Data: Challenges and Opportunities for NLP
Microsoft Research
Frontiers in Machine Learning: Climate Impact of Machine Learning
Microsoft Research
Frontiers in Machine Learning: Security and Machine Learning
Microsoft Research
Hope Speech and Help Speech: Surfacing Positivity Amidst Hate
Microsoft Research
Early Indicators of the Effect of the Global Shift to Remote Work on People with Disabilities
Microsoft Research
Remote Work and Well-Being
Microsoft Research
Challenges and Gratitude of Software Developers During COVID-19 Working From Home
Microsoft Research
Towards a Practical Virtual Office for Mobile Knowledge Workers
Microsoft Research
Impact of COVID-19 crisis on the future of work in India
Microsoft Research
Empowering and Supporting Remote Software Development Team Members through a Culture of Allyship
Microsoft Research
How Work From Home Affects Collaboration: Information Workers in a Natural Experiment During COVID19
Microsoft Research
Phong Surface: Efficient 3D Model Fitting using Lifted Optimization
Microsoft Research
Managing Tasks Across the Work-Life Boundary: Opportunities, Challenges, and Directions
Microsoft Research
Microsoft Urban Futures Summer Workshop | Data Driven Urban Transformation [Day 1]
Microsoft Research
Microsoft Urban Futures Summer Workshop | Sensors and Data [Day 2]
Microsoft Research
Microsoft Urban Futures Summer Workshop | Policy and Social Impact [Day 3]
Microsoft Research
Directions in ML: Algorithmic foundations of neural architecture search
Microsoft Research
MineRL Competition 2020
Microsoft Research
Can we make better software by using ML and AI techniques? With Chandra Maddila and Chetan Bansal
Microsoft Research
From Paper to Product
Microsoft Research
SkinnerDB: Regret Bounded Query Evaluation using RL
Microsoft Research
From SqueezeNet to SqueezeBERT: Developing Efficient Deep Neural Networks
Microsoft Research
Programming with Proofs for High-assurance Software
Microsoft Research
Platform for Situated Intelligence Overview
Microsoft Research
Directional Sources & Listeners in Interactive Sound Propagation using Reciprocal Wave Field Coding
Microsoft Research
Galactic Bell Star Music Demo
Microsoft Research
Importing Animations in Microsoft Expressive Pixels (9 of 9)
Microsoft Research
Welcome to Microsoft Expressive Pixels (1 of 9)
Microsoft Research
Getting Started with Microsoft Expressive Pixels (2 of 9)
Microsoft Research
Creating an Image in Microsoft Expressive Pixels (3 of 9)
Microsoft Research
Creating Animations in Microsoft Expressive Pixels (4 of 9)
Microsoft Research
Managing Animation Galleries in Microsoft Expressive Pixels (5 of 9)
Microsoft Research
Creating Fragments in Microsoft Expressive Pixels (6 of 9)
Microsoft Research
Using Layers in Microsoft Expressive Pixels (7 of 9)
Microsoft Research
Exporting Animations with Microsoft Expressive Pixels (8 of 9)
Microsoft Research
What Kind of Computation is Human Cognition? A Brief History of Thought (Episode 2/2)
Microsoft Research
What Kind of Computation is Human Cognition? A Brief History of Thought (Episode 1/2)
Microsoft Research
Planeverb: Interactive sound propagation for dynamic scenes using 2D wave simulation
Microsoft Research
Making cryptography accessible, efficient, and scalable with Dr. Divya Gupta and Dr. Rahul Sharma
Microsoft Research
Beyond the mega-data center: networking multi-data center regions (SIGCOMM 2020 Talk)
Microsoft Research
Optics for the cloud – Light at the end of the tunnel? (SIGCOMM 2020 Workshop)
Microsoft Research
Beyond the mega-data center: networking multi-data center regions (SIGCOMM 2020 short talk)
Microsoft Research
Sirius: A Flat Datacenter Network with Nanosecond Optical Switching (SIGCOMM 2020 short talk)
Microsoft Research
Novel Image Captioning
Microsoft Research
Forest Sound Scene Simulation and Bird Localization with Distributed Microphone Arrays
Microsoft Research
Decoding Music Attention from “EEG headphones”: a User-friendly Auditory Brain-computer Interface
Microsoft Research
How does holographic storage work?
Microsoft Research
The physics of hologram formation in iron doped lithium niobate
Microsoft Research
Introduction to coax: A Modular RL Package
Microsoft Research
Directions in ML: "Neural architecture search: Coming of age"
Microsoft Research
Microsoft Research AI Breakthroughs 2020: 20 minute research talks + Q&A panel
Microsoft Research
Fireside Chat with Johannes Gehrke during Microsoft Research AI Breakthroughs 2020
Microsoft Research
Fireside Chat with Susan Dumais during Microsoft Research AI Breakthroughs 2020
Microsoft Research
Microsoft Research AI Breakthroughs 2020: 20 minute research talks, Q&A panel, and event wrap-up
Microsoft Research
Clinical Research with FHIR
Microsoft Research
Soundscape Street Preview
Microsoft Research
Tilt-Responsive Techniques for Digital Drawing Boards
Microsoft Research
SurfaceFleet: Exploring Distributed Interactions Unbounded from Device, Application, User, and Time
Microsoft Research
Haptic PIVOT: On-Demand Handhelds in VR
Microsoft Research
SurfaceFleet Supplemental Video Demonstration (UIST 2020)
Microsoft Research
More on: Research Methods
View skill →Related Reads
📰
📰
📰
📰
Follow-up: The ArxivLens Protocol: Transforming Research Nois
Dev.to AI
On July 1, 2026, arXiv will spin out from Cornell University, its home for the past 25 years, to become an independent nonprofit organization. Major funding support from Simons Foundation and Schmidt Sciences. Ditching the red for their website. [N]
Reddit r/MachineLearning
CS-NRRM™ Official Publications: Paper 1 and Paper 2 Are Now Available
Medium · Data Science
Found a potential mistake in an ICLR 2026 blogpost [D]
Reddit r/MachineLearning
🎓
Tutor Explanation
DeepCamp AI