我有一个小例子:
from sklearn.linear_model import LinearRegression
from sklearn.datasets import make_regression
#dataset
#X : Date in millisecond; temperature degree; humidity %
#y : 0= no problem; 1 = electronic failure
X=[[969695100000,15,10],[969788280000,30,50],[975042120000,20,3]]
y=[0,1,0]
model = LinearRegression()
model.fit(X, y)
# Prediction
Xnew, _ = make_regression(n_samples=3, n_features=3, noise=0.1, random_state=1)
ynew = model.predict(Xnew)
for i in range(len(Xnew)):
print("X=%s, Predicted=%s" % (Xnew[i], ynew[i]))
我有真实数据X:日期;温度和湿度 和y,0 =>没问题,1传感器出现故障 我每天都有新数据,我想每天更新我的模型。
我的目标是利用这些数据来预测明天的传感器故障。
我的问题是:如何向模型添加数据?
答案 0 :(得分:1)
我找到了实时更新模型的解决方案,我使用了part_fit,我像这样更新了我的代码:
import numpy as np
from sklearn import linear_model
from sklearn.datasets import make_regression
n_samples, n_features = 10, 5
X=[[969695100000,15,10],[969788280000,30,50],[975042120000,20,3]]
y=[0,1,0]
model = linear_model.SGDRegressor()
for i in range(0,1000):
model.partial_fit(X, y)
Xnew, _ = make_regression(n_samples=3, n_features=3, noise=0.1, random_state=1)
ynew = model.predict(X)
for i in range(len(Xnew)):
print("X=%s, Predicted=%s" % (Xnew[i], ynew[i]))
我有最后一个问题,有可能仅用日期预测y值? 实际上,要预测y明天,我需要拥有所有X数据,仅可以进行预测: X = [975042120100] 没有温度和湿度,仅以毫秒为单位?