nndl-book-笔记-入门第三章-线性模型
发布日期:2022-02-17 04:52:19 浏览次数:4 分类:技术文章

本文共 2338 字,大约阅读时间需要 7 分钟。

第3 章线性模型

    1)线性模型(Linear Model)是机器学习中应用最广泛的模型,指通过样本特征的线性组合来进行预测的模型。

    2)四种不同线性分类模型:logistic 回归、softmax 回归、感知器和支持向量机。

  3.1 线性判别函数和决策边界

    一个线性分类模型(线性分类器),是由一个(或多个)线性的判别函数f(x,w) =wTx+b 和非线性的决策函数g(·) 组成

3.1.1 两类分类

    1)两类分类样本标签{-1,+1}或{0,1}

    2)在两个分类中,我们只需要一个线性判别函数f(x,w) = wTx +b。特征空间Rd 中所有满足f(x,w) = 0 的点组成用一个分割超平面,称为决策边界或决策平面。决策边界将所有样本划分为两个区域,即实现二分类。

    3)在二维空间中,决策边界为一个直线;在三维空间中,决策边界为一个平面;在高维空间中,决策边界为一个超平面。

    4)当标签为{-1,+1}时,尽量满足:  y(n) f(x(n),w∗) > 0,即预测值与标签值同号。

  3.1.2 多类分类

    1)多类分类(Multi-class Classification)问题是指分类的类别数C 大于2。多类分类一般需要多个线性判别函数。

    2)多类分类问题的常用方式有三种:一对其余;一对一(每两个类划分);argmax(可以更好的划分类与类之间相近的区域)

3.2 Logistic 回归

    1)Logistic 回归是一种常用的处理两类分类问题的线性模型。在本节中我们采用y ∈ {0, 1} 以符合logistic回归。

    2)激活函数:其作用是把线性函数的值域从实数区间“挤压”到了(0, 1) 之间,可以用来表示概率(如使用sigmod函数)。

    3)logistic函数:1/(1+e^-(wx)), 如下图所示:

    4)线性回归与logistic回归图像

           Logistic 回归采用交叉熵作为损失函数,并使用梯度下降法来对参数进行优化。

           (交叉熵损失函数: ,其中y为标签值,y^为预测值即logistics函数预测值)

    5)求导过程

      可知,求出对参数W的偏导形式为: ;根据梯度下降更新参数,例如:W1=W1-A*(损失函数对W1的偏导)      其中A为学习率,      

  3.3 Softmax 回归

            PS:1、argmax是一种函数,是对函数求参数(集合)的函数。当我们有另一个函数y=f(x)时,若有结果x0= argmax(f(x)),则表示当函数f(x)取x=x0的时候,得到f(x)取值范围的最大值;若有多个点使得f(x)取得相同的最大值,那么argmax(f(x))的结果就是一个点集。

                     2、指示函数:I(indicator function),I(X),其中X为true,返回1,否则返回0。

    1)Softmax 回归(Softmax Regression),也称为多项或多类的logistic 回归,是logistic 回归在多类分类问题上的推广。

    2)所有类中,C类占的比重即位下式:

  3.3.1 参数学习

    1)给定N 个训练样本{(x(n), y(n))}N n=1,softmax 回归使用交叉熵损失函数来学习最优的参数矩阵W。

    2)因softmax为多项logistic回归,且均使用交叉熵损失函数,故对参数的梯度形式类似;

    3)softmax 回归中使用的C 个权重向量是冗余的,即对所有的权重向量都减去一个同样的向量v,不改变其输出结果。(不太懂为啥??)

