一、USG模型引入:
首先了解一下,如何通过大数据来确定用户的真实性别,
经常谈论的用户精细化运营,到底是什么?
简单来讲,就是将网站的每个用户标签化,制作一个属于用户自己的网络身份证。然后,运营人员
通过身份证来确定活动的投放人群,圈定人群范围,更为精准的用户培养和管理。
当然,身份证最基本的信息就是姓名,年龄和性别,与现实不同的是,网络上用户填写的资料不一
定完全准确,还需要进行进一步的确认和评估。
确定性别这件事很重要,简单举个栗子,比如店铺想推荐新品的Bra,如果粗糙的
全部投放人群或者投放到不准确性别的人群,那后果可想而知了。
虽然能够通过用户的行为、购买和兴趣数据,了解用户的基本信息,但是仍然不清楚如何建
模?用什么语言建模?
购物性别的区分使用的是机器学习分类算法模型,但是算法也有很多分类,包含逻辑
回归,线性支持向量机,朴素贝叶斯模型和决策树,又该如何选择呢?
使用大数据 Spark MLlib 机器学习库, Java、Scala和Python 三种语言都支持。
其中,决策树的优点较多,主要是其变量处理灵活,不要求相互独立。可处理大维度的数
据,不用预先对模型的特征有所了解。对于表达复杂的非线性模式和特征的相互关系,模型相
对容易理解和解释,所以决定用决策树进行尝试。
核心难点:如何构建树,有三种方式
-
"ID3 算法:信息增益Info_Gain
-
C4.5 算法:信息增量率(比):lnfo Gain Rate
-
CART 算法:Classification And Regression Tree,基尼指数(Gini_Index)
建立在决策树算法之上: 集成融合学习算法 ,效果非常非常好的
-
GBT:梯度提升树算法,构建1棵树,迭代构建的树
-
RF:随机森林,构建N棵树,每个棵树不同,使用所有树预测,综合获取结果
USG:用户购物性别:
1.定义:通过用户购买的产品,确定用户的性别
2.思路:依据商品的名称、商品的颜色和商品的类别等,判断购买者的性别
如何确定USG?
基于用户购买商品确定性别的
用户在购物时,每个商品都有自己的属性,比如名称、颜色、类别等等,往往属于某个性别的用户
a.商品名称
剃须刀 male
口红 female
家用电器 male、female
b.商品颜色
衣服红色/亮色衣服 female
格子衫(黑灰色、杂色) male
中性颜色 male、female
c.商品类别
电子数码产品 male
美容保养 female
U_1001 product_01 male
U_1001 product_02 female
U_1001 product_03 male
U_1001 product_4 male
U_1001 product_05 female
U_1001 product_06 male
基于上面用户购买的物品,打上商品购买的性别,进行计算,最终确定用户购物性别
统计购物商品的个数
total =6
统计购物中男性商品个数
maletotal = 4
占比: maleRate = 4 /6 ≈ 0.666666666
统计购物中女性商品个数
femaletotal = 2
占比: femaleRate = 2/ 6 ≈ 0.333333333333
判断男性商品占比和女商品占比 if(maleRate >=0.6)时,USG = male if(femaleRate >=0.6)时,USG = female
else:USG = 末知
=========上述计算出用户购物性别USG,为什么还需要算法构建模型预测呢?=============
依据上述计算数据,构建分类算法模型以后,直接使用算法模型对用户进行预