机器学习概述
1 符号声明
本文中向量均为列向量
-
XXX:输入变量
-
YYY:输出变量
-
xxx:输入变量的取值(输入输出变量的取值用小写字母表示,变量可以是标量或向量,都用相同类型字母表示。)
-
yyy:输出变量的取值
-
x=(x(1),x(2),...,x(i),...,x(n))Tx=(x^{(1)},x^{(2)},...,x^{(i)},...,x^{(n)})^Tx=(x(1),x(2),...,x(i),...,x(n))T:输入实例 xxx 的特征向量,x(j)x^{(j)}x(j) 表示 xxx 的第 jjj 个特征
-
xi=(xi(1),xi(2),...,xi(j),...,xi(n))Tx_i=(x_i^{(1)},x_i^{(2)},...,x_i^{(j)},...,x_i^{(n)})^Txi=(xi(1),xi(2),...,xi(j),...,xi(n))T:多个输入实例的第 iii 个实例
-
T={(x1,y1),(x2,y2),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\}T={(x1,y1),(x2,y2),...,(xN,yN)}:训练集,其中(xi,yi)(x_i,y_i)(xi,yi)称为样本或样本点
2 三要素与步骤
统计学习方法的三要素:**模型 (model) + 策略 (strategy) + 算法(algorithm) **
实现统计学习方法的步骤如下:
- (1) 得到一个有限的训练、数据集合:
- (2) 确定包含所有可能的模型的假设空间,即学习模型的集合;
- (3) 确定模型选择的准则,即学习的策略;
- (4) 实现求解最优模型的算法,即学习的算法;
- (5) 通过学习方法选择最优模型;
- (6) 利用学习的最优模型对新数据进行预测或分析。
3 机器学习方法分类
机器学习(统计学习)基本分类:包括监督学习、无监督学习、强化学习。 有时有半监督学习、主动学习。
- 监督学习:有标注数据,X 和 Y 均为连续变量的预测问题称为回归问题; Y 为有限个离散变量的预测问题称为分类问题;X 和 Y 均为变量序列的预测问题称为标注问题。
- 无监督学习:无标注数据。
- 强化学习:指智能系统在与环境的连续互动中学习 最优行为策略的机器学习问题,目标不是短期奖励的最大化,而是长期累积奖励的最大化 。
- 半监督学习:利用未标注数据,辅助标注数据,进行监督学习,以较低的成本达到较好的学习效果。
- 主动学习:机器不断主动给出实例让教师进行标注,然后利用标注数据学习预测模型的机器学习问题。
监督学习又可分为生成模型和判别模型:
- 生成方法由数据学习联合概率分布 P(X,Y)P(X ,Y)P(X,Y) , 然后求出条件概率分布 P(Y∣X)P(Y|X)P(Y∣X) 作 为预测的模型,即生成模型,典型的生成模型有朴素贝叶斯法和隐马尔可夫模型。
- 判别方法由数据直接学习决策函数 f(X)f(X)f(X) 或者条件概率分布 P(Y∣X)P(Y|X)P(Y∣X) 作为预测的模型,即判别模型。典型的判别模型包括:k 近邻法、感知机、决策树、逻辑回归模型、最大熵模型、 支持向量机、提升方法和条件随机场等。
统计学习或机器学习方法按模型种类分类:
(1)概率模型与非概率模型(确定性模型):
- 概率模型(概率图模型):决策树、朴素贝叶斯、隐马尔可夫模型、条件随机场、概率潜在语义分析、潜在狄利克雷分配、高斯温合模型、逻辑回归
- 非概率模型:感知机、支持向量机、 k 近邻、AdaBoost 、 k 均值、潜在语义分析、神经网络、逻辑回归
- 区别:区别不在于输入与输出之间的映射关系,而在于模型的内在结构。 概率模型一定可以表示为联合概率分布的形式,其中的变量表示输入、输出、隐变量甚至参数。而针对非概率模型则不一定存在这样的联合概率分布。
(2)机器学习,特别非概率模型,可分为线性模型(函数 y=f(x)y = f(x)y=f(x) 或 z=g(x)z = g(x)z=g(x) 是线性函数)与非线性模型:
- 线性模型:感知机、线性支持向量机、 k 近邻、 k 均值、潜在语义分析
- 非线性模型:核函数支持向量机、 AdaBoost、神经网络
(3)参数化模型与非参数化模型:参数化模型假设模型参数的维度固定,模型可以由有限维参数完 全刻画:非参数化模型假设模型参数的维度不固定或者说无穷大,随着训练数据量的 增加而不断增大。
- 参数化模型:感知机、朴素贝叶斯、逻辑回归、 k 均值、高斯混合模型
- 非参数化模型:决策树、支持向量机、 AdaBoost 、 k 近邻、潜在语义分析、概率潜在语义分析、
潜在狄利克雷分配
4 监督学习的应用
监督学习的应用主要在三个方面:分类问题、标注问题和回归问题。
分类问题:T={(x1,y1),(x2,y2),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\}T={(x1,y1),(x2,y2),...,(xN,yN)}是训练数据集,学习系统由训练数据学习 一个分类器 P(Y∣X)P(Y|X)P(Y∣X) 或 Y=f(X)Y = f(X)Y=f(X); 分类系统通过学到的分类器 P(Y∣X)P(Y|X)P(Y∣X) 或 Y=f(X)Y = f(X)Y=f(X) 对于新的输入实例 xN+1x_{N+ 1}xN+1 进行分类,即预测其输出的类标记 yN+1y_{N+1}yN+1。
标注问题:输入是一个观测序列,输出是一个标记序列或状态序列。标注问题的目标在于学习一个模型,使它能够对观测序列给出标记序列作为预测 。 注意 ,可能的标记个数是有限的,但其组合所成的标记序列的个数是依序列长度呈指数级增长的。
给定一个训练数据集T={(x1,y1),(x2,y2),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\}T={(x1,y1),(x2,y2),...,(xN,yN)},其中xi=(xi(1),xi(2),...,xi(n))Tx_i=(x_i^{(1)},x_i^{(2)},...,x_i^{(n)})^Txi=(xi(1),xi(2),...,xi(n))T是输入观测序列,yi=(yi(1),yi(2),...,yi(n))Ty_i=(y_i^{(1)},y_i^{(2)},...,y_i^{(n)})^Tyi=(yi(1),yi(2),...,yi(n))T是相应的输出序列,nnn是序列长度。构建模型,即条件分布P(Y(1),Y(2),...,Y(n)∣X(1),X(2),...,X(n))P(Y^{(1)},Y^{(2)},...,Y^{(n)}|X^{(1)},X^{(2)},...,X^{(n)})P(Y(1),Y(2),...,Y(n)∣X(1),X(2),...,X(n))。对一个观测序列xN+1=(xN+1(1),xN+1(2),...,xN+1(n))Tx_{N+1}=(x_{N+1}^{(1)},x_{N+1}^{(2)},...,x_{N+1}^{(n)})^TxN+1=(xN+1(1),xN+1(2),...,xN+1(n))T,找到条件概率P((yN+1(1),yN+1(2),...,yN+1(n))T∣(xN+1(1),xN+1(2),...,xN+1(n))T)P((y_{N+1}^{(1)},y_{N+1}^{(2)},...,y_{N+1}^{(n)})^T|(x_{N+1}^{(1)},x_{N+1}^{(2)},...,x_{N+1}^{(n)})^T)P((yN+1(1),yN+1(2),...,yN+1(n))T∣(xN+1(1),xN+1(2),...,xN+1(n))T),最大的标记序列yN+1=(yN+1(1),yN+1(2),...,yN+1(n))Ty_{N+1}=(y_{N+1}^{(1)},y_{N+1}^{(2)},...,y_{N+1}^{(n)})^TyN+1=(yN+1(1),yN+1(2),...,yN+1(n))T。
标注常用的统计学习方法有:隐马尔可夫模型、条件随机场。
回归问题:T={(x1,y1),(x2,y2),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\}T={(x1,y1),(x2,y2),...,(xN,yN)}是训练数据集,学习系统由训练数据学习Y=f(X)Y = f(X)Y=f(X); 对于新的输入实例 xN+1x_{N+ 1}xN+1 进行预测,即预测其输出的yN+1y_{N+1}yN+1。