一种基于RFM模型和人工蜂群算法的铁路货运客户细分方法与流程

文档序号:28320145发布日期:2022-01-04 22:17阅读:63来源:国知局
一种基于RFM模型和人工蜂群算法的铁路货运客户细分方法与流程
一种基于rfm模型和人工蜂群算法的铁路货运客户细分方法
技术领域
1.本发明涉及数据挖掘与数据分析领域,尤其涉及一种基于rfm模型和人工蜂群算法的铁路货运客户细分方法。


背景技术:

2.随着国家建立健全绿色低碳循环发展经济体系的要求,铁路货物运输作为绿色低碳的运输方式,面临着提升铁路运输市场份额的压力,铁路部门的服务方式也需要从粗放的服务产品供给管理向铁路货运客户需求牵引转变。针对铁路货运客户发货行为,将其精细划分为不同客户群体,有助于铁路部门设计针对性的服务产品以及采取更为精准的营销策略;
3.面临庞大的铁路货运客户信息,目前主要是采用rfm模型和 k

means聚类算法实现铁路货运客户细分。然而,k

means聚类算法存在初始聚类中心随机选择而导致的聚类结果不稳定的缺陷;其次,由于k

means算法仅由一个初始聚类中心出发,即使每次都从相同的初始聚类中心迭代优化,而获得稳定的聚类结果,仍然存在全局寻优能力弱的不足,即聚类结果质量不高,因此本发明提出一种基于rfm 模型和人工蜂群算法的铁路货运客户细分方法以解决现有技术中存在的问题。


技术实现要素:

4.针对上述问题,本发明的目的在于提出一种基于rfm模型和人工蜂群算法的铁路货运客户细分方法,该种基于rfm模型和人工蜂群算法的铁路货运客户细分方法通过数据提取、统计分析、标准化处理、转化处理和最终处理来对铁路货运客户进行细分,并采用人工蜂群算法,可以有效规避单个初始聚类中心个体质量不佳对全局寻优能力的影响,同时,人工蜂群算法是一种群体智能优化算法,有很强的高维优化问题求解能力。
5.为实现本发明的目的,本发明通过以下技术方案实现:包括以下步骤:
6.步骤一:数据提取
7.从铁路货运相关信息平台数据库中提取货票数据,并对货票数据进行筛选,剔除特殊客户数据,提取正常客户数据来刻画铁路货运客户发货行为;
8.步骤二:统计分析
9.利用分组聚合查询实现各个发货人相关信息的分组统计分析,即在一个铁路货运客户细分时间范围内,计算发货人最后一次发货时间以及最后一次发货时间距统计分析截止日期的天数,即获得发货人最近一次发货的时间间隔r指标,计算发货人在统计时间范围内总的发货票数或发货次数,获得发货人的发货频率f指标,计算发货人在统计时间范围内向铁路承运人支付的各票运费总收入之和,获得发货人的消费总金额m;
10.步骤三:标准化处理
11.为降低各指标属性间的差异,利用极差标准化方法实现无量纲化处理,即对所有铁路货运客户rfm信息借助公式进行标准化处理,其中公式为:
[0012][0013]
式中:i=1,2,...,n;j=1,2,...,|a|;
[0014]
步骤四:转化处理
[0015]
将铁路货运客户细分问题转化为一个求铁路货运客户类内距离之和最小的全局优化问题,如公式(1)

