第5章 使用Spark 2.0实践机器学习中的回归和分类——第一部分
在这一章中,我们将讨论以下内容:
- 使用传统的方式拟合一条线性回归直线;
- Spark 2.0中的广义线性回归;
- Spark 2.0中Lasso和L-BFGS的线性回归API;
- Spark 2.0中Lasso和自动优化选择的线性回归API;
- Spark 2.0中岭回归和自动优化选择的线性回归API;
- Spark 2.0中的保序回归;
- Spark 2.0中的多层感知机分类器;
- Spark 2.0中的一对多分类器;
- Spark 2.0中的生存回归——参数化的加速失效时间模型。
5.1 引言
本章和下一章将重点介绍Spark 2.0 ML和MLlib库中有关回归和分类的基础技术。Spark 2.0已经表明下一阶段的新方向:(1)将基于RDD的回归算法(参见第6章)变更为维护模式;(2)继续推进线性回归和广义回归的演变。
在高层次上,新设计的API更倾向于Elastic网络的参数化,即动态生成岭回归、Lasso回归以及介于这两者之间的其他模型,而不是对API重新命名(如LassoWithSGD)。新API的设计更加简洁,能驱动开发者学习Elastic网络及其功能,但是开发者需要知道特征工程仍是数据科学中的一种艺术。本章会提供足够多的示例、算法和注释,指导开发者完成复杂的技术。
图5-1描述了本章中的回归和分类范围。
图5-1
首先,你将学习如何从零开始使用Scala代码和RDD编程实现代数方程的线性回归,深刻理解数学以及为什么需要采用迭代优化方法估计大型回归系统的解。其次,探索广义线性模型(GLM)及其各种统计分布族和链接函数,但是需要注意在当前实现中存在4096个最大参数数目的限制。最后,研究使用线性回归模型(LRM)以及如何使用Elastic网络参数化混合以及匹配L1和L2惩罚函数,实现逻辑回归、岭回归、Lasso回归以及它们之间的所有其他算法。我们还要学习如何处理优化器方法,以及在使用L-BFGS优化、自动优化器选择时如何设置参数。 ...
Get Spark机器学习实战 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.