How to use the econml.sklearn_extensions.linear_model.WeightedLassoCV function in econml

To help you get started, we’ve selected a few econml examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github microsoft / EconML / econml / sklearn_extensions / linear_model.py View on Github external
def _get_optimal_alpha(self, alpha_grid, X, y, sample_weight):
        # To be done once per target. Assumes y can be flattened.
        cv_estimator = WeightedLassoCV(alphas=alpha_grid, cv=5, fit_intercept=self.fit_intercept)
        cv_estimator.fit(X, y.flatten(), sample_weight=sample_weight)
        return cv_estimator.alpha_
github microsoft / EconML / econml / sklearn_extensions / linear_model.py View on Github external
def fit(self, X, y, sample_weight=None):
        self.needs_unravel = False
        if ndim(y) == 2 and shape(y)[1] > 1:
            self.model = WeightedMultiTaskLassoCV(*self.args, **self.kwargs)
        else:
            if ndim(y) == 2 and shape(y)[1] == 1:
                y = np.ravel(y)
                self.needs_unravel = True
            self.model = WeightedLassoCV(*self.args, **self.kwargs)
        self.model.fit(X, y, sample_weight)
        # set intercept_ attribute
        self.intercept_ = self.model.intercept_
        # set coef_ attribute
        self.coef_ = self.model.coef_
        # set alpha_ attribute
        self.alpha_ = self.model.alpha_
        # set alphas_ attribute
        self.alphas_ = self.model.alphas_
        # set n_iter_ attribute
        self.n_iter_ = self.model.n_iter_
        return self
github microsoft / EconML / econml / drlearner.py View on Github external
def __init__(self,
                 model_propensity=LogisticRegressionCV(cv=3, solver='lbfgs', multi_class='auto'),
                 model_regression=WeightedLassoCV(cv=3),
                 featurizer=None,
                 fit_cate_intercept=True,
                 alpha='auto',
                 max_iter=1000,
                 tol=1e-4,
                 n_splits=2, random_state=None):
        model_final = DebiasedLasso(
            alpha=alpha,
            fit_intercept=fit_cate_intercept,
            max_iter=max_iter,
            tol=tol)
        super().__init__(model_propensity=model_propensity,
                         model_regression=model_regression,
                         model_final=model_final,
                         featurizer=featurizer,
                         multitask_model_final=False,