2019/12/09
《No.8: p66-p75》《增强型分析-AI驱动的
数据分析、业务决策与案例实践》读书笔记
第3章 预测模型的新技术
3.6 让模型在训练结束后还能被更新
模型训练后还可更新的技术: 热启动(Warm start)、增量学习(Incremental Learning)
3.6.1 热启动
1.定义: 建模过程中,不是从零开始,而是利用之前的模型结果作为本次建模的初始值。
2.多用于「回归类」算法、「决策树」类算法、「集成学习算法」。
3.6.2 增量学习
1.定义: 可以持续不断地读取训练数据,进而不断更新模型的
机器学习算法。
2.优点: 节省空间;训练时间短。
3.常用于大规模数据或流式数据
4.有时增量学习又称为「在线(on-line)学习」
5.增量学习与机器学习,算法不同,设计算法时就要以「小批量(mini-batch)」方式进行。
6.scikit-learn算法库支持增量学习的算法,包括「朴素贝叶斯」、「SGD分类算法」、「小批量Kmeans
」、「增量PCA」等。
3.7 多输出预测
定义: 预测模型的输出多于一个目标值时。
3.7.1 Binary Relevance
定义: 用同一个自变量x来预测每一个Y列。scikit-learn算法库提供了MultiOutputClassifier可实现此功能。
3.7.2 Classifier Chain
1.Binary Relevance: 并行进行模型预测,目标值之间没有关系;Classifier Chain,则是串行进行预测,目标值之间可能存在关系。
2.Classifier Chain,目标值之间有关系,前一个目标值会是下一个目标值的输入项,这样可提升预测精度。(这是Classifier Chain最重要的特点)
3. scikit-learn算法库提供了Classifier Chain工具可实现此功能。
4.缺点: 若前一目标值有错误,会造成”错误传播”,而影响预测效果。
3.7.3 Ensemble Classifier Chain
1.Ensemble Classifier Chain的实现过程是随机生成多个Chain,然后再分别进行训练而预测结果是通过”软投票”来决定。这可已解决”错误传播”的问题。
3.8 如何给客户从数百个产品中找到合适的产品
3.8.1 问题提出: 如,是否构建很多产品的响应模型;如何确定营销时机;如何定价;如何满足预算与收益;如何评估效果;如何量化客户体验等。
3.8.2 建模思路
客户需求分析:
1)表现在行为上: 客户行为序列的分析
2)表现在行为的结果上: 产品响应预测产生推荐
3.8.3 模型训练与运用
作者用银行理财客户的数据,展示了简单的产品响应建模过程,调用Multioutput-multiclass的相关组件来建模,采用Binary Relevance方法来实现多目标的预测。