interpretml / DiCE

Generate Diverse Counterfactual Explanations for any machine learning model.
https://interpretml.github.io/DiCE/
MIT License
1.31k stars 183 forks source link

Counterfactuals dataframes have rounded target values #440

Open Mchristos opened 1 week ago

Mchristos commented 1 week ago

I've noticed that the counterfactuals dataframes I get from my CounterfactualExamples objects have the target value rounded to the nearest decimal place. This makes the results useless to me, since in my dataset has target values very close to zero, and the distribution is very skewed towards zero. I.e. many data points occur between 0.0 and 0.1.

I've included a modified version of this getting started notebook which shows that example.final_cfs_df (where example: CounterfactualExamples) contains rounded target values, but examples.visualize_dataframe() clearly shows that the higher precision target value is stored somewhere.

image
Mchristos commented 1 week ago

For future travellers: I've found that using example.final_cfs_df_sparse returns the desired precision in the predictions. I haven't found a way to keep the original precision in the "instance" df