我使用 keras 构建逻辑回归模型。我的输入训练向量的形状是 10。[var1,var2,var3,var4,var5,var6,var7,var8,var9,and var10]
由于是二元分类,所以目标标签y为0或1。
有一次,我尝试了模型,我想用大小为 6 的输入向量进行预测?因此,训练和测试或预测数据的向量大小之间存在差异。
这可能吗?有机器学习算法支持这样的功能吗?
代码如下:
classifier.add(Dense(units = 50, kernel_initializer = 'uniform', activation = 'relu', input_dim = 5))
classifier.add(Dense(units = 1, kernel_initializer = 'uniform', activation = 'sigmoid'))
# compile ANN
classifier.compile(optimizer = optimizer, loss = 'binary_crossentropy', metrics = ['accuracy'])
# Fitting the data
hisroy =classifier.fit(X_train, y_train, batch_size = 5, epochs = 100)
最佳答案
如果您使用六个输入执行预测,但使用十个输入进行训练,那么您的模型很可能不会那么高效。您基本上将具有“死”相关性,因为您的输入将不存在 - 因此在使用新数据时无法很好地关联正确的输出。通过使用这十个输入进行训练,您还可以减少实际使用的六个输入的可能依赖/相关行为,因为您的模型从所有十个输入中学习。从技术上讲,您可以使用您不使用的四个的默认值来填充您的输入,但再一次,我没有看到使用十个进行训练但使用六个进行预测有任何好处。
关于python - 我们可以在训练和测试数据中建立具有不同输入向量大小的模型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57290448/