ML1 单变量线性回归

简介: 有一个数据集,里面没有任何标签/或者相同的标签,机器在这组数据集中找规律,并归纳总结

⏰本节内容:有监督学习与无监督学习,代价函数,梯度下降算法,线性回归


有监督学习与无监督学习


1.有监督学习


⚡给机器大量的数据集,该数据集中包含正确的答案,然后机器根据数据集拟合出一条曲线


  • 分类


预测离散输出,例如:预测肿瘤的良性、恶性


202204211155853.png


  • 回归


预测连续的输出,例如:预测房价走势


202204211155344.png


2.无监督学习


🔥有一个数据集,里面没有任何标签/或者相同的标签,机器在这组数据集中找规律,并归纳总结


  • 聚类


例如:音频分离(如人声和背景声的分离)、百度新闻归档


202204221325005.png


代价函数


代价函数也被称作平方误差函数,有时也被称为平方误差代价函数。


⭐J(θ0, θ1):误差平方代价函数


⭐hθ(x) :拟合函数,就是你预测的函数


image.png


202204211241103.png


代价函数三维图,以θ0, θ1为x、y坐标轴


d5ea98d5cd45b1f307ea8da4e61d75ce.png


梯度下降算法


梯度下降是一个用来求函数最小值的算法,我们将使用梯度下降算法来求出代价函数J ( θ 0 , θ 1 )的最小值


1.随机θ0, θ1分配初值

2.不断改变,找到正确的θ0、θ1,使得J(θ0, θ1)最小


5d13583bae065a75eeeef7480fb6b817.png


92646eac78607356c078a8d45f2ec81e.png


梯度下降背后的思想是:开始时我们随机选择一个参数的组合( θ 0 , θ 1 , . . . . . . , θ n ) ,计算代价函数,然后我们寻找下一个能让代价函数值下降最多的参数组合。我们持续这么做直到找到一个局部最小值(local minimum),因为我们并没有尝试完所有的参数组合,所以不能确定我们得到的局部最小值是否便是全局最小值(global minimum),选择不同的初始参数组合,可能会找到不同的局部最小值。


1.数学定义


image.png


  • :=:赋值运算符,a:=b相当于取b的值赋给a;


🔓为什么不用a=b?


🔑答:在教学视频中,a=b被认为是真假判断,声明a=b是对的。所以我们不能写a=a+1,因为这永远都是错的


  • α:学习率,用来控制我们在梯度下降的幅度,α越大,梯度下降的越快


2.同步更新


202204212020768.png


✅梯度下降算法应满足同步更新的条件,即θ0, θ1应同时改变,如图1️⃣


❌图2️⃣则是先计算了θ0,然后再用新的θ0去计算θ1


所以图1和图2区别在于,temp1的值不同


3.偏微分导数项


image.png


在这里,image.png是梯度函数的斜率,乘以α则表示梯度变化幅度


202204221316374.png


所以当θ1已经处在一个局部最优点时,它所在点的曲线斜率为0,即image.png


此时由image.png得:


θ 1 : = θ 1,θ1不会变化,如下图:


2f664eb32b99e0c85fcec6669900f227.png


🚀注意:α永远是正数


  • α过小


c976bbe737dfe4d5e6751a48fb7d120b.png


不断拟合,去努力接近最低点,这样就需要很多步才能到达最低点,耗费大量时间,它会需要很多步才能到达全局最低点


  • α过大


ca5070cd32ff3c4983ff21fc060a54bf.png


拟合的时候左右横跳,难以达到最低点,反而远离最低点了,所以,如果a aa太大,它会导致无法收敛,甚至发散


所以斜率不断减小,梯度下降的幅度也不断减少,这样就可以无限逼近于最低点


例如:品红色👉绿色👉红色👉蓝色👉最低点


因为曲线在下降的时候是不断变缓的,所以它的斜率也不断减小,你可以看到越靠近最低点,不同颜色的点就越密集


278cc6456dd67846b77b7a9e3f8c84ca.png


线性回归算法


