Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何训练在线回归模型_Python_Machine Learning_Scikit Learn_Regression - Fatal编程技术网

Python 如何训练在线回归模型

Python 如何训练在线回归模型,python,machine-learning,scikit-learn,regression,Python,Machine Learning,Scikit Learn,Regression,我有一个形状(9430,12)的数据集。安装时会出现问题:所有12功能都是myX和myY。我的意思是,这是一个在线学习模型,我训练我的数据[I],然后预测数据[I+1]。如你所见,正如我之前所说,Y=X data.shape = (9430, 12) Y = X = data.values model.fit(X, Y) 这是错的吗?如果是,我还可以如何进行培训?我知道您的目标是,在每个时间步,您都希望预测下一个时间步的输入 现在,您正试图预测作为输入传递的相同输出。假设Y[0]=X[0],Y

我有一个形状
(9430,12)
的数据集。安装时会出现问题:所有
12
功能都是my
X
和my
Y
。我的意思是,这是一个在线学习模型,我训练我的
数据[I]
,然后预测
数据[I+1]
。如你所见,正如我之前所说,
Y=X

data.shape = (9430, 12)
Y = X = data.values
model.fit(X, Y)

这是错的吗?如果是,我还可以如何进行培训?

我知道您的目标是,在每个时间步,您都希望预测下一个时间步的输入

现在,您正试图预测作为输入传递的相同输出。假设Y[0]=X[0],Y[1]=X[1],依此类推

您应该在Ys矩阵中逐个移动窗框。例如,假设X是一个numpy数组,您可以执行以下操作:

import tensorflow as tf
Y = tf.concat((np.copy(X[1:,:]),np.zeros((1,12))), axis=0)
X = tf.convert_to_tensor(X)
此代码将实现:Y[0]=X[1],Y[1]=X[2],这是能够在每一点预测以下结果的理想输出

一旦准备好两个张量,就可以使用Tensorflow或Keras来拟合模型。请记住,Ys矩阵中的最后一行只是0的虚拟行,因为您不知道下一步的基本事实是什么。在执行培训时,您可能应该从数据集中跳过它


此外,对于预测序列数据,递归神经网络(如LSTM、长短期记忆)更合适。我建议你看看:)

我知道你的目标是,在每个时间步,你都想预测下一个时间步的输入

现在,您正试图预测作为输入传递的相同输出。假设Y[0]=X[0],Y[1]=X[1],依此类推

您应该在Ys矩阵中逐个移动窗框。例如,假设X是一个numpy数组,您可以执行以下操作:

import tensorflow as tf
Y = tf.concat((np.copy(X[1:,:]),np.zeros((1,12))), axis=0)
X = tf.convert_to_tensor(X)
此代码将实现:Y[0]=X[1],Y[1]=X[2],这是能够在每一点预测以下结果的理想输出

一旦准备好两个张量,就可以使用Tensorflow或Keras来拟合模型。请记住,Ys矩阵中的最后一行只是0的虚拟行,因为您不知道下一步的基本事实是什么。在执行培训时,您可能应该从数据集中跳过它


此外,对于预测序列数据,递归神经网络(如LSTM、长短期记忆)更合适。我建议您看看它们:)

我相信它会以同样的方式工作,但您必须首先将这些变量转换为Numpy数组。您需要“将numpy作为np导入”,然后,在拟合模型之前的代码末尾:X=np.array(X)和Y=np.array(Y),我相信它将以相同的方式工作,但您必须首先将这些变量转换为numpy数组。您需要“将numpy作为np导入”,然后,在拟合模型之前的代码末尾:X=np.array(X)和Y=np.array(Y)