最大最小标准化 数值_Python数据预处理——数据标准化(归一化)及数据特征转换...

本文介绍了数据标准化(归一化)的重要性,包括0-1标准化、L2正则化和Z-score标准化等方法,以及特征转换的处理,如文本数据转换、缺省值填充和哑编码。数据标准化可以解决不同指标量纲问题,提高模型的迭代速度和稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、数据标准化(归一化)

首先,数据标准化处理主要包括数据同趋化处理(中心化处理)和无量纲化处理。同趋化处理主要解决不同性质数据问题,对不同性质指标直接加总不能正确反映不同作用力的综合结果,须先考虑改变逆指标数据性质,使所有指标对测评方案的作用力同趋化,再加总才能得出正确结果。无量纲化处理主要为了消除不同指标量纲的影响,解决数据的可比性,防止原始特征中量纲差异影响距离运算(比如欧氏距离的运算)。它是缩放单个样本以具有单位范数的过程,这与标准化有着明显的不同。简单来说,标准化是针对特征矩阵的列数据进行无量纲化处理,而归一化是针对数据集的行记录进行处理,使得一行样本所有的特征数据具有统一的标准,是一种单位化的过程。即标准化会改变数据的分布情况,归一化不会,标准化的主要作用是提高迭代速度,降低不同维度之间影响权重不一致的问题。

 数据标准化(归一化)的方法有很多种,常用的有"最小-最大标准化"、"Z-score标准化"和"按小数定标标准化"等等。经过标准化处理后,原始数据均转换为无量纲化指标测评值,即各指标值都处于同一个数量级别上,可以进行综合测评分析。

这里介绍常用的三种常见的转换方法:

1. 极值法(区间缩放法)

线性比例变换法:正向指标:y = (x)/(max),即新数据=(原数据)/(最大值)。负向指标:y = (min)/(x),即

### YOLOv8 数据归一化方法 对于YOLOv8模型而言,在准备数据集的过程中,归一化是一个重要的预处理步骤。这有助于提高模型训练的速度以及最终的效果。YOLO系列算法通常采用的是将边界框坐标转换到0至1之间的相对位置来实现归一化。 具体来说,当涉及到目标检测任务中的标注文件时,每张图片对应的标签文件会记录着该图内各个物体的位置信息。这些位置是以中心点(x, y)加上宽度(w)和高度(h)的形式给出,并且都是相对于整幅图像尺寸的比例值[^1]。 #### 归一化的计算方式如下: 假设原始图像大小为W×H像素,而某个对象的真实边框左上角坐标为(Xmin,Ymin),右下角坐标为(Xmax,Ymax): - 中心点Y_center=(Ymin+Ymax)/2/H - 宽度Width_box=(Xmax-Xmin)/W - 高度Height_box=(Ymax-Ymin)/H 通过上述公式可以得到标准化后的参数,它们都处于区间[0, 1]之间[^2]。 ```python def normalize_bbox(bbox, img_width, img_height): """ 将边界框坐标从绝对数值转成相对于整个图像宽高的比例形式 参数: bbox (list): 原始边界框[x_min,y_min,x_max,y_max] img_width (int): 图像宽度 img_height (int): 图像高度 返回: list: 已经被归一化的边界框[c_x,c_y,w,h] """ x_min, y_min, x_max, y_max = bbox c_x = ((x_min + x_max) / 2.0) / img_width c_y = ((y_min + y_max) / 2.0) / img_height w = (x_max - x_min) / float(img_width) h = (y_max - y_min) / float(img_height) return [c_x, c_y, w, h] ``` 此函数接收一个列表作为输入,其中包含了四个元素分别代表矩形区域的最小横纵坐标与最大横纵坐标;同时还接受两个额外参数用于指定源图片的实际分辨率。经过一系列简单的算术运算之后返回一个新的四元组数组——这就是按照YOLO协议所定义的标准格式表示出来的归一化后的边界框。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值