(4)所示:
[0016][0017][0018]
式中:n表示铁路货运客户总数,k表示铁路货运客户聚类总数,表示第i个铁路货运客户x
i
距离第k类铁路货运客户聚类中心最近;
[0019]
步骤五:最终处理
[0020]
利用人工蜂群算法对步骤四中所描述的全局优化问题进行求解,在目标函数最小的规则引导下,人工蜂群算法求得全局最优聚类中心坐标,并借助各个铁路货运客户坐标x
i
距离相关聚类中心坐标的距离长短实现铁路货运客户细分。
[0021]
进一步改进在于:所述步骤五中利用人工蜂群算法求解全局优化问题时,需将待解问题向人工蜂群算法群体智能寻优机制转换,即将所有聚类中心坐标统一表示为人工蜂群算法个体,将公式(2)的目标函数值转换为人工蜂群算法的适应度函数,通过人工蜂群算法的演化进化获得全局最优聚类中心。
[0022]
进一步改进在于:所述步骤五中,需要确定对铁路货运客户聚类中心坐标进行编码的长度d,考虑到铁路货运客户属性集a={r,f,m} 以及聚类数量k,则计算出人工蜂群算法个体编码长度d=k
×
|a|,其中|a|表示集合a中元素个数,相应地,人工蜂群算法个体编码为其中,n
p
表示人工蜂群算法种群规模大小。
[0023]
进一步改进在于:记录所有铁路货运客户属性j=1,2,...,|a|取值范围为计算出:计算出:并记y
min
和y
max
分别表示种群个体向量的下界和上界,则计算出:
[0024][0025][0026]
进一步改进在于:在所述人工蜂群算法中,设置种群参数 n
p
=20,控制参数limit=100,最大迭代次数maxfes=1e4,并令表示每个个体连续没有获得更新解的次数trail
l
=0(l=1,2,...,n
p
),然后按照公式初始化n
p
个种群个体y
l
,其中公式为:
[0027][0028]
式中:j2=1,2,...,d;l=1,2,...,n
p
;rand()表示产生[0,1]上的均匀分布随机数函数。
[0029]
进一步改进在于:依次计算所有种群个体y
l
(l=1,2,..,n
p
)的目标函数值y(y
l
),当所有个体的目标函数值计算结束之后,记录迭代变量fes=n
p
,并记录
[0030]
进一步改进在于:记录当f(besty)<f(bestx) 时,用besty替换bestx后,进行人工蜂群算法的侦查蜂搜索阶段,当 f(besty)<f(bestx)时,直接进行人工蜂群算法的侦查蜂搜索阶段。
[0031]
本发明的有益效果为:该种基于rfm模型和人工蜂群算法的铁路货运客户细分方法通过数据提取、统计分析、标准化处理、转化处理和最终处理来对铁路货运客户进行细分,并采用人工蜂群算法,可以有效规避单个初始聚类中心个体质量不佳对全局寻优能力的影响,同时,人工蜂群算法是一种群体智能优化算法,有很强的高维优化问题求解能力,且通过采用极差标准化方法可以有效避免不同指标之间的量纲差异问题,也可以有效避免指标属性标准化之前的大数吞掉小数的现象,即避免聚类结果粗放,在最终输出铁路货运客户群rfm类型之前,将聚类结果采用多指标排序技术,即依次按客户群编号(升序)、m指标(降序)、f指标(降序)、r指标(升序)、客户编号(降序) 自动排序,相关结果字段信息为客户编号、r、f、m、客户群编号、 rfm类型等6个字段信息,可以让铁路货运相关部门清晰发现同一客户群的客户之间的差异性,进一步实现铁路货运客户的二次精细划分。
附图说明
[0032]
图1是本发明实施例的基于rfm模型和人工蜂群算法的铁路货运客户细分方法流程示意图。
具体实施方式
[0033]
为了加深对本发明的理解,下面将结合实施例对本发明做进一步详述,本实施例仅用于解释本发明,并不构成对本发明保护范围的限定。
[0034]
根据图1所示,本实施例提出了一种基于rfm模型和人工蜂群算法的铁路货运客户细分方法,包括以下步骤:
[0035]
步骤一:数据提取
[0036]
从铁路货运相关信息平台数据库中提取货票数据,该货票数据信息包含票号、发货人、发货时间、运费总收入等四十余个字段,并对货票数据进行筛选,剔除特殊客户数据,该特殊客户数据为运费总收入信息为空的特殊客户数据,提取正常客户数据来刻画铁路货运客户发货行为,正常客户数据为发货人、发货时间和运费总收入信息三个字段;
[0037]
步骤二:统计分析
[0038]
利用数据库技术中的分组聚合查询实现各个发货人相关信息的分组统计分析,即
在一个铁路货运客户细分时间范围内,计算发货人最后一次发货时间以及最后一次发货时间距统计分析截止日期的天数,即获得发货人最近一次发货的时间间隔r指标,计算发货人在统计时间范围内总的发货票数或发货次数,获得发货人的发货频率f指标,计算发货人在统计时间范围内向铁路承运人支付的各票运费总收入之和,获得发货人的消费总金额m,记录n个铁路货运客户rfm信息为x={x
i
|i=1,2,...n},其中或为一个三维行向量,各分量分别表示第i个铁路货运客户的r、f、m指标属性至,并记客户属性集a={r,f,m};
[0039]
步骤三:标准化处理
[0040]
为降低各指标属性间的差异,利用极差标准化方法实现无量纲化处理,即对所有铁路货运客户rfm信息借助公式进行标准化处理,利用极差标准化方法可以有效避免不同指标之间的量纲差异问题,也可以有效避免指标属性标准化之前的大数吞掉小数的现象,即避免聚类结果粗放,其中公式为:
[0041][0042]
式中:i=1,2,...,n;j=1,2,...,|a|;
[0043]
步骤四:转化处理
[0044]
将铁路货运客户细分问题转化为一个求铁路货运客户类内距离之和最小的全局优化问题,如公式(1)

