EWARegressor¶
Exponentially Weighted Average regressor.
Parameters¶
-
models (List[base.Regressor])
The regressors to hedge.
-
loss (optim.losses.RegressionLoss) – defaults to
None
The loss function that has to be minimized. Defaults to
optim.losses.Squared
. -
learning_rate – defaults to
0.5
The learning rate by which the model weights are multiplied at each iteration.
Attributes¶
- models
Examples¶
>>> from river import datasets
>>> from river import ensemble
>>> from river import evaluate
>>> from river import linear_model
>>> from river import metrics
>>> from river import optim
>>> from river import preprocessing
>>> from river import stream
>>> optimizers = [
... optim.SGD(0.01),
... optim.RMSProp(),
... optim.AdaGrad()
... ]
>>> for optimizer in optimizers:
...
... dataset = datasets.TrumpApproval()
... metric = metrics.MAE()
... model = (
... preprocessing.StandardScaler() |
... linear_model.LinearRegression(
... optimizer=optimizer,
... intercept_lr=.1
... )
... )
...
... print(optimizer, evaluate.progressive_val_score(dataset, model, metric))
SGD MAE: 0.555971
RMSProp MAE: 0.528284
AdaGrad MAE: 0.481461
>>> dataset = datasets.TrumpApproval()
>>> metric = metrics.MAE()
>>> hedge = (
... preprocessing.StandardScaler() |
... ensemble.EWARegressor(
... [
... linear_model.LinearRegression(optimizer=o, intercept_lr=.1)
... for o in optimizers
... ],
... learning_rate=0.005
... )
... )
>>> evaluate.progressive_val_score(dataset, hedge, metric)
MAE: 0.494832
Methods¶
append
S.append(value) -- append value to the end of the sequence
Parameters
- item
clear
S.clear() -> None -- remove all items from S
copy
count
S.count(value) -> integer -- return number of occurrences of value
Parameters
- item
extend
S.extend(iterable) -- extend sequence by appending elements from the iterable
Parameters
- other
index
S.index(value, [start, [stop]]) -> integer -- return first index of value. Raises ValueError if the value is not present.
Supporting start and stop arguments is optional, but recommended.
Parameters
- item
- args
insert
S.insert(index, value) -- insert value before index
Parameters
- i
- item
learn_one
Fits to a set of features x
and a real-valued target y
.
Parameters
- x
- y
Returns
self
learn_predict_one
pop
S.pop([index]) -> item -- remove and return item at index (default last). Raise IndexError if list is empty or index is out of range.
Parameters
- i – defaults to
-1
predict_one
Predict the output of features x
.
Parameters
- x
Returns
The prediction.
remove
S.remove(value) -- remove first occurrence of value. Raise ValueError if the value is not present.
Parameters
- item
reverse
S.reverse() -- reverse IN PLACE