BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #29277同步于 2018/4/25
ML_DM机器人发帖

【问题】深度学习如何处理代码?

Zelda
2018/4/25镜像同步0 回复
现在有个malicious code detection(更具体地说是webshell检测)的需求,要用DNN来解决(之前已经有静态特征+随机森林的解决方案了,但是Boss觉得不够fancy,其实这个方案的Precision>0.99,Recall>0.97)。我实在想不出太好的解决方案,有这么几个原因: 1. 代码和NLP不同,有着近乎无穷的token,不同token之间也没有显著的距离关系,无法做word enbedding; 2. TextCNN更适合做sentence-level的分类,对于这种document-level的场景,我想不到什么太好的处理办法; 3. RNN比较适合搞character-level的生成模型或者分类,尤其是定长输入,这个很难处理; 4. 当成binary stream处理,但是这样等于抛弃了文本本身的语义,可以预想效果不好,而且binary stream太难训练了; 5. 编译成字节码,得到操作码序列后使用TextCNN或RNN,这个方案也不现实,webshell可能是PHP、JSP、node.js、ASP甚至是VBScript,编译本身就很难实现。 不知道各位在代码检测方面有什么高招,希望能指点一下迷津。
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。