3.4 感知器

        感知器是最简单的人工神经网络,只有一个神经元,是一种广泛使用的线性分类器。

        有与生物神经元相对应的部件,如权重(突触)、偏置(阈值)及激活函数(细胞体),输出为+1或-1。

  3.4.1 参数学习

    1)约束条件:同上。为了满足预测值与真实值相同。

    2)参数更新流程:

  3.4.2 感知器的收敛性

    1)如果训练集是线性可分的,那么感知器算法可以在有限次迭代后收敛。(废话)

       (证明感知机收敛次数范围,看的不是很懂)

    2)感知器在线性可分的数据上可以保证收敛,但其存在以下不足之处:

      1. 在数据集线性可分时,感知器虽然可以找到一个超平面把两类数据分开,但并不能保证能其泛化能力。
      2. 感知器对样本顺序比较敏感。每次迭代的顺序不一致时,找到的分割超平面也往往不一致。
      3. 如果训练集不是线性可分的,就永远不会收敛。

  3.4.3 参数平均感知器

    1)如果间越大,收敛越快。但是感知器并不能保γ证找到的判别函数是最优的,这样可能导致过拟合;感知器的学习到的权重向量和训练样本的顺序相关。在迭代次序上排在后面的错误样本,比前面的错误样本对最终的权重向量影响更大。

           故提出参数平均感知机来优化上述问题:

    

  3.4.4 扩展到多类分类

 

3.5 支持向量机

    1)支持向量机是一个经典两类分类算法,其找到的分割超平面具有更好的鲁棒性,因此广泛使用在很多任务上,并表现出了很强优势。目的是找到一个超平面将种类划分开来,当间隔最大时,划分效果最好:

    3)同点到直线的距离公式,来计算样本到超平面的距离:

  3.5.1 参数学习

    1)优化方法,拉格朗日乘数法;求偏导;另起为0;算出最优参数值。

         其中,支持向量可称为间隔边缘上的点。

  3.5.2 核函数:

         当样本在二维平面中无法划分时,将样本空间扩展至高纬空间,为了简化计算高纬度Xi与Xj的内积。

         核函数通过在原始空间中Xi、Xj计算在高纬空间中的两者内积,简化计算。

  3.5.3 软间隔

          当样本中的少部分点偏离时,SVM调整时会产生偏差,导致效果不好,为了解决这个问题,就要允许支持向量机在一些样本上出错,称之为软间隔。

3.6 损失函数对比

 

转载地址:https://blog.csdn.net/qq_41427834/article/details/107495029 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:nndl-book-笔记-第一章
下一篇:nndl-book-笔记-基础模型第五章-卷积神经网络

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月27日 18时44分47秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

java开发招聘试题_客户化开发招聘试题-Java开发.doc 2021-06-24
java jdk win10 1335_win10下安装java jdk,tomcat 2021-06-24
java list二分查找_java中的ArrayList和LinkedList的二分查找速度比 | 学步园 2021-06-24
php中的变量名称用什么表示,PHP变量,方法,类等名称中的有效字符是什么? 2021-06-24
pic32mx是什么cpu_PIC32MX单片机外设库使用(Ⅰ)- 系统时钟及I/O口基本设置 2021-06-24
用c 在mysql上存图片_C 批量保存图片进 mysql 利用MYSQL_BIND插入longblob 2021-06-24
mysql 1045 28000_mysql报关于用户密码1045(28000),几种处理方法 (zhuan) 2021-06-24
solr比mysql的优势_Solr与Elasticsearch的优缺点比较总结和归纳 2021-06-24
华为博士招聘上机考试题目_牛客网-华为-2020届校园招聘上机考试-3 2019-04-21
python中for可以做变量名吗_Python中使用动态变量名的方法 2019-04-21
mysql 日期转换天数_MySQL 日期操作 增减天数、时间转换、时间戳 2019-04-21
java对象去重复_JAVA中List对象去除重复值的方法 2019-04-21
java bss_[转] .bss段和.data段的区别 2019-04-21
java上传图片损坏_大神求助 上传图片后 图片损坏 2019-04-21
java socket唯一标识符_Java Socket编程之常识网络基础知识 2019-04-21
java给xyz大小排序_java递归实现string xyz排序 2019-04-21
arctime必须要java_Arctime使用教程 Arctime常见问题解答 2019-04-21
mysql pxc mysql5.7_mysql之PXC5.7.18集群系列——1. Percona XtraDB Cluster 搭建 2019-04-21
mysql 自适应字段宽度_box-sizing解决自适应布局容器宽度问题 2019-04-21
java 配置文件配置路径_Java读取配置文件路径设置 2019-04-21