监督学习

  1. 输入空间、输出空间、特征空间
  2. 分类问题
  3. 回归问题
  4. 标注问题
  5. 重要假设
  6. 假设空间
  7. 问题形式

1、输入空间、输出空间、特征空间

输入空间(X):所有可能取值的空间,可以是连续或离散的,有时候也可以是欧式空间RnR^n

输出空间(Y):所有可能取值的空间,可以是连续或离散的,有时候也可以是欧式空间RnR^n

一般输出空间远小于输入空间

特征空间:每个实例都由特征向量表示,输入x的特征向量记作
x=(x(1),x(2),,x(i),,x(n))T x = (x^{(1)},x^{(2)},\ldots,x^{(i)},\ldots,x^{(n)})^T
其中,x(i)x^{(i)}表示xx的第ii个特征。
特征空间每一维对应一个特征,第ii个实例表示为
xi=(xi(1),xi(2),,xi(n))T x_i=(x_i^{(1)},x_i{(2)},\ldots,x_i^{(n)})^T
有时候输入空间和特征空间是相同的,有时候不同,需要将实例映射到特征空间,比如将图像表征为颜色特征。

模型实际上都是定义到特征空间的。

监督学习从训练数据集合中学习模型,对测试数据进行预测。训练数据由输入输出对组成,表示如下:
T={(x1,y1),(x2,y2).,(xN,yN)}T = \{(x_1,y_1),(x_2,y_2).\ldots,(x_N,y_N)\}

2、分类问题

分类问题包括学习与分类两个过程。在学习的过程中,根据已知的训练样本数据集利用有效的学习方法学习一个分类器;在分类中,利用学习的分类器对新的输入实例进行分类。

from matplotlib import pyplot as pl
import numpy as np
%matplotlib inline

#输出是离散的有限个变量属于分类问题
x1 = [1,3,4,7,8,9]
y1 = [1,1,1,1,1,1]
x2 = [2,5,6]
y2 = [0,0,0]
pl.figure(figsize = (8, 4))#画布区域
pl.plot(x1, y1,'ro')#y=1绘图,"ro"表示颜色为红的圈
pl.plot(x2, y2,'ro',color="blue")#y=0绘图

统计学习方法(一)之监督学习

常见分类问题的基本模型:

朴素贝叶斯、神经网络、KNN、感知机、决策分类树、logistic回归、SVM、boost提升树

举例:文本内容分类

文本分类是根据文本的特征将其划分到已有的类中。输入是文本的特征向量,输出是文本的类别。通常把文本中的单词定义为特征,每个单词对应一个特征。单词的特征可以是二值的:如果单词在文本中出现则取值1,否则是0;也可以是多值的,表示单词在文本中出现的频率。形象地,如果“股票”“银行”“货币”这些词出现很多,这个文本可能属于经济类,如果“网球”“比赛”“运动员”这些词频繁出现,这个文本可能属于体育类。

3、回归问题

回归用于预测输入变量与输出变量之间的关系,特别是当输入变量的值发生变化时,输出变量的值随之发生的变化。回归问题的学习等价于函数拟合:选择一条函数曲线,使其很好地拟合已知数据且很好地预测未知数据。

回归问题按照输入变量的个数,可以分为一元回归和多元回归;按照输入变量与输出变量之间关系的类型,可以分为线性回归和非线性回归。

#输入输出都是连续的属于回归问题
x = np.linspace(-10, 5)#在指定的间隔内返回均匀间隔的数字
y = x**3
pl.figure(figsize = (8, 4))#画布区域
pl.plot(x, y, color="blue", linewidth = 1.5)#绘图

统计学习方法(一)之监督学习

常见回归问题的基本模型:

神经网络、决策回归树

举例:股票预测

