台大机器学习课程笔记
Learning to Answer Yes/No
上节课,我们主要简述了
机器学习
的定义及其重要性,并用流程图的形式介绍了机器学习的整个过程:
根据模型H,使用演
算法
A,在训练样本D上进行训练,得到最好的h
,其对应的g就是我们最后需要的机器学习的模型函数,
一般g接近于目标函数f。
本节课将继续深入探讨机器学习问题,
介绍感知机Perceptron模型
,并推导课程的第一个机器学习算法:Perceptron Learning Algorithm(PLA)。
Perceptron Hypothesis Set
引入这样一个例子:某银行要根据用户的年龄、性别、年收入等情况来判断是否给该用户发信用卡。
现在有训练样本D,即之前用户的信息和是否发了信用卡。这是一个典型的机器学习问题,
我们要根据D,通过A,在H中选择最好的h,得到g,接近目标函数f,
也就是根据先验知识建立是否给用户发信用卡的模型。
银行用这个模型对以后用户进行判断:发信用卡(+1),不发信用卡(-1)。
在这个机器学习的整个流程中,有一个部分非常重要:就是模型选择,即Hypothesis Set。
选择什么样的模型,很大程度上会影响机器学习的效果和表现。下面介绍一个简单常用的Hypothesis Set:
感知机(Perceptron)。
还是刚才银行是否给用户发信用卡的例子,我们把用户的个人信息作为特征向量x,令总共有d个特征,每个特征赋予不同的权重w,表示该特征对输出(是否发信用卡)的影响有多大。
那所有特征的加权和的值与一个设定的阈值threshold进行比较:大于这个阈值,输出为+1,即发信用卡;小于这个阈值,输出为-1,即不发信用卡。
感知机模型,就是当特征加权和与阈值的差大于或等于0,则输出h(x)=1;当特征加权和与阈值的差小于0,则输出h(x)=-1,而我们的目的就是计算出所有权值w和阈值threshold。
为了计算方便,通常我们将阈值threshold当做w0
,引入一个
x
0
=
1
的量与
相乘,这样就把threshold也转变成了权值,简化了计算。
h(x)的表达式做如下变换:
那么,我们所说的Perceptron,在这个模型上就是一条直线,称之为linear(binary) classifiers。
注意一下,感知器线性分类不限定在二维空间中,在3D中,线性分类用平面表示,在更高维度中,线性分类用超平面表示,即只要是形如
w
T
x