我有1100
2 个班级的序列。其中400
来自一个class 1
和700
来自class 2
。我使用了一个隐藏层的2
神经元自动编码器来捕获我的特征。我的初始特征是每个序列的三元组。因此,对于每个序列,我都有6860
三元组。结果,我的大多数输入向量都是稀疏向量。
现在,如果我计算这个网络的参数,我有
6860 * 2 = 13720 paramters (1st layer)
2 * 6860 = 13720 parameters (2nd layer)
-----------------------------------------
27440 parameters (in total)
现在,与我的数据点数量相比,参数太多了。因此,我使用了0.98
, onlayer 1->hidden layer
的dropout 值,hidden layer->output layer
它决定13720 * 0.02 = 274
了每一层的参数数量和总548
参数。
现在,经过训练,我在我的500
序列测试数据上尝试了编码器,并提取了二维数据的隐藏层。然后我在另一个 5 个神经元的单隐藏层神经网络上使用该数据进行分类。我的结果非常好,因为我正在绕过90%
准确性。
我的问题是我的自动编码器是否过度拟合?我是否通过使用另一个神经网络过度拟合?我担心我的数据点数量少。我使用 dropout 是否合理?