登录
首页精彩阅读聊一聊特征学习在用户偏好预测中的应用
聊一聊特征学习在用户偏好预测中的应用
2017-03-02
收藏


本文聊聊如何利用客户购买行为预测其偏好


为了基于客户购买行为预测其偏好,可以利用机器学习中比较新兴的稀疏编码和稀疏限制性玻尔兹曼机将原始数据变换成稀疏高纬表示。这些特征学习技巧独立于预测模型,比如 logit model ,并且可以使得偏好预测的准确率得以提升。

提取到的特征一般是比较抽象的,通常具有一定的解释性,但也不是所有的特征都具有较好的解释性意义。特征学习并不是简单的寻找新数据,所学特征本质上是原始数据的函数。给定偏好预测模型,比如 logit 模型或支持向量机,经过特征学习之后会比在原始数据中直接利用偏好预测模型取得更好的效果,预测准确率会有较大程度的提升。

特征学习方不需要领域知识,可以用于多种类型的数据。特征学习在很多领域都取得较好的效果,比如图像分类,语音识别,信息检索,自然语言处理等。

特征学习方法能够捕捉原始数据中的隐含因子,这些隐含因子可以通过对原始数据进行编码得到。通常的做法如下,将原始数据映射到高维特征空间中,其维度高于原始数据所在空间,然后引入稀疏性限制或稀疏性约束因子,进而使得原数据可以由高维空间中部分因子来表示。这里的映射和新特征空间中的表示都是由最小化某种描述重构误差的目标函数来决定的,重构误差是指原始变量和新特征表示之间的误差,其中还包含了对特征激活施加的稀疏性约束或惩罚项。

其中一种方法是稀疏编码,这种方法跟主成分分析类似,因为它将原数据嵌入到新的基中。跟主成分分析不同之处在于,只有从特征表示到原始数据的解码是线性的,编码过程基于线性重构误差和 L1 范数的稀疏惩罚项,这种做法可以保证系数是实值,并且具有稀疏性。由于基向量不再正交,稀疏编码可以用来学习完备的基集合,其中基的个数多于原空间的维度。基完备的优势在于可以有效地捕捉数据中潜在的统计分布,编码效率更高。

一般情况下,稀疏编码的数学表示如下:


其中x表示原空间中的向量,b 是新空间中的向量,h 是系数,β 是稀疏性系数。

如果原空间中包含了高斯分布的变量,如年龄,二项分布的变量,如性别,类别变量,如区域。则稀疏编码的数学表示如下:


稀疏编码的优化算法可以利用共轭梯度法和投影梯度搜索法。

第二种方法是稀疏限制性玻尔兹曼机。它是一般玻尔兹曼机的一种特殊情形,玻尔兹曼机是一种无向图模型,其中状态空间关联的能量表示该状态中找到系统的概率。限制性玻尔兹曼机中,每个状态由显式节点和隐式节点共同决定,每个节点都对应一个随机变量。隐含节点取值随机并且是二值的,这种节点可以增加系统模型的表示能力,并且可以看作捕捉高维表示的特征。这里的限制性是指没有显式节点内部的连接,也没有隐式节点内部的连接。

限制性玻尔兹曼机的某个状态所对应的概率如下:


针对实数取值的变量,其能量函数如下:


二项分布的变量,其能量函数如下:


类别随机变量,其能量函数如下:


单个隐层节点的条件密度如下:


给定一个输入,隐含层表示如下:


由于限制性,即层内之间没有连接,则


为训练限制性玻尔兹曼机,可以利用梯度下降法来训练。梯度如下:


最后来介绍下整体流程。


首先将数据集分割成训练集,验证集和测试集,然后在训练集上编码和学习特征,进而利用偏好模型加以预测,在验证集合中验证效果,最后在测试集中查看效果。
这里的预测模型包含L1 and L2 logit 模型,朴素贝叶斯,L1 and L2 线性和核化的支持向量机,以及随机森林等。

实验结果如下


实验结果表明利用稀疏编码或稀释限制性玻尔兹曼机提取特征,可以提高预测精度。其中数据集是机车购买数据,整合了 Maritz 汽车购买调查(Maritz Research Inc., 2007. Maritz Research 2006 new vehicle customer satisfactions survey. Information online at: http://www.maritz.com.),Chrome 汽车规格数据库(Chrome Systems Inc., 2008. Chrome New Vehicle Database. Information inline at: http://www. chrome.com.), 美国人口调查局的收入和消费数据(United States Census Bureau, 2006. 2006 U.S. Census estimates. Information online at: http://www.census. gov.)。


作者    Frank
本文为 CDA 志愿者Frank原创作品,转载需授权


数据分析咨询请扫描二维码

客服在线
立即咨询