1、2023.6电脑编程技巧与维护1概述在网络大数据的背景下,各行各业都积累了海量的数据。特别是三大运营商,运营商以基础设施网络收集用户的移动数据。以用户的上网流量日志来说,一个省每月的存储量级可以达到PB级别,再加上其他的用户数据,数据量之大可想而知。运营商以海量用户移动数据为基础,分析用户的行为,以此来提供精准服务,提高自己的经济效益。因此有许多学者从不同方面对运营商用户的行为进行分析研究,以此进一步推动5G的发展。谭广基于运营商大数据中的海量数据,分析5G套餐用户与非5G套餐用户之间的行为差异或共性特征。并利用数据挖掘技术构建5G套餐潜在客户识别模型,预测在未来特定时间内具有5G套餐办理倾向
2、的潜在需求用户2;张浩基于移动用户行为数据建立一个用于解决数据不平衡的模型教师辅助提升算法,以此提升5G潜在客户的识别率,进而帮助企业在精准营销上提供参考方案3。徐泓使用3种采样方法进行数据平衡化,构建不同参数下的k-prototype聚类、逻辑回归、随机森林和LightGBM模型,发现其具有较高的准确率和召回率4;周庆梅利用Smote处理4G和5G数据不平衡问题,然后通过模型融合进行分类预测,发现其效果明显优于单一算法模型5。2理论知识2.1SOM 算法SOM聚类算法是一种竞争型的无监督神经网络,它的结构和DNN很相似,只存在一个隐藏层的区别。SOM算法改进了Kohonen规则,其优点是将高
3、维数据转映射到低维空间,SOM算法的原理图如图1所示。Kohonen规则首先选择k个聚类中心点,通过计算比较样本点的位置远近来更新聚类中心点的位置,循环往复,以此来确定最终的聚类。Kohonen规则表达式为:wk=wk+lr(x-wk),其中,wk为聚类中心点;lr为学习率。SOM算法在使用Kohonen规则更新聚类中心时,将当前聚类中心的邻近聚类中心也进行更新。输入层的形式与BP网相同,节点数与样本维数相同。输出层也是竞争层,其神经元的排列形式有多种。分为一维线阵、二维平面阵和三维栅格阵,其中最典型的结构是二维形式。SOM的模型数学表达式为y=compet(-dist(x,W),其中,dsi
4、t为x和W的欧氏距离;compet为竞争函数,它将向量最大的值置为1,其余置为0。SOM算法的缺点在于在算法实现过程中可能会出现部分神经元始终不能胜出的现象,从而影响聚类的准确性,且网络不保证收敛,因此SOM算法不一定比K-Means聚类算法好。2.2凝聚层次聚类算法常见的聚类算法有层次聚类算法和K-Means聚类算法,在这两个算法中,层次聚类算法的执行时间比K-Means聚类算法的执行时间长,并且当数据量大时更加明显,但相比之下,层次聚类算法的准确率比较高。而K-Means聚类算法的执行时间短,但同时受到初始簇选择的影响,其聚类结果会受到初始聚类点的影响,并且层次聚类可以指定聚类的簇数以结束
5、聚类过程,综合基于 DNN 的不平衡 5G 潜客的识别研究朱军,乌伟,谢虹铭,陈立(西京学院计算机学院,西安710000)摘要:随着 5G 的快速发展,越来越多的电信用户逐步从 4G 升级为 5G,如何精准高效地推动此类用户的升级尤为重要。首先考虑到 4G 和 5G 用户之间存在数量差异,为了解决此类差异需使用 SMOTE 进行数据平衡操作;其次由于 SMOTE 处理未考虑到类间不平衡,使用 SOM+凝聚层次聚类算法来解决此类问题;最后将处理完的数据集使用深度神经网络(DNN)进行预测,实验结果表示,使用优化后的数据集的预测结果效果更好。使用 DNN 预测优化后的数据集准确率和 F1 值达到了
6、 88.97%和 86.39%,均优于其他处理方法。关键词:5G 网络;SMOTE 算法;SOM 算法;凝聚层次聚类;深度神经网络图1SOM算法原理图输入层竞争层116DOI:10.16184/prg.2023.06.0372023.6电脑编程技巧与维护考虑选择层次聚类算法作为文中的聚类算法。凝聚层次聚类算法作为层次聚类的一种,在层次聚类算法中通过将数据组织为若干组并形成一个相应的树进行聚类,而凝聚层次聚类首先是将每一个样本作为一个单独的簇进行存放,其次通过公式D(i,j)=d(xi,xj)计算相似度,并将其存储在相似度矩阵中,再次在距离矩阵中找到最近的两个簇进行合并,合并公式为D(p,q),
7、r=apDp,r+aqDq,r+Dp,q+|Dp,r-Dq,r|,其中,p和q为距离最近的两个簇;r是合成的新簇;为对应簇的权重,为两个簇之间的距离权重;为两个簇之间的距离差权重。最后,如此迭代直到只有一个簇为止。凝聚层次聚类算法结构如图2所示。2.3SMOTE 算法SMOTE算法是用来处理数据不平衡的一种算法。在同一个数据集中,如果正类的个数远大于负类的个数,就称这个数据集是不平衡的,如果不对这种数据集进行处理,那么将造成数据稀疏,以及多数类对优化目标的贡献和少数类对优化目标的贡献不对等,会导致学习边界趋向于多数类,使分类性能下降。为了解决这一问题,SMOTE应运而生,它的主要思想是通过对少
8、数类样本进行研究,根据少数类样本的规律去合成新的样本并增添到数据集中。SMOTE算法的步骤如下:(1)对于少数类中的样本xi,计算其与其他少数类样本的相似度,得到所有样本的k近邻。(2)依据数据集多数类与少数类之间的比率设定采样比率N,从第1步得到的k近邻中随机抽取多个样本点,假设选择的近邻是xn。(3)使用公式xnew=xi+(xa-xi)rand(0,1),对数据进行插值,并根据采样比率进行迭代。(4)将完成插值后的数据重新保存为新的数据集,以便后续使用。2.4深度神经网络深度神经网络层可以分为3层,即输入层、隐藏层和输出层,如图3所示,神经网络的第1层为输入层;第3层为输出层;中间可以有
9、多层,但是统称为隐藏层。隐藏层是使用深度神经网络(DNN)需要关注的部分,因为它的作用是对输入的数据进行特征提取和转换。在DNN中,层与层之间的神经元是全链接的。每个神经元接收来自上一层神经元的输入,并产生一个输出信号,这个输出信号被送到下一层神经元作为输入。复杂的DNN模型可以看作是多个感知机组合而成的,因此DNN又被称为多层感知机。也就是说第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是从小的局部模型来说,还是和感知机一样,即一个线性关系y=wixi+b,再加上一个激活函数就可以了。3SOM+凝聚层次聚类优化 SMOTE 过采样数据集来自某移动大数据
10、平台,该数据集中共有14万条数据、26个属性和1个标签,4G和5G用户之间存在较大的数量差异,因此需要通过采样技术来平衡数据集。算法无法克服非平衡数据集的数据分布问题,容易产生分布边缘化等问题。为了更好地提升SMOTE过采样的性能,提出使用SOM+凝聚层次聚类算法来优化SMOTE。该算法具体步骤如下:(1)SOM粗聚类。将清洗后的数据利用SOM将高维数据映射到低维空间,使用经验公式来确定聚类的个数,将聚类后的聚类中心作为样本插入数据集中,由于这些聚类中心代表样本中的一些特征,所以可以在一定程度上提高聚类的准确性。(2)凝聚层次聚类。将SOM聚类完成后的数据集带入凝聚层次聚类中,经过凝聚层次聚类
11、后形成的一个个聚类簇,使用簇密度函数筛选出密度较稀疏的簇;将每一个稀疏簇作为一个新的样本,准备进行SMOTE过采样。(3)SMOTE过采样。在经过SOM和凝聚层次聚类图2凝聚层次聚类算法的结构图3DNN结构样本点聚类过程ABCDEABCABDEEDCBASTEP1STEP2STEP3STEP4STEP5输入层隐藏层输出层1172023.6电脑编程技巧与维护后,可以得到密度较稀疏的簇,将这些簇单独进行SMOTE过采样,这样在处理数据不平衡的同时,也处理了类间的不平衡对过采样的影响。该算法的总体流程图如图4所示。4实验设计与结果分析4.1数据集实验数据集来源于某移动大数据平台,初始数据分别为数据特
12、征集和数据标签集,用户标识已进行脱敏操作。该数据集共有14万条数据,45个属性和1个标签。多数类样本和少数类样本之间不平衡率达到25%,数据集信息如表1所示。此数据集中部分变量缺失数据较大,例如,宽带带宽和宽带是否激活这两个属性,缺失率达到70%以上,缺失较为严重,猜测缺失值均为未开通宽带及带宽为0的用户,以此进行填充。其他缺失率较小的离散属性使用其众数进行填充,连续性属性用其均值进行填充。为了后续处理方便,在此基础上将数据集中的离散型变量转换为数值型变量。4.2实验结果及分析使用以下方法处理数据不平衡:不进行数据平衡处理、单独使用SMOTE、使用SOM优化SMOTE、使用SOM+凝聚层次聚类
13、优化SMOTE。在使用这4种方法处理完数据不平衡之后,使用DNN进行训练,通过比较在DNN的训练下3种算法处理过的不平衡数据的准确率、精确率、召回率和F1,来判别数据不平衡处理的优劣。实验结果对比如表2所示。从实验结果可以看出,未经过SMOTE处理的数据集的准确率为87%、精确率为68%、召回率为63%、F1只有65%,整体上来看预测效果比较差,这是由于未进行数据平衡处理,导致多数类的数据偏差;在经过简单的SMOTE过采样后再进行训练,发现除了准确率降低了3%,其他指标都大幅提高,但是这组实验只是进行过采样,并未考虑类间不平衡会导致的问题,因此又使用SOM进行优化SMOTE,发现效果并没有单纯
14、过采样好,这是因为SOM算法对初始权重向量的依赖性强,它的结果与初始权重向量的选择密切相关。如果初始权重向量选择不好,就可能会导致最终结果不理想,因此将SOM得出的聚类中心作为新的样本点投入样本中,通过凝聚层次聚类替代SOM聚类的作用,在经过SOM+凝聚层次聚类+SMOTE优化数据集过后,使用DNN进行训练,发现准确率达到了89%、精确率达到了88%、召回率达到了89%、F1达到了86%,整体的指标均比之前的指标要好。5结语针对4G和5G用户之间存在较大的数量差异的问题,提出了SOM+凝聚层次聚类优化SMOTE的算法。该算法:(1)对样本进行粗聚类,将聚类中心融合到样本中;(2)进行凝聚层次聚
15、类,将聚类后的结果使用簇密度函数,筛选出稀疏类;(3)使用SMOTE在稀疏类中进行插值;(4)使用DNN进行预测,实验结果表明,优化后的SMOTE可以有效提高DNN的预测准确率。对5G潜在客户的研究具有重要意义。参考文献1黄鑫.5G迈入高速发展期N.经济日报,2022.2谭飞.基于E-LightGBM算法的5G套餐潜在客户识别研究D.重庆:重庆工商大学,2022.3张浩.基于机器学习的5G潜在客户挖掘研究D.昆明:云南财经大学,2022.4徐泓.运营商5G潜在客户识别研究D.南京:南京师范大学,2021.5周庆梅.基于机器学习的移动5G套餐潜客户研究D.济南:山东师范大学,2022.图4算法的
16、总体流程图样本数变量数少数类样本数多数类样本数样本不平衡率140 0004628 000112 00025%表1数据集信息表Accuracy Precision RecallF1AUCDNN0.86590.67690.6315 0.6534 0.7780SMOTE+DNN0.83690.81090.8784 0.8433 0.8369SOM+SMOTE+DNN0.86780.83690.7852 0.8102 0.8497SOM+凝聚层次聚类+SMOTE+DNN0.88970.87530.8928 0.8639 0.8652表2数据平衡处理后DNN训练结果对比表生成样本写入数据集进行凝聚层次聚类数据预处理数据平衡处理原始数据集缺失值处理数据标准化SOM粗聚类DNN类间SMOTE118