引言:

最近开始学习“机器学习”,早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程。今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子加深学生的印象。

视频链接(bilibili):李宏毅机器学习(2017)

另外已经有有心的同学做了速记并更新在github上:李宏毅机器学习笔记(LeeML-Notes)

所以,接下来我的笔记只记录一些我自己的总结和听课当时的困惑,如果有能够帮我解答的朋友也请多多指教。

1、人工智能、机器学习、深度学习的关系



人工智能是目标,机器学习是实现目标的手段,而深度学习是实现机器学习的方法之一。

人类想要创造“智能”,有两种方式:

  • hand crafted rules(人工编制的规则):需要大量的if then,是一种被摒弃的路线
  • 让机器可以自己学习:是课程探讨的方向



    Yann LeCun曾经在twitter上发过的一则漫画,讽刺的是很多外形酷炫的所谓AI,拆开看源码其实就是很多的hand crafted rules程序而已。这又不得不让人联想到以前有人说过,“用PPT写的往往不是人工智能,用python写的才是”。这么看来,用python写的也不保险啊。

2、机器学习做的是什么事情?



机器学习≈寻求一个函数(function)

这个函数可以在我们输入确定的数据,经过它以后,可以输出我们想要的结果。

3、机器如何学习?



如何找到上面提到的函数?以图像识别为例,想要找到合适的函数,需要先准备一系列的函数,这一系列的函数集被称为模型(Model)。模型里有的函数是我们需要的,比如上图中的f1,因为当你输入猫的图片,它可以给出正确的结果。而f2显然不是我们想要的函数。机器学习的目的就是要找出可以认出所有动物的最优函数f*。当在训练数据中,既给出了输入的数据(图片),又给出了我们想让机器输出的结果(动物的名称),这种机器学习被称为监督学习。在监督学习中给出的输出结果又被称为标签。

4、机器学习的步骤



机器学习的过程往往分为3大步(类似于将大象放进冰箱):

  • 定义一个函数集合,或者选择何种模型
  • 让机器可以衡量一个函数的好坏
  • 让机器可以挑出最好的函数

5、机器学习的学习路线



机器学习分为(按场景,越来越难):

  • 监督学习(按任务):

    1. 回归问题(regression):需要输出的是数字(scalar),比如预测明天PM2.5的数据
    2. 分类问题(classificasion):
      • 二元分类问题:需要输出的是“是”或“否”,比如垃圾邮件的判别
      • 多元分类问题:比如新闻内容的自动分类,属于财经、体育、政治……
    3. 结构化学习(structure learning):就像暗黑大陆,有很多我们还不了解的东西,比较有名的方法——生成对抗网络GAN
  • 半监督学习:少量有标签的数据,大量无标签数据
  • 迁移学习:除了有一些无标签的数据,还有大量与要做的工作无关的数据
  • 无监督学习:无标签的数据学习
  • 强化学习:需要通过评价来学习,learning from critics,比较符合人类学习的模式

其中分类问题可以用到的模型有:

  • 线性模型:最简单
  • 非线性模型:要主要花精力的地方,非线性模型里最耳熟能详的就是深度学习模型(又分为以下方法):
    1. 深度学习

      • 图像识别:吴恩达当年在google用深度学习让计算机识别出了猫
      • 围棋:AlphaGo,类似于一个19*19(围棋棋盘)的分类问题
    2. K-NN
    3. 决策树
    4. SVM(支持向量机)

