1. define machine learning
machine learning ≈ 寻找一个函数
- step1 定义一个function 集合 -> 模型
- step2 评估function的好坏 -> 策略
- step3 选择最优的function -> 学习算法
2. learning map
上图中不同颜色块代表着不同的类型的事情。
- 蓝色块scenario是指学习情景,通常学习的情景是没法自己控制的,比如说,因为没有data做supervise learning的时候,才会做reforcement learning。手上有什么样的data,决定用什么样的scenario。
- 红色块task是指任务,解决具体的任务,这些问题随着输出的不同,有regression,classification,structured learn,在不同的scenario下都有可能需要解这些task。
- 绿色块method是指模型,同一个任务可以由不同的model解决。
六种不同得学习情景如下:
2.1 supervised learning
监督学习,需要大量的training data,这些数据告诉我们我们要找的function的input和output hat有什么关系,这个function的output=label,这些label往往需要人工的标注出来。如何减少标注的数据的量呢?下面有Semi-supervised learning,reinforcement learning…
2.2 Semi-supervised learning
Semi-supervised learning是指半监督学习。
例如,鉴别猫和狗的类别,已有的data是一部分labelled data,另一部分是unlabelled data,这些未标注的data也是对学习是有帮助的。
2.3 transfer learning
转换学习。
例如,鉴别猫和狗的类别,已有的data是一部分labelled data,另一部分是和猫狗不相干的图片,这些图片可以对训练带来什么样的帮助。。。?待讲……
2.4 unsupervised learning
无监督学习,就是在我们没有任何label的情况下,机器可以学到什么样的function。例如,
- 文本分类,给定大量的文章,机器会不会学会每个词汇的意思,apple->向量表示词汇的意思;
- 画像,给机器大量的狗图像,机器能画出什么样的图像,会不会画出新的狗。
2.5 structured learning
结构学习,输出的是一个复杂的物件。例如,
- 输入一串信号,输出文本;
- 输入中文,输出英文;
- 人脸识别
2.6 reinforcement learning
首先分别监督学习和强化学习,在监督学习中,我们会告诉机器每个问题的答案,而在强化学习中,我们只会告诉机器学习的结果是好,或者不好,至于哪里做的不好,机器无从得之。
两种常见任务如下:
regression
regression任务输出是一个scalar,也就是一个实数值。
比如:预测PM2.5的预测,就是找一个function,给一些过去的资料,如今天上午的PM2.5,昨天上午的PM2.5,预测未来(明天上午)的PM2.5。
classification
classification任务输出的是类别,classification分为binary classification和Multi-class classification。
- binary classification 即二分类任务,给定输入数据,它要求输出 0 或 1,或者 yes or no。例如垃圾邮件分类,我们需要一个function,这个function的输入是一封邮件,训练这个function,让它识别出所给的邮件是或不是一封垃圾邮件。
- Multi-class classification 即多分类任务,它即将做的是一个选择题,每一个选项就是一个类别,它要做的就是选择一个选项。例如文本分类,需要的是一个function,它的输入是一个新闻,它的输出就是这个新闻属于的类别。要训练这种机器就是给它一些资料,告诉它新闻的类别,然后给他新的文章,它就能给出正确的类别。
在解任务的过程中,第一步就是选择一个function set,选不同的function set就是选不同的model,就会得到不同的结果,分为linear model和non-linear model,接下来主要介绍的是non-linear model。
Non-linear Model
非线性模型可分为deep learning,SVM,decision tree, K-NN…
deep learning: DL 的function特别复杂,所以可以做复杂的任务。如下围棋(分类问题):输入时棋盘,输出是下一步的行为。