基于机器学习的自由文本击键动态分析
1. 模型基础与数据集
在进行自由文本击键动态分析时,我们构建了一个结合卷积神经网络(CNN)和门控循环单元(GRU)的模型。CNN 步骤可视为一种特征工程,其卷积核长度对应所覆盖的序列数量,卷积操作能生成“更高级”的击键签名,这些签名作为 GRU 的输入。训练 GRU 后,可得到用户的击键行为模式。同时,模型中还实现了 Dropout 技术,在训练过程中随机丢弃节点及其连接,防止过拟合。激活函数使用 BCEWithLogitalLoss,它比传统的 sigmoid 更稳定。
我们使用的数据集是 Buffalo 自由文本数据集,该数据集包含三个不同的会话,因此我们采用三重交叉验证,每个会话作为一折。例如,“s01 - train - s2 - test”表示使用会话 0 和 1 进行训练,会话 2 用于测试。
2. 文本分类实验
首先尝试基于用户输入的文本进行分类。使用 BERT 对 Buffalo 数据集自由文本部分的 148 个用户进行多分类实验(BERT - word),但结果极差,测试损失没有显著下降。问题可能在于数据集太小,每个用户的训练数据仅约 15 行单词,测试数据 2 行,每行约 18 个单词,远少于典型 NLP 应用所需的数据量。这表明原始文本中包含的有用信息较少,我们将注意力转向基于击键动态的模型。
3. 击键动态模型
3.1 特征分析
我们考虑了三种类型的特征:
- 时间特征 :将自由文本击键数据转换为固定长度的击键序列,再转换为击键向量。击键向量格式包含键的保持时间(H[x])、键释
超级会员免费看
订阅专栏 解锁全文
7214

被折叠的 条评论
为什么被折叠?



