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

article/2025/8/30 6:08:10

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

再这之前,我们先来了解一下卷积和滤波,像平时我们听到的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. 处理不同,特征选择只需要求对应子集的效果,而特征提取需要通过协方差矩阵来进行计算。

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


http://chatgpt.dhexx.cn/article/fpt8DtuA.shtml

相关文章

图像特征及提取

本文主要用于记录图像特征及其提取方法 文章目录 1.颜色特征1.1量化颜色直方图1.2聚类颜色直方图 2.几何特征2.1边缘特征2.2基于特征点的特征描述子2.2.1寻找特征点:Harris角点检测2.2.2另一种特征点:斑点2.2.3SFIT:斑点的特征描述子 1.颜色特…

机器学习中的特征提取

特征提取是将任意数据(如文本或图像)转换为可用于机器学习的数字特征,特征提取是为了计算机更好的去理解数据。 特征提取大体上可以分为三大类: 字典特征提取(特征离散化)文本特征提取图像特征提取(深度学习&#xf…

图像特征提取

从本节开始, 我们将逐步从数字图像处理向图像识别过渡。 严格地说, 图像特征提取属于图像分析的范畴, 是数字图像处理的高级阶段, 同时也是图像识别的开始。 本文主要包括以下内容 常用的基本统计特征, 如周长、面积…

机器视觉中的特征提取【0】:什么是特征提取,特征提取有什么作用?

1.什么是特征提取? 特征提取的英文叫做feature extractor,它是将一些原始的输入的数据维度减少或者将原始的特征进行重新组合以便于后续的使用。简单来说有两个作用:减少数据维度,整理已有的数据特征。 这里我给一个例子来解释特…

c语言结构体学习整理(结构体初始化,结构体指针)

渣渣c的c语言学习之路 1.关于c语言的结构体: 首先我们为什么要用到结构体,我们都已经学了很多int char …等类型还学到了同类型元素构成的数组,以及取上述类型的指针,在一些小应用可以灵活使用,然而,在我们实际应用中…

C语言----初始结构体详解

此文是作者初次学习C语言的时候,写的笔记博文,如有错误请及时指正,谢谢!!! 目录 1,什么是结构体 2. 结构体的声明 2,1结构体声明 2,2结构体成员的类型 2,…

openVAS 介绍

含义及作用: OpenVAS是开放式漏洞评估系统,也可以说它是一个包含着相关工具的网络扫描器。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。 OpenVAS 的功能包括非认证测试、认证测…

040 OpenVAS的下载与安装

文章目录 一:OpenVAS的下载二:OpenVAS的安装2.1:中文版本步骤2.2:英文版本步骤 一:OpenVAS的下载 OpenVAS是开源的网络漏洞扫描器,自从Nessus收费了之后,分支出来的免费的 官网:htt…

Linux 漏洞扫描 openvas

什么是OpenVAS OpenVAS是一款开源的漏洞扫描攻击,主要用来检测网络或主机的安全性。其强大的扫描能力来自于集成数万个漏洞测试程序,这些测试程序以插件的形式提供,可以从官方网站免费更新. 一套完整的OpenVAS系统如下图显示 ① 客户层组件 …

关于openvas

目录 一:什么是openvas 二:作者 三:系统简介 四:建立架构 五:openvas功能 六:OpenVAS的核心组件 七:OpenVAS部署 八:openvas的组件构成 一:什么是openvas OpenV…

openvas

目录 一、openvas的简介 1、简介 2、建立的构架 二、openvas的环境 三、openvas的组件构成 四、openvas安装及使用 一、openvas的简介 1、简介 OpenVAS是开放式漏洞评估系统,也可以说它是⼀个包含着相关⼯具的⽹络扫描器。其核⼼部件是⼀个服务器,包括…

风险评估系统OpenVAS配置使用教程说明

penVAS是一款免费的开放式风险评估工具,可以检测远程系统和应用程序中的安全问题。最初作为Nessus一个子工具,被称为 GNessUs。其特点就是允许继续免费开发。最早是由Portcullis Computer security公司的渗透测试人员发布的,之后由Slashdot网…

OpenVas 漏洞扫描器使用教程

Openvas简介 Openvas是开源的,是Nessus项目分支,用于管理目标系统的漏洞,检测目标网络或主机的安全性。它的评估能力来源于数万个漏洞测试程序,openvas 早起版本还有一个客户端,现在的版本已经不提供客户端程序&#…

OpenVAS介绍

一、背景: OpenVAS(Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部分是一个服务器。该服务器包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。OpenVAS不同与传统的漏洞扫描…

openVAS简介

文章目录 openVAS一、openVAS开发团队二、openVAS背景三、openVAS作用四、openVAS部署kali部署部署openVAS镜像简单使用新建目标(target)新建任务(tasks)开始扫描扫描详情下载报告 openVAS O p e n V A S 是 开 放 式 漏 洞 评 估…

OpenVAS 安装及基本配置

OpenVAS 安装及基本配置 1 .概要 系统简介 OpenVAS是开放式漏洞评估系统,也可以说它是一个包含着相关工具的网络扫描器。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。建立架构 OpenVAS是…

5.数据验证

数据验证 1、数据绑定失败:比如需要数字却输入了字母; 2、数据不合法:可以认为是业务错误,通过自定义验证器验证,如用户名长度必须在5-20之间,我们却输入了100个字符等; 3、错误对象&#xff1a…

认证篇——消息认证码

目录 一、消息认证码介绍 1)消息认证码的使用步骤: 2)消息认证码的密钥配送问题: 3)消息认证码的实例: 4)消息认证码的实现: 二…

获得验证信息

用的最多的验证信息为URL,TEXT,TITLE 以百度为例 from selenium import webdriverurl "https://www.baidu.com/" driver webdriver.Chrome() driver.get(url) driver.maximize_window() ### 获取当前页面的title title driver.title prin…

密码框验证信息

效果展示&#xff1a; 代码展示 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><link rel"stylesheet" type"text/css" href"fontss2/iconfont.css" /><style&g…