特征预处理与鸢尾花算法案例

本文介绍了欧氏距离、曼哈顿距离、切比雪夫距离和闵可夫斯基距离的概念,以及它们在不同参数下的表现。同时,针对特征值差异大的情况,讨论了归一化(如MinMaxScaler)和标准化(如StandardScaler)的重要性,以及在机器学习流程中的应用.
摘要由CSDN通过智能技术生成

距离量度

欧氏距离:d_{12} = \sqrt{ \sum_{k = 1}^{n}}(x_{1k}-x_{2k})^{2}

曼哈顿距离也称为“城市街区距离(City Block distance),曼哈顿城市特点:横平竖直: d_{12} = \sqrt{\sum_{k=1}^{n}}\left | x_{1k}-x_{2k} \right |

切比雪夫距离:

国际象棋中,国王可以直行、横行、斜行,所以国王走一步可以移动到相邻8个方格中的任意一个。

国王从格子(x1,y1)走到格子(x2,y2)最少需要多少步?这个距离就叫切比雪夫距离

d^{_{12}} = max\left | x_{1i} - x_{2i} \right |
闵可夫斯基距离 Minkowski Distance 闵氏距离 ,  不是一种新的距离的度量方式。  是对多个距离度量公式的概括性的表述
 两个n维变量a(x11 ,x12, …, x1n) 与 b(x21, x22,…, x2n)
间的闵可夫斯基距离定义为
d_{12} = \sqrt[p]{\sum_{k=1}^{n}\left | x_{1k}-x_{2k} \right |^{p}}
其中p是一个变参数:
当 p=1 时,就是曼哈顿距离;
当 p=2 时,就是欧氏距离;
当 p→∞ 时,就是切比雪夫距离
根据 p 的不同 ,闵氏距离可表示某一类种的距离

归一化与标准化

特征的 单位或者大小相差较大,或者某特征的方差相比其他的特征要大出几个数量级 容易影响
(支配)目标结果 ,使得一些模型(算法)无法学习到其它的特征。这是就需要归一化或标准化
归一化:
X^{'} = \frac{x-min}{max-min}
X^{''} = X^{'}*(max-min)+min
import numpy as np
from sklearn.preprocessing import MinMaxScaler
def dm01_MinMaxScaler():
# 1. 准备数据
 data = [[90, 2, 10, 40],
[60, 4, 15, 45],
[75, 3, 13, 46]]
# 2. 初始化归一化对象
 transformer = MinMaxScaler()
# 3. 对原始特征进行变换
 data = transformer.fit_transform(data)
# 4. 打印归一化后的结果
 print(data)

 标准化:

数据标准化:通过对原始数据进行标准化,转换为均值为0标准差为1的标准正态分布的数据
公式:
X^{'} = \frac{x-mean}{\sigma }
mean为特征的平均值,\sigma为特征的标准差
from sklearn.preprocessing import StandardScaler
def dm03_StandardScaler(): # 对特征值进行标准化
 # 1. 准备数据
 data = [[90, 2, 10, 40],
[60, 4, 15, 45],
[75, 3, 13, 46]]
# 2. 初始化标准化对象
 transformer = StandardScaler()
# 3. 对原始特征进行变换
 data = transformer.fit_transform(data)
# 4. 打印归一化后的结果
 print(data)
# 5 打印每1列数据的均值和标准差
 print('transfer.mean_-->', transfer.mean_)
print('transfer.var_-->', transfer.var_)

 

 

实现流程:
# 1 获取数据集
# 2 数据基本处理
# 3 数据集预处理-数据标准化
# 4 机器学习(模型训练)
# 5 模型评估
# 6 模型预测
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值