yongru cheng 在 关于恶意脚本检测模型的一点记录 中发帖
最近在做一个恶意脚本检测的小型模型,一些思考过程在这里记录一下,辛苦佬友们提提建议
前提
由于模型要在pc端侧部署, 考虑到性能和内存占用等限制,RNN、Transformer之类的架构基本上也是没法用了,所以我最初的考虑的就是采用1D CNN来搞一个端到端的分类模型。(其实之前也做了一个基于CPG异构图的模型,但是效果不佳,可能还是数据集质量不佳或者其他哪里出问题了吧)
恶意脚本的局部性
不管是javascript/python还是其他语言的恶意脚本,真正有问题的可能就那么一两句,而CNN的感受野也不是无限的,所以基本上滑动窗口来做预测。
将长脚本看作一个长序列,把它切分成多个有重叠的“块”(chunks),利用模型分别对每个块进行预测,最后聚合所有块的预测结果。比如我们可能得到这样一个概率列表:[0.1, 0.05, 0.98, 0.95, 0.2](如下图), 只要有一个块...