CN105469144A - 基于粒子分类与bp神经网络的移动通信用户流失预测方法 - Google Patents

基于粒子分类与bp神经网络的移动通信用户流失预测方法 Download PDF

Info

Publication number
CN105469144A
CN105469144A CN201510809789.XA CN201510809789A CN105469144A CN 105469144 A CN105469144 A CN 105469144A CN 201510809789 A CN201510809789 A CN 201510809789A CN 105469144 A CN105469144 A CN 105469144A
Authority
CN
China
Prior art keywords
particle
neural network
mobile communication
layer
hidden
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510809789.XA
Other languages
English (en)
Other versions
CN105469144B (zh
Inventor
顾宁伦
于瑞云
姜国强
安轩邈
夏兴有
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northeastern University China
Original Assignee
Northeastern University China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northeastern University China filed Critical Northeastern University China
Priority to CN201510809789.XA priority Critical patent/CN105469144B/zh
Publication of CN105469144A publication Critical patent/CN105469144A/zh
Application granted granted Critical
Publication of CN105469144B publication Critical patent/CN105469144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Physiology (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Molecular Biology (AREA)

Abstract

一种基于粒子分类与BP神经网络的移动通信用户流失预测方法,包括采集移动用户的通信记录数据;数据预处理,得到所需的样本数据集;建立BP神经网络结构;基于改进的粒子群优化算法PSO初始化所述BP神经网络的权值矩阵和阈值矩阵;对具有最好适应度的粒子对应的BP神经网络进行训练,得到移动通信用户流失模型;利用移动通信用户流失模型进行移动通信用户流失预测。本发明结合应用粒子分类优化算法(PCO)和适应度计算(PFC)两个过程对BP神经网络的权值矩阵和阈值矩阵进行初始化,使BP神经网络的权值矩阵和阈值矩阵更接近全局最优,从而提高BP神经网络对移动用户流失预测的准确率。

Description

基于粒子分类与BP神经网络的移动通信用户流失预测方法
技术领域
本发明涉及大数据以及人工智能领域,具体涉及一种基于粒子分类与BP神经网络的移动通信用户流失预测方法。
背景技术
如今,人们的生活几乎离不开手机。因为手机所提供服务越来越多,移动运营商之间的相互竞争也变得更加激烈。很难想象的处理每个月几亿手机用户所生成的数据,更不用说从如此庞大的数据中提取有用的信息数据集对用户流失进行预测。移动通信用户流失预测,对移动通信网络制定适当的营销策略非常关键,只有将要流失的用户准确地预测出来,才能制定适当的营销策略,挽回将流失的用户,取得最佳的效益,提高移动通信的营销业绩。因此用户流失预测已被广泛讨论,并提出了许多对用户流失预测的方法。贝叶斯网络、支持向量机、决策树以及随机森林等一些预测方法也都被应用到移动通信用户流失预测中。但这些方法应用到大数据分类预测的时候,具有很高的时间和空间复杂度,通常在搭建预测模型的时候仅是通过对小量数据进行分析,搭建的模型很难描述所有用户的特征,在用户流失预测的问题上难免会有错误判断。
发明内容
针对现有技术存在的不足,本发明的目的是提供基于粒子分类与BP神经网络的移动通信用户流失预测方法,以满足在大数据环境下提高移动用户流失预测准确率的需求。
本发明的技术方案:
一种基于粒子分类与BP神经网络的移动通信用户流失预测方法,包括以下步骤:
步骤1:采集移动用户的通信记录数据;
步骤2:数据预处理,得到所需的样本数据集;
步骤2.1:基于移动用户的通信记录数据,以月为单位,按照下述7种属性类别对移动用户的通信情况进行统计:(1)月通话时长;(2)月通话次数;(3)月基本费用;(4)月主被叫比例;(5)入网时间;(6)月掉话次数;(7)月长途费用;
步骤2.2:对所采集的移动用户的通信记录数据进行取样,去掉噪声数据,得到所需的样本数据集;
步骤2.3:对所述数据集中的数据进行归一化处理,将数据限制在0到1的范围内;
步骤3:建立BP神经网络结构;
步骤4:基于改进的粒子群优化算法PSO初始化所述BP神经网络的权值矩阵和阈值矩阵,包括输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;
假设种群中有N个粒子,则种群中的每个粒子都对应着一个BP神经网络,每个粒子的位置向量都会拆解成该粒子所对应的BP神经网络的权值矩阵和阈值矩阵;根据所述BP神经网络结构计算出每个粒子位置向量的维度D=输入层神经元个数*隐层神经元个数+隐层神经元个数*输出层神经元个数+隐层神经元个数+输出层神经元个数;在D维空间中,将第i个粒子的位置向量表示为Xi=(xi1,xi2,...,xiD)T、第i个粒子的速度向量可以表示为Vi=(vi1,vi2,...,viD)T、第i个粒子当前所发现的最好位置表示为Pi=(pi1,pi2,...,piD)T、种群当前所发现的最好位置表示为Pg=(pg1,pg2,...,pgD)T以及第i个粒子的适应度表示为fit(Xi);
步骤4.1:根据粒子的适应度对种群内粒子进行分类;
将种群内拥有最好适应度的1/3粒子作为引导粒子、拥有最差适应度的1/3粒子作为饥饿粒子、其他1/3粒子作为普通粒子;
步骤4.2:对种群内不同种类的粒子进行速度更新;
1)引导粒子的速度更新公式为:
V i k = ωV i k - 1 + c 1 r 1 ( P i k - 1 - X i k - 1 ) + c 2 r 2 ( P g k - 1 - X i k - 1 ) + E h * ( V i k - 1 - V i k - 2 ) - - - ( 2 )
其中为第k次迭代时第i个粒子(此处为引导粒子)的速度;为第k-1次迭代时第i个粒子(此处为引导粒子)的速度;为第k-1次迭代时第i个粒子(此处为引导粒子)的位置;为第k-2次迭代时第i个粒子(此处为引导粒子)的速度;为第i个粒子(此处为引导粒子)在第k-1次迭代后所发现的最好位置,为种群在第k-1次迭代后所发现的最好位置;c1和c2是两个大于0的常量,通常叫做学习因子或者加速因子,c1用来调整粒子飞向自己当前最好位置的步长,c2用来调整粒子飞向种群当前最好位置的步长;r1和r2是两个取值在[0,1]区间的随机数;ω为惯性权重;其中变量Eh用来计算一个引导粒子受其周围普通粒子影响的程度,其计算公式如下所示:
E h = f ( Σ i = 1 C ( fit H i dist H i ) fit b e s t ) - - - ( 3 )
C是引导粒子邻近范围内普通粒子的个数;fitHi是该引导粒子邻近范围内的某个普通粒子的适应度,distHi是这个普通粒子到该引导粒子的欧几里得距离;fitbest是该引导粒子的适应度;f是sigmoid函数,用来将普通粒子对该引导粒子的影响控制在[0,1]的范围内。
2)普通粒子的速度更新公式如下所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i d k - 1 - X i d k - 1 ) - - - ( 4 )
其中为第k次迭代时第i个粒子(此处为普通粒子)的速度;为第k-1次迭代时第i个粒子(此处为普通粒子)的速度;表示第k-1次迭代时,第i个普通粒子周围的引导粒子的d维分量;表示第k-1次迭代时,第i个普通粒子的d维分量;
3)饥饿粒子的速度更新公式和现有PSO算法中粒子速度更新公式相同,如公式(6)所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i k - 1 - X i k - 1 ) + c 2 r 2 ( P g k - 1 - X i k - 1 ) - - - ( 6 )
其中为第k次迭代时第i个粒子(此处为饥饿粒子)的速度;为第k-1次迭代时第i个粒子(此处为饥饿粒子)的速度;表示在第k-1次迭代第i个粒子(此处为饥饿粒子)的位置向量;为种群在第k-1次迭代后所发现的最好位置;为第i个粒子(此处为饥饿粒子)在第k-1次迭代后所发现的最好位置;
步骤4.3:根据更新后的粒子速度,进行粒子位置更新;
粒子位置更新公式采用现有PSO算法中的位置更新公式;
X i k = X i k - 1 + V i k - - - ( 7 )
其中表示在第k次迭代第i个粒子的的位置向量;
步骤4.4:将粒子位置向量中的元素按顺序依次分配到BP神经网络的输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;其中输入层到隐层的权值矩阵的元素个数为输入层神经元个数*隐层神经元个数;隐层到输出层的权值矩阵的元素个数为隐层神经元个数*输出层神经元个数;隐层的阈值矩阵的元素个数为隐层神经元个数;输出层的阈值矩阵的元素个数为输出层神经元个数;
步骤4.5:计算粒子适应度;
步骤4.6:判断种群当前的最好粒子适应度是否达到预设值或者迭代过程是否达到预设的最大迭代次数,是,则转至步骤5,否,则转至步骤4.1,继续迭代过程;
步骤5:利用步骤2得到的数据集,对步骤4中得到的具有最好适应度的粒子对应的BP神经网络进行训练,得到移动通信用户流失模型;
步骤6:利用移动通信用户流失模型进行移动通信用户流失预测。
根据所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,所述步骤3所述的BP神经网络结构是以所述7种属性类别数据作为网络的输入,以所要得到的移动通信用户流失状态为输出构建的;即该BP神经网络的输入层神经元为7个,输出层神经元为1个;另外隐层神经元设置为8个;所述移动通信用户流失状态包括流失和没有流失两种状态。
根据所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,所述步骤4.4所述的粒子位置向量的维度为73。
本发明的有益效果:本发明结合应用粒子分类优化算法(PCO)和适应度计算(PFC)两个过程对BP神经网络的权值矩阵和阈值矩阵进行初始化,使BP神经网络的权值矩阵和阈值矩阵更接近全局最优,从而提高BP神经网络对移动用户流失预测的准确率。
附图说明
图1为本发明具体实施方式的基于粒子分类与BP神经网络的移动通信用户流失预测方法流程图;
图2为本发明具体实施方式隐层神经元个数对网络输出误差的影响的实验结果图;
图3为本发明具体实施方式基于改进的PSO初始化BP神经网络的权值矩阵和阈值矩阵的过程流程图;
图4为本发明具体实施方式的3-3-3结构的BP神经网络示意图;
图5为本发明具体实施方式的某一BP神经网络示意图;
图6为本发明具体实施方式基于适应度对种群内粒子分类并初始化BP神经网络的权值矩阵和阈值矩阵的示意图;
图7为本发明具体实施方式中三种BP神经网络的训练结果比较图。
具体实施方式
下面结合附图对本发明的一种实施方式作详细说明。
本实施方式的基于粒子分类与BP神经网络的移动通信用户流失预测方法,如图1所示,包括如下步骤:
步骤1:采集移动用户的通信记录数据;
步骤2:数据预处理,得到所需的样本数据集;
步骤2.1:基于移动用户的通信记录数据,以月为单位,按照下述7种属性类别对移动用户的通信情况进行统计:(1)月通话时长;(2)月通话次数;(3)月基本费用;(4)月主被叫比例;(5)入网时间;(6)月掉话次数;(7)月长途费用;
步骤2.2:用四分法对采集移动用户的通信记录数据进行取样,去掉噪声数据,得到所需的样本数据集;
步骤2.3:对所述数据集中的数据进行归一化处理,将数据限制在0到1的范围内;
步骤3:以所述7种属性类别数据为输入,以所要得到的移动通信用户流失状态为输出,建立BP神经网络结构;
步骤3.1:确定BP神经网络隐层的个数
增加隐层的个数可能提高网络的预测准确率,但同时也会急剧增加网络的复杂度,从而导致消耗更多的空间和时间。本实施方式中采用的是单隐层的BP神经网络结构;
步骤3.2:确定各层神经元的个数
由于已知以七种属性类别数据作为网络的输入,所以输入层神经元的个数为7。网络的输出只需将用户划分为流失和没有流失两种情况,所以输出层只需一个输出神经元,它的输出值是0(代表流失状态)或1(代表没有流失状态)。隐层神经元的个数影响着BP神经网络的预测准确率。一般来说,隐层神经元的个数越多,网络的预测准确率就会越高。隐层的神经元数的计算公式如公式(1)所示。
l = n + m + a - - - ( 1 )
其中l是隐层的神经元个数;n是输入层神经元个数;m是输出层神经元个数;a是一个调节因子,取值通常为1到10。
已知输入层有7个神经元,输出层有一个神经元,通过公式(1)可以得出隐层的神经元个数取值确定到4到13的范围内。用样本数据集中的数据输入到标准BP神经网络中进行训练,学习误差率最低的BP神经网络所对应的神经元个数就是最合适的神经元个数。隐层神经元个数对网络输出误差的影响如图2所示。从图中可以发现,当隐层的神经元个数为8时,网络有着最低的输出误差,即有着最高的预测准确率。
步骤4:基于改进的粒子群优化算法PSO初始化所述BP神经网络的权值矩阵和阈值矩阵,包括输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;流程图如图3所示。
传统的BP神经网络可用于对移动通信用户流失状态进行预测,而BP神经网络的预测准确率依赖于网络的权值矩阵和阈值矩阵。但是由于传统BP神经网络在构建的时候,它的权值矩阵和阈值矩阵的初始值是随机的,所以当网络的权值矩阵和阈值矩阵的初始值远离全局最优的时候,无论采用何种误差反传函数,都很难将权值矩阵和阈值矩阵调整到接近全局最优,所以说传统的BP神经网络的预测准确率很依赖权值矩阵和阈值矩阵的初始化。
假设种群中有N个粒子,则种群中的每个粒子都对应着一个BP神经网络,每个粒子的位置向量都会拆解成该粒子所对应的BP神经网络的权值矩阵和阈值矩阵;根据所述BP神经网络结构计算出每个粒子位置向量的维度D=输入层神经元个数*隐层神经元个数+隐层神经元个数*输出层神经元个数+隐层神经元个数+输出层神经元个数;在D维空间中,将第i个粒子的位置向量表示为Xi=(xi1,xi2,...,xiD)T、第i个粒子的速度向量可以表示为Vi=(vi1,vi2,...,viD)T、第i个粒子当前所发现的最好位置表示为Pi=(pi1,pi2,...,piD)T、种群当前所发现的最好位置表示为Pg=(pg1,pg2,...,pgD)T以及第i个粒子的适应度表示为fit(Xi);
步骤4.1:根据种群内粒子的适应度对粒子进行分类;
将种群内拥有最好适应度的1/3粒子作为引导粒子、拥有最差适应度的1/3粒子作为饥饿粒子、其他1/3粒子作为普通粒子;普通粒子会对引导粒子的速度有影响,对引导粒子有一个推动的作用。每一个引导粒子都受邻近的普通粒子的影响。
步骤4.2:对种群内不同种类的粒子进行速度更新;
在PCO算法中,粒子的位置更新是由速度来确定的。所以粒子的速度更新是PCO算法的核心。由于粒子的速度决定着粒子的位置,从而决定粒子的适应度的好坏,所以合理的速度更新公式对找到全局最优解是非常重要的。在PCO算法中,每个种类的粒子都有着自己的速度更新公式。
1)引导粒子在种群探寻全局最优解的过程中有着非常重要的地位。引导粒子的速度更新公式为:
V i k = ωV i k - 1 + c 1 r 1 ( P i - X i k - 1 ) + c 2 r 2 ( P g - X i k - 1 ) + E h * ( V i k - 1 - V i k - 2 ) - - - ( 2 )
其中为第k次迭代时第i个引导粒子的速度;为第k-1次迭代时第i个引导粒子的速度;为第k-2次迭代时第i个引导粒子的速度;c1和c2是两个大于0的常量,通常叫做学习因子或者加速因子,c1用来调整粒子飞向自己当前最好位置的步长,c2用来调整粒子飞向种群当前最好位置的步长;r1和r2是两个取值在[0,1]区间的随机数;ω为惯性权重,用来控制上次速度对当前速度影响的大小,并且通过公式(3)更新;变量Eh用来计算一个引导粒子受其周围普通粒子影响的程度,其计算公式如式(4)所示;
ω = ω m a x - ( ω m a x - ω m i n ) g G - - - ( 3 )
E h = f ( Σ i = 1 C ( fit H i dist H i ) fit b e s t ) - - - ( 4 )
其中g是种群当前迭代的次数,G是预先设定的总迭代次数,ωmax是最大惯性权值,ωmin是最小惯性权值。随着种群的迭代,ω的值越来越小,从而保证最后算法的收敛。C是引导粒子邻近范围内普通粒子的个数;fitHi是该引导粒子邻近范围内的某个普通粒子的适应度,distHi是这个普通粒子到该引导粒子的欧几里得距离;fitbest是该引导粒子的适应度;f是sigmoid函数,用来将将普通粒子对该引导粒子影响控制在[0,1]的范围内。可以发现,Eh和该引导粒子周围的普通粒子数目成正相关,与distHi和fitbest成负相关。
公式(2)中的参数可以说明,对于一个引导粒子α来说,它周围的普通粒子的适应度越好,与α的距离越近,那么这些普通粒子将会对α有一个更大的影响。这意味着α周围的普通粒子不满足当前的适应度,因此他们对引导粒子α有着一个更强烈的推动作用来迫使引导粒子α迈出更大的步伐来寻找全局最优解。
2)普通粒子也受其周围引导粒子的影响,普通粒子的速度更新公式如下所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i d k - 1 - X i d k - 1 ) - - - ( 5 )
其中表示第k-1次迭代时,第i个普通粒子周围的引导粒子的d维分量;表示第k-1次迭代时,第i个普通粒子的d维分量;
一个普通粒子的速度向量的一个分量Vi受到它周围引导粒子的相应的速度分量影响。一个引导粒子如果距离该普通粒子的距离越近,并且该引导粒子的适应度越大,则该引导粒子则有一个更高的概率对这个普通粒子进行引导,该引导粒子对这个普通粒子进行引导的概率通过公式(6)计算;
p l = 1 fitness l × dist l Σ l = 1 M ( 1 fitness l × dist l ) - - - ( 6 )
其中pl为第l引导粒子对第i个普通粒子进行引导的概率;M是第i个普通粒子周围的引导粒子个数;fitnessl为第i个普通粒子周围的第l个引导粒子的适应度;distl为第i个普通粒子与其周围的第l个引导粒子的距离;
3)饥饿粒子的速度更新公式和现有PSO算法中粒子速度更新公式相同,如公式(7)所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i k - 1 - X i k - 1 ) + c 2 r 2 ( P g k - 1 - X i k - 1 ) - - - ( 7 )
根据经验和仿真实验,本实施方式确定了三种速度更新公式中的部分参数,其中粒子的位置范围在[-5,5],粒子的速度范围在[-1,1],种群粒子的个数为60,最大迭代次数为100,学习因子c1=1.4879,c2=1.5。最大惯性权重ωmax=0.9,最小惯性权重ωmin=0.4。
步骤4.3:粒子位置更新;
将不同种类的粒子根据各自对应的粒子速度更新公式得到的更新速度代入粒子位置更新公式对各自的位置进行相应更新;
粒子位置更新公式采用现有PSO算法中的位置更新公式;
X i k = X i k - 1 + V i k - - - ( 8 )
其中表示在第k次迭代第i个粒子的的位置向量;表示在第k-1次迭代第i个粒子的位置向量;
步骤4.4:将粒子位置向量中的元素按顺序依次分配到BP神经网络的输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;其中输入层到隐层的权值矩阵的元素个数为输入层神经元个数*隐层神经元个数;隐层到输出层的权值矩阵的元素个数为隐层神经元个数*输出层神经元个数;隐层的阈值矩阵的元素个数为隐层神经元个数;输出层的阈值矩阵的元素个数为输出层神经元个数;
由于本实施方式步骤3中建立的神经网络结构相对复杂,为了方便理解及叙述方便,这里以图4所示的更为简单的3-3-3结构的神经网络为例来说明粒子的位置向量是如何拆解成一个BP神经网络的权值矩阵和阈值矩阵的。一个粒子的位置向量被拆解成一个神经网络的四个矩阵,其中包括输入层到隐层的权值矩阵v、隐层到输出层的权值矩阵w、隐层的阈值矩阵bh以及输出层的阈值矩阵bo。
v = v 11 v 12 v 13 v 21 v 22 v 23 v 31 v 32 v 33 ; w = w 11 w 12 w 13 w 21 w 22 w 23 w 31 w 32 w 33 ;
bh=[bh1bh2bh3];bo=[bo1bo2bo3]。
各个矩阵的元素个数已经通过网络的结构确定,所以粒子的位置向量为:
Xi=(v11,...v33,w11,...w33,bh1,bh2,bh3,bo1,bo2,bo3)
因此,如果确定了粒子的位置向量的维度,则可以用粒子的位置向量拆解成BP神经网络的权值矩阵和阈值矩阵。基于前述网络的结构以及各层神经元数已经确定,由于输入层有7个神经元,隐层有8个神经元,输出层有1个神经元。所以粒子位置向量的维度为:7(输入层神经元个数)×8(隐层神经元个数)+8(隐层神经元个数)×1(输出层神经元个数)+8(隐层神经元个数)+1(输出层神经元个数)=73。
步骤4.5:计算粒子适应度;
以图5所示的BP神经网络为例,假设输入层有n个神经元;隐层有q个神经元;输出层有m个神经元,粒子适应度详细计算过程如下所述。
隐层的传递函数是fl(x),第k个隐层神经元的输出zk为:
z k = f l ( Σ i = 1 n v i k × x i - θ k ) , k = 1 , 2 ... , q - - - ( 9 )
其中vik是第i个输入神经元与第k个隐层神经元之间的权值,θk是第k个隐层神经元的阈值,xi是第i个输入神经元的输入。
输出层的传递函数是f2(x),第j个输出神经元的输出yj为:
y j = f 2 ( Σ k = 1 n w k j × z k - θ j ) , j = 1 , 2 ... , m - - - ( 10 )
其中wkj是第k个隐层神经元和第j个输出层神经元之间的权值,θj是第j个输出神经元的阈值。
总的样本数量是P。第h个样本在第j个神经元所对应的输出是第h个样本所对应的误差是Ep
E P = Σ j = 1 m ( t j P - y j P ) 2 - - - ( 11 )
其中是期望输出。
所有样本的输出误差是E:
E = Σ h = 1 P Σ j = 1 m ( t j P - y j P ) 2 - - - ( 12 )
将粒子对应的BP神经网络的训练样本的输出误差作为粒子的适应度,即
fit(Xi)=E(Xi)(13)
其中E(Xi)为第i个粒子对应的BP神经网络的所有样本的输出误差;
综上所述,可以看出粒子的适应度是由粒子的位置确定的,粒子的位置向量对应着解空间中的一个解,所以一个粒子的适应度越好,说明该粒子的位置向量越接近解空间中的最优解。换句话说,适应度越好,粒子的发现最优解的能力就越强。在PCO算法的每次迭代过程中,种群内粒子的速度和位置都会更新,所以粒子的适应度也会随之改变,PCO算法的目的就是使种群内粒子在解空间中探寻最优解的过程更合理,从而提高种群发现最优解的能力。
在本实施方式中,种群中的每个粒子都对应着一个BP神经网络,每个粒子的位置向量都会拆解成BP神经网络的权值矩阵和阈值矩阵,并且这些神经网络针对用户流失预测所产生的预测误差就是对应各自粒子的适应度,所以在用户流失预测的这个问题中,一个粒子的适应度越小,则说明该粒子位置向量所拆解成的BP神经网络的权值矩阵和阈值矩阵就越合理,该粒子对应的BP神经网络的用户流失预测能力就越强。
步骤4.6:判断种群当前的最好粒子适应度是否达到预设值或者迭代过程是否达到预设的最大迭代次数,是,则得到BP神经网络的权值矩阵和阈值矩阵,执行步骤4.6,否,则转至步骤4.1,继续迭代过程;
每一次迭代之后,粒子的适应度都可能发生改变,所以在PCO算法中,每次迭代粒子的种类都要根据当前的适应度重新划分,然后再进行粒子速度和粒子位置的更新。然后根据更新之后粒子的位置向量拆解成一组新的BP神经网络的权值矩阵和阈值矩阵,然后再计算粒子的适应度,如此循环迭代,如图6所示。
当步骤4.1至步骤4.5的迭代过程结束后,种群中拥有最好适应度的粒子的位置向量将会转换成BP神经网络的权值矩阵和阈值矩阵,作为该网络的初始权值矩阵和阈值矩阵。
步骤5:利用步骤2得到的数据集,对步骤4中得到的具有最好适应度的粒子对应的BP神经网络进行训练,得到移动通信用户流失模型;
在步骤4执行之后,改进的PSO已经对BP神经网络的权值和阈值进行了初始化,再选取Levenberg-Marquardt方法作为BP神经网络的误差反传函数继续训练,对BP神经网络的权值矩阵和阈值矩阵进行调整,直到网络的输出误差小于预先设定的预测误差,网络的预测能力满足需求。
步骤6:利用移动通信用户流失模型进行移动通信用户流失预测。
本实施方式中将步骤4中改进的粒子分类优化算法(PSO)和适应度计算(PFC)过程结合起来构成的反复迭代过程定义为PBCCP算法,然后通过步骤2得到的样本数据集,分别对本实施方式中利用PBCCP算法初始化其权值矩阵和阈值矩阵的BP神经网络(图7中以PBCCP表示)、现有标准BP神经网络和现有标准PSO-BP神经网络,并对训练结果进行比较,如图7示,利用PBCCP算法初始化其权值矩阵和阈值矩阵的BP神经网络具有更高的移动通信用户流失预测准确率。

