基于半监督学习的物联网用户识别模型分析与研究
2020-12-07孙静冯锋
孙静 冯锋
摘 要:随着物联网技术在多个领域的大规模应用,终端用户数量呈快速上升趋势。在享受通信便利的同时,也有个别用户利用物联网特性生成大量虚假用户,不利于行业的健康发展。针对以上现象,文中采用半监督学习的方法,通过研究相关样本数据的特征,建立用户识别模型,对异常用户行为做出及时判断,帮助相关部门、人员采取相应的措施,避免产生较大的损失,节省了大量人力物力,具有广泛的应用前景。
关键词:物联网;用户识别;半监督学习;识别模型;朴素贝叶斯分类;随机森林
中图分类号:TP391文献标识码:A文章编号:2095-1302(2020)11-0-03
0 引 言
伴随着LoRa、NB-IoT、5G等物联网通信技术的发展,我国物联网终端用户猛增。在日益增加的用户数量中,若出现大量恶意的虚假用户,则会影响物联网平台正常的工作运行。这些虚假用户占用了大量资源,使物联网平台无法充分利用,既影响用户的自身利益,也不利于物联网行业的健康发展。
仅凭人力识别、用户举报等传统方法监督用户行为,具有一定的局限性和缺陷,监督及识别效果并不理想。本文对于物联网用户识别模型进行研究,针对不同的识别方法及分类器进行分析,帮助相关人员尽早发现用户的异常行为,及时采取措施,避免造成更大损失。
1 物联网平台概述
物联网的工作流程为传感器收集数据,通过网络连接向云端发送数据,进行数据处理,筛选有用的数据后再向终端用户传递有用信息[1-2]。物联网平台主要分为服务管理器和控制中心两部分,物联网平台组成如图1所示。
物联网卡和5G技术在未来的物联网行业拥有绝对的优势。现阶段物联网卡具有资费便宜、无实名制等特点,依托物联网应用于智能服务领域,如智能家居、智能穿戴、智慧安防等[3]。在物联网平台上,用户群体被分为不同的身份与类型,为不同的用户提供不同的平台数据视图、权限等。
2 识别模型概述
用户识别实质上是根据用户的特征数据对其进行分类的过程,将异常数据与正常数据拆分开来。用户数据中既有少量的已确定虚假用户的信息,也有占大部分的正常用户。基于以上特征,本文建立了基于未标记样本以及正样本的半监督学习模型[4-5],用于识别物联网用户的类型。
解决这类问题主要有两种方法。第一种方法是直接在正样本中进行训练,训练出的分类器可以判别测试数据是否属于训练样本类别。但实际情况是,现实数据远比实验复杂,且模型只会输出“是”或“不是”两种结果,容易出现被认定为“不是”的样本并不属于正样本相对的另一类,出现误判的情况。
第二种方法是将其分为两步,将分类与预测分开。第一步是根据已标注的样本,在大量未标注样本中通过训练找出可靠的负样本集;第二步是通过迭代训练得到一个分类器进行用户识别工作。识别模型工作流程如图2所示。
3 用户数据处理
在处理关于用户的原始数据时,首先进行数据核查,通过计算数据的均值、期望值、中位数、方差等了解原始数据的大致分布。根据用户识别业务的需求遍历所有重要字段,所需数据字段见表1~表4所列。转换部分数据类型,便于后续处理,并利用上文得到的统计数据进行空值填充。将处理好的数据进行打标签操作后随机排序,分为训练集和测试集,再將测试集中的一小部分数据分离出可靠的正样本,用于训练分类器。
4 模型选择与搭建
4.1 两步法
在本文所研究的两步法模型中,第一步使用的模型为朴素贝叶斯分类器,其优势在于算法数学模型稳定、学习简单,分类效果较理想[6-7]。该分类器所需参数很少,对于缺失的数据不太敏感,比较符合实际数据情况,可解释性强。理论上来说,相较于其他模型,它的误差率最小。
贝叶斯基本公式为:
假设数据的每个样本有m维特征向量,描述其m个属性的值,即A={x1, x2, ..., xm}。数据类别可分为n类,即n={y1, y2, ..., yn}。给定未知样本集X,使用朴素贝叶斯分类方法将样本按类别n={y1, y2, ..., yn}分开。
代入贝叶斯理论,可得给定的某用户A属于某分类yn的概率为:
对于给定用户A属于某一分类yn的概率,可由A在每个给定的分类yn的概率得出,需要计算每个分类用户A在其中的概率。即
假设集合T为正样本集合,集合U为未标记样本集合。模型训练过程如下:
(1)将集合T、U中的样本类别标记为1、0;
(2)分别使用数据集T和U进行训练,得到理想的分类器;
(3)使用上述分类器将未标记样本进行分类。
第二步使用的模型为随机森林算法。“森林”由多个决策树组成,采用随机有放回的选择模式训练数据模型,引入随机属性选择,通过组合模型来提升学习效果[8]。“森林”中的每一棵树都会根据自己分类选择进行“投票”,最终的结果是“票数”最多的属性。其计算公式如下:
式中:H(x)表示随机森林分类模型最终结果;hi(x)表示每棵决策树的单独分类结果;Y表示需要分类的对象。通过投票策略将得票数最多的分类结果进行输出[9]。
模型搭建需要根据数据进行特征选择,本文主要针对一周之内的操作行为、流量、短信等信息进行统计。对数据首先进行数据清洗预处理,过滤掉某些异常的数据,并根据后期的需求对关键字段进行处理。根据其用户ID找到对应的
SIM ID,并关联其操作记录表、流量表、信息表。物联网卡的流量监控为重要指标,根据时间记录对最近七天的短信使用量和数据流量使用量求和。对操作行为表进行预处理,根据操作时间及SIM ID对最近七天的操作次数求和。将七天的数据以第一天为基准进行内关联,最终得到每一张卡在七天中的操作行为、短信、流量的情况。对于已标注的虚假用户数据的处理与以上流程一致。
将30%数据作为测试集,70%数据作为训练集。在训练集上建立模型,第一步使用朴素贝叶斯模型,第二步使用随机森林模型。调整模型参数,找到在训练集上表现结果最优的模型,最后使用测试集进行测试。对预测结果的评判不能只按照传统的精确率、召回率等,因为除已标记的虚假用户外,对于未知用户类型并没有确切的判断。这里的判断标准采用,其中代表样本为正样本的概率,r代表召回率,p代表精确率。使用这个公式来判断分类器的性能。两步法模型预测结果见表5所列。
4.2 一步法
上文提到的直接法是在正样本上进行训练,比較经典的单分类方法为one-class SVM模型。 在识别一个新的“点”(用户数据)时,若落在该超平面内,说明属于正样本集,若不是则属于其他类,但无法判断出具体属于哪一类[10]。one-class SVM模型的训练样本只有一类,与二分类问题有一定差别,本文只对物联网用户的正样本数据进行训练,最终训练结果中挑出不属于正常用户的数据即可。
5 结 语
本文从物联网角度出发分析了用户识别模型,根据物联网的特性使用机器学习方法建立模型,并进行分类操作。通过实验可以看出一步法的准确率远低于两步法。尽管理论上现有模型可以达到较好的效果,但还有继续改善之处:两步法分类模型尝试使用更多不同分算法组合进行训练,以达到更为精准的结果;对于字段的提取,根据实际情况增加或减少,调整不同特性的权重比例,不断完善,提高预测准确率。
参考文献
[1]胡向东.物联网研究与发展综述[J].数字通信,2010,37(2):17-21.
[2]李荣.物联网用户界面如何工作[J].计算机与网络,2019,45(12):38-39.
[3]王晓菊,田立勤,赵竞雄.基于物联网的用户行为认证机制与分析[J].南京理工大学学报,2015,39(1):70-77.
[4]张溶芳,许丹丹,王元光,等.机器学习在物联网虚假用户识别中的运用[J].电信科学,2019,35(7):136-144.
[5]谭侃,高旻,李文涛,等.基于双层采样主动学习的社交网络虚假用户检测方法[J].自动化学报,2017,43(3):441-460.
[6]张步良.基于分类概率加权的朴素贝叶斯分类方法[J].重庆理工大学学报(自然科学),2012,26(7):81-83.
[7]张璠.多种策略改进朴素贝叶斯分类器[J].微机发展,2005,15(4):35-36.
[8]徐少成,李东喜. 基于随机森林的加权特征选择算法[J]. 统计与决策,2018,34(18):25-28.
[9]方匡南,吴见彬,朱建平,等.随机森林方法研究综述[J].统计与信息论坛,2011,26(3):32-38.
[10]丁世飞,齐丙娟,谭红艳.支持向量机理论与算法研究综述[J].电子科技大学学报,2011,53(1):2-10.