在输入是整数数组的情况下,我应该如何处理此类分类问题?

数据挖掘 机器学习 深度学习 分类 喀拉斯
2021-10-13 05:54:44

在这种情况下,我正在训练一个模型来预测 0 到 10 之间的数字。这些是多项式的根数。多项式数量的输入数组是该多项式的系数Xn为常数。尽管我准备了一个平衡的数据集,其中所有根数(从 0 到 10)均等存在,但我的输入是一个整数数组。

例如:

23 43 -545 34 45 -34 234 -434 234 434 -2344334

其输出是该多项式的根数(如我之前所说)。

我尝试了许多层组合,但准确率从未高于 50%。准确度是指正确预测的数量(我将最大概率计为预测)。

我的 Keras 建模代码:

model = Sequential()
model.add(Dense(32, input_dim=degree+1, activation='relu'))
model.add(Dense(32, activation='relu'))
model.add(Dense(16, activation='relu'))
model.add(Dense(degree+1, activation='softmax'))

model.compile(loss="categorical_crossentropy",
              optimizer='adam', metrics=['accuracy'])

model.fit(X, y, epochs=500, batch_size=50, verbose=0)

有什么我做错了吗?这是解决此类问题的好模型吗?我是深度学习的新手,所以如果答案很明显,我很抱歉。

谢谢。

1个回答

您的信息没有足够的歧视性

为什么?多项式系数不提供(至少部分)关于多项式根的判别信息。换句话说,不同的系数可以给出相同的根。

无论您的网络有多复杂,它都无法捕获一开始就无法捕获的内容。