特征工程原理(一)

news2024/9/22 6:03:11

一、定义

在机器学习原理中讲过机器学习的基本流程,其中很重要的一个环节就是特征工程。

在这里插入图片描述

1.1 基本概念

特征工程(Feature Engineering):从原始数据中提取特征的过程,这些特征可以很好地描述数据,并且利用特征建立的模型在未知数据上的性能表现可以达到最优(或者性能最佳)。

  • 是将原始数据转化成更好的表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度。
  • 可以理解为就是发现对因变量y有明显影响作用的特征,通常称自变量x为特征,特征工程的目的是发现重要特征。
  • 目的:如何能够分解和聚合原始数据,以更好的表达问题的本质。

1.2 意义

  1. 灵活性越强

    好特征的灵活性在于允许你选择不复杂的模型,同时运行速度也更快,更容易理解和维护

  2. 构建的模型越简单

    好的特征不需要花太多的时间去寻找最有效的参数,这大大降低了模型的复杂度

  3. 模型的性能越出色

    特征工程的最终目的是提升模型的性能

二、特征处理

特征提取之前需要对数据进行预处理

2.1 数据采集

数据采集(DAQ): 又称数据获取,是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程

数据采集一般是有线上行为数据和内容数据两种

  • 线上行为数据:页面数据、交互数据、表单数据、会话数据等。
  • 内容数据:应用日志、电子文档、机器数据、语音数据、社交媒体数据等。

2.2 数据清洗

数据清洗(Data cleaning): 对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。
数据清洗一般包括,逻辑错误清洗、缺失值、异常值、格式内容等的处理

逻辑错误清洗:重复值、不合理数据(2岁的孩子学历为大学)
缺失值:删除或者填充【特殊值填充、模型预测填充、插值填充等】
异常值:检测【统计分析等】、光滑处理【数据分箱、回归】、删除、不处理【有些模型可以自动处理异常值】
格式内容:时间日期数据、全角半角、特殊字符等等

2.3 数据采样

样本类别分布不均衡:不同类别的样本量差异非常大
在这里插入图片描述
样本不均衡指的是给定数据集中有的类别数据多,有的数据类别少,且数据占比较多的数据类别样本与占比较小的数据类别样本两者之间达到较大的比例。
。即使得到分类模型,也容易产生过度依赖于有限的数据样本而导致过拟合的问题。当模型应用到新的数据上时,模型的准确性和健壮性将很差。

影响:样本分布不均衡将导致样本量少的分类所包含的特征过少,并很难从中提取规律。

采样方法

上采样(over-sampling),通过增加分类样本量较少的样本来实现均衡,如直接复制少数样本增加记录,缺点是可能会导致过拟合

SMOTE(Synthetic Minority Oversampling Technique),插值的方式加入近邻的数据点,合成少数类过采样技术。
基本思想:对少数类样本进行分析并根据少数类样本人工合成新样本添加到数据集中。
它是基于随机过采样算法的一种改进方案,由于随机过采样采取简单复制样本的策略来增加少数类样本,这样容易产生模型过拟合的问题,即使得模型学习到的信息过于特别(Specific)而不够泛化(General)
步骤:

  1. 对于少数类中每一个样本x,以欧氏距离为标准计算它到少数类样本集中所有样本的距离,得到其k近邻。
  2. 根据样本不平衡比例设置一个采样比例以确定采样倍率N,对于每一个少数类样本x,从其k近邻中随机选择若干个样本,假设选择的近邻为 x n x_n xn
  3. 对于每一个随机选出的近邻 x n x_n xn,分别与原样本按照如下的公式构建新的样本 x n e w = x + r a n d ( 0 , 1 ) ∗ ( x n − x ) x_{new}=x+rand(0,1)∗(x_n −x) xnew=x+rand(0,1)(xnx)
    在这里插入图片描述

下采样(under-sampling),通过减少分类样本量较多的样本来实现均衡,如直接删除样本,缺点是会丢失信息

三、特征转换

3.1 标准化

标准化是依照特征矩阵的列处理数据,及通过求标准分数的方法将特征转换为标准正太分布,并和整体样本分布相关;

x , = x − x ‾ S x^, = \frac{x - \overline x}{S} x,=Sxx

3.2 归一化

将样本的特征值转换到同一量纲下,把数据映射到【0,1】之间,适用于分布有明显边界的情况,受 outliner影响较大。
x , = x − M i n M a x − M i n x^, = \frac{x - Min}{Max - Min} x,=MaxMinxMin

3.3 二值化

