from: 七月在线

电商推荐与销量预测相关案例

一、预测用户对哪个事件感兴趣(感兴趣不一定去参加)

用户历史参加事件、社交信息、浏览信息(app)、要预测的事件

recall:召回率

准确率:

协同过滤不考虑卖/买的东西是什么,只关心历史数据中哪两个用户的兴趣度一样。(1-2)

(2,3 -> 3)(视作分类模型:LR/SVM/GBDT/DNN/RF,除了预测感兴趣与不感兴趣,还想知道感兴趣的程度--概率)svm也会输出概率,但是用的不多。

二、代码

1. import pickle (py3)内存不足的时候,可以保持原来的数据结构,Load到本地,是二进制的。Load很快,如果原来是字典,load内存后仍然是字典;如果原来是数组,load内存后仍然是数组。  (py2 import cPickle)

2. 处理关联数据:只处理有共同行为的关联信息

1)计算关联用户:

历史信息:计算cosine相似度

注册时的个人信息:计算cosine相似度

相似度可使用属性:位置、时区、注册时间(可能是小伙伴邀请注册)、国家id、性别等(在数据处理时全部转换成数值)用户维度处理信息

2)用户社交关系挖掘

朋友数量,朋友中每个朋友参加活动的频次

3)构造event和event相似度数据

4)活跃度/event热度 数据

处理上述特征的时候,归一化处理

5)组合上述数据,训练

mmwrite/mmread 处理时先存到本地,然后训练时,读取到内存。可以节省内存

协同过滤:ABCD有相似度,根据BCD的喜欢的东西,对A推荐东西,并给出推荐度。

便利店销量预测

1. 希望做的事情,提前六周知道未来的销量。但是每个国家的节日不同,销量不同。

2. 修改xgboost的loss函数(因为该竞赛的loss不是常用的loss,xgboost里没有该loss)

需要知道loss的一阶导数(grad)与二阶导数(hess)

2.  除了训练时修改了xgboost的导数,还要定义对应的loss,在训练时把loss作为参数传进去。

3. 与时间有很紧密的联系:促销、药店(流感期)

4. xgboost可以显示特征重要性

5. lightgbm比xgboost快一些

6. 交叉验证训练数据

数据与特征决定上限,模型只是逼近上限

对最终结果,数据与特征更重要一些

推荐系统相关比赛-kaggle的更多相关文章

  1. 各类人工智能&大数据相关比赛

    比赛技巧:https://zhuanlan.zhihu.com/p/28084438 文章来源: https://www.imooc.com/article/72863 随着近几年人工智能和大数据的快 ...

  2. 推荐系统相关算法:SVD

    假如要预测Zero君对一部电影M的评分,而手上只有Zero君对若干部电影的评分和风炎君对若干部电影的评分(包含M的评分).那么能预测出Zero君对M的评分吗?答案显然是能.最简单的方法就是直接将预测分 ...

  3. 推荐系统相关算法(1):SVD

    假如要预测Zero君对一部电影M的评分,而手上只有Zero君对若干部电影的评分和风炎君对若干部电影的评分(包含M的评分).那么能预测出Zero君对M的评分吗?答案显然是能.最简单的方法就是直接将预测分 ...

  4. 数据挖掘比赛----Kaggle实战

    http://www.cnblogs.com/kobedeshow/p/4118361.html

  5. 使用SVD方法实现电影推荐系统

    http://blog.csdn.net/zhaoxinfan/article/details/8821419 这学期选了一门名叫<web智能与社会计算>的课,老师最后偷懒,最后的课程pr ...

  6. 使用矩阵分解(SVD)实现推荐系统

    http://ling0322.info/2013/05/07/recommander-system.html 这个学期Web智能与社会计算的大作业就是完成一个推荐系统参加百度电影推荐算法大赛,成绩按 ...

  7. kaggle——Bag of Words Meets Bags of Popcorn(IMDB电影评论情感分类实践)

    kaggle链接:https://www.kaggle.com/c/word2vec-nlp-tutorial/overview 简介:给出 50,000 IMDB movie reviews,进行0 ...

  8. 新闻推荐系统:基于内容的推荐算法(Recommender System:Content-based Recommendation)

    https://blog.csdn.net/qq_32690999/article/details/77434381 因为开发了一个新闻推荐系统的模块,在推荐算法这一块涉及到了基于内容的推荐算法(Co ...

  9. 大数据入门第十九天——推荐系统与mahout(一)入门与概述

    一.推荐系统概述 为了解决信息过载和用户无明确需求的问题,找到用户感兴趣的物品,才有了个性化推荐系统.其实,解决信息过载的问题,代表性的解决方案是分类目录和搜索引擎,如hao123,电商首页的分类目录 ...

随机推荐

  1. Android数据存储之IO

    Android开发中免不了数据本地的存储,今天我们来说一说怎样利用IO流来进行数据存储. 这里我们通过模拟一个QQ登陆界面的小demo来实际操作IO流. 功能描写叙述:点击button能够保存用户输入 ...

  2. luogu1641 [SDOI2010]生成字符串

    题目大意 把$n$个$1$和$m$个$0$组成字符串,在任意的前$k$个字符中,$1$的个数不能少于$0$的个数.求这样的字符串的个数.$1\leq m\leq n\leq 1000000$. 原始模 ...

  3. Solution:Cannot pull with rebase: You have unstaged changes in Github

    You can do this to work around using following steps 1. stash your changes with: git stash 2. pull f ...

  4. 使用JDBC处理MySQL大文本和大数据

    LOB,Large Objects,是一种用于存储大对象的数据类型,一般LOB又分为BLOB与CLOB.BLOB通常用于存储二进制数据,比如图片.音频.视频等.CLOB通常用于存储大文本,比如小说. ...

  5. opensStack

  6. 开启和安装Kubernetes 基于Docker For Windows

    0.最近发现,Docker For Windows Stable在Enable Kubernetes这个问题上是有Bug的,建议切换到Edge版本,并且采用下文AliyunContainerServi ...

  7. 机器学习——Day 3 多元线性回归

    写在开头 由于某些原因开始了机器学习,为了更好的理解和深入的思考(记录)所以开始写博客. 学习教程来源于github的Avik-Jain的100-Days-Of-MLCode 英文版:https:// ...

  8. JavaScript--控制类名(className 属性)

    className 属性设置或返回元素的class 属性. 语法: object.className = classname 作用: 1.获取元素的class 属性 2. 为网页内的某个元素指定一个c ...

  9. HDU 1847 博弈

    sg[0]=0; sg[i]=mex{sg[i-2^(j)]}  (i>=2^j) mex()为不在此集合的最小非负整数 #include <stdio.h> #include &l ...

  10. ACM_尿裤子

    Problem Description: 小X上课的时候喝了一大壶水,午饭后他极限跑回宿舍上厕所,结果发现不知道哪个逗比舍友在宿舍门上加了一把4位密码锁,然后还留了纸条:密码是6666,小X只能一个一 ...