Press "Enter" to skip to content

Posts published in August 2018

精读西瓜书(第六章-支持向量机)-核方法

写在前面 昨天, 我们学习了SVM中的支持向量回归. 今天, 我们继续学习SVM中的核方法. 核方法 回顾前面两天的内容, 可以发现, 给定训练样本 , 若不考虑偏移项 , 则无论SVM还是SVR, 学得的模型总能表示成核函数 的线性组合. 不仅如此, 事实上我们有下面这个称为'表示定理'(Representer Theorem)的更一般的结论: [定理]: 令 为核函数 对应的再生核希尔伯特空间, 表示 空间中关于 的函数,…

精读西瓜书(第六章-支持向量机)-软间隔与正则化

写在前面 昨天, 我们学习了, SVM中的核函数; 今天, 我们将接下去学习SVM中的软间隔与正则化. 软间隔与正则化 在前面的讨论中, 我们一直假定训练样本在样本空间或特征空间中是线性可分的, 即存在一个超平面能将不同类的样本完全划分开. 然而, 在现实任务中往往很难确定合适的核函数使得训练样本在特征空间中线性可分; 退一步说, 即便恰好找到了某个核函数使训练集在特征空间中线性可分, 也很难断定这个貌似线性可分的结果不是由于过拟合所造成的. 缓解该问题的一个办法是允许支持向量机在一些样本上出错. 为此, 要引入'软间隔'(Soft Margin)的概念, 如下图: 具体来说, 前面介绍的支持向量机形式是要求所有样本均满足约束, 即所有样本都必须划分正确, 这称为'硬间隔'(Hard Margin),…

精读西瓜书(第六章-支持向量机)-核函数

写在前面 昨天, 我们学习了SVM中的对偶问题. 今天, 我们继续学习SVM中的核函数部分知识. 核函数 在讨论开始前, 我们假设训练样本是线性可分的, 即存在一个划分超平面能将训练样本正确分类. 然而在现实任务中, 原始样本空间内也许并不存在一个能正确划分两类样本的超平面. 对这样的问题, 可将样本从原始空间映射到一个更高纬的特征空间, 使得样本在这个特征空间内线性可分. 如上图, 若将原始的二维空间映射到一个合适的三维空间, 就能找到一个合适的划分超平面. 幸运的是, 如果原始空间是有限维, 即属性数有限, 那么一定存在一个高维特征空间使样本可分. 令 表示将 映射后的特征向量, 于是,…

精读西瓜书(第六章-支持向量机)-对偶问题

写在前面 昨天, 我们对SVM进行了大致的介绍, 相信大家对支持向量机都有了个大致的了解, 今天我们将继续学习对偶问题. 对偶问题 我们希望求得大间隔划分超平面所对应的模型: 其中, 和 是模型参数. 注意到其本身是一个凸二次规划(Convex Quadratic Programming)问题, 能直接用现成的优化计算包求解, 但我们可以有更高效的办法. 使用拉格朗日乘子法可得到其'对偶问题'(Dual Problem). 具体来说, 就是对每条约束添加拉格朗日乘子 , 则该问题的拉格朗日函数可写为: 其中 . 令 对…

精读西瓜书(第六章-支持向量机)-间隔与支持向量

写在前面 在大致了解神经网络了之后, 我们今天来学习下支持向量机相关的知识. 间隔与支持向量 给定训练样本集 , , 分类学习最基本的想法就是基于训练集 在样本空间中找到一个划分超平面, 将不同类别的样本分开. 但能将训练样本分开的划分超平面可能有很多, 如下图: 直观上看, 应该去找位于两类训练样本'正中间'的划分超平面, 因为该划分超平面对训练样本局部扰动的'容忍'性最好. 例如, 由于训练集的局限性或噪声的因素, 训练集外的样本可能比上图中的训练样本更接近两个类的分隔界, 这将是许多划分超平面出现错误, 二红色的超平面受影响最小. 换言之, 这个划分超平面所产生的分类结果是最鲁棒的, 对未见实例的泛化能力最强. 在样本空间中, 划分超平面可通过如下线性方程来描述:…