Claims (5)

1.一种基于粒子分类与BP神经网络的移动通信用户流失预测方法,其特征在于:包括如下步骤:
步骤1:采集移动用户的通信记录数据;
步骤2:数据预处理,得到所需的样本数据集;
步骤3:建立BP神经网络结构;
步骤4:基于改进的粒子群优化算法PSO初始化所述BP神经网络的权值矩阵和阈值矩阵,包括输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;
假设种群中有N个粒子,则种群中的每个粒子都对应着一个BP神经网络,每个粒子的位置向量都会拆解成该粒子所对应的BP神经网络的权值矩阵和阈值矩阵;根据所述BP神经网络结构计算出每个粒子位置向量的维度D=输入层神经元个数*隐层神经元个数+隐层神经元个数*输出层神经元个数+隐层神经元个数+输出层神经元个数;在D维空间中,将第i个粒子的位置向量表示为Xi=(xi1,xi2,...,xiD)T、第i个粒子的速度向量可以表示为Vi=(vi1,vi2,...,viD)T、第i个粒子当前所发现的最好位置表示为Pi=(pi1,pi2,...,piD)T、种群当前所发现的最好位置表示为Pg=(pg1,pg2,...,pgD)T以及第i个粒子的适应度表示为fit(Xi);
步骤4.1:根据粒子的适应度对种群内粒子进行分类;
将种群内拥有最好适应度的1/3粒子作为引导粒子、拥有最差适应度的1/3粒子作为饥饿粒子、其他1/3粒子作为普通粒子;
步骤4.2:对种群内不同种类的粒子进行速度更新;
1)引导粒子的速度更新公式为:
V i k = ωV i k - 1 + c 1 r 1 ( P i k - 1 - X i k - 1 ) + c 2 r 2 ( P g k - 1 - X i k - 1 ) + E h * ( V i k - 1 - V i k - 2 ) - - - ( 2 )
其中Vi k为第k次迭代时第i个粒子的速度;Vi k-1为第k-1次迭代时第i个粒子的速度;为第k-1次迭代时第i个粒子的位置;Vi k-2为第k-2次迭代时第i个粒子的速度;Pi k-1为第i个粒子在第k-1次迭代后所发现的最好位置,为种群在第k-1次迭代后所发现的最好位置;c1和c2是两个大于0的常量,其中c1用来调整粒子飞向自己当前最好位置的步长,c2用来调整粒子飞向种群当前最好位置的步长;r1和r2是两个取值在[0,1]区间的随机数;ω为惯性权重;变量Eh表示一个引导粒子受其周围普通粒子影响的程度;
2)普通粒子的速度更新公式如下所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i d k - 1 - X i d k - 1 ) - - - ( 4 )
其中表示第k-1次迭代时,第i个普通粒子周围的引导粒子的d维分量;表示第k-1次迭代时,第i个普通粒子的d维分量;
3)饥饿粒子的速度更新公式和现有PSO算法中粒子速度更新公式相同,如公式(6)所示:
V i k = ωV i k - 1 + c 1 r 1 ( P i k - 1 - X i k - 1 ) + c 2 r 2 ( P g k - 1 - X i k - 1 ) - - - ( 6 )
其中表示在第k-1次迭代第i个粒子的位置向量;
步骤4.3:根据更新后的粒子速度,进行粒子位置更新;
步骤4.4:将更新后的粒子位置向量中的元素按顺序依次分配到BP神经网络的输入层到隐层的权值矩阵、隐层到输出层的权值矩阵、隐层的阈值矩阵和输出层的阈值矩阵;其中输入层到隐层的权值矩阵的元素个数为输入层神经元个数*隐层神经元个数;隐层到输出层的权值矩阵的元素个数为隐层神经元个数*输出层神经元个数;隐层的阈值矩阵的元素个数为隐层神经元个数;输出层的阈值矩阵的元素个数为输出层神经元个数;
步骤4.5:计算粒子适应度;
步骤4.6:判断种群当前的最好粒子适应度是否达到预设值或者迭代过程是否达到预设的最大迭代次数,是,则转至步骤5;否,则转至步骤4.1,继续迭代过程;
步骤5:利用步骤2得到的数据集,对步骤4中得到的具有最好适应度的粒子对应的BP神经网络进行训练,得到移动通信用户流失模型;
步骤6:利用移动通信用户流失模型进行移动通信用户流失预测。
2.根据权利要求1所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,其特征在于:所述步骤2包括如下具体步骤:
步骤2.1:基于移动用户的通信记录数据,以月为单位,按照下述7种属性类别对移动用户的通信情况进行统计:(1)月通话时长;(2)月通话次数;(3)月基本费用;(4)月主被叫比例;(5)入网时间;(6)月掉话次数;(7)月长途费用;
步骤2.2:对所采集的移动用户的通信记录数据进行取样,去掉噪声数据,得到所需的样本数据集;
步骤2.3:对所述数据集中的数据进行归一化处理,将数据限制在0到1的范围内。
3.根据权利要求1所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,其特征在于:所述变量Eh的计算公式如下所示:
E h = f ( Σ i = 1 C ( fit H i dist H i ) fit b e s t ) - - - ( 3 )
C是引导粒子邻近范围内普通粒子的个数;fitHi是该引导粒子邻近范围内的某个普通粒子的适应度,distHi是这个普通粒子到该引导粒子的欧几里得距离;fitbest是该引导粒子的适应度;f是sigmoid函数,用来将普通粒子对该引导粒子的影响控制在[0,1]的范围内。
4.根据权利要求2或权利要求3所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,其特征在于:所述步骤3所述的BP神经网络结构是以所述7种属性类别数据作为网络的输入,以所要得到的移动通信用户流失状态为输出构建的;即该BP神经网络的输入层神经元为7个,输出层神经元为1个;另外隐层神经元设置为8个;所述移动通信用户流失状态包括流失和没有流失两种状态。
5.根据权利要求4所述的基于粒子分类与BP神经网络的移动通信用户流失预测方法,其特征在于:所述步骤4.4所述的粒子位置向量的维度为73。
CN201510809789.XA 2015-11-19 2015-11-19 基于粒子分类与bp神经网络的移动通信用户流失预测方法 Active CN105469144B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510809789.XA CN105469144B (zh) 2015-11-19 2015-11-19 基于粒子分类与bp神经网络的移动通信用户流失预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510809789.XA CN105469144B (zh) 2015-11-19 2015-11-19 基于粒子分类与bp神经网络的移动通信用户流失预测方法

