WIP : Isotonic calibration

calibration module with platt and Isotonic calibration.

A few issues :

- [ ]  nice calibration plots
- [ ]  add tests for metrics
- [ ]  add narrative doc

To be continued in July 2015? ;-)
On Jul 23, 2014 5:13 PM, "Alexandre Gramfort" <notifications@github.com>
wrote:

> In sklearn/calibration.py:
>
> > +        """
> > +        X = check_array(X, accept_sparse=['csc', 'csr', 'coo'])
> > +        n_classes = len(self.classes_)
> > +        log_proba = np.zeros((X.shape[0], n_classes))
> > +        tiny = np.finfo(np.float).tiny
> > +
> > +        for this_estimator, this_calibrators in self.models_:
> > +            df, idx_pos_class = self._preproc(this_estimator, X)
> > +
> > +            for k, this_df, this_calibrator in \
> > +                    zip(idx_pos_class, df.T, this_calibrators):
> > +                if n_classes == 2:
> > +                    k += 1
> > +                proba = this_calibrator.predict(this_df)
> > +                proba = np.maximum(proba, tiny)  # to avoid log of 0 warning
> > +                log_proba[:, k] += np.log(proba)
>
>  Have you compared with just averaging the regular probabilities? (not the
> log-probabilities) I did not but averaging proba is not really recommended
> in general. If you
> have time to take over please do. I get caught by other obligations :(
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/scikit-learn/scikit-learn/pull/1176/files#r15275793>.
>