本文整理汇总了Python中sklearn.multioutput.MultiOutputRegressor方法的典型用法代码示例。如果您正苦于以下问题:Python multioutput.MultiOutputRegressor方法的具体用法?Python multioutput.MultiOutputRegressor怎么用?Python multioutput.MultiOutputRegressor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sklearn.multioutput
的用法示例。
在下文中一共展示了multioutput.MultiOutputRegressor方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: fit
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def fit(self, x, y=None):
if y is not None:
xdot = y
else:
xdot = self.derivative.transform(x)
if self.operators is not None:
feature_transformer = SymbolicFeatures(
exponents=np.linspace(1, self.degree, self.degree), operators=self.operators
)
else:
feature_transformer = PolynomialFeatures(degree=self.degree, include_bias=False)
steps = [
("features", feature_transformer),
("model", STRidge(alpha=self.alpha, threshold=self.threshold, **self.kw)),
]
self.model = MultiOutputRegressor(Pipeline(steps), n_jobs=self.n_jobs)
self.model.fit(x, xdot)
self.n_input_features_ = self.model.estimators_[0].steps[0][1].n_input_features_
self.n_output_features_ = self.model.estimators_[0].steps[0][1].n_output_features_
return self
示例2: test_diff_detector_require_thresholds
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_diff_detector_require_thresholds(require_threshold: bool):
"""
Should fail if requiring thresholds, but not calling cross_validate
"""
X = pd.DataFrame(np.random.random((100, 5)))
y = pd.DataFrame(np.random.random((100, 2)))
model = DiffBasedAnomalyDetector(
base_estimator=MultiOutputRegressor(LinearRegression()),
require_thresholds=require_threshold,
)
model.fit(X, y)
if require_threshold:
# FAIL: Forgot to call .cross_validate to calculate thresholds.
with pytest.raises(AttributeError):
model.anomaly(X, y)
model.cross_validate(X=X, y=y)
model.anomaly(X, y)
else:
# thresholds not required
model.anomaly(X, y)
示例3: test_multi_target_regression
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_regression():
X, y = datasets.make_regression(n_targets=3)
X_train, y_train = X[:50], y[:50]
X_test, y_test = X[50:], y[50:]
references = np.zeros_like(y_test)
for n in range(3):
rgr = GradientBoostingRegressor(random_state=0)
rgr.fit(X_train, y_train[:, n])
references[:, n] = rgr.predict(X_test)
rgr = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
rgr.fit(X_train, y_train)
y_pred = rgr.predict(X_test)
assert_almost_equal(references, y_pred)
# 0.23. warning about tol not having its correct default value.
示例4: test_multi_target_regression_partial_fit
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_regression_partial_fit():
X, y = datasets.make_regression(n_targets=3)
X_train, y_train = X[:50], y[:50]
X_test, y_test = X[50:], y[50:]
references = np.zeros_like(y_test)
half_index = 25
for n in range(3):
sgr = SGDRegressor(random_state=0, max_iter=5)
sgr.partial_fit(X_train[:half_index], y_train[:half_index, n])
sgr.partial_fit(X_train[half_index:], y_train[half_index:, n])
references[:, n] = sgr.predict(X_test)
sgr = MultiOutputRegressor(SGDRegressor(random_state=0, max_iter=5))
sgr.partial_fit(X_train[:half_index], y_train[:half_index])
sgr.partial_fit(X_train[half_index:], y_train[half_index:])
y_pred = sgr.predict(X_test)
assert_almost_equal(references, y_pred)
assert not hasattr(MultiOutputRegressor(Lasso), 'partial_fit')
示例5: test_multi_target_sample_weights
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_sample_weights():
# weighted regressor
Xw = [[1, 2, 3], [4, 5, 6]]
yw = [[3.141, 2.718], [2.718, 3.141]]
w = [2., 1.]
rgr_w = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
rgr_w.fit(Xw, yw, w)
# unweighted, but with repeated samples
X = [[1, 2, 3], [1, 2, 3], [4, 5, 6]]
y = [[3.141, 2.718], [3.141, 2.718], [2.718, 3.141]]
rgr = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
rgr.fit(X, y)
X_test = [[1.5, 2.5, 3.5], [3.5, 4.5, 5.5]]
assert_almost_equal(rgr.predict(X_test), rgr_w.predict(X_test))
# Import the data
示例6: base_estimator
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def base_estimator(self, value):
# Build `base_estimator` if string given
if isinstance(value, str):
value = cook_estimator(
value, space=self.space, random_state=self.rng.randint(0, np.iinfo(np.int32).max)
)
# Check if regressor
if not is_regressor(value) and value is not None:
raise ValueError(f"`base_estimator` must be a regressor. Got {value}")
# Treat per second acquisition function specially
is_multi_regressor = isinstance(value, MultiOutputRegressor)
if self.acq_func.endswith("ps") and not is_multi_regressor:
value = MultiOutputRegressor(value)
self._base_estimator = value
示例7: test_multi_target_regression
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_regression():
X, y = datasets.make_regression(n_targets=3)
X_train, y_train = X[:50], y[:50]
X_test, y_test = X[50:], y[50:]
references = np.zeros_like(y_test)
for n in range(3):
rgr = GradientBoostingRegressor(random_state=0)
rgr.fit(X_train, y_train[:, n])
references[:, n] = rgr.predict(X_test)
rgr = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
rgr.fit(X_train, y_train)
y_pred = rgr.predict(X_test)
assert_almost_equal(references, y_pred)
示例8: test_multi_target_regression_partial_fit
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_regression_partial_fit():
X, y = datasets.make_regression(n_targets=3)
X_train, y_train = X[:50], y[:50]
X_test, y_test = X[50:], y[50:]
references = np.zeros_like(y_test)
half_index = 25
for n in range(3):
sgr = SGDRegressor(random_state=0, max_iter=5)
sgr.partial_fit(X_train[:half_index], y_train[:half_index, n])
sgr.partial_fit(X_train[half_index:], y_train[half_index:, n])
references[:, n] = sgr.predict(X_test)
sgr = MultiOutputRegressor(SGDRegressor(random_state=0, max_iter=5))
sgr.partial_fit(X_train[:half_index], y_train[:half_index])
sgr.partial_fit(X_train[half_index:], y_train[half_index:])
y_pred = sgr.predict(X_test)
assert_almost_equal(references, y_pred)
assert_false(hasattr(MultiOutputRegressor(Lasso), 'partial_fit'))
示例9: test_MultiOutputRegressor
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_MultiOutputRegressor():
mor = MultiOutputRegressor(
estimator=susi.SOMRegressor(n_jobs=2),
n_jobs=2
)
mor.fit(X, y)
示例10: test_load_from_definition
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_load_from_definition(definition):
"""
Ensure serializer can load models which take other models as parameters.
"""
X, y = np.random.random((10, 10)), np.random.random((10, 2))
definition = yaml.load(definition, Loader=yaml.SafeLoader)
model = serializer.from_definition(definition)
assert isinstance(model, MultiOutputRegressor)
model.fit(X, y)
model.predict(X)
示例11: test_model_builder_metrics_list
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_model_builder_metrics_list(metrics_: Optional[List[str]]):
model_config = {
"sklearn.multioutput.MultiOutputRegressor": {
"estimator": "sklearn.linear_model.LinearRegression"
}
}
data_config = get_random_data()
evaluation_config: Dict[str, Any] = {"cv_mode": "full_build"}
if metrics_:
evaluation_config.update({"metrics": metrics_})
machine = Machine(
name="model-name",
dataset=data_config,
model=model_config,
evaluation=evaluation_config,
project_name="test",
)
_model, machine = ModelBuilder(machine).build()
expected_metrics = metrics_ or [
"sklearn.metrics.explained_variance_score",
"sklearn.metrics.r2_score",
"sklearn.metrics.mean_squared_error",
"sklearn.metrics.mean_absolute_error",
]
assert all(
metric.split(".")[-1].replace("_", "-")
in machine.metadata.build_metadata.model.cross_validation.scores
for metric in expected_metrics
)
示例12: test_n_splits_from_config
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_n_splits_from_config(mocked_pipeline_from_definition, cv):
"""
Test that we can set arbitrary splitters and parameters in the config file which is called by the serializer.
"""
data_config = get_random_data()
evaluation_config = {"cv_mode": "full_build"}
if cv:
evaluation_config["cv"] = cv
model_config = {
"sklearn.multioutput.MultiOutputRegressor": {
"estimator": "sklearn.ensemble.forest.RandomForestRegressor"
}
}
machine = Machine(
name="model-name",
dataset=data_config,
model=model_config,
evaluation=evaluation_config,
project_name="test",
)
ModelBuilder(machine).build()
if cv:
mocked_pipeline_from_definition.assert_called_with(cv)
else:
mocked_pipeline_from_definition.assert_called_with(
{"sklearn.model_selection.TimeSeriesSplit": {"n_splits": 3}}
)
示例13: test_multi_target_regression_one_target
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_regression_one_target():
# Test multi target regression raises
X, y = datasets.make_regression(n_targets=1)
rgr = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
assert_raises(ValueError, rgr.fit, X, y)
示例14: test_multi_target_sparse_regression
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_sparse_regression():
X, y = datasets.make_regression(n_targets=3)
X_train, y_train = X[:50], y[:50]
X_test = X[50:]
for sparse in [sp.csr_matrix, sp.csc_matrix, sp.coo_matrix, sp.dok_matrix,
sp.lil_matrix]:
rgr = MultiOutputRegressor(Lasso(random_state=0))
rgr_sparse = MultiOutputRegressor(Lasso(random_state=0))
rgr.fit(X_train, y_train)
rgr_sparse.fit(sparse(X_train), y_train)
assert_almost_equal(rgr.predict(X_test),
rgr_sparse.predict(sparse(X_test)))
示例15: test_multi_target_sample_weights_api
# 需要导入模块: from sklearn import multioutput [as 别名]
# 或者: from sklearn.multioutput import MultiOutputRegressor [as 别名]
def test_multi_target_sample_weights_api():
X = [[1, 2, 3], [4, 5, 6]]
y = [[3.141, 2.718], [2.718, 3.141]]
w = [0.8, 0.6]
rgr = MultiOutputRegressor(Lasso())
assert_raises_regex(ValueError, "does not support sample weights",
rgr.fit, X, y, w)
# no exception should be raised if the base estimator supports weights
rgr = MultiOutputRegressor(GradientBoostingRegressor(random_state=0))
rgr.fit(X, y, w)
# 0.23. warning about tol not having its correct default value.