上一篇我们介绍了线性代数的基本知识,并以PCA作为案例进行了讲解。在本篇中,我们依然按照相同的思路进行开展:首先复习一下概率的相关知识,最后以对率回归(对数几率回归)为案例进行讲解。
AI圣经《deep learning》一书把线性代数、概率与信息论和数值计算三部分作为机器学习中基础的数学知识进行单独设置章节来讲解,可见这几部分对机器学习乃至深度学习的重要性。
所以我们本篇复习一下高中到大学学习过的概率论知识(至于信息论的知识,我们会到基础机器学习的版块和相关案例结合一起讲解),希望和大家一起学习进步。
在这里,我们采取和统计二者的对比来介绍概率论的相关定义。
简而言之,统计是演绎分析,概率为归纳总结。形象而言,统计是黑箱子 ,我们通过手里的黑白球来推断箱子里的球的分布;概率则是透明箱子 ,我们通过箱子里的球的状况总结分布,从而判断手中球的颜色概率。
首先,具有以下三个特征的试验称为随机试验(用E来表示):
在随机试验中,实验的结果中每一个可能发生的事件叫做实验的样本点(Sample point,通常用x来表示);所有的样本点x1,x2,x3···,xn构成的集合叫做样本空间(Sample space,通常用S来表示):
随机变量根据能否一一列举(不是有限与无限)分为离散型和非离散型,其中非离散型主要指连续型随机变量。我们将根据这两类来介绍其概率分布:
1.伯努利分布(Bernoulli分布,0-1分布)
1.均匀分布:X~U(a,b)
关于正态分布,还有多维和混合的形式。
4.狄拉克分布(Dirac分布)
正统说来,应该首先说说线性回归,即y=wTx+b的模型。但这部分知识较为简单,读者可以自行查阅西瓜书或者其他资料,在这里我们不再赘述。
如果我们希望输入输出之间由线性到非线性之间的映射转换,我们可以采取很多办法:
例如将
继续深挖,信号专业应该有一个激活函数叫单位阶跃函数,如下图所示:
那么,我们如果把线性回归的输出y值(也就是sigmoid的输入量z)映射为相应的概率(0~1之间),从而就与概率论知识(主要是二分类任务,所以针对于伯努利分布)结合起来。
具体而言,我们有以下公式:
且这里虽名为“回归”,实际是一种“分类”,具体是一种“0-1分类”。(由西瓜书1.2基本术语一节知,预测值为离散值此类任务为“分类”;反之为“回归”)
有了上述基本知识作为铺垫,我们继续深入探究对率回归。
首先,我们把y看成正样本(1-y为负样本)的概率(类后验概率):
换一个角度思考,从机器学习的思想出发,我们的策略应该是首先设立一个代价函数,然后对其进行优化。
常见的代价函数有:
1. 0-1代价函数(0-1 cost function)
我们采用对数损失函数作为logistic rg的cost function,则有:
如果此时y ̂=1,则对这个样本而言的cost=0,表示这个样本的预测完全准确。
如果此时预测的概率y ̂=0,那么cost→∞。直观解释的话,由于此时样本为一个正样本,但是预测的结果p(y=1|x)=0, 也就是说预测 y=1的概率为0,那么此时就要对损失函数加一个很大的惩罚项。
一般说来y ̂的值为0~1之间的一个实数,表明的是样本为正或者为负的概率,这个概率值的大小影响着cost的大小。我们也是通过这个影响来调整我们所需的参数权重w和偏置b。
当y=0时,推理过程跟上述完全一致,不再累赘。
对比(1)(2),我们发现两者解释最后得出的结论一致。
当然,(1)(2)仅仅是一次试验(样本)的内容,我们针对全体样本,不管是从概率角度出发,还是总体的代价函数,都为:
至于求解包括我们还未提到的贝叶斯公式,我们将在以后学习中讲解。下一篇我们针对数值优化问题并以SVM为例,做个巩固。