目录

一、绪论

1.1 欢迎

1.2 机器学习是什么?

1.3 监督学习

1.4 非监督学习

二、单变量线性回归

2.1 模型表示

2.2 代价函数

2.3 代价函数的直观理解I

2.4 代价函数的直观理解II

2.5 梯度下降

2.6 梯度下降的直观理解

2.7 梯度下降的线性回归

三、线性代数回顾


一、绪论

1.1 欢迎

Machine Learning

  • Grew out of work in AI
  • New capability for computers

Examples:

  • Database mining
    Large datasets from growth of automation/web.
    E.g., Web click data, medical records, biology, engineering
  • Applications can’t program by hand. 
    E.g., Autonomous helicopter, handwriting recognition, most of Natural Language Processing (NLP), Computer Vision.
  • Self-customizing programs
    E.g., Amazon, Netflix product recommendations
  • Understanding human learning (brain, real AI).

1.2 机器学习是什么?

机器学习定义有很多,广为人知有以下两条:

  • Arthur Samuel (1959). Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed.
    举例:西洋棋
  • Tom Mitchell (1998) Well-posed Learning Problem: A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.
    一句话总结:通过学习经验E后,任务T上的性能度量P有所提升
    举例:西洋棋
    E:下很多棋积累的经验
    T:下棋
    P:与新棋手下的胜率

    举例:垃圾邮件
    E:查看哪些邮件被识别为垃圾邮件,哪些是非垃圾邮件
    T:将邮件分类
    P:对新来的邮件,正确分类的比例

机器学习分类:

  • 监督学习
  • 非监督学习

其它:强化学习、迁移学习、推荐系统等

还会关注:机器学习算法的最佳实践

1.3 监督学习

举例:房价预测(回归问题---连续值)

举例:乳腺癌(分类问题---离散值)

举例:乳腺癌(多个特征)

其实,现实中,特征的个数非常大,怎么处理?支持向量机SVM中有个巧妙方法

一句话总结:监督学习是数据集中的每个样本,都有确定值的标签。
回归问题:函数模型拟合样本数据,预测值是连续值。
分类问题:函数模型分割样本数据,预测值是离散值。

1.4 非监督学习


聚类算法是一种典型的非监督学习算法。它会把数据分成不同的簇。

举例:google新闻会把相同主题的新闻聚集到一起

举例:一些应用

举例:经典的鸡尾酒会问题

一句话总结:非监督学习就是数据集中的样本没有标签。它是一种学习策略,给算法喂大量数据,让算法为我们从数据中找出某种结构。

最佳实践:先用octave/matlab快速实现算法模型,确定算法正常工作后,再用迁移到python/c++/java环境上。(硅谷大公司都这么做)

二、单变量线性回归

机器学习算法的三板斧:

  • 模型函数
  • 代价函数
  • 最小化代价函数(梯度下降法)

2.1 模型表示

还是以房价预测为例:

训练数据集的一些说明:

注:

  • m:表示训练集样本数量
  • X:表示输入特征集合
  • Y:表示输出特征
  • :表示训练集中第i个样本

一句话总结:
对于房价预测问题,从最简单的模型入手,单变量线性回归模型函数是:

2.2 代价函数

\

这里的代价函数是:
一句话总结:对于回归问题,最常用的代价函数是均方误差:
我们的目标是最小化代价函数,从而得到模型函数,用于预测。

2.3 代价函数的直观理解I

为了简化,更直观的理解,本节我们只考虑其它值的情况。


上图中,当时,对于图中的3个训练数据集,此时

接下来,看看时,

那么,不同的的取值对应不同的值,值组成的函数就是代价函数

上图中,从右则的代价函数图形可以看出,当时,代价函数J取最小值,再看下左侧模型图,的模型,完美的拟合了3个训练集点

2.4 代价函数的直观理解II

2.3节中,只考虑了一个参数的情况,本节讨论两个参数的情况。

当改变时,会得到的值,这些J值,得到函数图像是一个曲面,如下图:

下面不用三维空间中的曲面来描述,而是用等高图来表示。等高图可以简单理解为,从上图中“碗口”方向向下看,投影到平面上的圆或椭圆,圆线上的值,即J是相等的。

等高图的两点说明:

  • 同椭圆线上的代价函数值是相等的
  • 最内层的圆心是J的最小值点

如上图中红叉这个点,对应,其模型函数如左图所示,显然不是很好的拟合。
等高图中最内层的圆心是J的最小值,图中红叉点离最内层圆心比较远,也说明了此点对应的模型效果不好


这个图中红星点已经非常接近J的最小值了,但是还不是最小值,此点的模型效果明显要好很多。

像这种画图像并不是一个找出J最小值的好办法,原因有两点:一是非常多特征参数时,没办法可视化代价函数;二是这种办法很笨。下一节介绍最小化代价函数的有效方法。

2.5 梯度下降

梯度下降是最小化代价函数比较常用的一种方法。


梯度下降存在多个局部最小值点。可以选择不同起始点,得到多个局部最小值,然后选择最小的那个。

本着重要事情说三遍的原则:
一图看懂梯度下降算法!
一图看懂梯度下降算法!!
一图看懂梯度下降算法!!!
好了,说完了,直接上图:

2.6 梯度下降的直观理解

为了简化说明,下面讨论只有一个参数的情况

来看偏导部分:

对于一个参数的代价参数,偏导即导数,导数即斜率。上图的上半部分,在最小值点的右边,都是正数,那么是减小的,即是向最小值点方向(左移)移动的。同理,上图的下半部分,也是向最小值点方向(右移)移动的。

来看学习率

一句话总结:

  • 太小收敛慢,太大不收敛
  • 即使固定不变,由于偏导部分越来越小(斜率越来越平),更新幅度自动越来越小
  • 取不同起始点,得到多个局部最小值,取最小的那个

2.7 梯度下降的线性回归




在机器学习中,通常不太会给算法起名字,这里的“批量梯度下降”是指在梯度下降的每一步中,都用到了所有的训练样本。也就是说每一步求和项中的m,都是全部训练样本。因此,批量梯度下降法这个名字说明了我们需要考虑所有这一"批"训练样本,而事 实上,有时也有其他类型的梯度下降法,不是这种"批量"型的,不考虑整个的训练集,而是每次只关注训练集中的一些小的子集 。

代价函数最小值问题,也可以用正规方程求解,但是在大数据量时,梯度下降更适合。

泛化的梯度下降算法,使梯度下降更强大

三、线性代数回顾

参考:点击打开链接

机器学习_吴恩达_week1(机器学习分类+单变量线性回归)相关推荐

  1. Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines)

    Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Support Vector Machines) 文章目录 Ex6_机器学习_吴恩达课程作业(Python):SVM支持向量机(Su ...

  2. 机器学习_吴恩达-总

    机器学习 个人总结:机器学习就是通过数据以及对应的算法让数据变得有规律可循,并应用于生活 机器学习分类:有监督学习和无监督学习 有监督学习:有辅助性的人为操作,帮助机器更好的算出目标值.如数据标注 无 ...

  3. 机器学习学习吴恩达逻辑回归_机器学习基础:逻辑回归

    机器学习学习吴恩达逻辑回归 In the previous stories, I had given an explanation of the program for implementation ...

  4. 吴恩达《机器学习》学习笔记八——逻辑回归(多分类)代码

    吴恩达<机器学习>笔记八--逻辑回归(多分类)代码 导入模块及加载数据 sigmoid函数与假设函数 代价函数 梯度下降 一对多分类 预测验证 课程链接:https://www.bilib ...

  5. 吴恩达《机器学习》学习笔记七——逻辑回归(二分类)代码

    吴恩达<机器学习>学习笔记七--逻辑回归(二分类)代码 一.无正则项的逻辑回归 1.问题描述 2.导入模块 3.准备数据 4.假设函数 5.代价函数 6.梯度下降 7.拟合参数 8.用训练 ...

  6. 不是方阵有逆矩阵吗_吴恩达机器学习笔记18逆矩阵、矩阵转置

    本文是吴恩达<机器学习>视频笔记第18篇,对应第1周第18个视频. "Linear Algebra review(optional)--Inverse and transpose ...

  7. 学习—吴恩达《机器学习》—手敲代码_准备工作之基于Ubuntu系统的 Anaconda(python环境)搭建

    题记--初听不识曲中意,再听已是曲中人. 序曲 一直以来想找个机会与时间去了解一下机器学习.与此同时,吴恩达博士的名字一直在耳边回响,却不知为何如此响彻.后来,在couresa上看到了吴恩达博士的&l ...

  8. 吴恩达《机器学习》课后测试Ex2:逻辑回归(详细Python代码注解)

    基于吴恩达<机器学习>课程 参考黄海广的笔记 import numpy as np import pandas as pd import matplotlib.pyplot as plt ...

  9. 90题细品吴恩达《机器学习》,感受被刷题支配的恐惧

    点击蓝字关注我,有干货领取! 最近翻译了吴恩达<机器学习>课程的配套题库.课程系列本身多有名多经典我就不赘述啦~ 主要是我发现,现在市面上基本都是课程和编程题的翻译版,很少有人翻译测验(q ...

最新文章

  1. 图像几何变换C++实现--镜像,平移,旋转,错切,缩放
  2. ERP项目选型实施注意的几点(二)
  3. 多线程:Immutable对象?如何创建Immutable对象?
  4. HighNewTech:重磅!来自深度学习的三位大牛Yoshua、Hinton、LeCun荣获2018年图灵奖
  5. python整数与IP地址转换
  6. python官网下载哪个版本好玩_Python官网不同版本的下载
  7. 双绞线传输距离_光纤传输有哪些特点 光纤传输原理介绍【图文】
  8. android ramdisk
  9. phpvirtualbox+Virtualbox完整虚拟化环境部署
  10. 使用Redis bitmaps进行快速、简单、实时统计
  11. C++11使用互斥量保护共享数据
  12. HttpServletResponse.getWriter().print乱码,request.getHeader乱码,解决方法
  13. p图软件pⅰc_惊爆软件:王者荣耀P图大神,助力少年国服梦
  14. java编程有什么独特之处?
  15. 软考信息安全工程师备考笔记2:第二章密码学基础与应用备考要点
  16. vue 生成发布包_Vue 3.0 终于正正正正正式发布了!
  17. Android 系统(175)---Android硬件加速原理与实现简介
  18. R语言中不能安装包(Package)的四种解决办法
  19. eclipse设置保护眼睛的背景色与字体
  20. cfile read 最大读取限制_Read文件一个字节实际会发生多大的磁盘IO?

热门文章

  1. 每日一题2021.5.13 D. Corrupted Array
  2. 【Addressable】关于开启ProfilerEvents后导致自动清理缓存报错问题
  3. 数学物理方法 06 定解问题
  4. CF 1138F 超级有意思的一道交互题QVQ
  5. Python下Opencv尝试调用海康GIGE工业相机
  6. 2022SDUT知到/智慧树----C语言第九章测试题解
  7. 【top2】JVM调优
  8. 机关、单位可以使用钉钉办公吗?
  9. 计算机毕业设计ssm校园食堂订餐系统531p9系统+程序+源码+lw+远程部署
  10. admi后台 vue_vue-admin-template后台管理的权限