Yes, but if you write it in Python, not Cython, it will be unbearably slow.
On 02/15/2018 12:37 PM, Thomas Evangelidis wrote:
Greetings,
The feature importance calculated by the RandomForest implementation
is a very useful feature. I personally use it to select the best
features because it is simple and fast, and then I train
MLPRegressors. The limitation of this approach is that although I can
control the loss function of the MLPRegressor (I have modified
scikit-learn's implementation to accept an arbitrary loss function), I
cannot do the same with RandomForestRegressor, and hence I have to
rely on 'mse' which is not in accordance with the loss functions I use
in MLPs. Today I was looking at the _criterion.pyx file:
https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/tree/_criterion.pyx
However, the code is in Cython and I find it hard to follow. I know
that for Regression the relevant class are Criterion(),
RegressionCriterion(Criterion), and MSE(RegressionCriterion). My
question is: is it possible to write a class that takes an arbitrary
function "loss(predictions, targets)" to calculate the loss and
impurity of the nodes?
thanks,
Thomas
--
======================================================================
Dr Thomas Evangelidis
Post-doctoral Researcher
CEITEC - Central European Institute of Technology
Masaryk University
Kamenice 5/A35/2S049,
62500 Brno, Czech Republic
email: tev...@pharm.uoa.gr <mailto:tev...@pharm.uoa.gr>
teva...@gmail.com <mailto:teva...@gmail.com>
website: https://sites.google.com/site/thomasevangelidishomepage/
_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn
_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn