论文UMBC at SemEval-2018 Task 8: Understanding Text about Malware解读
文章目录
摘要
作者参加了2018 SemEval Task 8其中的三个子任务:Task 1 ----- Classify sentences relevant to malware,Task 2 ----- Predict token labels,Task 4 ----- Predict attribute labels。
作者的实验结果并不高,只是提供一些实现的方式,创新点不多。最后,作者提供了安全方面的词嵌入(sybersecurity embedding)地址:https://bit.ly/cybr2vec。
作者撰写本文的目的有三点:其一,更好的理解安全文本与非安全文之间的区别;其二,更好的理解安全文本之间的区别和差异;其三,集中于学习和提取输入文本的表示。
三大任务
Task 1 ----- Classify sentences relevant to malware
1.models
作者使用三个模型来实现该任务,并作了一个对照实验。
models | 说明 |
---|---|
LR(Logistic Regression) | L2 参数为10 |
MLP(Multi-Layer Perceptron) | (1)bag-of-word: 一层隐含层32维 (2)embedding:三层网络,隐含层100维,L2={0.1,0.2,0.25,0.5 } |
LSTM(Long Short-Term Memory) | embedding,一层隐含层128维 |
2.features for models
接下来对特征进行说明。
features | 说明 |
---|---|
(Average) Count Bag-Of-Words | 使用训练集来训练,可以使用平均值来正则化 |
(Average) Binary Bag-Of-Words | one-hot编码来代替统计词频,使用平均值来正则化 |
Cybersecurity embeddings | Word2vec skip-gram模型;负采样,100维;窗口,大小为5; 一百万网络安全文档预训练–6.4百万词汇表和100维 |
Wikipedia embeddings | Word2vec skip-gram模型,负采样,400维;窗口,大小为5 20180220 english wikipedia dump |
3.Datasets, embeddings &hyperparameters
dataset = 65files
LR,L2 = {100, 10, 1, 0.1, 0.01, 0.001}
SGD momentum :LSTM for 0.4 ,0.9 for MLP
learning rate of 0.2 for LSTM ,0.1 for MLP
Tensorflow to train models
Gensim to train word embeddings
Scikit-learn for Logistic Regression
LSTM, padded shorter sentences with zero vectors
The input was a matrix of dimension l×d where d is the size of embedding vector and l is the length
of the longest sentence
4 Discussion
试验的结果如下:
Task 2 ----- Predict token labels
子任务二是预测预测Action,Entity(Subject,Object),Modifier三个tokens。每个标签使用BIO格式表示,宽松的测量方式是省略BIO标签。
models
作者沿用前人的方法–CRF(条件随机场)。
features
- 依存句法树中词语的单字组和双字组
- 消除了多义性词语的单字组和双子组
- 词性等价类分析
- APT集合中的布朗聚类签名
实验结果如下:
下面是宽松测量时的实验结果:
以上特征都是靠Stanford Core NLP工具来提取的。
最后我们使用CRF++模型来代替CRF模型。
Task 4 ----- Predict attribute labels
models
作者使用的模型是AWE(Annotation Word Embedding)。
具体细节就不赘述了,结果不是很理想。
分析:
属性标签的个数非常之多,总共有444个属性标签,其中185个还没有出现。剩下的259个属性标签中有169个标签出现次数少于5次。同时在样例中,有很多句子的属性标签是缺省的。缺少的关系标签会导致不完整的tokens group,因为tokens group是由关系标签链接的tokens。