mirror of
https://github.com/webclinic017/drift.git
synced 2026-07-28 03:08:01 +00:00
cc70d3f907
* feat(Selection): added prototype feature selection python script * feat(Utils): added some helpers for the future from Advances in Financial ML book * feat(Selection): added RFECV * feat(Selection): added configurable feature selection step into pipeline * feat(Config): added level_1 & level_2 default config, PCA before feature selection process starts * feat(Selection): added backup feature selector models if current one can't output feature importance, removed unnecessary array for level-2 models * fix(Training): deal with zero first value coming out of static models * feat(Sweep): added feature selection sweep * fix(Sweep): config problem * fix(Sweep): config * chore(Utils): removed unnecessary purged k-fold crossval class * feat(Config): added dimensionality_reduction as a separate flag * fix(Sweep): config updated * fix(Sweep): sweep name * chore(Config): updated level_2 config to the best performing configuation
25 lines
565 B
Python
25 lines
565 B
Python
from models.base import Model
|
|
import numpy as np
|
|
|
|
class StaticAverageModel(Model):
|
|
'''
|
|
Model that averages .
|
|
'''
|
|
|
|
data_scaling = 'unscaled'
|
|
only_column = 'model_'
|
|
feature_selection = 'off'
|
|
model_type = 'static'
|
|
|
|
def fit(self, X, y, prev_model):
|
|
# This is a static model, it can' learn anything
|
|
pass
|
|
|
|
def predict(self, X):
|
|
# Make sure there's data to average
|
|
assert X.shape[1] > 0
|
|
prediction = np.average(X[0])
|
|
return np.array([prediction])
|
|
|
|
def clone(self):
|
|
return self |