Python 数据挖掘与机器学习实战 (72):回归分析介 3.6.3

阅读数:1 2020 年 1 月 11 日 17:04

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

(梯度下降法求解最小值)

内容简介
本书作为数据挖掘和机器学习的读物,基于真实数据集进行案例实战,使用 Python 数据科学库,从数据预处理开始一步步介绍数据建模和数据挖掘的过程。书中主要介绍了数据挖掘的基础知识、基本工具和实践方法,通过循序渐进地讲解算法,带领读者轻松踏上数据挖掘之旅。本书采用理论与实践相结合的方式,呈现了如何使用逻辑回归进行环境数据检测,如何使用 HMM 进行中文分词,如何利用卷积神经网络识别雷达剖面图,如何使用循环神经网络构建聊天机器人,如何使用朴素贝叶斯算法进行破产预测,如何使用 DCGAN 网络进行人脸生成等。本书也涉及神经网络、在线学习、强化学习、深度学习和大数据处理等内容。
本书以人工智能主流编程语言 Python 3 版作为数据分析与挖掘实战的应用工具,从 Pyhton 的基础语法开始,陆续介绍了 NumPy 数值计算、Pandas 数据处理、Matplotlib 数据可视化、爬虫和 Sklearn 数据挖掘等内容。全书共涵盖 16 个常用的数据挖掘算法和机器学习实战项目。通过学习本书内容,读者可以掌握数据分析与挖掘的理论知识及实战技能。
本书内容丰富,讲解由浅入深,特别适合对数据挖掘和机器学习算法感兴趣的读者阅读,也适合需要系统掌握深度学习的开发人员阅读,还适合 Python 程序员及人工智能领域的开发人员阅读。编程爱好者、高校师生及培训机构的学员也可以将本书作为兴趣读物或教材使用。

1._θ_ 更新过程

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

θ 更新过程可以写成:

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

2.向量化

约定训练数据的矩阵形式如下,x 的每一行为一条训练样本,而每一列为不同的特征取值:

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

g(A) 的参数 A 为一列向量,所以实现 g 函数时要支持列向量作为参数,并返回列向量。θ 更新过程可以改为:

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

3.正则化

过拟合即是过分拟合了训练数据,使得模型的复杂度提高,泛化能力较差(对未知数据的预测能力)。

如图 3-9 左图即为欠拟合,中图为合适的拟合,右图为过拟合。

可以使用正则化解决过拟合问题,正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项或惩罚项。正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化项就越大。

正则项可以取不同的形式,在回归问题中取平方损失,就是参数的 L2 范数,也可以取 L1 范数。取平方损失时,模型的损失函数变为:

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

λ 是正则项系数:

  • 如果它的值很大,说明对模型的复杂度惩罚大,对拟合数据的损失惩罚小,这样它就不会过分拟合数据,在训练数据上的偏差较大,在未知数据上的方差较小,但是可能出现欠拟合的现象。

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

图 3-9 数据拟合模型
  • 如果它的值很小,说明比较注重对训练数据的拟合,在训练数据上的偏差会小,但是可能会导致过拟合。

正则化后的梯度下降算法θ的更新变为:

θj:=θjαmi=1m(hθ(xi)yi)xijλmθj(329)

Python数据挖掘与机器学习实战(72):回归分析介 3.6.3

购书地址 https://item.jd.com/12623592.html?dist=jd

评论

发布