Publications (2)

Publication Number Publication Date
CN105469144A true CN105469144A (zh) 2016-04-06
CN105469144B CN105469144B (zh) 2017-12-01

Family

ID=55606814

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510809789.XA Active CN105469144B (zh) 2015-11-19 2015-11-19 基于粒子分类与bp神经网络的移动通信用户流失预测方法

Country Status (1)

Country Link
CN (1) CN105469144B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106355250A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 基于神经网络的判断隐蔽信道的优化方法及装置
CN106874950A (zh) * 2017-02-13 2017-06-20 云南电网有限责任公司电力科学研究院 一种暂态电能质量录波数据的识别分类方法
CN108428138A (zh) * 2017-02-13 2018-08-21 北京京东尚科信息技术有限公司 一种基于客户分群的客户生存率分析装置及分析方法
CN108921342A (zh) * 2018-06-26 2018-11-30 圆通速递有限公司 一种物流客户流失预测方法、介质和系统
CN109376180A (zh) * 2018-09-19 2019-02-22 蜜小蜂智慧(北京)科技有限公司 一种构建变量的方法及装置
CN109451527A (zh) * 2018-12-21 2019-03-08 广东宜通世纪科技股份有限公司 一种移动通信用户流失日粒度预测方法及装置
CN111652347A (zh) * 2020-04-23 2020-09-11 中国科学院空天信息创新研究院 一种粒子群算法改进神经网络反演叶面积指数方法
CN111930844A (zh) * 2020-08-11 2020-11-13 罗忠明 基于区块链和人工智能的金融预测系统
CN114298758A (zh) * 2021-12-30 2022-04-08 北京航天智造科技发展有限公司 基于粒子群算法优化的神经网络预测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101620692A (zh) * 2008-06-30 2010-01-06 上海全成通信技术有限公司 一种移动通信业务的客户流失分析方法
EP2330520A1 (en) * 2008-09-27 2011-06-08 State Grid Corporation of China Method for data model description in large-scale information exchange and processing
CN104021433A (zh) * 2014-06-18 2014-09-03 上海美琦浦悦通讯科技有限公司 数据信息通信网络中实现用户流失预测的系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101620692A (zh) * 2008-06-30 2010-01-06 上海全成通信技术有限公司 一种移动通信业务的客户流失分析方法
EP2330520A1 (en) * 2008-09-27 2011-06-08 State Grid Corporation of China Method for data model description in large-scale information exchange and processing
CN104021433A (zh) * 2014-06-18 2014-09-03 上海美琦浦悦通讯科技有限公司 数据信息通信网络中实现用户流失预测的系统及方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106355250B (zh) * 2016-08-31 2019-04-30 天津南大通用数据技术股份有限公司 基于神经网络的判断隐蔽信道的优化方法及装置
CN106355250A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 基于神经网络的判断隐蔽信道的优化方法及装置
CN106874950A (zh) * 2017-02-13 2017-06-20 云南电网有限责任公司电力科学研究院 一种暂态电能质量录波数据的识别分类方法
CN108428138A (zh) * 2017-02-13 2018-08-21 北京京东尚科信息技术有限公司 一种基于客户分群的客户生存率分析装置及分析方法
CN108428138B (zh) * 2017-02-13 2021-07-20 北京京东尚科信息技术有限公司 一种基于客户分群的客户生存率分析装置及分析方法
CN108921342A (zh) * 2018-06-26 2018-11-30 圆通速递有限公司 一种物流客户流失预测方法、介质和系统
CN108921342B (zh) * 2018-06-26 2022-07-12 圆通速递有限公司 一种物流客户流失预测方法、介质和系统
CN109376180A (zh) * 2018-09-19 2019-02-22 蜜小蜂智慧(北京)科技有限公司 一种构建变量的方法及装置
CN109451527A (zh) * 2018-12-21 2019-03-08 广东宜通世纪科技股份有限公司 一种移动通信用户流失日粒度预测方法及装置
CN109451527B (zh) * 2018-12-21 2019-09-20 宜通世纪科技股份有限公司 一种移动通信用户流失日粒度预测方法及装置
CN111652347A (zh) * 2020-04-23 2020-09-11 中国科学院空天信息创新研究院 一种粒子群算法改进神经网络反演叶面积指数方法
CN111930844A (zh) * 2020-08-11 2020-11-13 罗忠明 基于区块链和人工智能的金融预测系统
CN111930844B (zh) * 2020-08-11 2021-09-24 肖岩 基于区块链和人工智能的金融预测系统
CN114298758A (zh) * 2021-12-30 2022-04-08 北京航天智造科技发展有限公司 基于粒子群算法优化的神经网络预测方法

