论文部分内容阅读
近些年来,由于Android平台的开放性和易用性,基于Android的智能手机受到越来越多的消费者的青睐,越来越多的开发者转向了Android应用的开发。一些企业、团体或者个人为了推广自己的app,会向应用市场上传多个功能类似的app或者为其应用添加一些不相关的描述信息和关键字以提高被搜到的概率,还有一些恶意攻击者通过向一些流行的应用中添加自己的一些侵犯用户隐私的代码,然后重新上传到应用市场。由于应用市场对上传的app不仅缺乏有效的检测,而且上传门槛较低,所以不法分子利用相关的漏洞上传一些spam app。这些spam app不仅降低了用户的使用体验,还加重了应用市场工作人员的负担。Spam app有很多比较明显的特征,例如,没有特定的功能、不相关的app描述信息、不相关的关键字、功能相似的应用等等。应用市场工作人员通过人工的方法按照spam app鉴定规则检测app,并删除被鉴定为spam的app,这种方法效率低下,不能及时的发现并删除spam app。本文设计了一种新的spam app检测方法,同时采用了不同的分类器模型进行实验,并分析比较了分类器模型的性能差异及原因。实验中,spam app检测的精确度、准确率和召回率均取得很好的结果。本文首先采用一些比较明显的特征作为监测点,并且收集了前人实验用到的数据集,然后分别采用了决策树、支持向量机、随机森林和boosting分类器模型进行实验。决策树分类器模型以其可读性好,有助于人工分析,效率高,一次构建反复使用等优点被广泛采用;支持向量机在解决小样本、非线性及高维模式识别中表现出许多特有的优势;随机森林是利用多棵树对样本进行训练并预测的一种分类器,其输出结果是由个别输出结果的众数决定的,Boosting算法是把若干个分类器整合到一个分类器的方法。最后取得比较好的实验结果,对比了不同分类器模型实验结果的差别,并分析了实验结果优劣的原因。本论文一方面证明了论文中选用的特征的有效性与正确性,另一方面利用我们设计的分类器模型可以很好的检测spam app。