关于2015阿里移动推荐算法大赛的总结(三)——机器学习

本文是关于2015阿里移动推荐算法大赛的第三部分,重点讨论机器学习的应用。作者尝试用机器学习预测用户购买行为,将问题转化为二分类任务,通过特征向量构建训练集和测试集。尽管最终只使用了LR模型,但在数据预处理、特征选择和模型训练中收获颇丰,认识到特征向量的重要性。

关于2015阿里移动推荐算法大赛的总结(一)
关于2015阿里移动推荐算法大赛的总结(二)——推荐算法
关于2015阿里移动推荐算法大赛的总结(三)——机器学习

后来我们回归到正途上,虽然我们也想用深度学习的方法,但是毕竟还是菜鸟的水平,所以把目标定在能用机器学习跑通一遍,顺带熟悉一下各种机器学习算法的实际应用。但是最后的最后我们只用了LR,然后就受打击了。哈哈~


想用机器学习的方法,那么思路其实也很明确,问题是那一天用户是买还是不买,那么可以看成是二分法。通过用户行为方式来判断是否会购买。就是把用户行为等抽象成特征向量得到训练集,扔进机器学习算法训练出一个模型,然后用测试集预测出结果。虽然机器学习的算法有不少,而且需要不断的调整参数和优化,但是我认为特征向量的选取才是最关键的,很显然我们到最后也没搞好~~~

下面详细整理总结一下~~~
首先,肯定要进行数据预处理,去除噪声数据(如非正常流量,爬虫或者机器行为产生的数据),数据时间刚好是双11刚过,双12在其中,所以也应该考虑到购物节对用户购买行为的影响。

关于特征向量的选取,我用了下面这种主观上可以接受的想法~
数据集是一个月的用户行为,那么我直接把数据分成4周,用前3周作为训练集,最后1周作为测试集。用每周过后的1~2天的购买行为当作标签,给这一周的行为统计向量打标签。

进行训练的时候大体思想如下:

统计表:

用户-商品浏览收藏加购物车购买最终是否购买(标注)
user1-item141111
user2-item141110
user3-item441111
user2-item170110
user7-item810101

输入表:

标签特征1(浏览)特征2(收藏)特征3(加购)特征4(购买)
14111
04111
14111
07011
11010

训练完模型内部可能:

特征1(浏览)特征2(收藏)特征3(加购)特征4(购买)会输出结果
41111
70110
10101

进行预测的时候大体思想如下:

统计表:

用户-商品浏览收藏加购物车购买
user10-item414111
user12-item514111
user13-item244111
user12-item717011
user17-item981010

输入表:

浏览收藏加购物车购买
4111
4111
4111
7011
1010

输出表:

浏览收藏加购物车购买输出结果
41111
41111
41111
70110
10101

然后我们寻找预测为购买的特征对应的用户-商品对。

输出表:

浏览收藏加购物车购买输出结果
4111user10-item41
4111user12-item51
4111user13-item24
1010user17-item98

注意点:
(1)在选取样本集的时候可以是多段累加数据。
(2)后期可以对不同的类型的物品建立不同的训练模型,比如电影票饭票一个模型,淘宝物品一个模型,因为不同类别购买行为规律不同。根据类别分类,分别输入进不同模型输出。
(3)根据地理位置用一个简单的推荐算法进行加权融合。
(4)考虑行为中的时间因素,如在一个周期对某商品内浏览4次,在第一天浏览4次和最后一天浏览4次购买的可能性也不同。就是引入时间对行为加权,可能本来浏览4次,最后加权出来浏览是2.33次。最后使用的是总结(二)里的遗忘曲线加权的。


结果很不尽人意,甚至不如直接取最后一天加购物车当作第二天会购买的用户商品对的评分高。但是起码这个从头到尾跑了一遍,在这个过程中,学到了好多,如思考模型算法,学习使用Python,对数据的划分处理以及对机器学习的使用调参。希望自己不断的在进步,不要求自己有多牛,但要比之前的自己牛~哈哈

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值