本博客是针对李宏毅教授在Youtube上上传的课程视频《ML Lecture 0-1: Introduction of Machine Learning》的学习笔记。在Github上也po了这个系列学习笔记(MachineLearningCourseNote),觉得写的不错的小伙伴欢迎来给项目点个赞哦~~

Lecture 0-1: Introduction of Machine Learning

What we expect to learn from this course?

Artificial Intelligence (AI) aims to make machines as smart as human beings. But for long, people don’t know how to do this.

Until 1980s, machine learning (ML) comes into beings. Just like its name, machine learning aims to make machine learn to learn.

Q1: what is the relationship between AI and ML?

A: ML is a potential way to achieve AI.

Q2: what is the relationship between ML and deep learning (DL)?

A: DL is one of methods of ML.

  • Extension: Creature’s Instinct: Beaver Build Dam

Beavers are born with the instinct to move stones to build dams as long as they hear the sounds of water flows.

This can be summarized to a rule for beaver: When hear the sounds of water flows, build dam!

Compare it with Human Being’s Instinct

  • AI is just some “if”s ?

No, it’s not what we are chasing in the course!

What is Machine Learning ?

  • Do Speech Recognition

  • Do Image Recognition

ML mostly equal to Looking for a Function

True function to do perfect speech recognition is too complex, there are efforts starting from 1960s trying to write enough rules to include all mappings from voice to word, however it’s still not finished yet! So we need machine to help us find out the function From Data.

To simplify, we let machines try to find the true function using training data we give them. After that, machines would give response to new input data we give to them based on rules that they have learned from training.

How to find this function: Framework

Example: Image Recognition

First, we have a set of function. (This set is called Model)

Then, we have training data, they consist of some input & output pairs, respectively used as function input and function output. (This method also known as Supervised Learning)

  • How to find the true function from the set?

