机器学习(吴恩达)

article/2025/9/19 15:41:57

定义:计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高,以跳棋游戏为例,经验E就是程序与自己下几万次跳棋,任务T就是玩跳棋,性能度量P就是与新对手玩跳棋时赢的概率。

目前有各种不同类型的学习算法,主流的是监督学习和无监督学习。监督学习就是个我们会教计算机做某件事情,无监督学习就是我们让计算机自己学习。

监督学习:我们给算法一个数据集,其中包含了正确答案,算法的目的就是给出更多的正确答案。用多组基础特征来预测我们需要的数据。实际上我们可能要处理无穷多的特征,因为你们计算机的内存可能要溢出,我们有一个灵巧的数学技巧来允许我们处理无穷多的基础特征,SVM,PCA等等。

无监督学习:我们仅仅被告知有一个数据集,无监督学习包含两个不同的簇,也就是分类,无监督学习可以把这些数据分成两个不同的簇,这就是聚类算法。当然,聚类仅仅是无监督学习的一种。你给算法大量的数据集,要求它找出数据的类型结构。

回归问题是预测一个连续值的输出,分类问题是预测离散值输出。

以线性回归为例,我们要得到的就是预测函数和实际值之间的误差平方和最小值也就是

也称代价函数

而我们的目标就是要获得目标函数的最小值。 

我们在上一章已经定义了可视化函数J,我们所要找的目标就是让可视化函数J达到最小值,那么我们要用什么样的方法呢

这里我们采用梯度下降法,这是一种常见的算法,他不仅仅可以用在线性回归上,还可以用在其他函数上。

1.赋予初始值(一般是0,0)

2.不停改变\Theta_0 \Theta_1使J变小,搜寻下降速度最快的方向

3.直到我们找到最小值的局部收敛点,当然不一样的初始值他的局部收敛点也不一样。

 

这里的\alpha被成为一个学习率的数字,它用来控制梯度下降的时候我们迈出多大的步子,如果它的值很大,梯度下降就很迅速,如果很小,那么我们的速度就很慢。学习速率永远是一个正数。

在这个公式中,你需要同时更新两参数, \Theta_0 \Theta_1

下面我们用一个更直观的例子来解释梯度下降法,以二维平面为例。

可以看到,不管是在左边还是右边,你都可以看到它会往最小值靠近。 而学习速率的选取很重要,如果太小了,那么说明它的步伐太慢,要很久才能达到最终目标,反过来,太大的话说明什么?说明它的步伐太大,可能会越过最终目标,进而离目标越来越远,导致无法收敛或发散。

这个梯度下降法有一个特点就是只能得到局部最优解,而无法得到全局最优解。

 

之前我们所用预测的函数值只有一个变量,也就是单特征,接下来我们要用到多特征来预测目标函数

我们的线性回归问题就应该扩充到四个变量这里来

 这就是所谓的多元线性回归,\Theta _0后面一般会跟一个X_0且设置为1为了匹配上向量,让两个可以互为向量做乘法

值得注意的是,如果你的特征取值很接近,以两个为例,那么它收敛的速度非常快,很快能取到局部最优解。反过来,如果他们取值相差过大,一个在1000到2000取值,一个在0到5取值,那么他们的收敛会非常慢

针对以上这种情况,我们就要对数据进行预处理,常用的手段有均值化,归一化等等,目的就是让不同特征的取值接近。 

 

\mu _1指的是这个特征的平均值,而s_1值的是这个特征的范围,即最大值减去最小值。

通过使用这个方法,你可以让梯度下降的速度更快,迭代的次数更少,提高计算效率。不同的问题,他们的迭代次数也不是一样的。另外,并不是每一次迭代都会下降,有可能出现上升下降循环反复的情况。

接下来,我们学习多项式回归。 

同样的,使用梯度下降法来迭代,接下来的正规方程只需要一次就可以得到结果。

以四个样本的普通训练集为例

如果这样做,那么你就不需要进行特征缩放。

当然,我们知道,在计算逆矩阵的时候,通常以矩阵维度的三次方增长,当然,而逆矩阵那一项是n*n的维度,因此代价会相当之大。下面是两个方法的对比。

X^{T}X不可逆时,也称奇异矩阵或退化矩阵。

包含了多余的特征,即有两个特征线性相关时候即不可逆。 

 

 我们一般不用线性回归来做分类问题

我们接下来学习Logistic回归算法,他是一种分类算法,他的输出值介于0和1之间

下面我们来学习决策边界,它可以帮助我们来理解假设函数在干什么? 

其中g为sigmod函数 

其中x_1+x_3这条线为决策边界。它将平面分成了两个部分 ,决策边界是假设函数的一个属性。

我们要用训练集数据来拟合\Theta,主要问题是如何避免代价函数使非凸函数 。所谓代价函数,就是用来衡量预测输出和真实值的偏差程度。

 

接下来我们就需要最小化代价函数,为什么要选择这样的代价函数,这是从统计函数中出来的,因为它的凸函数因此可以使用梯度下降找到局部收敛的点。 

接下来我们学习如何使用Logistic回归来解决多分类问题。

 


http://chatgpt.dhexx.cn/article/p8TeGZCJ.shtml

相关文章

【机器学习】吴恩达机器学习Deeplearning.ai

机器学习已经强大到可以独立成为人工智能的一个子领域。 可以通过对机器编程实现比如执行网络搜索、理解人类语言、通过x光诊断疾病,或制造自动驾驶汽车。 机器学习定义 一般来说,给一个算法学习的机会越多,它的表现就越好。 机器学习的两种…

吴恩达机器学习(一)—— 简介

机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的…

吴恩达机器学习课后作业

目录 01-linear regression线性回归预备知识单变量线性回归( 一个特征值)单变量线性回归( 多个特征值)单变量线性回归( 正规方程) 01-linear regression 线性回归预备知识 假设函数与损失函数&#xff1a…

【吴恩达机器学习笔记】七、神经网络

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📣专栏定位:为学习吴恩达机器学习视频的同学提供的随堂笔记。 📚专栏简介:在这个专栏,我将整理吴恩达机器学习视频的所有内容的笔记&…

吴恩达机器学习 2022新版

2022吴恩达机器学习 第一周 一. 机器学习的定义二. 机器学习的分类2.1. 监督学习【回归算法】【分类算法】 三. loss function3.1.损失函数公式 四. 梯度下降4.1.梯度下降算法4.2.理解梯度下降4.3.学习率的选择4.5.如何计算导数项? 一. 机器学习的定义 Arthur Samu…

【经典】吴恩达《机器学习》课程

如果要推荐《机器学习》的学习课程,那必然首选吴恩达的《机器学习》课程,无论是国内还是国外,这是最火的机器学习入门课程,没有之一。吴恩达老师用易于理解、逻辑清晰的语言对机器学习算法进行介绍,无数新手正是通过这…

吴恩达机器学习系列课程笔记——第一章:什么是机器学习(Machine Learning)

1.1 欢迎 https://www.bilibili.com/video/BV164411b7dx?p1 第一节主要讲了什么是机器学习,机器学习能做些什么事情。 机器学习是目前信息技术中最激动人心的方向之一。在这门课中,你将学习到这门技术的前沿,并可以自己实现学习机器学习的…

机器学习——吴恩达

机器学习——吴恩达 inductionSupervised learningUnsupervised learning modelexamplehow to workdefine cost functiongradient descent for minimizing the cost functionGradient descent for linear regression Matrix and Vector定义运算multiple feature linear regress…

吴恩达—机器学习的六个核心算法

吴恩达,华裔美国人,是斯坦福大学计算机科学系和电子工程系副教授,人工智能实验室主任。吴恩达是人工智能和机器学习领域国际上最权威的学者之一。他是百度的前副总裁兼首席科学家,最受欢迎的机器学习在线课程之一的创建者&#xf…

【机器学习】机器学习笔记(吴恩达)

文章目录 中文笔记地址视频地址第1章 引言1.1 欢迎1.2 机器学习是什么1.3 监督学习1.4 无监督学习 第2章2.1 模型展示单变量线性回归 2.2 代价函数2.3-2.4 代价函数理解2.5-2.6 梯度下降算法,梯度下降算法理解 第3章第4章4.2 多元(多变量)梯度…

python编码无法使用turtle库_使用Turtle库教Python

Python是一种流行的基于文本的编程语言,程序员每天都在使用它。使用Turtle库(Turtle Library)教Python可以激发对STEM的兴趣。 Turtle库是用于控制机器人Turtle的功能的集合。这些命令可以与Python结合使用,以构建精美作品和原创游戏的程序。The Turtle …

turtle库的介绍

一、turtle库概述: turtle(海龟)库是turtle绘图体系python的实现; turtle绘图体系:1969年诞生,主要用于程序设计入门; turtle库是python的标准库之一;属于入门级的图形绘制函数库…

python turtle库下载_python3中安装turtle库

开始在网上找资料安装的时候踩了一点坑,来总结一下经验 直接安装 安装 pip install turtle 会提示错误:Command "python setup.py egg_info" failed with error code 1 解决方法 1.直接找到turtle 0.0.2(地址是这个),把turtle…

python基础之 turtle 库总结

python基础之 turtle 库总结 文章目录 python基础之 turtle 库总结1. 准备工作1.1 准备画布1.2 画笔设置 2. 画笔运动函数2.1 向前:forward() | fd()2.2 向后:backward() | bk() | back()2.3 向右:right() | rt()2.4 向左:left() …

turtle库的精讲

大家好,我是Python领域的博主。 如果你是编程爱好者可以小编一起学习,在这里我每天都会发Python的基础知识,以及相关的代码。 如果文章有什么错误的地方,请不吝赐教。 觉得博主文章写的还错的话,请三连支持一下博主哦 …

python turtle库有什么用_turtle库使用简介

python之绘制图形库turtle turtle库是python的基础绘图库,官方手册 这个库被介绍为一个最常用的用来给孩子们介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图。 turtle原理理解 turtle名称含义为“海龟”,我们想象一只…

Turtle库实战项目

文章目录 文章目录 文章目录前言直接实战1、turtle库完成正方形螺旋线的绘制2、turtle库完成绘制斜螺旋线3、turtle库完成绘制彩色斜螺旋线4、turtle库完成绘制直角三角形5、turtle库完成绘制梯形7、turtle库完成绘制八一五角星8、turtle库完成绘制冬奥会吉祥物冰墩墩 总结 前言…

Python 之 turtle 库

目录 1、turtle库的调用 2、turtle库的构成 2.1 画布 2.2 画笔(海龟) 2.3 绘图指令 Turtle 库是 Python 的一个标准库,主要用于图像的绘制。想象您用一组组函数驾驭一只小小的乌龟,在无垠的沙滩(画布)上昂…

Python Turtle库详解

turtle的英文意思是“海龟”,今天学习的turtle库也叫作海龟绘图库。想象一下一只小海龟在海面上游泳,海龟游过的轨迹变成了一幅幅有趣的图案。 1. Turtle的绘图窗体布局 美术生作画时必不可少的两样东西:画纸和画笔。画纸在画板上&#xff…

turtle具体详解

一、turtle库概述: turtle(海龟)库是turtle绘图体系python的实现; turtle绘图体系:1969年诞生,主要用于程序设计入门; turtle库是python的标准库之一;属于入门级的图形绘制函数库…