03_机器学习问题分类
一、根据不同输出空间分类
1. 分类问题
对于输入 x \pmb x xxx ,能够给出一个标记 y y y 。
- 二元分类 (Binary Classification), y ∈ { − 1 , + 1 } y \in \{-1,+1\} y∈{−1,+1}。
- 多元分类 (Multiclass Classification), y ∈ { a 1 , a 2 , . . . , a n } y \in \{a_1, a_2,...,a_n\} y∈{a1,a2,...,an}
2. 回归问题
对于输入 x \pmb x xxx ,能够给出一个实值 y y y 。
- 线性回归 (Linear Regression), y ∈ R y \in \R y∈R。
- 对数几率回归 (Logistic Regression), y ∈ ( 0 , 1 ) y \in (0,1) y∈(0,1)。
3. 结构化学习问题
输入输出的结构不再局限于是向量和标量,还可能是序列、列表、树…。这是比较复杂的一类问题。
二、根据数据是否带标记分类
1. 监督学习
数据集的样本上是带有标记的,即 ( x , y ) (\pmb x,y) (xxx,y) 的形式。
2. 无监督学习
数据集的样本上不带标记,常见的场景有:
- 聚簇问题 (Clustering),像是“无监督情况下的多元分类”
- 密度估计 (Density Estimation),像是“无监督情况下的回归问题”
- 离群值检测 (Outlier Detection),像是“无监督情况下的二元分类”
3. 半监督学习
数据集中只有一部分样本上带有标记,利用未标注的样本辅助进行监督学习。
三、强化学习
对主体做出的每一个动作进行打分(奖励/惩罚)主体每次执行分数最高的动作,不断迭代进行训练,使主体最终能够在一个状态下做出最正确的动作来转移到下一个状态。
四、根据数据集供给方式分类
1. 批量学习
Batch Learning,即将数据集一次性批量输入学习算法,填鸭式学习。一次性得到学习到的假设函数 g g g 。
2. 在线学习
Online Learning,按照顺序,不断学习,不断修正当前的 g g g 。PLA中的“遇到错误点就更新”。
强化学习一般是在线学习的。
3. 主动学习
Active Learning,当模型遇到束手无策的输入时,会主动提出问题以得到正确的输出,模型再进行改进。
五、输入数据是否具体
1. 具体的特征
输入都是一些非常明确的特性;我们能够明确地给出详细的论证,说明这些特性影响着输出。
如:顾客的月薪,人的身高体重,性别,地区…(输入)肯定影响着这个顾客会不会办健身房的会员卡(输出)
2. 原始的特征
输入都是没有经过加工的特征信息;好比说直接给一个真人,而不告诉身高体重年龄性别等具体信息。我们可以确定它们作为输入,但不能明确地给出详细论证,证明它们对输出产生怎样的影响。相比于具体特征,算法本身要开始在原始特征中去寻找信息,并抽象为具体特征(但人不需要去关注这些具体特征叫什么)。
如:手写数字识别的每一个数字图片(输入)能够被模型判别出是0,1,2…(输出)每一张图片flatten后的向量上每一维都有其物理意义,但无法直接论证出它们怎样影响着结果,只知道有影响。
3. 抽象的特征
比原始特征还要抽象,我们往往不清楚其是否真的能对输出产生影响。相比于原始特征,算法得完全靠自己去寻找哪些特征能够作为输入。
如:用户推荐歌曲中的用户id,歌曲id,对歌曲的评分(输入)是否能够影响预测任意一个用户给某一首歌的打分如何(输出)