We need a good algorithm to find the best function (f∗" role="presentation" style="position: relative;">f∗f∗function that has greatest goodness).

After we find the best function f∗" role="presentation" style="position: relative;">f∗f∗, how can we make sure that a machine can recognize the cat in a picture that it has never seen before? Well, that is exactly one of the most important problem in ML, that is: can machine draw inferences?

  • Three Steps to do ML

1.Determine a function set;

2.Enable machines to measure how good a function is;

3.Give machines an algorithm that can help pick the “best” function.

Learning Map

  • What ML technics you can learn from this course ?

Next, we give a simple introduction to conceptions included in the map.

Regression

Definition: The output of function that machine is trying to learn is a scalar.

Example: Predicting PM2.5

Classification

Two types:

- Binary Classification: output Yes or No

- Multi-class Classification: output i (i∈" role="presentation" style="position: relative;">∈∈{1,2,3,..,N})

Example for binary classification: Gmail filter Spams

Example for multi-class classification: Document Classification

Model

Different model = Different set of functions -> Different Performance of machine

Linear Model

Non-linear Model

Deep Learning is one of Non-linear models. When doing deep learning, it usually means that the goal function is very very complex, and therefore it can also complete complex tasks such as image recognition, playing GO!

All technics mentioned above belong to field of Supervised Learning, it usually comes with great quantities of training data. These training data are some input/output pairs of target function, and normally the output need to be manually labelled, so the function output is also called label.

Then, how to collect a large amount of labelled data?

A: Semi-supervised Learning.

Semi-supervised Learning

Unlabelled data can also help machine learning!

Another way to save data: Transfer Learning

(labelled/unlabelled) Data that are not directly linked with goal problem may be helpful to the goal problem.

What can machine learn without label: Unsupervised Learning

  • Machine creates new animals after seeing some animal images

Structured Learning: Output Result with Structure

In speech recognition: input - a voice clip, output - corresponding sentence.

In translation: input - Chinese sentence, output - English sentence.

In object detection: input - images, output - boundary of object.

Usually, many people heard of regression and classification, but seldom heard of Structured Learning, even textbooks may ignore it.

However, structured learning is a very important part of ML field!

Reinforcement Learning

  • Supervised v.s. Reinforcement

Supervised: Have a supervisor to teach machine; (Learning from teacher)

Reinforcement: Let machine to explore and teach itself. (Learning from critics)

So Reinforcement Learning is closer to how human beings learn.

Example: Plying GO

Relation between Terminomogy

Data you have determines what scenario your problem is in, the type of your problem defines its task, and we can use different models (methods) to solve same problems.

ML Lecture 0-1: Introduction of Machine Learning的更多相关文章

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

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

  2. 【Machine Learning is Fun!】1.The world’s easiest introduction to Machine Learning

    Bigger update: The content of this article is now available as a full-length video course that walks ...

  3. Introduction to Machine Learning

    Chapter 1 Introduction 1.1 What Is Machine Learning? To solve a problem on a computer, we need an al ...

  4. Introduction of Machine Learning

    李宏毅主页 台湾大学语音处理实验室 人工智慧.机器学习与深度学习间有什么区别? 人工智能——目标 机器学习——手段 深度学习——机器学习的一种方法 人类设定好的天生本能 Machine Learnin ...

  5. 李宏毅老师机器学习课程笔记_ML Lecture 0-1: Introduction of Machine Learning

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

  6. Introduction To Machine Learning Self-Evaluation Test

    Preface Section 1 - Mathematical background Multivariate calculus take derivatives and integrals; de ...

  7. Machine Learning Algorithms Study Notes(1)--Introduction

    Machine Learning Algorithms Study Notes 高雪松 @雪松Cedro Microsoft MVP 目 录 1    Introduction    1 1.1    ...

  8. 【机器学习Machine Learning】资料大全

    昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...

  9. 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

随机推荐

  1. Shell之Here Document

    EOF本意是 End Of File,表明到了文件末尾. 使用格式基本是这样的: 命令 << EOF 内容段EOF将“内容段”整个作为命令的输入.你的代码里就是用cat命令读入整段字符串并 ...

  2. React Docs(1)

    安装 React在codepen上提供了一个Hello,World项目事例,只需打开网站,即可尝试React.另外还提供了一个html文件的Hello,World项目,项目中引用CDN的react.j ...

  3. Ubuntu18.04LTS安装docker报错:Command 'lsb_release' not found

    Ubuntu18.04LTS安装docker在执行sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/ ...

  4. harbor自动清理镜像

    harbor定时清理镜像 ​ 分享下最近写harbor仓库镜像自动清理脚本思路,很长时间不写shell脚本,这次的脚本也是匆匆写的,还有很多可优化点,感兴趣的可以参考自己优化下,写的不完善地方也希望指 ...

  5. NLP(二十二)利用ALBERT实现文本二分类

      在文章NLP(二十)利用BERT实现文本二分类中,笔者介绍了如何使用BERT来实现文本二分类功能,以判别是否属于出访类事件为例子.但是呢,利用BERT在做模型预测的时候存在预测时间较长的问题.因此 ...

  6. JavaScript常见的六种继承方式

    前言 面向对象编程很重要的一个方面,就是对象的继承.A 对象通过继承 B 对象,就能直接拥有 B 对象的所有属性和方法.这对于代码的复用是非常有用的. 大部分面向对象的编程语言,都是通过"类 ...

  7. 前端每日实战:147# 视频演示如何用纯 CSS 创作透视按钮的悬停特效

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/qJEdKb 可交互视频 此视频是可 ...

  8. 这样学习Servlet,会事半功倍!!

    前言 工作已经有一段时间了,如果让我重新学Servlet,我会怎么学呢?下面抛出两个常见的问题,我分开来解答 2020年了,还需要学Servlet吗? Servlet的学习路线(学习重点) 一.202 ...

  9. CODING 携手优普丰,道器合璧打造敏捷最佳实践

    随着全球进入到信息化时代,越来越多的企业迫切地寻求新的商业模式,要求迭代.探索.不断加速创新以响应快速变化的市场.如今一系列新兴概念如敏捷开发.极限编程.微服务.自动化.DevOps 等大行其道,然而 ...

  10. 面试官系统精讲Java源码及大厂真题系列之Java线程安全的解决办法

    1. 背景 1.1 static修饰类变量.方法.方法块.  public + static = 该变量任何类都可以直接访问,而且无需初始化类,直接使用 类名.static 变量 1.2 多个线程同时 ...