我正在开发一个神经网络来确定在博客类型网站上发布的评论是否合适(拒绝垃圾邮件、写得不好的评论等)。我使用 Keras 和 Tensorflow 来实现这一点,方法是定义一些标量特征,例如消息长度、单词数量、英语词典中单词的分数……所有这些都通过适当的数量进行标准化。这些数字是神经网络的输入,定义如下:
inp = Input(shape=(n_inputs, ))
hidden_1 = Dense(hidden_size, activation='relu')(inp)
hidden_2 = Dense(hidden_size, activation='relu')(hidden_1)
out = Dense(num_classes, activation='softmax')(hidden_2)
model = Model(inputs=inp, outputs=out)
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=[f1_score])
我想添加一些并不总是存在的输入。例如,一条评论可能在同一用户的另一条评论之后发布,在这种情况下,评论与前一条评论之间的延迟将是一个需要考虑的相关数量,因为用户可能通过连续快速发送几条评论来发送垃圾邮件.
- 我如何使用这个并不总是存在的数量?
- 使用两个数量会更好吗:一个二进制表示该帖子是否不是来自该用户的第一个,第二个数字表示上一条评论的延迟,但填充了任意值(0、1、0.5、意味着我所有数据集的延迟?)如果帖子是第一个?
编辑
我认为这与丢失数据的问题有关,请参阅此线程。