(4)所示:
[0045][0046][0047]
式中:n表示铁路货运客户总数,k表示铁路货运客户聚类总数,表示第i个铁路货运客户x
i
距离第k类铁路货运客户聚类中心最近;
[0048]
步骤五:最终处理
[0049]
利用人工蜂群算法对步骤四中所描述的全局优化问题进行求解,在目标函数最小的规则引导下,人工蜂群算法求得全局最优聚类中心坐标,并借助各个铁路货运客户坐标x
i
距离相关聚类中心坐标的距离长短实现铁路货运客户细分,所述步骤五中利用人工蜂群算法求解全局优化问题时,需将待解问题向人工蜂群算法群体智能寻优机制转换,即将所有聚类中心坐标统一表示为人工蜂群算法个体,将公式(2) 的目标函数值转换为人工蜂群算法的适应度函数,通过人工蜂群算法的演化进化获得全局最优聚类中心。
[0050]
其中人工蜂群算法包括以下步骤:
[0051]
步骤六:需要确定对铁路货运客户聚类中心坐标进行编码的长度 d,考虑到铁路货运客户属性集a={r,f,m}以及聚类数量k,则计算出人工蜂群算法个体编码长度d=k
×
|a|,其中|a|表示集合a中元素个数,相应地,人工蜂群算法个体编码为
其中,n
p
表示人工蜂群算法种群规模大小;
[0052]
步骤七:记录所有铁路货运客户属性j=1,2,...,|a|取值范围为计算出:并记y
min
和y
max
分别表示种群个体向量的下界和上界,则计算出:
[0053][0054][0055]
步骤八:在所述人工蜂群算法中,设置种群参数n
p
=20,控制参数limit=100,最大迭代次数maxfes=1e4,并令表示每个个体连续没有获得更新解的次数trail
l
=0(l=1,2,...,n
p
),然后按照公式初始化n
p
个种群个体y
l
,其中公式为:
[0056][0057]
式中:j2=1,2,...,d;l=1,2,...,n
p
;rand()表示产生[0,1]上的均匀分布随机数函数;
[0058]
步骤九:依次计算所有种群个体y
l
(l=1,2,..,n
p
)的目标函数值 f(y
l
),将种群个体y
l
依次解码为k个聚类中心c
k
,k=1,2,...,k,其中公式为:
[0059][0060]
式中,j=1,2,...,|a|;l=1,2,...,n
p
,再根据公式依次计算所有铁路货运客户x
i
(i=1,2,...,n)到聚类中心c
k
之间的距离d
ik
,其中公式为:
[0061]
d
ik
=d(x
i
,c
k
)=||x
i