使用梯度下降算法,去求误差代价函数的最小值


推导过程


image.png


凸函数


线性回归的代价函数曲线通常都是一个碗状的,这被称为凸函数/弓函数,这个函数只有全局最优解,而没有局部最优解,可以视作是三维的二次函数


cbe6f54e14d6b62b92f0fc0c7ac4e20f.png

相关文章
|
XML API Android开发
Android WIFI使用简述(上)
Android WIFI使用简述(上)
731 1
|
6月前
|
机器学习/深度学习 人工智能 编解码
Step-Video-TI2V:开源视频生成核弹!300亿参数+102帧电影运镜
Step-Video-TI2V 是阶跃星辰推出的开源图生视频模型,支持根据文本和图像生成高质量视频,具备动态性调节和多种镜头运动控制功能,适用于动画制作、短视频创作等场景。
347 0
Step-Video-TI2V:开源视频生成核弹!300亿参数+102帧电影运镜
|
7月前
|
存储 人工智能 监控
新手小白购买阿里云服务器省钱策略、配置选型与注意事项
针对初次使用阿里云服务器的用户,本文提供系统化的指导方案以优化成本并满足业务需求。首先介绍配置选型,包括实例类型(通用型、计算型、内存型)与基础配置建议;其次阐述省钱策略,如企业认证、合理选择计费模式及批量购买;最后提醒注意事项,涵盖带宽存储规划、地域网络优化及安全管理。新手可通过明确需求、选择配置、优化购买和持续监控四步快速上手,实现高效稳定的云端部署。 注:推荐配置基于2025年阿里云产品体系,具体信息请参考官网。
|
10月前
|
机器学习/深度学习 数据采集 人工智能
从零构建:深度学习模型的新手指南###
【10月更文挑战第21天】 本文将深入浅出地解析深度学习的核心概念,为初学者提供一条清晰的学习路径,涵盖从理论基础到实践应用的全过程。通过比喻和实例,让复杂概念变得易于理解,旨在帮助读者搭建起深度学习的知识框架,为进一步探索人工智能领域奠定坚实基础。 ###
259 3
Pyinstaller:moviepy打包报错AttributeError: module ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fadein‘
该文章分享了使用Pyinstaller打包moviepy库时遇到的`AttributeError: module 'moviepy.audio.fx.all' has no attribute 'audio_fadein'`错误,分析了问题原因,并提供了修改moviepy子包中的`__init__.py`文件来解决动态加载模块问题的详细步骤和最终打包成功的结果。
|
监控 网络协议 程序员
不再困惑!一文搞懂TCP与UDP的所有区别
**TCP与UDP是网络协议,TCP提供可靠连接(面向连接、顺序传输、错误检查),适合HTTP、FTP、SMTP等需要数据完整性的应用。UDP则是无连接、快速但不可靠,常用于DNS、RIP、SNMP等实时或效率优先的场景。**
629 0
|
运维 监控 安全
阿里云云通信短信服务安全之安全责任共担与安全合规
阿里云云通信长久以来致力于为客户提供稳定可靠、安全可信、合法合规的通信服务,利用先进技术、建立产品体系、严格管理人员等不同手段以保护客户及合作伙伴数据的机密性、完整性、可用性,以数据安全、用户隐私保护作为阿里云云通信的最高准则。
627 0
|
Java Spring
SpringBoot-读取配置文件(工具类法)
本文是关于Spring Boot框架下读取配置文件的指南。
579 0
|
Prometheus Kubernetes Cloud Native
prometheus|云原生|轻型日志收集系统loki+promtail的部署说明
prometheus|云原生|轻型日志收集系统loki+promtail的部署说明
1409 0
|
存储 算法 Python
Crystallographic Information File
Crystallographic Information File(CIF)是一种用于存储晶体结构信息的标准文件格式,通常用于存储X射线衍射、中子衍射、电子衍射等晶体结构分析的数据。CIF文件包含了晶胞参数、原子坐标、晶体对称性等结构信息,是进行晶体结构分析和制备的基础数据。
840 1

热门文章

最新文章