我正在尝试查找在八度执行的神经网络模型的最佳参数,该模型用于二进制分类和122个特征(输入)和25个隐藏单位(1个隐藏层)。为此,我有4个矩阵/向量:
size(X_Train): 125973 x 122
size(Y_Train): 125973 x 1
size(X_Test): 22543 x 122
size(Y_test): 22543 x 1
我已经使用了20%的训练集来生成验证集(XVal
和YVal
)
size(X): 100778 x 122
size(Y): 100778 x 1
size(XVal): 25195 x 122
size(YVal): 25195 x 1
size(X_Test): 22543 x 122
size(Y_test): 22543 x 1
目标是生成NN的学习曲线。我已经(艰难地xD)了解到,这非常耗时[strong],因为我为此使用了Xval
和X
的完整大小。
我不知道是否有其他解决方案。我正在考虑减小训练向量X
的大小(例如,像5000个样本),但是我不知道是否可以这样做,或者结果是否会偏颇,因为我只会使用训练集的一部分?
最好
答案 0 :(得分:1)
以上参数的总数约为3k(122 * 25 + 25 * 1),对于一个示例来说,这并不庞大。由于示例数量很多,因此您可能希望使用随机梯度下降或小批量而不是梯度下降。
请注意,Matlab和Octave通常较慢,尤其是在使用循环时。 您需要编写使用矩阵运算而不是循环的代码,以便在Matlab / Octave中管理速度。