一个回归学习用于股票预测的例子:假设知道一个公司在过去不同时间点的市场上的股票价格(或一段时间的平均价格),以及在各个时间点之间可能影响该公司股份的信息(比如,公司前一周的营业额)。目标是从过去的数据学习一个模型,使它可以基于当前的信息预测该公司下一个时间点的股票价格。具体地,将影响股价的信息视为自变量(输入特征),而将股价视为因变量(输出的值)。将过去的数据作为训练数据,就可以学习一个回归模型,并对未来股份进行预测。实际我们知道想做出一个满意的股价预测模型是很难的,因为影响股份的因素非常多,我们未必能获得那些有用的信息。

4、标注问题

标注问题的输入是一个观测序列,输出的是一个标记序列或状态序列。
也就是说,分类问题的输出是一个值,而标注问题输出是一个向量,向量的每个值属于一种标记类型。

标注问题也可以分为两步:学习和标注两个过程。首先给定一个训练数据集
T=(x1,y1),(x2,y2),,(xN,yN)T = (x_1,y_1),(x_2,y_2),\ldots,(x_N,y_N)
其中
xi=(xi(1),xi(2),,xi(n))Tx_i=(x_i^{(1)},x_i^{(2)},\ldots,x_i^{(n)})^T
i=1,2,,Ni=1,2,\ldots,N是输入观测序列,yi=(yi(1),yi(2),,yi(n))Ty_i = {(y_i^{(1)},y_i^{(2)},\ldots,y_i^{(n)})^T}是相应的输出标记序列,nn为序列长度,对于不同样本可以有不同的值。

利用jieba.posseg模块来进行词性标注,会给出分词后每个词的词性。词性标示兼容ICTCLAS 汉语词性标注集

#pip install jieba安装jieba包
from jieba import posseg as pseg
words = pseg.cut("我喜欢吃苹果")#对照字典
for word, flag in words:
    print('%s %s' % (word, flag))
我 r          #代词
喜欢 v        #动词
吃 v          #动词
苹果 n        #名词

常见标注问题的基本模型:

隐性马尔可夫模型、条件随机场

举例:词性标注

自然语言处理中的词性标注(part of speech tagging)就是一个典型的标注问题:给定一个由单词组成的句子,对这个句子中的每一个单词进行词性标注,即对一个单词序列预测其对应的词性标记序列。

5、重要假设

监督学习假设输入与输出的随机变量X和Y遵循联合概率分布P(X,Y),对学习系统来说联合概率分布是未知的,训练数据与测试数据被看作是依联合概率分布P(X,Y)独立同分布产生的。

6、假设空间

监督学习的模型可以是概率模型或非概率模型,由条件概率分布P(YX)P(Y|X)或决策函数 (decision function)Y=f(X)Y = f(X)表示,随具体学习方法而定。对具体的输入进行相应的输出预测时,写作P(yx)P(y|x)Y=f(x)Y = f(x)

7、问题形式化

在学习过程中,学习系统利用给定的训练数据集,通过学习(或训练)得到一个模型,表示为条件概率分布 P^(YX)\hat{P}(Y|X) 或决策函数 Yf^(X)Y = \hat f (X)。条件概率分布 P^(YX)\hat P (Y|X) 或决策函数 Yf^(X)Y = \hat{f}(X) 描述输入与输出随机变量之间的映射关系。
统计学习方法(一)之监督学习
在预测过程中,预测系统对于给定的测试样本集中的输入xN+1x_{N+1} ,由模型或 yN+1argmaxP^(yN+1xN+1)y_{N+1} = argmax\hat {P}(y_{N+1}|x_{N+1})yN+1=f^(xN+1)y_{N+1} = \hat{f}(x_{N+1})给出相应的输出 yN+1y_{N+1}。如果这个模型有很好的预测能力,训练样本输出 yiy_i 和模型输出 f^(xi)\hat f(x_i) 之间的差就应该足够小

参考

[1]统计学习方法,李航著.
[2]自然语言处理3———词性标注
[3]分类与回归的区别,知乎

相关文章: