吴恩达《Machine Learning》精炼笔记 1:监督学习与非监督学习

简介: 吴恩达《Machine Learning》精炼笔记 1:监督学习与非监督学习

0. 引言


吴恩达(Andrew Ng),毫无疑问,是全球人工智能(AI)领域的大 IP!然而,吴恩达从最早的 CS229,到后来的 deeplearning.ai 深度学习专项课程,还有其它 AI 资源,大神发布的 AI 知名课程和资料非常多。


说到吴恩达优秀的 AI 课程,首当其冲的就是几年前在 Coursera 上发布的《Machine Learning》课程!


image.png


这门《Machine Learning》评分高达 4.9 分,共有超过 300w 人注册学习。其火爆程度可想而知!


课程主页:

https://www.coursera.org/learn/machine-learning/


课程特色:

这门课基本涵盖了机器学习的主要知识点:线性回归、逻辑回归、支持向量机、神经网络、K-Means、异常检测等。课程中没有复杂的公式推导和理论分析,让机器学习初学者能够快速对整个机器学习知识点有比较整体的认识,便于快速入门。


完整中文笔记(pdf、word、markdown版本)、中英文字幕离线视频、复现的python作业:

https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes


在线笔记:

http://www.ai-start.com/ml2014/


课后作业(Python 版本):

https://github.com/nsoojin/coursera-ml-py


课后作业(Jupyter 版本):

https://github.com/kaleko/CourseraML


鉴于这门课程非常适合入门,在接下来的一段时间中,我们将推出吴恩达《Machine Learning》的系列笔记,方便大家配套学习!


今天带来第一周课程的笔记:监督式学习和非监督式学习。


主要内容:


  • 监督学习和无监督学习
  • 单变量线性回归问题
  • 代价函数
  • 梯度下降算法


1-1. 监督学习Supervised Learning


利用监督学习预测波士顿房价(回归问题)


  • 大多数情况下,可能会拟合直线
  • 有时候用二次曲线去拟合效果可能会更好的


image.png


什么是回归问题?


在监督学习中,我们给学习算法一个数据集,比如一系列房子的数据,给定数据集中每个样本的正确价格,即它们实际的售价然后运用学习算法,算出更多的答案,我们需要估算一个连续值的结果,这属于回归问题


利用监督学习来推测乳腺癌良性与否(分类问题)


image.png


  • 横轴表示肿瘤的大小
  • 纵轴表示1表示恶性,0表示良性


什么是分类问题?


机器学习的问题就在于,估算出肿瘤是恶性的或是良性的概率,属于分类问题


分类问题指的是,我们试着推测出离散的输出值:0或1良性或恶性,而事实上在分类问题中,输出可能不止两个值。


比如说可能有三种乳腺癌,所以希望预测离散输出0、1、2、3。0 代表良性,1 表示第1类乳腺癌,2表示第2类癌症,3表示第3类,也是分类问题。


应用


  • 垃圾邮件问题
  • 疾病分类问题


1-2 无监督学习Unsupervised Learning


  • 监督学习中,数据是有标签的
  • 无监督学习中,数据是没有标签,主要提到了聚类算法


image.png


应用


  • 基因学的理解应用
  • 社交网络分析
  • 组织大型计算机集群
  • 细分市场
  • 新闻事件分类


2. 单变量线性回归Linear Regression with One Variable


房价问题


横轴是不同的房屋面积,纵轴是房屋的出售价格。


监督学习:对于每个数据来说,给出了正确的答案。在监督学习中,我们有一个给定的数据,叫做训练集training set


回归问题:根据之前的数据,预测出一个准确的输出值。


分类问题:预测离散的输出值,例如寻找癌症肿瘤,并想要确定肿瘤是良性的还是恶性的,属于0/1离散输出的问题


image.png


监督学习工作模式


image.png


学习过程解释:


  • 将训练集中的房屋价格喂给学习算法
  • 学习算法工作,输出一个函数,用h表示
  • h表示hypothesis,代表的是学习算法的解决方案或者函数。
  • h根据输入的x值得到y值,因此h是x到的y的一个函数映射
  • 可能的表达式:hθ(x)=θ0+θ1x,只有一个特征或者出入变量,称为单变量线性回归问题

3. 代价函数cost function


代价函数也称之为平方误差函数平方误差代价函数


在线性回归中我们有一个像这样的训练集,m代表了训练样本的数量,比如 m=47。而我们的假设函数,也就是用来进行预测的函数,是这样的线性函数形式:hθ(x)=θ0+θ1x。


函数解释


  • m:训练样本的个数
  • hθ(x)=θ0+θ1x:假设函数
  • θ0和θ1:表示两个模型参数,即直线的斜率和y轴上的截距


image.png


建模误差


