美文网首页学习杂谈
计算机视觉漫谈(3)

计算机视觉漫谈(3)

作者: supportingvecto | 来源:发表于2017-04-23 21:13 被阅读0次

计算机视觉漫谈(3)

学号:14020199025

姓名:徐铭晟

【嵌牛导读】:前段时间讲了最简单的分类算法:KNN,由此引入机器学习。在机器学习中,特别是监督学习中,算法纷繁复杂,但又大同小异。今天谈谈线性回归算法。

【嵌牛鼻子】:监督学习 线性回归 图像分类

【嵌牛正文】:

前段时间讲了最简单的分类算法:KNN,由此引入机器学习。在机器学习中,特别是监督学习中,算法纷繁复杂,但又大同小异。今天谈谈线性回归算法。

线性回归,说穿了就是拿出一条直线,拟合所有的数据点。拿吴恩达老师上课的例子:

这张图很好地阐明了这个算法的基本思想:构造一条直线,将直线的点与所有点的误差做累加,以此作为代价函数。对代价函数进行优化,我们就可以得到理想的直线。

有了这条直线,我们就可以通过房间的大小预测房价。

用数学表达式可写作:

我们可以看出,这个代价函数对于a,b是有闭式解的。当然除了驻点求最优解,我们还可以通过一些搜索算法求解,如牛顿迭代法,梯度下降法。这里略微提一下梯度下降:

梯度下降法的数学形式是:

为什么要利用梯度呢?当然线性模型,特别是这种一阶线性模型,非常简单,单单用闭式解就可以得到。但是当代价函数的最小值无法通过这种方法得到,自然就得求助于迭代算法,梯度下降也就派上了用场。

这个公式里,aplha,为迭代步长,又称为学习率。机器学习有人说是一门手艺活,各种玄学调参,这个学习率呢,也算调参的一个。当这个值越小,越容易梯度下降至局部最优点,越大,则越容易导致不收敛。发展至今学习率也不一定是常数的了,各种变种梯度下降算法,如moment,adam,可看看《deep learning》,里面有详细2介绍。

那如何利用此来学习图片分类?很自然的想法就是将图片像素拉伸成一维向量,并合理选取a,b的数目。对于特定分类的图片,利用之前的函数表达式训练,得到每一类的a,b等等。根据不同类产生的a,b,给定待分类图片,即可求出cost函数值。于是哪个cost函数值小,图片就应该分为该类

在实际过程中,我们很容易发现,这个模型缺点很明显。数据点有时候完全不按照直线分布,即拟合很差,如何解决,请看下讲。

相关文章

  • 计算机视觉漫谈(3)

    计算机视觉漫谈(3) 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:前段时间讲了最简单的分类算法:KN...

  • 计算机视觉漫谈

    学院:电子工程学院 学号:14020199025 姓名:徐铭晟 计算机视觉是最近炒得火热的一个课题。特别是作为最新...

  • 计算机视觉4

    计算机视觉漫谈(4) 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:上次我们粗略地谈了谈线性回归算法,...

  • 计算机视觉漫谈7

    计算机视觉漫谈7 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:上一次我们简略sobel边缘提取,这次...

  • 计算机视觉漫谈5

    计算机视觉漫谈5 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:前几次我们都在讨论一些简单的机器学习算...

  • 计算机视觉漫谈6

    计算机视觉漫谈6 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:上一次我们简略地聊了opencv库,并...

  • 计算机视觉漫谈2

    学院:电子工程学院 学号:14020199025 姓名:徐铭晟 【嵌牛导读】:计算机视觉中非常热门的一个课题就是图...

  • 《OpenCV计算机视觉编程攻略(第3版)》高清中文+英文版PD

    《OpenCV计算机视觉编程攻略(第3版)》高清中文+英文版PDF+源代码完整版免费下载 《OpenCV计算机视觉...

  • 《OpenCV计算机视觉编程攻略(第3版)》高清中文+英文版PD

    《OpenCV计算机视觉编程攻略(第3版)》高清中文+英文版PDF+源代码完整版免费下载《OpenCV计算机视觉编...

  • 计算机视觉资源库

    Python 计算机视觉 SimpleCV—开源的计算机视觉框架,可以访问如OpenCV等高性能计算机视觉库。使用...

网友评论

    本文标题:计算机视觉漫谈(3)

    本文链接:https://www.haomeiwen.com/subject/pliyzttx.html