目录
一、背景
1.对内
2.对外
二、模型构建过程
1.模型设计
2.特征工程
① 数据清洗
② 特征提取
数值型数据
标签/描述类数据特征
非结构化数据(处理文本特征)
网络关系型数据
③ 特征选择
④ 训练集/测试集
一、背景
虽然产品经理不需要参与到模型构建工作中,但是我们需要对模型构建过程有一定的了解,有点两点好处:
1.对内
配合算法同学进行数据收集、模型训练、参数调优,及时跟进项目优化,应对突发状况。
2.对外
如果模型训练过程中出现问题,我们能够使用非技术性的话语向业务方解释,帮算法同学争取更多的时间。
二、模型构建过程
模型构建主要包括以下五个部分:
模型设计、特征工程、模型训练、模型验证、模型融合、模型部署,接下来我们对于以下概念依次讲解。
1.模型设计
模型设计时我们需要确认以下几个问题:
① 有没有必要建立这个模型?
② 我们当前的技术和资源能不能做这个模型?(数据源够不够、样本怎么获取、目标变量怎么设定)
③ 我们需要达到怎么样的预期结果?
不同的需求决定了模型的应用场景,决定了它能够达到的业务预期。
2.特征工程
特征工程的概念是:将其他类型的数据转化成数量化信息以供模型训练。
特征工程是模型构建过程中耗时最长的一项工作,为什么特征工程耗时最长呢?
我们知道模型训练就是从数据中提取特征,然后根据特征使用算法来建立出对于未知数据进行预测的模型。算法逼近特征,而特征决定模型的上限。
特征工程里面又细分了其他工作模块:
数据清洗、特征提取、特征选择、训练集/测试集。
① 数据清洗
我们提供的数据并不是可以直接使用的数据,因为可能会存在异常数据、不均衡数据、数据残缺、量纲不一致等问题。
此时我们需要对残缺数据进行补全;对于干扰数据进行删除;对于异常数据进行标注;对于不均衡数据:丢弃较多的数据或者补充较少的数据;对于量纲(单位)不一致的数据进行归一化处理。
② 特征提取
特征提取通常有四种常见类型:数值型特征数据,标签或描述类数据,非结构化数据,网络关系型数据。
-
数值型数据
包含大量数值特征的数据。使用数值数据时,我们需要分两部分:主体变量特征和度量维度特征。比如京东的浏览页面次数是主体特征数据,浏览时长和浏览次数排名就是其他度量维度特征。
-
标签/描述类数据特征
有些特征没有大小关系,无法使用数值表示,我们称为标签/描述类数据。比如:好瓜、坏瓜。这种就是标签/描述类数据,我们可以将好瓜标记为[0,1],将坏瓜标记为[1,0]。
-
非结构化数据(处理文本特征)
非结构化数据通常出现在UGC(User Generated Content)用户生成内容。比如用户的评论信息。现在我们需要使用用户的评论信息进行特征提取,这里需要使用到自然语言处理的方法。比如:买了一箱,孩子很喜欢。我们筛选出“孩子”,就可以知道这是一位亲子用户。
简而言之,非结构化数据(文本特征数据),我们就是进行文本清洗和挖掘,挖掘出一定的用户特征。
-
网络关系型数据
网络关系型数据就是通过数据信息获得用户的社交关系。比如我们可以通过同一公司地址基本确定两者是同事关系。我们可以通过用户同一家庭地址基本确定两者的亲人关系。
通常来说:算法工程师可以通过通讯录、收货地址、位置信息、好友助力等信息确定用户的关系网络,这个关系网络中的信息就可以作为我们特征提取的参考。
③ 特征选择
第一步:跟进特征覆盖率、IV指标(信息的价值量)进行筛选。
IV:判断哪些特征进入模型,这个特征重不重要就使用IV指标。IV值就是用来衡量变量预测能力的,IV值越大,表示该变量的预测能力越强。
第二步:根据业务需求设定阈值,筛选掉一部分数据。
第三步:根据特征的稳定性筛选数据。
IV指标详解:机器学习-变量筛选之IV值和WOE - 知乎 (zhihu.com)
④ 训练集/测试集
做完以上的工作我们就开始划分训练集和测试集了,我们通常将样本60%数据作为训练集,20%作为验证集,剩余20%用于测试集,三者数据相互独立。
训练集用于训练模型,验证集用于对训练后的模型进行验证微调,测试集用于对训练和验证后的数据进行测试,评估模型是否达到业务指标。
在模型构建过程中,因为很多因素的不确定性,导致会出现很多计划外的工作,所以你需要充分的了解模型构建流程为算法同学争取更多的时间和资源。
参考文献:刘海丰——《成为AI产品经理》