Ejemplo n.º 1
0
    def fit(self, X, y):
        from xgboost import XGBRegressor
        if not KAGGLE:
            from OptimizedOffsetRegressor import DigitizedOptimizedOffsetRegressor

        self.xgb = XGBRegressor(objective=self.objective,
                                learning_rate=self.learning_rate,
                                min_child_weight=self.min_child_weight,
                                subsample=self.subsample,
                                colsample_bytree=self.colsample_bytree,
                                max_depth=self.max_depth,
                                n_estimators=self.n_estimators,
                                nthread=self.nthread,
                                missing=0.0,
                                seed=self.seed)
        from OptimizedOffsetRegressor import FullDigitizedOptimizedOffsetRegressor
        self.off = FullDigitizedOptimizedOffsetRegressor(
            n_buckets=self.n_buckets,
            #                       basinhopping=True,
            initial_params=self.initial_params,
            minimizer=self.minimizer,
            scoring=self.scoring)

        self.xgb.fit(X, y)

        tr_y_hat = self.xgb.predict(
            X, ntree_limit=self.xgb.booster().best_iteration)
        print('Train score is:', -self.scoring(tr_y_hat, y))
        self.off.fit(tr_y_hat, y)
        print("Offsets:", self.off.params)

        return self
Ejemplo n.º 2
0
    def __call__(self, i, te_y_hat, ytest):
        print('XGB[{}] Test score is:'.format(i + 1),
              -self.scoring(te_y_hat, ytest))

        from OptimizedOffsetRegressor import FullDigitizedOptimizedOffsetRegressor
        off = FullDigitizedOptimizedOffsetRegressor(
            n_buckets=self.n_buckets,
            basinhopping=True,
            initial_params=self.initial_params,
            minimizer=self.minimizer,
            scoring=self.scoring)
        off.fit(te_y_hat, ytest)
        print("Offsets[{}]:".format(i + 1), off.params)

        return off