regressors =========================================================== .. py:module:: evalml.pipelines.components.estimators.regressors .. autoapi-nested-parse:: Regression model components. Submodules ---------- .. toctree:: :titlesonly: :maxdepth: 1 arima_regressor/index.rst baseline_regressor/index.rst catboost_regressor/index.rst decision_tree_regressor/index.rst elasticnet_regressor/index.rst et_regressor/index.rst exponential_smoothing_regressor/index.rst lightgbm_regressor/index.rst linear_regressor/index.rst prophet_regressor/index.rst rf_regressor/index.rst svm_regressor/index.rst time_series_baseline_estimator/index.rst vowpal_wabbit_regressor/index.rst xgboost_regressor/index.rst Package Contents ---------------- Classes Summary ~~~~~~~~~~~~~~~ .. autoapisummary:: evalml.pipelines.components.estimators.regressors.ARIMARegressor evalml.pipelines.components.estimators.regressors.BaselineRegressor evalml.pipelines.components.estimators.regressors.CatBoostRegressor evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor evalml.pipelines.components.estimators.regressors.ElasticNetRegressor evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor evalml.pipelines.components.estimators.regressors.LightGBMRegressor evalml.pipelines.components.estimators.regressors.LinearRegressor evalml.pipelines.components.estimators.regressors.ProphetRegressor evalml.pipelines.components.estimators.regressors.RandomForestRegressor evalml.pipelines.components.estimators.regressors.SVMRegressor evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor evalml.pipelines.components.estimators.regressors.XGBoostRegressor Contents ~~~~~~~~~~~~~~~~~~~ .. py:class:: ARIMARegressor(time_index=None, trend=None, start_p=2, d=0, start_q=2, max_p=5, max_d=2, max_q=5, seasonal=True, sp=1, n_jobs=-1, random_seed=0, maxiter=10, use_covariates=True, **kwargs) Autoregressive Integrated Moving Average Model. The three parameters (p, d, q) are the AR order, the degree of differencing, and the MA order. More information here: https://www.statsmodels.org/devel/generated/statsmodels.tsa.arima.model.ARIMA.html. Currently ARIMARegressor isn't supported via conda install. It's recommended that it be installed via PyPI. :param time_index: Specifies the name of the column in X that provides the datetime objects. Defaults to None. :type time_index: str :param trend: Controls the deterministic trend. Options are ['n', 'c', 't', 'ct'] where 'c' is a constant term, 't' indicates a linear trend, and 'ct' is both. Can also be an iterable when defining a polynomial, such as [1, 1, 0, 1]. :type trend: str :param start_p: Minimum Autoregressive order. Defaults to 2. :type start_p: int :param d: Minimum Differencing degree. Defaults to 0. :type d: int :param start_q: Minimum Moving Average order. Defaults to 2. :type start_q: int :param max_p: Maximum Autoregressive order. Defaults to 5. :type max_p: int :param max_d: Maximum Differencing degree. Defaults to 2. :type max_d: int :param max_q: Maximum Moving Average order. Defaults to 5. :type max_q: int :param seasonal: Whether to fit a seasonal model to ARIMA. Defaults to True. :type seasonal: boolean :param sp: Period for seasonal differencing, specifically the number of periods in each season. If "detect", this model will automatically detect this parameter (given the time series is a standard frequency) and will fall back to 1 (no seasonality) if it cannot be detected. Defaults to 1. :type sp: int or str :param n_jobs: Non-negative integer describing level of parallelism used for pipelines. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "start_p": Integer(1, 3), "d": Integer(0, 2), "start_q": Integer(1, 3), "max_p": Integer(3, 10), "max_d": Integer(2, 5), "max_q": Integer(3, 10), "seasonal": [True, False],} * - **model_family** - ModelFamily.ARIMA * - **modifies_features** - True * - **modifies_target** - False * - **name** - ARIMA Regressor * - **supported_problem_types** - [ProblemTypes.TIME_SERIES_REGRESSION] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.ARIMARegressor.clone evalml.pipelines.components.estimators.regressors.ARIMARegressor.default_parameters evalml.pipelines.components.estimators.regressors.ARIMARegressor.describe evalml.pipelines.components.estimators.regressors.ARIMARegressor.feature_importance evalml.pipelines.components.estimators.regressors.ARIMARegressor.fit evalml.pipelines.components.estimators.regressors.ARIMARegressor.load evalml.pipelines.components.estimators.regressors.ARIMARegressor.needs_fitting evalml.pipelines.components.estimators.regressors.ARIMARegressor.parameters evalml.pipelines.components.estimators.regressors.ARIMARegressor.predict evalml.pipelines.components.estimators.regressors.ARIMARegressor.predict_proba evalml.pipelines.components.estimators.regressors.ARIMARegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns array of 0's with a length of 1 as feature_importance is not defined for ARIMA regressor. .. py:method:: fit(self, X, y=None) Fits ARIMA regressor to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self :raises ValueError: If y was not passed in. .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X, y=None) Make predictions using fitted ARIMA regressor. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: Target data. :type y: pd.Series :returns: Predicted values. :rtype: pd.Series :raises ValueError: If X was passed to `fit` but not passed in `predict`. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: BaselineRegressor(strategy='mean', random_seed=0, **kwargs) Baseline regressor that uses a simple strategy to make predictions. This is useful as a simple baseline regressor to compare with other regressors. :param strategy: Method used to predict. Valid options are "mean", "median". Defaults to "mean". :type strategy: str :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - {} * - **model_family** - ModelFamily.BASELINE * - **modifies_features** - True * - **modifies_target** - False * - **name** - Baseline Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.BaselineRegressor.clone evalml.pipelines.components.estimators.regressors.BaselineRegressor.default_parameters evalml.pipelines.components.estimators.regressors.BaselineRegressor.describe evalml.pipelines.components.estimators.regressors.BaselineRegressor.feature_importance evalml.pipelines.components.estimators.regressors.BaselineRegressor.fit evalml.pipelines.components.estimators.regressors.BaselineRegressor.load evalml.pipelines.components.estimators.regressors.BaselineRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.BaselineRegressor.parameters evalml.pipelines.components.estimators.regressors.BaselineRegressor.predict evalml.pipelines.components.estimators.regressors.BaselineRegressor.predict_proba evalml.pipelines.components.estimators.regressors.BaselineRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. Since baseline regressors do not use input features to calculate predictions, returns an array of zeroes. :returns: An array of zeroes. :rtype: np.ndarray (float) .. py:method:: fit(self, X, y=None) Fits baseline regression component to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self :raises ValueError: If input y is None. .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using the baseline regression strategy. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: CatBoostRegressor(n_estimators=10, eta=0.03, max_depth=6, bootstrap_type=None, silent=False, allow_writing_files=False, random_seed=0, n_jobs=-1, **kwargs) CatBoost Regressor, a regressor that uses gradient-boosting on decision trees. CatBoost is an open-source library and natively supports categorical features. For more information, check out https://catboost.ai/ :param n_estimators: The maximum number of trees to build. Defaults to 10. :type n_estimators: float :param eta: The learning rate. Defaults to 0.03. :type eta: float :param max_depth: The maximum tree depth for base learners. Defaults to 6. :type max_depth: int :param bootstrap_type: Defines the method for sampling the weights of objects. Available methods are 'Bayesian', 'Bernoulli', 'MVS'. Defaults to None. :type bootstrap_type: string :param silent: Whether to use the "silent" logging mode. Defaults to True. :type silent: boolean :param allow_writing_files: Whether to allow writing snapshot files while training. Defaults to False. :type allow_writing_files: boolean :param n_jobs: Number of jobs to run in parallel. -1 uses all processes. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "n_estimators": Integer(4, 100), "eta": Real(0.000001, 1), "max_depth": Integer(4, 10),} * - **model_family** - ModelFamily.CATBOOST * - **modifies_features** - True * - **modifies_target** - False * - **name** - CatBoost Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.CatBoostRegressor.clone evalml.pipelines.components.estimators.regressors.CatBoostRegressor.default_parameters evalml.pipelines.components.estimators.regressors.CatBoostRegressor.describe evalml.pipelines.components.estimators.regressors.CatBoostRegressor.feature_importance evalml.pipelines.components.estimators.regressors.CatBoostRegressor.fit evalml.pipelines.components.estimators.regressors.CatBoostRegressor.load evalml.pipelines.components.estimators.regressors.CatBoostRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.CatBoostRegressor.parameters evalml.pipelines.components.estimators.regressors.CatBoostRegressor.predict evalml.pipelines.components.estimators.regressors.CatBoostRegressor.predict_proba evalml.pipelines.components.estimators.regressors.CatBoostRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance of fitted CatBoost regressor. .. py:method:: fit(self, X, y=None) Fits CatBoost regressor component to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: DecisionTreeRegressor(criterion='mse', max_features='auto', max_depth=6, min_samples_split=2, min_weight_fraction_leaf=0.0, random_seed=0, **kwargs) Decision Tree Regressor. :param criterion: The function to measure the quality of a split. Supported criteria are: - "mse" for the mean squared error, which is equal to variance reduction as feature selection criterion and minimizes the L2 loss using the mean of each terminal node - "friedman_mse", which uses mean squared error with Friedman"s improvement score for potential splits - "mae" for the mean absolute error, which minimizes the L1 loss using the median of each terminal node, - "poisson" which uses reduction in Poisson deviance to find splits. :type criterion: {"mse", "friedman_mse", "mae", "poisson"} :param max_features: The number of features to consider when looking for the best split: - If int, then consider max_features features at each split. - If float, then max_features is a fraction and int(max_features * n_features) features are considered at each split. - If "auto", then max_features=sqrt(n_features). - If "sqrt", then max_features=sqrt(n_features). - If "log2", then max_features=log2(n_features). - If None, then max_features = n_features. The search for a split does not stop until at least one valid partition of the node samples is found, even if it requires to effectively inspect more than max_features features. :type max_features: int, float or {"auto", "sqrt", "log2"} :param max_depth: The maximum depth of the tree. Defaults to 6. :type max_depth: int :param min_samples_split: The minimum number of samples required to split an internal node: - If int, then consider min_samples_split as the minimum number. - If float, then min_samples_split is a fraction and ceil(min_samples_split * n_samples) are the minimum number of samples for each split. Defaults to 2. :type min_samples_split: int or float :param min_weight_fraction_leaf: The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Defaults to 0.0. :type min_weight_fraction_leaf: float :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "criterion": ["mse", "friedman_mse", "mae"], "max_features": ["auto", "sqrt", "log2"], "max_depth": Integer(4, 10),} * - **model_family** - ModelFamily.DECISION_TREE * - **modifies_features** - True * - **modifies_target** - False * - **name** - Decision Tree Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.clone evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.default_parameters evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.describe evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.feature_importance evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.fit evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.load evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.parameters evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.predict evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.predict_proba evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. :returns: Importance associated with each feature. :rtype: np.ndarray :raises MethodPropertyNotFoundError: If estimator does not have a feature_importance method or a component_obj that implements feature_importance. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: ElasticNetRegressor(alpha=0.0001, l1_ratio=0.15, max_iter=1000, normalize=False, random_seed=0, **kwargs) Elastic Net Regressor. :param alpha: Constant that multiplies the penalty terms. Defaults to 0.0001. :type alpha: float :param l1_ratio: The mixing parameter, with 0 <= l1_ratio <= 1. Only used if penalty='elasticnet'. Setting l1_ratio=0 is equivalent to using penalty='l2', while setting l1_ratio=1 is equivalent to using penalty='l1'. For 0 < l1_ratio <1, the penalty is a combination of L1 and L2. Defaults to 0.15. :type l1_ratio: float :param max_iter: The maximum number of iterations. Defaults to 1000. :type max_iter: int :param normalize: If True, the regressors will be normalized before regression by subtracting the mean and dividing by the l2-norm. Defaults to False. :type normalize: boolean :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "alpha": Real(0, 1), "l1_ratio": Real(0, 1),} * - **model_family** - ModelFamily.LINEAR_MODEL * - **modifies_features** - True * - **modifies_target** - False * - **name** - Elastic Net Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.clone evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.default_parameters evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.describe evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.feature_importance evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.fit evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.load evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.parameters evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.predict evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.predict_proba evalml.pipelines.components.estimators.regressors.ElasticNetRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance for fitted ElasticNet regressor. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: ExponentialSmoothingRegressor(trend=None, damped_trend=False, seasonal=None, sp=2, n_jobs=-1, random_seed=0, **kwargs) Holt-Winters Exponential Smoothing Forecaster. Currently ExponentialSmoothingRegressor isn't supported via conda install. It's recommended that it be installed via PyPI. :param trend: Type of trend component. Defaults to None. :type trend: str :param damped_trend: If the trend component should be damped. Defaults to False. :type damped_trend: bool :param seasonal: Type of seasonal component. Takes one of {“additive”, None}. Can also be multiplicative if :type seasonal: str :param none of the target data is 0: :param but AutoMLSearch wiill not tune for this. Defaults to None.: :param sp: The number of seasonal periods to consider. Defaults to 2. :type sp: int :param n_jobs: Non-negative integer describing level of parallelism used for pipelines. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "trend": [None, "additive"], "damped_trend": [True, False], "seasonal": [None, "additive"], "sp": Integer(2, 8),} * - **model_family** - ModelFamily.EXPONENTIAL_SMOOTHING * - **modifies_features** - True * - **modifies_target** - False * - **name** - Exponential Smoothing Regressor * - **supported_problem_types** - [ProblemTypes.TIME_SERIES_REGRESSION] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.clone evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.default_parameters evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.describe evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.feature_importance evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.fit evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.load evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.parameters evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.predict evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.predict_proba evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns array of 0's with a length of 1 as feature_importance is not defined for Exponential Smoothing regressor. .. py:method:: fit(self, X, y=None) Fits Exponential Smoothing Regressor to data. :param X: The input training data of shape [n_samples, n_features]. Ignored. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self :raises ValueError: If y was not passed in. .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X, y=None) Make predictions using fitted Exponential Smoothing regressor. :param X: Data of shape [n_samples, n_features]. Ignored except to set forecast horizon. :type X: pd.DataFrame :param y: Target data. :type y: pd.Series :returns: Predicted values. :rtype: pd.Series .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: ExtraTreesRegressor(n_estimators=100, max_features='auto', max_depth=6, min_samples_split=2, min_weight_fraction_leaf=0.0, n_jobs=-1, random_seed=0, **kwargs) Extra Trees Regressor. :param n_estimators: The number of trees in the forest. Defaults to 100. :type n_estimators: float :param max_features: The number of features to consider when looking for the best split: - If int, then consider max_features features at each split. - If float, then max_features is a fraction and int(max_features * n_features) features are considered at each split. - If "auto", then max_features=sqrt(n_features). - If "sqrt", then max_features=sqrt(n_features). - If "log2", then max_features=log2(n_features). - If None, then max_features = n_features. The search for a split does not stop until at least one valid partition of the node samples is found, even if it requires to effectively inspect more than max_features features. Defaults to "auto". :type max_features: int, float or {"auto", "sqrt", "log2"} :param max_depth: The maximum depth of the tree. Defaults to 6. :type max_depth: int :param min_samples_split: The minimum number of samples required to split an internal node: - If int, then consider min_samples_split as the minimum number. - If float, then min_samples_split is a fraction and ceil(min_samples_split * n_samples) are the minimum number of samples for each split. :type min_samples_split: int or float :param Defaults to 2.: :param min_weight_fraction_leaf: The minimum weighted fraction of the sum total of weights (of all the input samples) required to be at a leaf node. Defaults to 0.0. :type min_weight_fraction_leaf: float :param n_jobs: Number of jobs to run in parallel. -1 uses all processes. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "n_estimators": Integer(10, 1000), "max_features": ["auto", "sqrt", "log2"], "max_depth": Integer(4, 10),} * - **model_family** - ModelFamily.EXTRA_TREES * - **modifies_features** - True * - **modifies_target** - False * - **name** - Extra Trees Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.clone evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.default_parameters evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.describe evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.feature_importance evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.fit evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.load evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.parameters evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.predict evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.predict_proba evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. :returns: Importance associated with each feature. :rtype: np.ndarray :raises MethodPropertyNotFoundError: If estimator does not have a feature_importance method or a component_obj that implements feature_importance. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: LightGBMRegressor(boosting_type='gbdt', learning_rate=0.1, n_estimators=20, max_depth=0, num_leaves=31, min_child_samples=20, bagging_fraction=0.9, bagging_freq=0, n_jobs=-1, random_seed=0, **kwargs) LightGBM Regressor. :param boosting_type: Type of boosting to use. Defaults to "gbdt". - 'gbdt' uses traditional Gradient Boosting Decision Tree - "dart", uses Dropouts meet Multiple Additive Regression Trees - "goss", uses Gradient-based One-Side Sampling - "rf", uses Random Forest :type boosting_type: string :param learning_rate: Boosting learning rate. Defaults to 0.1. :type learning_rate: float :param n_estimators: Number of boosted trees to fit. Defaults to 100. :type n_estimators: int :param max_depth: Maximum tree depth for base learners, <=0 means no limit. Defaults to 0. :type max_depth: int :param num_leaves: Maximum tree leaves for base learners. Defaults to 31. :type num_leaves: int :param min_child_samples: Minimum number of data needed in a child (leaf). Defaults to 20. :type min_child_samples: int :param bagging_fraction: LightGBM will randomly select a subset of features on each iteration (tree) without resampling if this is smaller than 1.0. For example, if set to 0.8, LightGBM will select 80% of features before training each tree. This can be used to speed up training and deal with overfitting. Defaults to 0.9. :type bagging_fraction: float :param bagging_freq: Frequency for bagging. 0 means bagging is disabled. k means perform bagging at every k iteration. Every k-th iteration, LightGBM will randomly select bagging_fraction * 100 % of the data to use for the next k iterations. Defaults to 0. :type bagging_freq: int :param n_jobs: Number of threads to run in parallel. -1 uses all threads. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "learning_rate": Real(0.000001, 1), "boosting_type": ["gbdt", "dart", "goss", "rf"], "n_estimators": Integer(10, 100), "max_depth": Integer(0, 10), "num_leaves": Integer(2, 100), "min_child_samples": Integer(1, 100), "bagging_fraction": Real(0.000001, 1), "bagging_freq": Integer(0, 1),} * - **model_family** - ModelFamily.LIGHTGBM * - **modifies_features** - True * - **modifies_target** - False * - **name** - LightGBM Regressor * - **SEED_MAX** - SEED_BOUNDS.max_bound * - **SEED_MIN** - 0 * - **supported_problem_types** - [ProblemTypes.REGRESSION] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.LightGBMRegressor.clone evalml.pipelines.components.estimators.regressors.LightGBMRegressor.default_parameters evalml.pipelines.components.estimators.regressors.LightGBMRegressor.describe evalml.pipelines.components.estimators.regressors.LightGBMRegressor.feature_importance evalml.pipelines.components.estimators.regressors.LightGBMRegressor.fit evalml.pipelines.components.estimators.regressors.LightGBMRegressor.load evalml.pipelines.components.estimators.regressors.LightGBMRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.LightGBMRegressor.parameters evalml.pipelines.components.estimators.regressors.LightGBMRegressor.predict evalml.pipelines.components.estimators.regressors.LightGBMRegressor.predict_proba evalml.pipelines.components.estimators.regressors.LightGBMRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. :returns: Importance associated with each feature. :rtype: np.ndarray :raises MethodPropertyNotFoundError: If estimator does not have a feature_importance method or a component_obj that implements feature_importance. .. py:method:: fit(self, X, y=None) Fits LightGBM regressor to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using fitted LightGBM regressor. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: LinearRegressor(fit_intercept=True, normalize=False, n_jobs=-1, random_seed=0, **kwargs) Linear Regressor. :param fit_intercept: Whether to calculate the intercept for this model. If set to False, no intercept will be used in calculations (i.e. data is expected to be centered). Defaults to True. :type fit_intercept: boolean :param normalize: If True, the regressors will be normalized before regression by subtracting the mean and dividing by the l2-norm. This parameter is ignored when fit_intercept is set to False. Defaults to False. :type normalize: boolean :param n_jobs: Number of jobs to run in parallel. -1 uses all threads. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "fit_intercept": [True, False], "normalize": [True, False]} * - **model_family** - ModelFamily.LINEAR_MODEL * - **modifies_features** - True * - **modifies_target** - False * - **name** - Linear Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.LinearRegressor.clone evalml.pipelines.components.estimators.regressors.LinearRegressor.default_parameters evalml.pipelines.components.estimators.regressors.LinearRegressor.describe evalml.pipelines.components.estimators.regressors.LinearRegressor.feature_importance evalml.pipelines.components.estimators.regressors.LinearRegressor.fit evalml.pipelines.components.estimators.regressors.LinearRegressor.load evalml.pipelines.components.estimators.regressors.LinearRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.LinearRegressor.parameters evalml.pipelines.components.estimators.regressors.LinearRegressor.predict evalml.pipelines.components.estimators.regressors.LinearRegressor.predict_proba evalml.pipelines.components.estimators.regressors.LinearRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance for fitted linear regressor. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: ProphetRegressor(time_index=None, changepoint_prior_scale=0.05, seasonality_prior_scale=10, holidays_prior_scale=10, seasonality_mode='additive', random_seed=0, stan_backend='CMDSTANPY', **kwargs) Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends are fit with yearly, weekly, and daily seasonality, plus holiday effects. It works best with time series that have strong seasonal effects and several seasons of historical data. Prophet is robust to missing data and shifts in the trend, and typically handles outliers well. More information here: https://facebook.github.io/prophet/ **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "changepoint_prior_scale": Real(0.001, 0.5), "seasonality_prior_scale": Real(0.01, 10), "holidays_prior_scale": Real(0.01, 10), "seasonality_mode": ["additive", "multiplicative"],} * - **model_family** - ModelFamily.PROPHET * - **modifies_features** - True * - **modifies_target** - False * - **name** - Prophet Regressor * - **supported_problem_types** - [ProblemTypes.TIME_SERIES_REGRESSION] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.ProphetRegressor.build_prophet_df evalml.pipelines.components.estimators.regressors.ProphetRegressor.clone evalml.pipelines.components.estimators.regressors.ProphetRegressor.default_parameters evalml.pipelines.components.estimators.regressors.ProphetRegressor.describe evalml.pipelines.components.estimators.regressors.ProphetRegressor.feature_importance evalml.pipelines.components.estimators.regressors.ProphetRegressor.fit evalml.pipelines.components.estimators.regressors.ProphetRegressor.get_params evalml.pipelines.components.estimators.regressors.ProphetRegressor.load evalml.pipelines.components.estimators.regressors.ProphetRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.ProphetRegressor.parameters evalml.pipelines.components.estimators.regressors.ProphetRegressor.predict evalml.pipelines.components.estimators.regressors.ProphetRegressor.predict_proba evalml.pipelines.components.estimators.regressors.ProphetRegressor.save .. py:method:: build_prophet_df(X, y=None, time_index='ds') :staticmethod: Build the Prophet data to pass fit and predict on. .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns array of 0's with len(1) as feature_importance is not defined for Prophet regressor. .. py:method:: fit(self, X, y=None) Fits Prophet regressor component to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self .. py:method:: get_params(self) Get parameters for the Prophet regressor. .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X, y=None) Make predictions using fitted Prophet regressor. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: Target data. Ignored. :type y: pd.Series :returns: Predicted values. :rtype: pd.Series .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: RandomForestRegressor(n_estimators=100, max_depth=6, n_jobs=-1, random_seed=0, **kwargs) Random Forest Regressor. :param n_estimators: The number of trees in the forest. Defaults to 100. :type n_estimators: float :param max_depth: Maximum tree depth for base learners. Defaults to 6. :type max_depth: int :param n_jobs: Number of jobs to run in parallel. -1 uses all processes. Defaults to -1. :type n_jobs: int or None :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "n_estimators": Integer(10, 1000), "max_depth": Integer(1, 32),} * - **model_family** - ModelFamily.RANDOM_FOREST * - **modifies_features** - True * - **modifies_target** - False * - **name** - Random Forest Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.RandomForestRegressor.clone evalml.pipelines.components.estimators.regressors.RandomForestRegressor.default_parameters evalml.pipelines.components.estimators.regressors.RandomForestRegressor.describe evalml.pipelines.components.estimators.regressors.RandomForestRegressor.feature_importance evalml.pipelines.components.estimators.regressors.RandomForestRegressor.fit evalml.pipelines.components.estimators.regressors.RandomForestRegressor.load evalml.pipelines.components.estimators.regressors.RandomForestRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.RandomForestRegressor.parameters evalml.pipelines.components.estimators.regressors.RandomForestRegressor.predict evalml.pipelines.components.estimators.regressors.RandomForestRegressor.predict_proba evalml.pipelines.components.estimators.regressors.RandomForestRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. :returns: Importance associated with each feature. :rtype: np.ndarray :raises MethodPropertyNotFoundError: If estimator does not have a feature_importance method or a component_obj that implements feature_importance. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: SVMRegressor(C=1.0, kernel='rbf', gamma='auto', random_seed=0, **kwargs) Support Vector Machine Regressor. :param C: The regularization parameter. The strength of the regularization is inversely proportional to C. Must be strictly positive. The penalty is a squared l2 penalty. Defaults to 1.0. :type C: float :param kernel: Specifies the kernel type to be used in the algorithm. Defaults to "rbf". :type kernel: {"poly", "rbf", "sigmoid"} :param gamma: Kernel coefficient for "rbf", "poly" and "sigmoid". Defaults to "auto". - If gamma='scale' is passed then it uses 1 / (n_features * X.var()) as value of gamma - If "auto" (default), uses 1 / n_features :type gamma: {"scale", "auto"} or float :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "C": Real(0, 10), "kernel": ["poly", "rbf", "sigmoid"], "gamma": ["scale", "auto"],} * - **model_family** - ModelFamily.SVM * - **modifies_features** - True * - **modifies_target** - False * - **name** - SVM Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.SVMRegressor.clone evalml.pipelines.components.estimators.regressors.SVMRegressor.default_parameters evalml.pipelines.components.estimators.regressors.SVMRegressor.describe evalml.pipelines.components.estimators.regressors.SVMRegressor.feature_importance evalml.pipelines.components.estimators.regressors.SVMRegressor.fit evalml.pipelines.components.estimators.regressors.SVMRegressor.load evalml.pipelines.components.estimators.regressors.SVMRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.SVMRegressor.parameters evalml.pipelines.components.estimators.regressors.SVMRegressor.predict evalml.pipelines.components.estimators.regressors.SVMRegressor.predict_proba evalml.pipelines.components.estimators.regressors.SVMRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance of fitted SVM regresor. Only works with linear kernels. If the kernel isn't linear, we return a numpy array of zeros. :returns: The feature importance of the fitted SVM regressor, or an array of zeroes if the kernel is not linear. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: TimeSeriesBaselineEstimator(gap=1, forecast_horizon=1, random_seed=0, **kwargs) Time series estimator that predicts using the naive forecasting approach. This is useful as a simple baseline estimator for time series problems. :param gap: Gap between prediction date and target date and must be a positive integer. If gap is 0, target date will be shifted ahead by 1 time period. Defaults to 1. :type gap: int :param forecast_horizon: Number of time steps the model is expected to predict. :type forecast_horizon: int :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - {} * - **model_family** - ModelFamily.BASELINE * - **modifies_features** - True * - **modifies_target** - False * - **name** - Time Series Baseline Estimator * - **supported_problem_types** - [ ProblemTypes.TIME_SERIES_REGRESSION, ProblemTypes.TIME_SERIES_BINARY, ProblemTypes.TIME_SERIES_MULTICLASS,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.clone evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.default_parameters evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.describe evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.feature_importance evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.fit evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.load evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.needs_fitting evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.parameters evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.predict evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.predict_proba evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Returns importance associated with each feature. Since baseline estimators do not use input features to calculate predictions, returns an array of zeroes. :returns: An array of zeroes. :rtype: np.ndarray (float) .. py:method:: fit(self, X, y=None) Fits time series baseline estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series :returns: self :raises ValueError: If input y is None. .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using fitted time series baseline estimator. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises ValueError: If input y is None. .. py:method:: predict_proba(self, X) Make prediction probabilities using fitted time series baseline estimator. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted probability values. :rtype: pd.DataFrame :raises ValueError: If input y is None. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: VowpalWabbitRegressor(learning_rate=0.5, decay_learning_rate=1.0, power_t=0.5, passes=1, random_seed=0, **kwargs) Vowpal Wabbit Regressor. :param learning_rate: Boosting learning rate. Defaults to 0.5. :type learning_rate: float :param decay_learning_rate: Decay factor for learning_rate. Defaults to 1.0. :type decay_learning_rate: float :param power_t: Power on learning rate decay. Defaults to 0.5. :type power_t: float :param passes: Number of training passes. Defaults to 1. :type passes: int :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - None * - **model_family** - ModelFamily.VOWPAL_WABBIT * - **modifies_features** - True * - **modifies_target** - False * - **name** - Vowpal Wabbit Regressor * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.clone evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.default_parameters evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.describe evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.feature_importance evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.fit evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.load evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.parameters evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.predict evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.predict_proba evalml.pipelines.components.estimators.regressors.VowpalWabbitRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance for Vowpal Wabbit regressor. .. py:method:: fit(self, X, y=None) Fits estimator to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using selected features. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict method or a component_obj that implements predict. .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int .. py:class:: XGBoostRegressor(eta=0.1, max_depth=6, min_child_weight=1, n_estimators=100, random_seed=0, n_jobs=12, **kwargs) XGBoost Regressor. :param eta: Boosting learning rate. Defaults to 0.1. :type eta: float :param max_depth: Maximum tree depth for base learners. Defaults to 6. :type max_depth: int :param min_child_weight: Minimum sum of instance weight (hessian) needed in a child. Defaults to 1.0 :type min_child_weight: float :param n_estimators: Number of gradient boosted trees. Equivalent to number of boosting rounds. Defaults to 100. :type n_estimators: int :param random_seed: Seed for the random number generator. Defaults to 0. :type random_seed: int :param n_jobs: Number of parallel threads used to run xgboost. Note that creating thread contention will significantly slow down the algorithm. Defaults to 12. :type n_jobs: int **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **hyperparameter_ranges** - { "eta": Real(0.000001, 1), "max_depth": Integer(1, 20), "min_child_weight": Real(1, 10), "n_estimators": Integer(1, 1000),} * - **model_family** - ModelFamily.XGBOOST * - **modifies_features** - True * - **modifies_target** - False * - **name** - XGBoost Regressor * - **SEED_MAX** - None * - **SEED_MIN** - None * - **supported_problem_types** - [ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,] * - **training_only** - False **Methods** .. autoapisummary:: :nosignatures: evalml.pipelines.components.estimators.regressors.XGBoostRegressor.clone evalml.pipelines.components.estimators.regressors.XGBoostRegressor.default_parameters evalml.pipelines.components.estimators.regressors.XGBoostRegressor.describe evalml.pipelines.components.estimators.regressors.XGBoostRegressor.feature_importance evalml.pipelines.components.estimators.regressors.XGBoostRegressor.fit evalml.pipelines.components.estimators.regressors.XGBoostRegressor.load evalml.pipelines.components.estimators.regressors.XGBoostRegressor.needs_fitting evalml.pipelines.components.estimators.regressors.XGBoostRegressor.parameters evalml.pipelines.components.estimators.regressors.XGBoostRegressor.predict evalml.pipelines.components.estimators.regressors.XGBoostRegressor.predict_proba evalml.pipelines.components.estimators.regressors.XGBoostRegressor.save .. py:method:: clone(self) Constructs a new component with the same parameters and random state. :returns: A new instance of this component with identical parameters and random state. .. py:method:: default_parameters(cls) Returns the default parameters for this component. Our convention is that Component.default_parameters == Component().parameters. :returns: Default parameters for this component. :rtype: dict .. py:method:: describe(self, print_name=False, return_dict=False) Describe a component and its parameters. :param print_name: whether to print name of component :type print_name: bool, optional :param return_dict: whether to return description as dictionary in the format {"name": name, "parameters": parameters} :type return_dict: bool, optional :returns: Returns dictionary if return_dict is True, else None. :rtype: None or dict .. py:method:: feature_importance(self) :property: Feature importance of fitted XGBoost regressor. .. py:method:: fit(self, X, y=None) Fits XGBoost regressor component to data. :param X: The input training data of shape [n_samples, n_features]. :type X: pd.DataFrame :param y: The target training data of length [n_samples]. :type y: pd.Series, optional :returns: self .. py:method:: load(file_path) :staticmethod: Loads component at file path. :param file_path: Location to load file. :type file_path: str :returns: ComponentBase object .. py:method:: needs_fitting(self) Returns boolean determining if component needs fitting before calling predict, predict_proba, transform, or feature_importances. This can be overridden to False for components that do not need to be fit or whose fit methods do nothing. :returns: True. .. py:method:: parameters(self) :property: Returns the parameters which were used to initialize the component. .. py:method:: predict(self, X) Make predictions using fitted XGBoost regressor. :param X: Data of shape [n_samples, n_features]. :type X: pd.DataFrame :returns: Predicted values. :rtype: pd.Series .. py:method:: predict_proba(self, X) Make probability estimates for labels. :param X: Features. :type X: pd.DataFrame :returns: Probability estimates. :rtype: pd.Series :raises MethodPropertyNotFoundError: If estimator does not have a predict_proba method or a component_obj that implements predict_proba. .. py:method:: save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL) Saves component at file path. :param file_path: Location to save file. :type file_path: str :param pickle_protocol: The pickle data stream format. :type pickle_protocol: int