第二集 监督学习的应用—梯度下降
来源:互联网 发布:淘宝网店押金 编辑:程序博客网 时间:2024/06/03 20:27
三个问题:线性回归、梯度下降、正规方程组
监督学习的工作流程如下所示:
对于学习算法,我们这里应用线性回归,可以得到。在这里θ代表的是参数。x1、x2代表的是两种不同的特征。举例来讲,预测房价,我们可以根据房屋面积以及卧室数目两种特征进行预测,其中房屋面积为x1,卧室数目为x2。对于h(x),若定义x0=1,则(用矩阵的形式表示,后面会有用)。
符号(notation):
m——训练样本的数目
X——输入变量(又叫特征)
y——输出变量(目标变量)
n——特征的数目
(x,y)——样本
(x^(i),y^(i))表示第i个训练样本
PS:代表第i个训练样本,下角标代表第j种特征
梯度下降
为了使成立,最有效的方法是每次移动的方向都是下降最快的方向,这符合梯度的定义,这个方向正是梯度的方向。梯度下降算法有着一定的局限性,即目标函数存在多个局部最优值,则选择不同的起点,终点很有可能不一样。换句话说,可能收敛不到最小值的那一点。但对于我们这个函数来讲,它是一个二次函数,最小值点有且只有一个,不存在别的局部最优解,所以不用理会梯度下降的局限性。
其中α为学习速度,相当于步幅,为人工设定。
将 的值代入即可得批梯度下降算法:
通过上式可以发现,要想计算某一特征i对应的参数 ,必须要遍历所有的训练样本。这对于少量样本的情况影响不大,但m一旦到了百万级,这个遍历会导致运算速度变得及其慢。
(for all i)
}
利用随机梯度下降算法计算参数 时,对于每一个每次只需要利用一个训练样本进行调整,不需要像普通的梯度下降算法一样在调整之前遍历所有的训练样本(m个)。其优点是计算速度相当快,简单,便于实施;其缺点是不够精确,不一定能够收敛到全局最小值,可能会在最小值处绕圈子。随机梯度下降算法的每一步决策都是基于当前环境的判断,而不是全局。
正规方程组
一些线性代数的基本概念和结论:
倒数第二个式子即为正规方程组。可能有人会注意到最后那个解析解的 项是否一定可逆的问题,这个问题确实存在,但一般情况下,其一定是可逆的。(本人对此表示怀疑)
监督学习的工作流程如下所示:
对于学习算法,我们这里应用线性回归,可以得到。在这里θ代表的是参数。x1、x2代表的是两种不同的特征。举例来讲,预测房价,我们可以根据房屋面积以及卧室数目两种特征进行预测,其中房屋面积为x1,卧室数目为x2。对于h(x),若定义x0=1,则(用矩阵的形式表示,后面会有用)。
符号(notation):
m——训练样本的数目
X——输入变量(又叫特征)
y——输出变量(目标变量)
n——特征的数目
(x,y)——样本
(x^(i),y^(i))表示第i个训练样本
PS:代表第i个训练样本,下角标代表第j种特征
为了使训练效果达到最好,用下面的函数进行判定:
梯度下降
为了使成立,最有效的方法是每次移动的方向都是下降最快的方向,这符合梯度的定义,这个方向正是梯度的方向。梯度下降算法有着一定的局限性,即目标函数存在多个局部最优值,则选择不同的起点,终点很有可能不一样。换句话说,可能收敛不到最小值的那一点。但对于我们这个函数来讲,它是一个二次函数,最小值点有且只有一个,不存在别的局部最优解,所以不用理会梯度下降的局限性。
有了以上推论,就可以对输出函数中的参数进行训练,使其满足需求。公式如下:
其中α为学习速度,相当于步幅,为人工设定。
将 的值代入即可得批梯度下降算法:
通过上式可以发现,要想计算某一特征i对应的参数 ,必须要遍历所有的训练样本。这对于少量样本的情况影响不大,但m一旦到了百万级,这个遍历会导致运算速度变得及其慢。
为了解决这个问题,可以采用随机梯度下降算法(增量梯度下降算法)来代替普通的梯度下降算法。随机梯度下降算法的描述如下:
(for all i)
}
利用随机梯度下降算法计算参数 时,对于每一个每次只需要利用一个训练样本进行调整,不需要像普通的梯度下降算法一样在调整之前遍历所有的训练样本(m个)。其优点是计算速度相当快,简单,便于实施;其缺点是不够精确,不一定能够收敛到全局最小值,可能会在最小值处绕圈子。随机梯度下降算法的每一步决策都是基于当前环境的判断,而不是全局。
正规方程组
一些线性代数的基本概念和结论:
设函数f(A)可将矩阵A映射为实数,则
若A为n*n的矩阵,则可定义A的迹为:
(对角元素相加)一些结论:
用矩阵的符号可以节省很多计算量,更加便于理解。下面对min 进行推导。
倒数第二个式子即为正规方程组。可能有人会注意到最后那个解析解的 项是否一定可逆的问题,这个问题确实存在,但一般情况下,其一定是可逆的。(本人对此表示怀疑)
1 0
- 第二集 监督学习的应用—梯度下降
- 第二集:监督学习的应用,梯度下降
- 第二节:监督学习应用,梯度下降
- 第二课 监督学习应用 梯度下降
- 机器学习第二节-监督学习应用.梯度下降
- 监督学习应用.梯度下降.
- 监督学习应用-梯度下降
- 监督学习应用.梯度下降.
- [机器学习]监督学习应用.梯度下降
- 监督学习应用与梯度下降
- 监督学习应用与梯度下降
- 监督学习应用与梯度下降
- 监督学习应用与梯度下降
- 监督学习应用与梯度下降
- 监督学习应用.梯度下降笔记
- 梯度下降--监督学习
- Stanford机器学习[第二课]-监督学习应用和梯度下降
- 机器学习--监督学习应用(梯度下降)
- 希尔排序
- <AndroidStudio每日一贴>1.快速打开方法或字段
- 栈
- android 动画url 地址总结
- poj 2135最小费用最大流
- 第二集 监督学习的应用—梯度下降
- uva216 Getting in Line
- POJ 1129 Channel Allocation(暴力搜--涂色问题)
- sqlite 数据库操作 创建数据库
- iOS 支付宝 集成
- C++ Primer 5e chapter 1
- 面试常见问题分析
- zoj_3674_Search in the Wiki(map)
- 黑马程序员——IO(缓冲区、字节流、转换流、流操作规律)