Skip to content

Commit

Permalink
Merge pull request #212 from Benjamin-Lee/interpretation-references
Browse files Browse the repository at this point in the history
Black box rule rewrite (close #209)
  • Loading branch information
Benjamin-Lee authored Jul 4, 2020
2 parents 77f5c29 + 51be209 commit 9d6e87d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 14 deletions.
29 changes: 16 additions & 13 deletions content/10.blackbox.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
## Tip 8: Your DL models can be more transparent {#blackbox}

In ML, interpretability refers to the study of the discriminative features used for classification or regression task.
ML models can vary in terms of interpretability from a “transparent” to a “black-box” model, the first with a clear description of features importance found, for example, in common random forests implementations [@doi:10.1023/A:1010933404324]
The second for the most widely used DL implementations.  
Because of the large number of parameters and non-linear relationships among features, DL models are hard to interpret when compared to other ML models. 
Model interpretability is a broad concept.
In certain cases, the goal behind interpretation is to understand the underlying data generating processes while in other cases the goal is to understand why a model made the prediction that it did for a specific example or set of examples.
In much of the ML literature, including in our guidelines, the concept of model interpretability refers to the ability to identify the discriminative features that influence or sway the predictions.
ML models vary widely in terms of interpretability: some are fully transparent while others are considered to be "black-boxes" that make predictions with little ability to examine why.
Logistic regression and decision tree models are generally considered interpretable, while deep neural networks are often considered among the most difficult to interpret because they can have many parameters and non-linear relationships. 

There are, however, many strategies to interpret a DL models.
For example, autoencoders (AE) is a family of unsupervised methods that aim to learn a new (encoded) representation and minimize the error between the new representation and the input data
Tan et al., [@doi:10.1142/9789814644730_0014] used a denoising AE to summarize key features from breast cancer dataset.
The authors could map encoded features to clinical characteristics relevant to the disease. 
Model interpretability is particularly important in biomedicine, where subsequent decision making often requires human input.
Many authors attribute a lower uptake of DL tools in healthcare to interpretability challenges [@doi:10.1109/JBHI.2016.2636665; @doi:10.1038/s41551-018-0315-x]
Strategies to interpret both ML and DL models are rapidly emerging, and the literature on the topic is growing at an exponential rate [@arxiv:2001.02522].
Therefore, instead of recommending specific methods for either DL-specific or general-purpose model interpretation, we suggest consulting [@url:https://christophm.github.io/interpretable-ml-book/] which is freely available and continually updated.

Model transparency is notably important in the biomedical field.
Many authors attribute the lack of pervasiveness of deep learning tools in healthcare because of the inability to understand what these models learn [@doi:10.1109/JBHI.2016.2636665; @doi:10.1038/s41551-018-0315-x]
In conclusion, we encourage beginners of the DL to train in parallel a base model that is easier to interpret. 
In case the difference in accuracy is too high to trade-off with the DL model, pre-training AE may help to dissect which are discriminative features. 
Alternatively, algorithms based on Garson's work [@tag:garson-interpreting] can help to investigate the weights of a DL model to better understand it [**TODO detail Garson’s algorithm?**].
Model interpretation is an open, active area of research.
It is becoming more feasible to interpret models with many parameters and non-linear relationships, but in many cases simpler models remain substantially easier to interpret than more complex ones.
When deciding on a machine learning approach and model architecture, consider an interpretability versus accuracy tradeoff.
A challenge in considering this tradeoff is that the extent to which one trades interpretability for accuracy depends on the problem itself.
When the features provided to the model are already highly relevant to the task at hand, a simpler, interpretable model that gives up only a little performance when compared to a very complex one more useful in many settings.
On the other hand, if features must be combined in complex ways to be meaningful for the task, the performance difference of a model capable of capturing that structure may outweigh the interpretability costs.
An appropriate choice can only be made after careful consideration, which often includes estimating the performance of a simple, linear model that serves as a [baseline](#baselines).
2 changes: 1 addition & 1 deletion content/11.interpretation.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ In this study, the authors evaluated the capacities of several models to predict
Unsurprisingly, the neural network model achieved the best predictive accuracy.
However, after fitting a rule-based model, the authors discovered that the hospital data implied the rule `HasAsthma(x) => LowerRisk(x)`.
This rule contradicts medical understanding - having asthma doesn't make pneumonia better!
This rule was supported by the data (pneumonia patients with a history of pneumonia tended to receive more aggressive care), so the neural network also learned to make predictions according to this rule.
This rule was supported by the data (pneumonia patients with a history of asthma tended to receive more aggressive care), so the neural network also learned to make predictions according to this rule.
Guiding treatment decisions according to the predictions of the neural network would have been disastrous, even though the neural network had high predictive accuracy.

To trust deep learning models, we must combine knowledge of the training data ([Tip 4](#know-your-problem)) with inspection of the model ([Tip 8](#blackbox)).
Expand Down
14 changes: 14 additions & 0 deletions content/manual-references.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,5 +58,19 @@
"family": "Lee"
}
]
},
{
"id": "url:https://christophm.github.io/interpretable-ml-book/",
"type": "book",
"title": "Interpretable Machine Learning",
"author": [{"given": "Christoph", "family": "Molnar"}],
"URL": "https://christophm.github.io/interpretable-ml-book/",
"issued": {
"date-parts": [
[
2019
]
]
}
}
]

0 comments on commit 9d6e87d

Please sign in to comment.