这个函数g我们用sigmoid激活函数。它的基本形式是
(这里z就是y的意思),这个函数形式可以让y值无穷大时接近1,无穷小时接近0,y取0时接近为0.5。它的导数有很好的性质:用矩阵形式表示
(算出来是一个向量) 输入输入还是X和y,这时候y就是0和1的值了,二分类嘛
输出我们想得到一个θ,让分类结果尽量正确。
损失函数由于是y是0,1构成,不再是连续值,所以不能使用均方差了。于是我们用最大似然法来得到损失函数,最大似然法的基本思想就是求得θ,让P(概率)尽量大。单个样本的概率分布式为
,y只能取0和1。对所有样本来说,概率分布为:
(其实就是把各个样本的概率乘起来,极其简单)我们要最大化这个函数,就等于最小化-L(θ)这个函数
于是损失函数为:(加了个对数,为了方便计算,因为对数可以把乘法转化为加法)
(E是全为1的向量)
(这里再说一说极大似然法,举个简单的例子,我有两个硬币(100元的硬币,1元的硬币),分别抛出,我想得到1,0的观测结果(1是正面),我用力度θ可以控制正反面的概率,于是我当然要求一个θ让100元的硬币正面概率大,让1元的反面概率大,这样相乘的结果才能最大概率接近我想要的。这就是极大似然,求出现概率最大时,θ等于多少)
(同时再说一下这里极大似然的几何意义,最大概率,也就是所有点尽可能离分界线远远的)
优化方法还是用梯度法:
(这里我补充一下推导过程,以J(θ)的第一项来做例子)
伪代码输入特征矩阵X和y值
设定一个初始θ
循环
直到θ变化很小
输出θ
3.感知机 基本思想感知机的基本思想和逻辑回归类似,在二维平面上,用一条线分开两类,在三维平面上,用一个平面分开两类。所以使用感知机的数据必须是线性可分的数据。与逻辑回归不同,逻辑回归让所有点尽量远离分隔线,感知机让误分类的样本距离分隔线尽量近,让误分类样本离超平面的距离尽量小(当没有误分类点时,感知机存在多个超平面都可以正确分类)。并且用的激活函数也不同,感知机用了最简单的激活函数: