【机器学习】coursera学习笔记(一)

机器学习笔记(一)

  • 对应课程:coursera 吴恩达《machine learning》 1-2讲
  • 参考:《斯坦福大学 2014 机器学习教程 个人笔记》 黄海广

1. 简介

1.1 定义

一个程序被认为能从经验 E 中学习,解决任务 T,达到性能度量值P,当且仅当,有了经验 E 后,经过 P 评判,程序在处理 T 时的性能有所提升。我认为经验e 就是程序上万次的自我练习的经验而任务 t 就是下棋。性能度量值 p ,就是它在与一些新的对手比赛时,赢得比赛的概率。 — Tom Mitchall

1.2 分类

  1. 监督学习

    • 基本思想:数据集中的每个样本都有相应的“正确答案”。再根据这些样本作出预测。
    • 典型例子:房价预测、肿瘤分类
    • 回归问题:推测一个连续值的结果(房价)
    • 分类问题:推出一组离散的结果(肿瘤)
  2. 无监督学习

    • 无监督学习中没有任何标签或有相同的标签,没有给算法正确答案来回应数据集中的数据,数据集仅仅是数据集。

    • 聚类算法:针对数据集,无监督学习就能判断出数据有两个不同的聚集簇。

    • 典型例子:谷歌新闻的聚类、鸡尾酒问题

    • Octave:机器学习的高效工具

      Mac OS安装方法:

      brew tap homebrew/science
      brew update && brew upgrade
      brew install octave

2. 单变量线性回归

2.1 notions

  • m:训练样本的数目
  • x:特征/输入变量
  • y:目标变量/输出变量
  • (x,y) :训练集中的实例
  • (x(i), y(i)):第i个观察实例
  • h:学习算法的解决方案或函数(hypothesis)

2.2 流程

房价预测问题:将训练集“喂”给学习算法,进而学习得到一个假设 h,然后将要预测的房屋的尺寸作为输入变量输入给 h,预测出该房屋的交易价格作为输出变量输出为结果。

hθ(x) = θ0 + θ1X

只含有一个特征/输入变量x,这样的问题为单变量线形回归问题

2.3 代价函数

  • 为了使h相对于训练集的准确程度模型所预测的值域训练集中实际值之间的差距最小,即建模误差最小,需要选择合适的θ0和θ1。代价函数定义为

    其中:

    • hθ(x) = θ0 + θ1X
    • 参数:θ0,θ1
    • 目标:通过调整参数值,使得J最小
  • 平方误差代价函数是解决回归问题最常用的手段

  • 等高线图:
    J的图像是三维图像,并且存在一个使得J(θ0,θ1)最小的点。通过等高线图,将三维图像投影到二维,即绘制等高线图。实际上,更高维度、更多参数的情况难以画图表示,因此需要算法自动找出(θ0,θ1)

2.4 梯度下降

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

    思想是:初始随机选择一个参数的组合(θ0,θ1,…,θn),计算代价

    函数,然后寻找下一个能让代价函数值下降最多的参数组合。持续这么做直到到到一个局部最小值(local minimum),因为我们并没有尝试完所有的参数组合,所以不能确定得到的局部最小值是否便是全局最小值(global minimum),选择不同的初始参数组合,可能会找到不同的局部最小值。

  • batch gradient descent批量梯度下降算法(θ0,θ1的更新是同步的):


  • 直观理解梯度下降算法

    • 每一次更新都会使得θ向着局部最小值的位置移动。
    • 如果α太小,每次移动的步子很小,需要很多步才能达到全局最低点;但如果α太大,则梯度下降算法可能会越过最低点,甚至可能无法收敛,甚至发散。
    • 如果参数已经处于局部最低点,那么梯度下降算法不会改变参数的值,也就是说,即使学习速率保持不变时,梯度下降也可以收敛到局部最低点。

2.5 梯度下降的线性回归


得到递归下降的线性回归算法:



批量梯度下降指的是在梯度下降的每一步中,都用到了所有的训练样本,在梯度下降中,在计算微分求导项时,需要进行求和运算,所以在
每一个单独的梯度下降中,都要计算这样的项,这个项需要对所有 m 个训练样本求和。因此,“批量”说明了我们需要考虑所有这一”批”训练样本,而事实上,有时也有其他类型的梯度下降法,不是这种”批量”型的,不考虑整个的训练集,而是每次只关注训练集中的一些小的子集。

你可能感兴趣的:(机器学习,斯坦福大学,线性回归,监督学习,梯度下降算法)