<p>This can be solved in many ways; check <a href="http://blog.datadive.net/interpreting-random-forests/" rel="nofollow noreferrer">http://blog.datadive.net/interpreting-random-forests/</a> (and a Python package for that: <a href="https://github.com/andosa/treeinterpreter" rel="nofollow noreferrer">https://github.com/andosa/treeinterpreter</a>). There are also less direct options, e.g.</p>

<ul>
<li><a href="https://arxiv.org/abs/1606.05390" rel="nofollow noreferrer">https://arxiv.org/abs/1606.05390</a> (implementation: <a href="https://github.com/sato9hara/defragTrees" rel="nofollow noreferrer">https://github.com/sato9hara/defragTrees</a>)</li>
<li><a href="https://arxiv.org/abs/1611.05722" rel="nofollow noreferrer">https://arxiv.org/abs/1611.05722</a> (implementation: <a href="https://github.com/IBCNServices/GENESIM" rel="nofollow noreferrer">https://github.com/IBCNServices/GENESIM</a>)</li>
</ul>
Random Forest Classifier: feature importance of prediction probability
<p>I am using sklearn RFC.</p>

<pre><code>forest.fit(training_data, y_train)
probas_test = forest.predict_proba(test_data)
</code></pre>

<p>I wanted to know is there a way to find the contribution / importance of each features which lead to the prediction.</p>

<p>something like , but for an individual datapoint level.</p>

<pre><code>   forest.feature_importances_
</code></pre>