Your post has 2 questions, so I will try to answer both:
Difference between Causal Inference (CI) and Sensitivity Analysis (SA).
Sensitivity Analysis (SA) can be described as the following (Naik & Kiran, 2021):
“a popular feature selection approach employed to identify the
important features in a dataset. In sensitivity analysis, each input
feature is perturbed one-at-a-time and the response of the machine
learning model is examined to determine the feature's rank.”
This definition shows that SA gives you a ranked list of the important features in your data, which is very good insights as to which feature to use/focus on (can also do this after feature engineering/transformations to check if they would be useful).
On the other hand, the goal of Causal Inference (CI) requires you to identify a causal graph from your data, which can then be used in your model to A) make predictions and B) query the model for insights that traditional ML methods cannot give, such as interventions.
This causal graph that you need to build explains the cause and effects between the features and the target, and between the features themselves. For example, let’s say we have 2 features X and Z and a target Y. This shows that X directly affects the target, but also indirectly affects the target via the feature Z. It’s this type of information that CI takes into account that SA doesn’t.
Manual VS automatic graph construction
You can do either manual graph construction, automatic graph construction, or a mix of both!
A manual graph construction implies that you have enough knowledge about your data/domain to create a causal graph yourself (which features impact one another and which impact the target + the relationship of that impact e.g., the direction of the relationship and the type). The goal is to end up with a DAG (Directed Acyclic Graph) with no loops between your features and their connections.
However, you don’t always have this knowledge at hand, so you can do automatic graph construction to get started. To simplify the search space, you can do Sensitivity Analysis to highlight the most important features and focus on the most important ones at first to build your causal graph.
The output of automatic graph construction algorithms is rarely perfect, so this is where the mix of both comes in: you manually fix the automatically created graph with knowledge that you have about your data, which will allow you to correct relationships between your features (correct the direction or the relationship between them). And at the end of the process, you hopefully have a DAG that you can pass to your model along with your data!
Readings
I recommend reading the following:
Hope this helps.
References
Naik, D.L., kiran, R. A novel sensitivity-based method for feature selection. J Big Data 8, 128 (2021). https://doi.org/10.1186/s40537-021-00515-w
give drug/placebo
(exposure) which leads tocured-cancer/still-has-cancer
(outcome). Ifcrash-car-and-die
(confounding covariate variable) can also effect the outcome; which is measured or not measured (unobserved). We make this assumed causal graph (DAG), and then we go get data (dataset or do data collection), model the data and measure some metric like Propensity Score or Average Treatment Effect (ATE). $\endgroup$DAGitty
as a tool for creating those causal graphs. Note, that your preconceived causal assumptions might be wrong. After collecting and modelling the data for a given DAG, you might discover a change (e.g. add a new covariate). Then you repeat the data collection and modelling process, to see if the model's performance metrics and the PS/ATE improve. $\endgroup$