- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
对梯度迭代法与牛法求解极值问题的讨论
梯度下降算法发散举例
θ0=0, θ1=0, θ2=0, h(x(i))=0, x0=1
y(1)=400, y(2)=330, y(3)=369, y(4)=232, y(5)=540
x1(1)=2104, x1(2)=1600, x1(3)=2400, x1(4)=1416, x1(5)=3000
x2(1)=3, x2(2)=3, x2(3)=3, x2(4)=2, x2(5)=4
θ0=0+0.01×[(y(1)-h(x(1)))x0(1)+...+(y(5)-h(x(5)))x0(5)]
θ1=0+0.01×[(y(1)-h(x(1)))x1(1)+...+(y(5)-h(x(5)))x1(5)]
θ2=0+0.01×[(y(1)-h(x(1)))x2(1)+...+(y(5)-h(x(5)))x2(5)]
x1
y
x2
θ0=0+0.01×[(y(1)-h(x(1)))x0(1)+...+(y(5)-h(x(5)))x0(5)]=0.01(400+330+369+232+540)=18.71
θ1=0+0.01×[(y(1)-h(x(1)))x1(1)+...+(y(5)-h(x(5)))x1(5)]=0.01(400*2104+330*1600+…+540*3000)=42037.12
θ2=0+0.01×[(y(1)-h(x(1)))x2(1)+...+(y(5)-h(x(5)))x2(5)]=0.01(400*3+330*3+369*3+…+540*4)=59.21
得到 ,和matlab一次迭代结果一致。据此计算
再次代入迭代公式得到:
用matlab程序迭代两次结果如图:
发现第二次迭代和手工算也没有
什么区别,当迭代150次时,结果
都是NaN,已经发散了,于是用
矩阵法求
求解结果如下:
用矩阵法求解线性回归问题
依照公式
得到
即
其实这里 ,
即为X的广义逆矩阵,如果X为方阵且可逆的话,则可得到
,
矩阵法误差分析
绝对误差向量,计算相对误差(采用第二范数)得
这里看似是比较好的拟合结果,但其实这个结果并不稳定,也就是说如果每次观测的数据都有偏差,这个用最小二乘法的矩阵解法求出的解的差别可能千差万别,或者随着数据的不断输入,求的结果相差非常大,以至于感觉不能取得一个好的拟合结果,这就涉及到下面病态矩阵与条件数的知识了。
病态矩阵与条件数
那么为什么用梯度下降算法迭代出现了发散呢?
这里就涉及到了病态矩阵的概念了,而判断矩阵是否病态的准则就是条件数!
求解方程组时如果对数据进行较小的扰动,则得出的结果具有很大波动,这样的矩阵称为病态矩阵。求解方程组时对数据的小扰动很敏感的矩阵。解线性方程组Ax=b时,若对于系数矩阵A及右端项b的小扰动δA、δb,方程组(A+δA)χ=b+δb的解χ与原方程组Ax=b的解差别很大,则称矩阵A为病态矩阵。
下面给出一个病态矩阵的例子:
病态矩阵实例
可见非常小的扰动能引起解的非常大的变化,这样的矩就被称为病态矩阵。解决病态矩阵的解的问题也是现在研究的一个热点,在求解任何反问题的过程中通常会遇到病态矩阵问题,而且病态矩阵问题还未有很好的解决方法,尤其是长方形、大型矩阵。目前主要有Tikhonov、奇异值截断、奇异值修正、迭代法等方法。
得到
定义1:设 ,||.||是Cnxn上的一个矩阵范数.矩阵A的条件数定义为
条件数的定义与计算
∞-条件数:
1-条件数:
2-条件数:
常用的条件数
条件数的计算
对于条件数的计算matlab给出了很好的支持,在matlab中可以用cond(X,p)函数来计算,X表示要计算条件数的矩阵,p表示p—条件数,p如果不给出的话matlab默认值为2,即计算2条件数。下面用matlab计算上面矩阵条件数
从以上实验结果可以看出矩阵不可逆的化条件数为无穷,且不可逆性约强的话(其实这个时候就是各个分量之间的平行性越强)矩阵的条件数越大。以该矩阵为参数的线性方程解的波动性也就会越大。
最小二乘法梯度迭代法与矩阵求解比较
回到最初房屋价格问题,计算矩阵的条件数可以得到如下结果:
可见该矩阵条件数非常之大,也就是该矩阵方程病态很严重,用矩阵解法虽然可以解出方程的解,但是该解是极不稳定的。
下面给出梯度迭代法与矩阵求解最小二乘问题的异同:
对于用梯度迭代法,结果是慢慢迭代而出的,如果出现了结果的不稳定性非常严重(原因就是矩阵病态,条件数过大),则可能出现迭代不收敛的情况(本例就是一个很好的例子),求不出最小二乘的参数。
对于矩阵法,给出数据就可以得到结果,不论矩阵是否病态,但如果矩阵病态的话,数据小的波动会引起解非常大的改变,如果数据在增加,则可能连续得出的解千差万别以至于得不
您可能关注的文档
最近下载
- 附着式抱杆组塔施工方案(外抱杆).doc VIP
- 2025全国普通高等学校体育单招试题语文试卷.docx VIP
- 农村教师公开选调进城考试模拟试题1(初中地理·附参考答案).docx
- 电子式绝缘电阻测试仪讲解文档.ppt VIP
- 驻校教官培训课件.pptx
- GBT 21237-2018 石油天然气输送管用宽厚钢板.pdf
- 安徽泾县国有资产投资运营公司、泾县中小企业融资招聘笔试题库2025.pdf
- 安徽宣城市泾县国有资本投资运营控股集团有限公司招聘笔试题库2025.pdf
- 安徽宣城宁国市国有资产投资运营有限公司招聘笔试题库2023.pdf VIP
- 安徽芜湖市国有资本投资运营有限公司招聘笔试题库2022.pdf VIP
文档评论(0)