zoukankan      html  css  js  c++  java
  • 特征空间或数据集的线性可分是什么(以二分类为例)

    特征空间或数据集的线性可分是什么(以二分类为例)

    一、总结

    一句话总结:

    直观表示:以二分类为例,线性可分表示两类样本能够被完全分隔开
    数学描述:D0和D1是n维欧氏空间中的两个点集。如果存在n维向量w和实数b,使得所有属于 D0 的点xi都有 wxi+b>0,而对于所有属于D1的点xj则有wxj+b<0。则我们称D0和D1线性可分。

    1、输入通常由特征向量表示?

    每个具体的输入是一个实例(instance),通常由特征向量表示,特征向量所在的空间被称为特征空间。假设样本的特征向量为 n 维,那么我们说这些样本的特征向量处在 n 维的特征空间中。

    2、样本/样本点 是什么?

    对监督学习来说,数据集由训练集和测试集构成,而不论训练集还是测试集都是由输入(或特征向量)和输出组成的对所组成,因此输入与输出对又被称为样本或者样本点。

    3、为什么线性可分的数学描述是 wxi+b>0(D0中的点) 和 wxj+b<0(D1中的点)?

    y0=wxi+b>0表示在这条线的上面,y1=wxj+b<0表示在这条线的下面,那么D0和D1就被这条线分开了,自然是线性可分

    4、如何去描述线性可分的定义,以及为什么我们都将输出空间定义为 y∈{-1, 1} ?

    A、我们将满足wxi+b>0的样本类别输出值取为1,满足wxi+b<0的样本类别输出值取为-1,这样取y的值有一个好处,就是方便定义损失函数。
    B、因为正确分类的样本满足 y(wxi+b)>0,而错误分类的样本满足y(wxi+b)<0。

    5、线性可分支持向量机的思想?

    以最大间隔把两类样本分开的超平面,是最佳超平面!线性可分支持向量机就是:以找出线性可分的样本在特征空间中的最大间隔超平面为学习目的的分类模型。

    二、特征空间、(数据集)线性可分:线性(二分类)模型

    转自或参考:特征空间、(数据集)线性可分:线性(二分类)模型
    https://blog.csdn.net/Robin_Pi/article/details/105898784

     
    在学习 SVM 时发现自己没能很好地理解在线性模型中充当决策函数角色的符号函数Sign(),说明对线性模型的理解还不够到位,下面主要梳理一下对数据集“线性可分”概念以及其它相关概念的一些理解,大概按照下面思路进行:

    二分类问题
    |
    特征空间
    |
    线性可分
    |
    线性模型

    二分类问题

    (分类问题-二分类)
    在机器学习的应用中,至少现阶段,分类是一个非常常见的需求。特别是二分类,它是一切分类的基础。而且,很多情况下,多分类问题可以转化为二分类问题来解决。

    所谓二分类问题就是:给定的各个样本数据分别属于两个类之一,而目标是确定新数据点将归属到哪个类中。

    特征空间

    • 输入空间、输出空间、特征空间
      在监督学习中,将输入与输出所有可能取值的集合分别成为输入空间输出空间。输入空间和输出空间可以是有限元素的集合,也可以是整个欧式空间。

      每个具体的输入是一个实例(instance),通常由特征向量表示,特征向量所在的空间被称为特征空间。假设样本的特征向量为 n 维,那么我们说这些样本的特征向量处在 n 维的特征空间中。

      一般来说,特征空间可以是欧氏空间,也可以是希尔伯特空间,不过为了便于理解,在以后的所有例子中都使用欧氏空间。
      直观上,当我们把一个 n 维向量表达在一个 n 维欧氏空间中的时候,能够“看到”的一个个向量对应为该空间中的一个个点。

    • 数据集、样本/样本点
      对监督学习来说,数据集由训练集和测试集构成,而不论训练集还是测试集都是由输入(或特征向量)和输出组成的所组成,因此输入与输出对又被称为样本或者样本

    线性可分

    所谓”线性可分“,首先要明白其描述的对象是数据集,或者说样本点
    还是以二分类为例,如下图所示,数据集线性可分,表示两类样本能够被完全分隔开,此时,我们说这两类样本在其特征空间里线性可分。

    上面的表述很不严谨,我们来看看线性可分严格的数学定义

    D0和 D1 是 n 维欧氏空间中的两个点集(点的集合)。
    如果存在 n 维向量 w 和实数 b,使得所有属于 D0 的点 xi 都有 wxi+b>0,
    而对于所有属于 D1 的点 xj 则有 wxj+b<0。则我们称 D0 和 D1 线性可分。
    该篇文章最主要的点来了

    1. 如何去描述上述定义,以及为什么我们都将输出空间定义为 y∈{-1, 1} ?

    我们将满足wxi+b>0的样本类别输出值取为1,满足wxi+b<0的样本类别输出值取为-1,
    这样取y的值有一个好处,就是方便定义损失函数
    因为正确分类的样本满足 y(wxi+b)>0,而错误分类的样本满足y(wxi+b)<0。参考

    1. 为什么将输出值定义为-1 和 1 ,可以是其他是实数值,比如-5 和 5 ?
      答:其实这里只是为了计算方便,才定义y的分类值取-1 和 1 (所以不要太过纠结)

    2. 注意,与 SVM 的约束条件作区分!

    线性分类模型

    • 超平面
      超平面:n 维欧氏空间中维度等于 n-1 的线性子空间。

      1维欧氏空间(直线)中的超平面为0维(点),2维欧氏空间中的超平面为1维(直线);3维欧氏空间中的超平面为2维(平面);以此类推。

    • 线性分类模型
      在数学意义上,将线性可分的样本用超平面分隔开的分类模型,叫做线性分类模型,或线性分类器。

    在一个样本特征向量线性可分的特征空间里,可能有许多超平面可以把两类样本分开。
    一个合理的策略是:以最大间隔把两类样本分开的超平面,是最佳超平面!这就是线性可分支持向量机的思想。

    线性可分支持向量机就是:以找出线性可分的样本在特征空间中的最大间隔超平面为学习目的的分类模型。

     
     
  • 相关阅读:
    21、Java并发性和多线程-Java中的锁
    20、Java并发性和多线程-Slipped Conditions
    19、Java并发性和多线程-嵌套管程锁死
    Java 架构师眼中的 HTTP 协议
    MonolithFirst
    【SpringMVC】从Fastjson迁移到Jackson,以及对技术选型的反思
    SpringMVC接口测试异常:Can not deserialize instance of int out of START_OBJECT token
    请不要盲目的进行横向扩展,优先考虑对单台服务器的性能优化,只有单台服务器的性能达到最优化之后,集群才会被最大的发挥作用
    Android Fragment中调用getActivity为null的问题
    Android 那些年,处理getActivity()为null的日子
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/13282248.html
Copyright © 2011-2022 走看看