Also Published As

Publication number Publication date
CN105469144B (zh) 2017-12-01

Similar Documents

Publication Publication Date Title
CN105469144A (zh) 基于粒子分类与bp神经网络的移动通信用户流失预测方法
Chen et al. DNNOff: offloading DNN-based intelligent IoT applications in mobile edge computing
CN110809306B (zh) 一种基于深度强化学习的终端接入选择方法
CN110488861A (zh) 基于深度强化学习的无人机轨迹优化方法、装置和无人机
CN110503192A (zh) 资源有效的神经架构
CN112153616B (zh) 一种基于深度学习的毫米波通信系统中的功率控制方法
CN111628855A (zh) 基于深度强化学习的工业5g动态多优先级多接入方法
CN113554875B (zh) 一种基于边缘计算的高速公路异质交通流可变限速控制方法
CN110958625B (zh) 一种基于移动边缘智能的实时多模态语言分析系统和方法
CN112530157B (zh) 基于知识图谱和Conv1D-LSTM-D的道路交通拥堵传播预测方法
CN111355633A (zh) 一种基于pso-delm算法的比赛场馆内手机上网流量预测方法
CN113642700A (zh) 基于联邦学习和边缘计算的跨平台多模态舆情分析方法
CN113037410A (zh) 信道识别方法、装置、传输方法、传输设备、基站、介质
CN115033359A (zh) 一种基于时延控制的物联代理多任务调度方法和系统
CN116614394A (zh) 一种基于多目标深度强化学习的服务功能链放置方法
Lv et al. Edge computing task offloading for environmental perception of autonomous vehicles in 6G networks
CN112231117B (zh) 基于动态向量混合遗传算法的云机器人服务选择方法及系统
CN112131089B (zh) 软件缺陷预测的方法、分类器、计算机设备及存储介质
CN112153617B (zh) 一种基于集成神经网络的终端设备传输功率的控制方法
CN117119486A (zh) 一种保障多小区蜂窝网长期用户速率的深度无监督学习资源分配方法
Kousias et al. HINDSIGHT: an R-based framework towards long short term memory (LSTM) optimization
CN112019510B (zh) 一种深度神经网络架构的自适应搜索方法和系统
CN113807501A (zh) 基于改进粒子群算法的数据预测方法及装置
CN113033653A (zh) 一种边-云协同的深度神经网络模型训练方法
Selvamanju et al. Archimedes optimization algorithm with deep belief network based mobile network traffic prediction for 5G cellular networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant