• 特征选择和特征提取(一、概述)


    特征选择和特征提取属于图像处理领域最基本的操作。

    再这之前,我们先来了解一下卷积和滤波,像平时我们听到的CNN,就是使用卷积操进行图像的滤波操作,简单来说,滤波是图像处理的操作,而卷积是实现滤波的方法。一个是图像处理概念,一个是数学概念。

    特征,其实就是我们要从图像中提取的可以描述图像的性质,简单理解,像边缘、角、轮廓等都属于图像的特征,而图像处理就是通过机器学习的方式得到图像中的这些特征,从而用这些特征来实现图像识别、物体检测等等。

    那么,滤波和特征有有什么关系呢?其实,正常的滤波操作,都是通过卷积核来对图像进行操作的,而卷积核就是用来提取特征的,简单来说,想要从图像中提取几个特征,就定义几个卷积核来对图像进行处理即可。等学习完成,即可通过得到的这些特征来实现对应的用途。

    那么,特征到底是什么,在机器学习中又是什么格式的,是如何存储的呢?下面,就一块通过特征选择和特征提取来一块了解一下吧!

    特征选择

    对同一问题进行研究,我们可以从不同的维度出发、不同的角度来考虑,再衡量结果时,我们会根据不同因素所占的比重来对其进行区分,同样的,在机器学习过程中,不论是cv领域还是nlp领域,在处理问题时,都会得到很多不同的特征,同样,我们也可以用其中的某些特征来替代全部特征对问题进行描述(达到一定的占比)。这即是特征选择的理解。

    这里延伸一下,特征一般分为相关特征、无关特征和冗余特征,分别指对问题学习有帮助的、无帮助的及可以从其他特征推到得到的特征

    另外,我们需要了解,特征选择的意义,在机器学习的过程中,增加一个特征的处理意味着要进行更多的计算,而有些特征对问题处理的贡献很小,因此,我们可以理解,特征选择其实是一种降维处理,目的是减少特征数量,加快模型训练速度,提高学习效率,同时,保证模型的正确度不会损失太多。其要实现的效果是选择尽可能少的子特征,模型的效果不会显著下降,并且
    结果的类别分布尽可能的接近真实的类别分布。

    那么,特征选择是怎样进行处理的呢?

    主要有4个步骤,分别是:

    1. 生成过程:生成不同的候选特征子集
    2. 评价函数:用于评价特征子集的好坏
    3. 停止条件:决定何时停止(最大迭代次数、达到设定的阈值等)
    4. 验证函数:用于验证得到的子集是否有效。

     

    特征提取

    从字面简单理解,特征提取用于提取特征,而非选择,其区别在于,提取是从已有的特征中提取出其他的特征,而非选择已有特征。特征提取也是一种降维算法,其主要目的也是为了减小计算量,提高模型效率。

    而特征提取一般使用的方法是主成分分析(PCA)方法。

    PCA简单理解,就是从M个特征中,提取出N个有同样效果的特征,举个例子,如果有一个三维坐标系(x,y,z),我们通过平移和旋转等操作,得到一个某一维度的值几乎为0的坐标系(a,b,c),若c为0,则我们可以认为二维坐标系(a,b)下的数据包含了(x,y,z)下数据的全部特征,因为(x,y,z)下的数据,同样可以用(a,b)来表示。

    PCA方法的步骤一般为:

    1. 0均值化
    2. 求协方差矩阵
    3. 对协方差矩阵求特征向量和特征值,这些特征向量所组成的即为我们所求的特征空间。

    异同

    根据以上的初步了解,特征选择和特征提取有哪些异同点呢?

    相同点:

    1. 都为降维算法,可以减少计算,加速计算,提高效率

    不同点:

    1. 结果不同,特征选择是选取已有特征中可以最大近似表征数据的特征子集,是包含关系;而特征提取是产生新的特征空间。
    2. 处理不同,特征选择只需要求对应子集的效果,而特征提取需要通过协方差矩阵来进行计算。

    本节主要是对特征选择和特征提取的概念和处理方法的基本了解,由于协方差部分比较复杂,因此单独放在一个章节进行代码演示和说明。

  • 相关阅读:
    智能驾驶功能软件平台设计规范第三部分:预测功能服务接口
    Vue源码系列讲解——生命周期篇【一】(综述)
    Qt Core篇 后端上位机界面开发
    STM32-无人机-电机-定时器基础知识与PWM输出原理
    基于龙格-库塔法Runge-Kutta的常微分方程的求解matlab仿真
    南京理工大学计算机考研资料汇总
    FlinkSQL自定义函数开发
    pycuda使用方法
    Python学习七:异常处理及调试程序
    Java快问快答
  • 原文地址:https://blog.csdn.net/xiansenLee/article/details/114869439