c
k
||2,
[0062]
根据公式计算个体y
l
目标函数值f(y
l
),其中公式为:
[0063][0064]
当所有个体的目标函数值计算结束之后,记录迭代变量fes=n
p
,并记录当前种群最好个体
[0065]
步骤十:人工蜂群算法雇佣蜂搜索阶段,针对每一个个体 y
l
(l=1,2,...,n
p
),首先将其复制给临时个体v=y
l
,并从种群中随机选择一个不同于y
l
的个体以及从个体维数集合d2={1,2,...,d}中随机选择一个维度j3,按照公式模拟蜜蜂搜索行为,达到寻找更优个体的目的,其中公式为:
[0066][0067]
之后针对新产生的个体分量按照公式进行界约束处理,其中公式为:
[0068][0069]
之后,根据步骤九中的计算个体y
l
目标函数值f(y
l
)的公式来计算新产生的临时个体v的目标函数值f(v),当f(v)≤f(y
l
)时,用临时个体v 替换当前个体y
l
,并令trail
l
=0以及f(y
l
)=f(v),否则令 trail
l
=trial
l
+1,当所有个体都执行完一次搜索之后,令迭代变量 fes=fes+n
p

[0070]
步骤十一:人工蜂群算法中的个体选择概率计算,根据公式计算每个个体y
l
的适应度值fit
l
(l=1,2,...,n
p
),其中公式为:
[0071][0072]
再根据公式计算每个个体y
l
被选择的概率p
l
(l=1,2,...,n
p
),其中公式为:
[0073][0074]
步骤十二:人工蜂群算法的跟随蜂搜索阶段,先令迭代变量 t=0,并令当前个体编号l=0,之后,令l=l+1,当随机函数rand() 产生的均匀分布随机数α小于p
l
时,令t=t+1,并将当前个体y
l
复制给临时个体v,雇佣蜂v根据对应的公式执行搜索和界约束处理,并根据公式计算新产生的个体v的目标函数值f(v),接着按照步骤十在个体v和当前个体y
l
之间实现贪婪选择,转下一步,当α大于等于p
l
使,直接转下一步,当l=n
p
时,令l=0,当t<n
p
时,重新令l=l+1,进行后续步骤,否则令迭代变量fes=fes+n
p
,并进行下一步;
[0075]
步骤十三:记录当前种群最好个体当 f(besty)<f(bestx)时,用besty替换bestx后,进行人工蜂群算法的侦查蜂搜索阶段,当f(besty)≥f(bestx)时,直接进行人工蜂群算法的侦查蜂搜索阶段;
[0076]
步骤十四:人工蜂群算法的侦查蜂搜索阶段,计算 maxlimit=max{trial
l
|l=1,2,...,n
p
},并计算其索引号如果maxlimit≥limit,随机产生一个新个体v,并用v更新个体y
ind
,同时更新个体y
ind
的目标函数值为f(v),并另 trail
ind
=0,fes=fes+1,进行下一步,如果maxlimit<limit,直接进行下一步;
[0077]
步骤十五:当fes≤maxfes时,转步骤十,否则,记录下最好的聚类个体bestx,进行下一步;
[0078]
步骤十六:给每个铁路货运客户打标签,实现铁路货运客户细分,根据人工蜂群算法获得的最优聚类中心个体bestx解码为k个聚类中心c
k
(k=1,2,...,k),再依次针对每个铁路货运客户x
i
(i=1,2,...,n)计算客户x
i
距离各个聚类中心c
k
的距离d
ik
,则客户x
i
被划分到的类别编号为即客户被划分到与聚类中心c
k
(k=1,2,...,k)距离最短的类中,从而实现铁路货运客户类别自动标注;
[0079]
步骤十七:计算每个铁路货运客户群体k(k=1,2,...,k)的r、f、m 的均值
将其分别与所有铁路货运客户的r、f、m均值μ
j
(j∈{r,f,m})比较,由于每种属性均值比较有”大于”、“小于等于”两种可能性,故共有23=8中类别,进一步可将各个聚类客户群体划分到这八个群体中。
[0080]
其中,八个群体分别为:
[0081]
(r

,f

,m

);(r

,f

,m

);(r

,f

,m

);
[0082]
(r

,f

,m

);(r

,f

,m

);(r

,f

,m

);
[0083]
(r

,f

,m

);(r

,f

,m

)。
[0084]
以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1