针对定量特征
x , = { 1 , x > t h res h old 0 , x <= t h res h old x^, = \begin{cases} 1, & \text{x > tℎresℎold} \\ 0, & \text{x <= tℎresℎold} \\ \end{cases} x,={1,0,x > thresholdx <= threshold

3.4 亚编码

针对定性特征,是不能直接带入模型进行训练的,要转换成数值型才可以进行运算。

∣ 工人 ( 0 , 0 , 0 , 1 ) 农民 ( 0 , 0 , 1 , 0 ) 学生 ( 0 , 1 , 0 , 0 ) 职员 ( 1 , 0 , 0 , 0 ) ∣ \begin{vmatrix} 工人 & (0,0,0,1) \\ 农民 & (0,0,1,0) \\ 学生 & (0,1,0,0) \\ 职员 & (1,0,0,0) \\ \end{vmatrix} 工人农民学生职员0,0,0,10,0,1,00,1,0,01,0,0,0

3.5 数据转化

数据转化主要是改变数据的分布,当数据不符合正态分布时需要将数据转换成正态分布,转换的方式比如:Log、指数、多项式等方法

原始数据
在这里插入图片描述

转换后
在这里插入图片描述

为什么需要转换为正态分布?
根据中心极限定理,将大量具有不同分布的随机变量加起来,所得到的新变量将最终具有正态分布。也就是说正态分布时随机分布,也就是去除了人工及其他的干扰后的分布,这样的分布在建立模型后就更容易预测;因为模型拟合的是数据本身的分布,没有其他因素的干扰,准确率会更高。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/141438.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Showdoc升级版本记录

目录 Showdoc介绍 升级步骤 1.备份当前版本 2.下载安装最新版本 总结步骤&#xff1a; Showdoc介绍 ShowDoc是一个非常适合IT团队的在线API文档、技术文档工具。通过showdoc&#xff0c;你可以方便地使用markdown语法来书写出美观的API文档、数据字典文档、技术文档、在线…

GitHub创建仓库,使用SSH建立连接(github创建仓库,github使用SSH建立连接)

GitHub简介&#xff1a;GitHub是一个面向开源及私有软件项目的托管平台&#xff0c;也是一个开源代码库以及版本控制系统&#xff0c;Github拥有超过900万开发者用户&#xff0c;已经成为了管理软件开发以及发现已有代码的首选方法。 怎样创建仓库并使用&#xff1f;详细操作步…

FTP错误代码

本文迁移自本人网易博客&#xff0c;写于2015年4月15日&#xff0c;FTP错误代码 - lysygyy的日志 - 网易博客 (163.com)1、12003错误指定用户未添加到有权限的组中&#xff1b;即指定用户没有权限。2、CFtpFileFind.FindFile GetLastError 12110 &#xff08;1&#xff09;当递…

对比学习综述

一 . 发展历程大概可以分为四个阶段 1、百花齐放&#xff1a;在这个阶段中&#xff0c;方法、模型、目标函数、代理任务都还没有统一&#xff0c;所以说是一个百花齐放的时代。 InstDisc&#xff08;instance discrimination&#xff09;CPCCMC 2、CV双雄&#xff1a;这个阶…

十六、xml、单元测试、注解、单例模式

xml 1.概述【理解】 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年&#xff0c;又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者&#xff1a; Tim Berners-Lee (蒂姆伯纳斯李)。 是Web技术领域最具权威和影响力的国际中立性技术标准机构。 到目前为止&…

新提案,初识CSS的object-view-box属性

在开发时&#xff0c;一直希望有一种原生的css方式来裁剪图片&#xff0c;并将其定位在我需要的任何方向。这可以通过使用一个额外的html元素和不同的CSS属性来实现&#xff0c;后面解释。在这篇文章中&#xff0c;将带领大家了解Jake Archibald在今年年初提出的新的CSS属性obj…

VisionBank AI实现4项技术突破----传统算法融合深度学习,重新定义“工业视觉检测大脑”

机器视觉经过长时间的发展&#xff0c;技术不断取得重大突破并被广泛应用&#xff0c;当前已遍布工业生产的各个环节。而且机器视觉易于实现自动化集成&#xff0c;软件集成&#xff0c;是实现智能制造的基础技术。据统计&#xff0c;中国的机器视觉市场需求近几年处于持续高速…

【目标检测】ROI Pool和ROI Align的区别

这里说一下ROI Pool和ROI Align的区别&#xff1a; 一、ROI Pool层 参考Faster RCNN中的ROI Pool层&#xff0c;功能是将不同size的ROI区域映射到固定大小的feature map上。 它的缺点&#xff1a;由于两次量化带来的误差&#xff1b; 将候选框边界量化为整数点坐标值将量化…

【Vue】后台管理系统

O 项目说明 1.脚手架 vitevue-cli 》 webpack 2.vite脚手架使用 官网&#xff1a;https://vitejs.cn/ Vue3 vite官网&#xff1a;https://cn.vitejs.dev/ Vite下一代的前端工具链&#xff0c;为开发者提供急速响应 # 安装 $ cnpm i vite -g $ vite -v vite/4.0.3 darwin…

Sentinel + Redis + Mysql + RabbitMQ 秒杀功能设计及后端代码实现

文章目录前言数据一致性高性能动静分离静态资源缓存流控缓存数据库消息队列RabbitMQ的优点高并发分布式锁后端代码实现中间件表结构添加依赖公共常量实体类Redission配置定时任务Controller下单接口付款接口接收通道消息完整代码前言 在开发秒杀系统功能的时候&#xff0c;需要…

MyBatis讲解,批量添加

一、批量添加 1.书写BookMapper 1.1先在navicat的新建查询里书写条件查询的sql语句 条件查询的sql语句 insert into book(book_name) values(三体); 1.2将sql语句复制到BookMapper里 用到foreach标签&#xff1b; collection&#xff1a;可以放数组&#xff0c;也可以放list集…

数据结构与算法-算法分析(2)

算法和算法分析 对于同一个问题可能由不同的算法。究竟来如何评价这些算法 一个算法首先要具备正确性&#xff0c;健壮性&#xff0c;可读性和有穷性&#xff0c;然后我们再比较其算法的效率&#xff0c;来评判算法的优劣。 主要从时间和空间上的效率进行评价算法&#xff0c…

对JSON的理解

什么是JSON? JSON全名是JavaSpript Object Notation。 JSON是轻量级的文本数据交换格式。 JSON是存储和交换文本信息的语法&#xff0c;类似XML,比XML更小&#xff0c;更快&#xff0c;更易解析。 JSON可以将Java对象转换为特殊格式的字符串&#xff08;JSON串&#xff09…

矿井水深度除总氮

工艺原理 选择性去除硝酸盐氮 项目背景 近年来高矿化度和含特殊组分矿井水逐年增多&#xff0c;以及环保政策的趋严给矿井水处理带来新挑战。 随着《水污染防治行动计划》 &#xff08;水十 条&#xff09;的深入开展和新的煤矿环境影响评价制度的执行&#xff0c;山西、陕…

CSS权威指南(三)特指度

文章目录1.特指度的定义2.继承3.层叠1.特指度的定义 ​ 我们都知道&#xff0c;当同一元素被设置了两个相同属性的时候&#xff0c;只会生效其中的一个属性值。至于到底生效哪一个属性值&#xff0c;自然是有一套计算规则的。在CSS中&#xff0c;选择符的特指度由选择符本身的…

模板学堂丨数据大屏配色设计指南

DataEase开源数据可视化分析平台于2022年6月正式发布模板市场&#xff08;https://dataease.io/templates/&#xff09;。模板市场旨在为DataEase用户提供专业、美观、拿来即用的仪表板模板&#xff0c;方便用户根据自身的业务需求和使用场景选择对应的仪表板模板&#xff0c;并…

[MySQL]-双主+keepalived实现高可用

[MySQL]-双主keepalived实现高可用 梁森 | 2023年1月 本文旨在记录学习主从时的拓展内容&#xff0c;怎么借助keepalived实现简单的高可用。 一、环境介绍 1.1 keepalived keepalived的作用是检测服务器的状态&#xff0c;若某一台服务器宕机&#xff0c;会通过VIP&#xff08;…

【人工智能】基于五笔字型规范和人工神经网络的简中汉字识别【六】

识别网络训练与测试 一、配置文件的修改二、修改训练模型参数三、训练自己的识别模型四、测试识别模型一、配置文件的修改 前期工作铺垫了这么久,终于可以正式进正题了。 训练目标检测模型需要修改几个文件,我们这里为了不破坏原本项目结构,采用在相同目录下复制一份不同名文…

linux下后台运行python脚本

这几天工作中遇到一个问题&#xff0c;后台运行python脚本&#xff0c;存储输出日志到linux系统中&#xff0c;因为在脚本中用了大量的print&#xff0c;导致输出很多信息&#xff0c;服务器内存占满了光是log就有120G&#xff0c;因此写下这篇博客&#xff0c;记录后台运行pyt…

数据防篡改之主机加固篇

​ 随着物联网技术和互联网技术的日益发展&#xff0c;勒索病毒、工控安全、产线作业都面领着极大的威胁。智慧互联正在成为各个行业未来的发展方向&#xff0c;智慧互联包括物联网、万物互联&#xff0c;机器与机器&#xff0c;工业控制体系&#xff0c;信息化&#xff0c;也…