精读西瓜书(第五章-神经网络)-深度学习

写在前面 众所周知, 深度学习是目前比较火的一门学科, 老周的西瓜书里面也仅仅是用了一小节来对深度学习这个领域做了一个大致的介绍, 如果大家想要深入学习有关深度学习相关的一些内容的话, 笔者推荐你去看看花书. 深度学习 理论上来说, 参数越多的模型复杂度越高, '容量'(Capacity)越大, 这意味着它能完成更复杂的学习任务. 但一般情形下, 复杂模型的训练效率低, 易陷入过拟合, 因此难以收到人们青睐. 而随着云计算, 大数据时代的到来, 计算能力的大幅提高可环节训练低效性, 训练数据的答复增加则可降低过拟合风险, 因此, 以'深度学习'(Deep Learning)为代表的复杂模型开始受到人们的关注. 典型的深度学习模型就是很深层的神经网络. 显然, 对神经网络模型,…

精读西瓜书(第五章-神经网络)-其他常见神经网络

写在前面 今天, 我们将会继续学习其他常见神经网络. 其他常见神经网络 RBF(Radial Basis Function, 径向基函数)网络, 是一种但隐层前馈神经网络, 它使用径向基函数作为隐层神经元激活函数, 而输出层则是对隐层神经元输出的线性组合. 假定输入为 维向量 , 输出为实值, 则RBF网络可表示为: 其中, 为隐层神经元个数, 和 分别是第 个隐层神经元所对应的中心和权重, 是径向基函数, 这事某种沿径向堆成的标量函数, 通常定义为样本 到数据中心…

精读西瓜书(第五章-神经网络)-全局最小与局部极小

写在前面 今天, 我们继续学习神经网络中的全局最小与局部极小. 全局最小与局部极小 若用 表示神经网络在训练集上的误差, 则它显然是关于连接权 和阈值 的函数. 此时, 神经网络的训练过程可看做一个参数寻优过程, 即在参数空间中, 寻找一组最优参数使得 最小. 我们常会谈到两种'最优': '局部极小'(Local Minimum)和'全局最小'(Global Minimum). 对 和 , 若存在 使得: 都有 成立,…

精读西瓜书(第五章-神经网络)-误差逆传播算法

写在前面 今天, 我们将会更加深入的学习神经网络, 了解神经网络的学习过程. 误差逆传播算法 多层网络的学习能力比单层感知机强得多. 欲训练多层网络, 简单的感知机学习规则显然不够了, 需要更强大的学习算法. 误差逆传播(Error BackPropagation, 简称 BP)算法就是其中最杰出的代表, 它是迄今最成功的神经网络学习算法. 现实任务中使用神经网络时, 大多是在使用BP算法进行训练. 值得指出的是, BP算法不仅可用于多层前馈神经网络, 还可用于其他类型的神经网络. BP算法的工作流程: 输入: 训练集 学习率 过程: 在(0,…

精读西瓜书(第五章-神经网络)-神经元模型, 感知机与多层网络

写在前面 今天, 我们将会学习神经元模型, 感知机与多层网络. 大家在学习与理解的过程中, 如果遇见问题, 可以利用google先搜索一下, 仔细想想, 如果还是未解决, 可以在文章下面留言, 或者直接微信联系博主. 神经元模型 M-P神经元模型: 在M-P神经元模型中, 神经元接受到来自 个其他神经元传递过来的输入信号, 这些输入信号通过带权重的连接(Connection)进行传递, 神经元接收到的总输入值将与神经元的阈值进行比较, 然后通过'激活函数'(Activation Function)处理以产生神经元的输出, 如下图: 激活函数(Activation Function), 常用的激活函数如下: 阶跃函数:…