李宏毅老师机器学习课程笔记_ML Lecture 0-1: Introduction of Machine Learning的更多相关文章

  1. 李宏毅老师机器学习课程笔记_ML Lecture 3-1: Gradient Descent

    引言: 这个系列的笔记是台大李宏毅老师机器学习的课程笔记 视频链接(bilibili):李宏毅机器学习(2017) 另外已经有有心的同学做了速记并更新在github上:李宏毅机器学习笔记(LeeML- ...

  2. 李宏毅老师机器学习课程笔记_ML Lecture 1: ML Lecture 1: Regression - Demo

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  3. 李宏毅老师机器学习课程笔记_ML Lecture 2: Where does the error come from?

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  4. 李宏毅老师机器学习课程笔记_ML Lecture 1: 回归案例研究

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  5. 李宏毅老师机器学习课程笔记_ML Lecture 0-2: Why we need to learn machine learning?

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  6. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 10—Advice for applying machine learning 机器学习应用建议

    Lecture 10—Advice for applying machine learning 10.1 如何调试一个机器学习算法? 有多种方案: 1.获得更多训练数据:2.尝试更少特征:3.尝试更多 ...

  7. Andrew 机器学习课程笔记

    Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...

  8. Andrew Ng机器学习课程笔记(四)之神经网络

    Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...

  9. 【读书笔记与思考】Andrew 机器学习课程笔记

    Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...

随机推荐

  1. Java的锁机制--synchronsized关键字

    引言 高并发环境下,多线程可能需要同时访问一个资源,并交替执行非原子性的操作,很容易出现最终结果与期望值相违背的情况,或者直接引发程序错误. 举个简单示例,存在一个初始静态变量count=0,两个线程 ...

  2. HAProxy实现动静分离和负载均衡

    由于电脑配置渣,带不动多台虚拟机,所以采用httpd虚拟主机的方式来实现 1 2 3 CentOS 6.7 httpd: 2.2.15 HAProxy: 1.5.4 主机规划 1 2 3 4 5 - ...

  3. Excel技巧:如何绘制一份优秀的甘特图(项目管理)

    作者:秦路,天善智能特约专家.资深数据分析师,数据化运营专家.擅长结合运营和数据,建立数据化运营体系. 个人公众号:秦路(微信ID:tracykanc) 今天我给大家分享的内容是如何利用Excel绘制 ...

  4. 【51nod1462】树据结构

    Source and Judge 51nod1462 Analysis 请先思考后再展开 dffxtz师兄出的题 做法一:暴力树剖+分块,时间复杂度为 $O(nlognsqrt n)$ 做法二:利用矩 ...

  5. 放弃了程序员互联网高薪,跑去事业单位做IT的尴尬

    “你是程序员对吧?”“是啊,怎么了?”“那你帮我修一下电脑吧.”我原来也是一个重点大学毕业,基本上事业里面搞IT就干这些事情,要是以前,我肯定会想,我是程序员和修电脑有啥关系. 但是自从进了事业单位, ...

  6. 关于HTTP那些事

    写这篇文章的原因 记录前端性能优化用到的关键概念 简化大家对HTTP的学习 大家或许面试的时候可以用得到哦 HTTP是什么 Web的应用层协议(超文本传输协议HyperText Transfer Pr ...

  7. 前后端分离下的跨域CAS请求

    最重要的两点: ajax请求跨域的时候,默认不会携带cookie. 请求分为普通请求(HttpRequest)和Ajax请求(XMLHttpRequest) 先屡一下跨域CAS认证的流程: 前端发起a ...

  8. 报错: raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

    Django2.0同步Mysql数据库时出现的问题 执行 python manage.py makemigrations 报错 # 报错位置 File "G:\python\lib\site ...

  9. 研究开源源码之Myrmec

    好久没写博客了,自己也弄不清是懒了还是忙了.毕竟白天需要工作,晚上有时候看看资料,有时候陪家人,有时候约朋友......更加累了,可能由于累了就懒得总结了. 今天有同事问我关于代码检查文件类型的问题. ...

  10. Python - requests发送请求报错:UnicodeEncodeError: 'latin-1' codec can't encode characters in position 13-14: 小明 is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.

    背景 在做接口自动化的时候,Excel作为数据驱动,里面存了中文,通过第三方库读取中文当请求参数传入 requests.post() 里面,就会报错 UnicodeEncodeError: 'lati ...