消费者购买可能性判断的模型设计
分类模型就是根据以往的经验,根据每个属性内的水平与类之间的对应关系,构造出
分 类模型。本文旨在探讨分类模型的评价标准,并提出了两种分类方法。第一种分类方
法比较简单,经济含义也比较明显, 但第一种方法要求属性(指标)之间不能有强的相
关性。在第二种方法中,提出并证明了两条比较实用的结论,并利用这 两条结论与一些
合理的假设,求解出了新的分类模型。
在一对一销售、信用评价等商业活动中,经常需要判断哪些人的购买倾向更高一些,
哪些人的信用更好一些的问 题。这实际上是如何进行分类的问题。分类与聚类不同。聚
类没有根据经验进行学习的过程。而分类模型根据以往的经验 ,根据每个属性内的水平
与类之间的对应关系,构造出分类模型。
分类模型的方法有:决策树、遗传算法、贝叶斯等。
在本文中,只分成两类,这两类用购买者与非购买者来代表。购买者表示购买某产
品,非购买者表示不购买某产 品。
一、模型好坏评价的标准
预测结果的好坏也就是预测准确程度。本文以销售时的情况为例,假设结果分为两
类:购买者与非购买者。假设 在以往数据中购买者与非购买者的个数分别是 a、b。我们
利用某种模型在 a 个购买者中预测准确 a1 个人,不准确 a2 个人(或 者说 a2 个人被预
测成非购买者);在 b 个非购买者中预测准确 b1 个人,不准确 b2 个人(或者说 b2 个人
被预测成了购买者)。
很自然的想法是利用整体准确率来衡量:
L1=(a1+b1)/(a+b)×100% 指标一
指标一的缺点是,有时购买者的个数要远低于非购买者的个数,比如,假设在某个
人群中非购买者的比例占 98%, 如果采用这样的预测方法:对于任何一个人,都认为他
是非购买者,按照指标一,预测准确率可以达到 98%,属于很高的预 测精度。但这与商
家的目标不一致:商家希望根据以往的经验,根据每个人的属性特征,利用某种评价模
型,从某个人群 中挑出一部分人来,与没有应用该种模型相比,挑出来的这部分人比原
始人群具有很高的购买倾向。而利用指标一评价, 就属于一个人都没有挑出来。指标一
的根本缺点是没有注意到预测准一个购买者与预测准一个非购买者的重要程度是不一 样
的(在购买者与非购买者数量基本相等时两者的重要程度是一致的)。
而以下指标就可以有效的克服上述缺点:
L2=(a1/a+b1/b)×50% 指标二
可以利用指标二来判别模型的预测能力,将 L2 称为分类模型拟合优度系数。容易证
明,在一般情况下,模型拟合 优度系数在 与 1 之间。当 L2= 时,说明利用分类预
测模型并没有提高预测精度;而当 L2=1 时,说明分类模型将购买者 与非购买者完全区
分开了。
将指标二进行变换,可以得到:
L2=(a1/a+b1/b)×50%
=50%+(a1/a–b2/b)×50%
一般来说,a1/a–b2/b 显然大于 0。因为根据我们的目标利用模型挑选出来的人中,
购买者的比例与原始人群相 比有所提高,也就是:
a1/(a1+b2)>a/(a+b) (1)
其中,模型的左边是利用模型挑选出的人群中购买者所占的比重,模型的右边是原
始人群中购买者所占的比例。
将式(1)两边同乘以(a1+b2)×(a+b),经过整理可以得到:
a1/a>b2/b
同理,可以得到:
b1/b–a2/a>0,并且容易得到:
a1/a–b2/b = b1/b–a2/a (2)
本文将 a1/a–b2/b 或 b1/b–a2/a 称为模型的识别能力因子,识别能力因子越大,则模
型的挑选能力越高,越能够 符合商家的需要。容易得到,能力识别因子在 0 与 1 之间。
当能力识别因子等于 0 时,利用模型挑选出的人群中购买者占的比 例与原始人群相等,
模型没有起到应有的挑选能力的作用。而当模型识别能力因子等于 1 时,挑选出的人群
全部是购买者或 非购买者,也就是说将购买者与非购买者完全分开,当然这是一种理想
情形,实际上是不可能达到的。
二、评价模型
设有 m 个属性(比如性别、年龄、以往购买情况等),每个属性由一定的水平构成,
通过某种规则将每个属性的各 个水平赋予一定的值,设 Xki 表示第 j 个人的第 k 个属性
对应的水平,将该水平赋予一定的数值 Ukj (比如如果第 k 个属性是性别,如果第 j 个
人是男,那么属性对应的水平就是男性,根据购买倾向等可以将男性赋予一定的 数
值)。
对于第 j 个人,若 U1j+U2j+……+Umj>P,则判断第 j 个人属于购买 者,否则判断为
非购买者,U1j+U2j+……+Umj 称为第 j 个人的得分,P 称为临界值。
假设共有 m 个属性,假设第 i 个属性共有 ki 个水平,分别赋予一定的数值:U(i,
1),U(i,2),… …,U(i,ki)。如果当每个属性的水平以及临界值取以下值时:U*
(i,1),U*(i,2),……,U*(i, ki);P* 使模型评价标准取最大值,即
L2=max(a1/a+b1/b)×50%
=50%+max(a1/a–b2/b)×50%
或者使模型识别能力取最大值,即 max(a1/a–b2/b),则称 U*(i,1),U*(i,
2), ……,U*(i,ki);P*为模型的一个最优解。
三、赋植方法
利用统计的方法
假设属性 A 中的 j 水平有 t 比例的人属于购买者,则称 A 属性 j 水平对购买的隶属
程度为 t。将 t 值赋予 j 水平,依据同 样的方法,则可以得到每个属性各个水平的赋植。
利用 max L2=max(a1/a+b1/b)×50%或 max(a1/a–b2/b)求出 P 值。对于第 i 个人,
若 U1i+U2i+……+Umi>P,则判断此人为购买者,否则判断为非购买者。
可以求出属性 A 的重要程度=da/∑d。
其中,da=属性 A 中各水平赋值的标准差,∑d 表示所有属性水平标准差之和。
此种方法比较简单,经济意义也比较明显。但这种方法也有比较明显的缺陷:各个
属性(指标)之间不能有强的 相关性,没有考虑到属性之间的交互影响,得到的解有可
能不是最优解等。
利用不等式及定义对各水平进行比较精确的赋值
此种方法要求将每个属性的水平赋予合适的值,赋值的范围从-∞到+∞。规则是若第
i 个人 U1i+U2i+……+Umi>P
则判断此人为购买者,否则判断此人为非购买者。利用以下目标求出每个属性各个
水平以及 P 的值:
max L2=max(a1/a+b1/b)×50%或 max(a1/a–b2/b)
其中 max(a1/a+b1/b)与 max(a1/a–b2/b)是等价的。
为了提高算法的可行性,本文提出并证明以下两点结论:
(1)结论一
在一个属性中,给各个水平赋值,有意义的不是各个水平赋值的大小,而是要看各
个水平之间差距的大小。也就 是说,在一个属性中,给每个水平同时加上一个常数,不
改变分类结果。
可以证明以下结论:
假设 U*(i,1),U*(i,2),……,U*(i,ki); P*是分类模型的最优解,其中
i=1,2,……,m。则对每个属性各水平的以下赋值:U*(i,1) +ai,U*(i,2)
+ai,……,U*(i,ki)+ai ;P*+a1+a2+……+am,i=1,2,……,m 也是分类的一个最优
解,其中 a1,a2,……,am 是常数。
可以这样来证明:
对于任意第 j 个人根据第一种赋值方法即 U*(i,1),U*(i,2),……, U*(i,
ki);P*,其中 i=1,2,……,m 来判断是购买者(如果是非购买者结论也 是一样
的),则
U*1j+U*2j+……+U*mj> P*
那么采用赋值方法:U*(i,1)+ai,U*(i,2)+ai,……, U*(i,ki)+ai;P*+a1+a2+……
+am,i=1,2,……,m,因为不等式两边同时加上一个常数不改变不等号方向,所以同
样可以得到:
(U*1j+a1)+(U*2j+a2)+……+( U*mj+am)>P*+a1+a2+……+am
也就是说第二种赋值方法没有改变任何人的分类,所以若第一种赋值方法:U*(i,
1), U*(i,2),……,U*(i,ki);P*,其中 i=1,2,……,m 能够使 L2 达到最大,
L2=max(a1/a+b1/b)×50%,或使模型的识别能力达到最大:max(a1/a–b2/b),则第二
种赋值方法: U*(i,1)+ai,U*(i,2)+ai,……,U*(i, ki)+ai;
P*+a1+a2+……+am,i=1,2,……, m 也能够使 L2 或模型的识别能力达到最大。
所以说,若 U*(i,1),U*(i,2),……,U*(i,ki); P*,其中 i=1,
2,……,m 是分类模型的一个最优解;则第二种分类方法:U*(i,1) +ai,U*(i,2)
+ai,……,U*(i,ki)+ai ;P*+a1+a2+……+am,i=1,2,……,m,并且 a1,
a2,……,am 是常数 ,也是分类模型的一个最优解,第一个最优解与第二个最优解是
等价的。
利用第一个结论,可以令每个属性中的其中一个水平为零,这样做并不改变模型的
识别能力。在实际应用中,一 般可以令每个属性中购买倾向最小的水平赋予的值为 0,
因为在模型中,是大于临界值为购买者,因此,认为其它所有的水 平值都大于 0 是比较
合理的。
(2)、结论二
若 U*(i,1),U*(i,2),……,U*(i,ki); P*是分类模型的最优解,其中
i=1,2,……,m;则 aU*(i,1),aU*(i,2),… …,aU*(i,ki);aP*也是分类模
型的一个最优解,其中 a 是不等于 0 的常数。
可分两种情况来证明:
第一种情况,a>0
对于任意第 j 个人,假设根据第一种赋值方法:U*(i,1),U*(i,2),……, U*
(i,ki);P*,其中 i=1,2,……,m 判断为购买者,即,根据第一种赋值方法可 以得
到
U*1j+U*2j+……+U*mj> P*
因为不等式两边同时乘以一个正数,不等号方向不变。因此,有
aU*1j+aU*2j+……+aU*mj> aP*
也就是说利用第二种赋值方法对任何一个人的判断与第一种方法都相同。因此,若
第一种方法使模型的识别能力 达到最大,则第二种方法也同样使模型的识别能力达到最
大。所以说,若 U*(i,1),U*(i,2 ),……,U*(i,ki);P*,其中 i=1,
2,……,m 是分类模型的一个最优解,则 U*(i,2),……,aU*(i,ki);aP*,其
中 i=1,2,……,m 也是分 类模型的一个最优解。
第二种情况:a<0
对于 a<0 的情况,只需改变一下判断规则(大于或等于临界值时为非购买者,小于
临界值时为购买值),则利用 类似的方法,同样可以证明,若 U*(i,1),U*(i,
2),……,U*(i, ki);P*,其中 i=1,2,……,m 是分类模型的一个最优解,则 U*
(i,2),……, aU*(i,ki);aP*,其中 i=1,2,……,m 也是分类模型的一个最优
解。
一般情况下,可以限制 a>0,这样判别规则就不用改了。
因为在结论一中,已经将各个水平限制在大于等于 0 的范围内,并且每个属性中购
买倾向最小水平的赋值为零。因 此,一般来说,临界值必然大于 0。否则就会出现只要
出现某种水平,就预测为购买者的情况。因此,总可以在不等式的两 边同时乘以一个常
数,使临界值 P 为常数,这样并不改变模型的识别能力。
每个属性水平的取值可以限制在不超过 P 的范围内,否则会出现只要出现某个水平
的值,就必须判断为购买者的情 况。
可以取 P=10,令每个属性中购买倾向最小水平的赋值为 0,其它水平的值在 0 与 P
之间(这里 P 取 10),然后确定一 定的步长,利用叠代的方法求出最优解以及分类结
果。
四、案例分析
A 公司准备推出一款面向儿童的产品,采用的方式为一对一销售。A 公司购买了数
量很大的一批名址,这些名址包 含的属性有:孩子的性别、孩子的年龄、孩子的爱好、
孩子是否经常参加某种集体活动、父母的学历、父母的职业。营销 人员按照数据库中的
名址与顾客(儿童的父母)进行沟通,经过一段时间的实践,发现沟通成本极大,与很
多不可能购买 的人的接触浪费了太多的精力。A 公司希望能够更准确的找到潜在消费者。
在这里,就可以利用分类模型。
A 公司共接触了 2500 人,其中 372 人购买了产品,2128 人没有购买产品。我们采用
计算机随机抽样的方法,将 2500 人分成两组,每组 1250 人,每组购买者的比例基本一
样。我们用第一组数据来估计模型的参数,第二组数据用来检验模型 。以下分别用上面
提到的两种方法来求解分类模型。
1、利用统计的方法赋值
利用每个水平中购买者占的比重作为该水平的赋值。可以得到以下赋值结果:
属性 水平
孩子性别 男 女
赋值
孩子年龄 1-3 4- 6 7-9 10-12 13-14
15 岁及以
上
赋值
父母职业 第一类职业 第二类职业
赋值
父母学历
硕士及以
上
本科或大专 高中 初中
赋值
孩子爱好 无 第一类爱好 第二类兴爱好
赋值
孩子是否经常参加集体
活动
否 是
赋值
按照以上赋值方法,可以得到每个人的得分在 与 之间。
为了找到最合适的临界值,从而使 L2=(a1/a+b1/b)×50%或 a1/a–b2/b 的值最大。
可以在 与 之间计算 出在不同的 P 值下,模型拟合优度 L2=(a1/a+b1/b)×50%
与模型识别能力 a1/a–b2/b 的值。可以得到下图:
从图中可以看出,在 P*= 时,模型拟合优度与模型识别能力同时达到最大。模
型拟合优度 L2=,模型识别能力=,因此,取临界值 P*=。按照以上赋值方
法,当某个人得分大 于 时,就判断该人为潜在购买者;而当得分小于或等于
时,就判断该人为非潜在购买者。
可以求出,a1/(a1+b2)=37%,也就是说在利用上述分类模型选出的人中,将来可
能会有 37%的人购买产品,与不 利用模型时相比(%),精确度有了很大的提高。
但是,也有一部分购买者被误判为非购买者,从而损失了一部分市场,这部分人占
全部可能购买者的比例为: a2/a=33%,这属于利用模型获得高精确度的代价。
可以求出各个属性对于判别是否是购买者的归一化重要程度:
孩子
性别
孩子
年龄
父母
职业
父母
学历
孩子
爱好
孩子是否经
常参加集体
活动
归一化 的重要程
度
% % % % % %
利用得到的 模型在第二组数据中进行预测,可以得到:
L2=(a1/a+b1/b)×50%=,
a1/a–b2/b=
因此,第一种方法得到的模型预测能力还是比较好的,可以用来预测。
2、利用不等式及定义对各水平进行比较精确的赋值
利用第二种方法,可以得到各水平比较精确的赋值。
令临界值 P*=10,每个属性购买倾向最小的水平赋值为 0。利用叠代的方法,可以得
到最优解时的赋值 。
属性 水 平
孩子性别 男 女
赋值 0
孩子年龄 1-3 4-6 7-9 10-12 13-14 15 岁及以上
赋值 0
父母职业 第一类职业 第二类职业
赋值 0
父母学历 硕士及以上 本科或大专 高中 初中
赋值 0
孩子 爱好 无 第一类爱好 第二类兴爱好
赋值 0
孩子是否经
常
参加集体活
动
否 是
赋值 0
按照以上赋值,当某个人的得分大于 10 时,就判断为购买者,当得分小于 或等于 10
时,就判断为非购买者。
模型拟合优度 L2=,模型识别能力=,与第一种方法略好一些。但预测能力
略差一些。利用得到的模型, 在第二组数据中进行预测,结果为:
L2=(a1/a+b1/b)×50%=
a1/a–b2/b=
不如第一种方法的预测。因此,利用第一种比较简单的方法基本可以满足一般的分
类要求(但第一种方法在选属 性时要注意属性之间不能有强的相关性)。
2022 年 12 月 19 日星期一 23:08:07
:0823:08: 时 8 分 11 时 8 分
7 秒 Dec. 19, 2219 December 202211:08:07 PM23:08:07