建模目标


  1. 图中红色的点表示真实值yi,真实的数据集
  2. h(x)表示的是通过模型得到的预测值
  3. 目标:选择出可以使得建模误差的平方和能够最小的模型参数


image.pngimage.pngimage.png


代价函数直观解释1


本例中是通过假设θ0=0来进行,假设函数h(x)是关于x的函数,代价函数J(θ0,θ1)是关于θ的函数,使得代价函数最小化


image.png


代价函数直观解释2


通过等高线图来进行解释。通过绘制出等高线图可以看出来,必定存在某个点,使得代价函数最小,即:可以看出在三维空间中存在一个使得J(θ0,θ1)最小的点。


image.png


4. 梯度下降Gradient Descent


思想


梯度下降是一个用来求函数最小值的算法。


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



image.pngimage.png


批量梯度下降batch gradient descent


算法公式为


image.png


特点:需要同步更新两个参数


梯度下降直观解释


算法公式:


image.pngimage.png


梯度下降的线性回归GradientDescent-For-LinearRegression


梯度下降是很常用的算法,它不仅被用在线性回归上和线性回归模型、平方误差代价函数。将梯度下降和代价函数相结合。


梯度下降VS线性回归算法


image.png


批量梯度下降算法


对之前的线性回归问题运用梯度下降法,关键在于求出代价函数的导数,即:


image.png


这种梯度下降的算法称之为批量梯度下降算法,主要特点:


  • 在梯度下降的每一步中,我们都用到了所有的训练样本
  • 在梯度下降中,在计算微分求导项时,我们需要进行求和运算,需要对所有m个训练样本求和


至此,第一周的课程笔记完毕!

相关文章
|
1月前
|
机器学习/深度学习 数据采集 人工智能
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
|
9月前
|
机器学习/深度学习 存储 算法
【强化学习】常用算法之一 “Q-learning”
Q-learning算法是一种基于强化学习的无模型学习方法,通过学习到目标系统的Q值函数来解决智能体在给定环境下的最优决策策略问题。Q-learning算法是基于后验策略方法,即学习出目标系统的价值函数Q之后,通过使用某种策略来最大化该价值函数,称之为后验策略。Q-learning算法是偏差-方差权衡的算法,在偏差较高的情况下可以在基于模型的强化学习中找到一个接近最优策略的解决方案。同时它也具有较高的收敛速度和广泛的适用性,因为其只需要存储一个值函数,不需要存储模型。
283 0
【强化学习】常用算法之一 “Q-learning”
|
机器学习/深度学习 自然语言处理 算法
半监督学习|深度学习(李宏毅)(九)
半监督学习|深度学习(李宏毅)(九)
472 0
半监督学习|深度学习(李宏毅)(九)
|
机器学习/深度学习 数据采集 存储
周志华《Machine Learning》学习笔记(13)--特征选择与稀疏学习
在机器学习中特征选择是一个重要的“数据预处理”(data preprocessing)过程,即试图从数据集的所有特征中挑选出与当前学习任务相关的特征子集,接着再利用数据子集来训练学习器
155 0
周志华《Machine Learning》学习笔记(13)--特征选择与稀疏学习
|
自然语言处理
ICLR2021对比学习(Contrastive Learning)NLP领域论文进展梳理(一)
ICLR2021对比学习(Contrastive Learning)NLP领域论文进展梳理(一)
397 0
ICLR2021对比学习(Contrastive Learning)NLP领域论文进展梳理(一)
|
机器学习/深度学习 算法 索引
吴恩达《Machine Learning》精炼笔记 4:神经网络基础
吴恩达《Machine Learning》精炼笔记 4:神经网络基础
123 0
吴恩达《Machine Learning》精炼笔记 4:神经网络基础
|
机器学习/深度学习 算法
吴恩达《Machine Learning》精炼笔记 5:神经网络
吴恩达《Machine Learning》精炼笔记 5:神经网络
126 0
吴恩达《Machine Learning》精炼笔记 5:神经网络
|
机器学习/深度学习 运维 资源调度
吴恩达《Machine Learning》精炼笔记 10:异常检测
吴恩达《Machine Learning》精炼笔记 10:异常检测
144 0
吴恩达《Machine Learning》精炼笔记 10:异常检测
|
机器学习/深度学习 算法
吴恩达《Machine Learning》精炼笔记 6:关于机器学习的建议
吴恩达《Machine Learning》精炼笔记 6:关于机器学习的建议
148 0
吴恩达《Machine Learning》精炼笔记 6:关于机器学习的建议
|
机器学习/深度学习 人工智能 自然语言处理
吴恩达《Machine Learning》精炼笔记 11:推荐系统
吴恩达《Machine Learning》精炼笔记 11:推荐系统
171 0
吴恩达《Machine Learning》精炼笔记 11:推荐系统