I am trying to better understand the motivations and the applications behind Propensity Score Matching.

I read the following that explains the motivations behind Propensity Score Matching:

* Suppose you are want to conduct a study on the effectiveness of a certain pharmaceutical drug on Diabetes patients. However, all you have is "observational data" : you only have data on patients with diabetes that are currently taking this drug and patients who are not taking that drug.
* However, there might exist certain biases and reasons that explain which patients are more likely to be taking this drug. For example, this drug on average is prescribed to younger patients with Diabetes compared to older patients. Or this drug might not be covered by common insurance plans - therefore, patients earning over a certain income level are more likely to take this drug compared to patients earning under a certain income level. However, all this might be unknown to you at the time.
* Based on information within the data (i.e. covariates associated with each patient), Propensity Score Matching attempts to find "similar" patients taking this drug and their "counterparts" who are not taking the drug. Propensity Score Matching tries to predict the probability of the drug being prescribed to a individual patient within an observational study.
* As I understand, Propensity Score Matching will allow to "trim" the population so that there is "little difference" (i.e. variation) between the patients taking the drug vs the patients not taking the drugs. In other words, Propensity Score Matching tries to mitigate the problem of "comparing apples to oranges". Ideally, this would serve to reduce bias in the results of your study, ensuring that the groups of patients analyzed were as similar as possible.

The following picture illustrates Propensity Score Matching:

[![enter image description here](https://i.stack.imgur.com/zlUKF.jpg)](https://i.stack.imgur.com/zlUKF.jpg)

I was looking at the algorithm details of Propensity Score Matching - in short, it seems to contain 3 steps:

**1)** Run a Logistic Regression model to estimate the probability of a patient receiving the treatment vs not receiving the treatment.

**2)** Based on these Propensity Score Estimates, create pairs of patients from the treatment/non-treatment groups using some predefined method (e.g. KNN). (I am not sure why Propensity Score needs to be calculated for the matching - does the Propensity Score simply serve as a "diagnostic check" to ensure "balance" between both groups?)

**3)** Run your statistical models and analysis on these groups

**My Question:** In Step 1), is it necessary to use a Logistic Regression Model to estimate the Propensity Scores? In theory, could a Random Forest model be used to estimate these Propensity Scores - or is the interpretability of the Logistic Regression Model (i.e. effect and confidence intervals of each variable on the model) necessary for Propensity Score Estimation?

Thanks!

**References:**

* <https://en.wikipedia.org/wiki/Propensity_score_matching>