用户行为数据分析--机器学习 | 青训营笔记

410 阅读5分钟

这是我参与「第四届青训营 」笔记创作活动的第14天

机器学习概览

1.为什么要机器学习

  1. 人工智能时代已经到来:个性化推荐、机器翻译、人脸识别......
  2. 大数据成为热议的内容:数据多、产生快、形式杂、组织乱
  3. 解决实际的业务决策问题:数据价值

2.什么是机器学习

Machine Learning is the field of study that gives computers the ability to learn without being explicitlyprogrammed. -- Arthur Samuel,1959

  • 机器学习就是把无序的数据转换为有用的信息
  • 从数据中自动分析获得模型,并利用模型对未知数据进行预测

Snipaste_2022-08-14_15-54-08.jpg

3.机器学习的算法

机器学习有非常多的种类及相应的算法,主要可以分成三大类:

  • 监督/非监督学习--取决于训练是否需要人类的监督
  • 批量/在线学习--取决于系统是否能持续地从数据流中学习并更新
  • 基于实例模型学习--取决于系统是直接把新数据与旧数据比较,还是通过建模来预测

4.机器学习面临的挑战

在机器学习中,面临的挑战主要来自两大模块:糟糕的算法和糟糕的数据。

  • 算法的问题主要有以下两种:
    • 过拟合(Overfitting)
    • 欠拟合(Underfitting)
  • 数据的问题具体表现为:
    • 训练数据太少
    • 训练数据不具备代表性
    • 数据本身质量很差
    • 选取的特征没有相关性 在大数据场景下,对资源的要求非常高,比如存储和算力。

特征工程

1.什么是特征工程

Snipaste_2022-08-14_15-57-20.jpg

  • 定义:特征工程是将原始数据转化成更好的表达问题本质的特征的过程。
  • 意义:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。

创造新的特征是一件非常困难的事情,需要丰富的专业知识和大量的时间。 机器学习的本质本质就是特征工程。 -- Andrew Ng

2.特征工程处理流程

Snipaste_2022-08-14_15-59-09.jpg

Snipaste_2022-08-14_16-00-35.jpg

3.Embedding

什么是Embedding

Snipaste_2022-08-14_16-01-32.jpg

  • Embedding,即嵌入,起先源自于NLP领域,称为「词嵌入(word embedding) 」,主要是利用背景信息构建词汇的分布式表示,最终可以得到一种词的向量化表达,即用一个抽象的稠密向量来表征一个词。
  • 直观上看embedding相当于是对oneHot做了平滑,而oneHot相当于是对embedding 做了maxpooling。

Embedding产生过程

Snipaste_2022-08-14_16-02-52.jpg

Snipaste_2022-08-14_16-03-00.jpg

Embedding作用

  • 解决维度灾难,降低复杂度。
  • 解决稀疏容易造成的梯度消失的问题
  • 增加语义信息,能够很好地挖掘嵌入实体间的内部关联

Embedding应用场景

  • 在深度学习网络中作为Embedding层
  • 作为预训练的Embedding特征向量
  • Embedding 可以直接作为推荐系统或计算广告系统的召回层或者召回方法之一

聚类算法

什么是聚类

聚类算法是一种无监督的机器学习算法。在给定的数据集中,我们可以通过聚类算法将具有相似特征的数据分成一组,不相似特征的数据分成不同组。

常用聚类特征

  • 人口属性:性别、年龄、地域等等
  • 常用指标:活跃度、时长、消费次数等等
  • 消费偏好:用户使用不同功能的时长占比、点击占比,每天进入该app的启动方式等等

聚类算法分类

Snipaste_2022-08-14_16-09-49.jpg

应用场景

  • 指标波动场景
  • 精细化运营
  • PMF (Product-Market Fit)

K-means

算法步骤

  1. 首先,我们确定要聚类的数量,并随机初始化它们各自的中心点。
  2. 通过计算当前点与每个簇中心之间的距离,将每个数据点归到与之距离最近的中心的簇中。
  3. 基于迭代后的结果,计算每一簇内,所有点的平均值,作为新簇中心。
  4. 迭代重复这些步骤,或者直到簇中心在迭代之间变化不大。

Snipaste_2022-08-14_16-13-51.jpg

Snipaste_2022-08-14_16-12-28.jpg

聚类画像分析

一个基于聚类的用户画像分析工具,以对用户群体进行标注及定位

  • 洞察群体用户在站内的消费、投稿内容生态情况
  • 研究用户与内容的关系和演变,理解业务增长的变化,制定用户与内容的增长策略。

流程

Snipaste_2022-08-14_16-15-30.jpg

样本选定

Snipaste_2022-08-14_16-17-09.jpg

向量获取

选择Embedding作为聚类算法特征的依据:

  • 具有用户行为的语义特征,能学习到用户行为数据之间的关联
  • 离线分析用到线上推荐特征,可作为线上推荐效果的debug工具,反映其效果好坏

聚类算法

Snipaste_2022-08-14_16-18-23.jpg 选择K-means算法作为分群的依据:

  • 用户推荐向量满足凸优化函数求解问题
  • 算法的复杂度、数据量、以及机器资源的trade-off
  • 可理解性和算法稳定性

cluster level可视化分析

核心指标层面可分为:

  • 定性指标:从内容角度理解cluster人群偏好的兴趣,比如Top播放视频、Top收藏视频、投稿的随机抽样、词云、头像等
  • 定量指标:从数量角度理解cluster人群的具体表现,优劣情况比如年龄/性别/操作系统的数量分布,视频播放次数、视频完播次数、分享/评论/点赞/收藏率、活跃天数留存率等

Snipaste_2022-08-14_16-20-15.jpg

应用场景

  • 用户群体的兴趣偏好,帮助理解站内人群的结构
  • 内容消费情况,帮助理解哪些内容更受欢迎
  • 发现核心群体,基于其喜欢的内容,制定增长策略