初识人工智能:机器学习:sklearn数据特征预处理(代码片段)

liuhui0308 liuhui0308     2023-04-02     183

关键词:

1. sklearn数据特征预处理

通过特定的统计方法(数学方法)将数据转换成算法要求的数据。

数值型数据:标准缩放:

  • 归一化
  • 标准化

类别型数据:

  • one-hot编码

时间类型:

  • 时间的切分

sklearn特征处理的API为:sklearn.preprocessing。

1.1 归一化

特点:通过对原始数据进行变换把数据映射到(默认为[0,1])之间。

公式:

技术图片

注:作用于每一列,max为一列的最大值,min为一列的最小值,那么X’’为最终结果,mx,mi分别为指定区间值默认mx为1,mi为0。

sklearn归一化API:sklearn.preprocessing.MinMaxScaler。

MinMaxScaler语法:

MinMaxScalar(feature_range=(0,1)…)

  • 每个特征缩放到给定范围(默认[0,1])
  • MinMaxScalar.fit_transform(X)
    •   X:numpy array格式的数据[n_samples,n_features]
    •   返回值:转换后的形状相同的array
from sklearn.preprocessing import MinMaxScaler

def mm():
    """
    归一化处理
    :return: NOne
    """
    mm = MinMaxScaler(feature_range=(2, 3))

    data = mm.fit_transform([[90,2,10,40],[60,4,15,45],[75,3,13,46]])

    print(data)

    return None

if __name__ == "__main__":
    mm()

运行结果:

技术图片

1.2 归一化案例:约会对象数据

相亲约会对象数据,这个样本时男士的数据,三个特征,玩游戏所消耗时间的百分比、每年获得的飞行常客里程数、每周消费的冰淇淋公升数。然后有一个所属类别,被女士评价的三个类别,不喜欢didnt、魅力一般small、极具魅力large也许也就是说飞行里程数对于结算结果或者说相亲结果影响较大,但是统计的人觉得这三个特征同等重要。

技术图片

这时候我们就需要进行归一化处理了。 

注意在特定场景下最大值最小值是变化的,另外,最大值与最小值非常容易受异常点影响,所以这种方法鲁棒性较差,只适合传统精确小数据场景。

1.3 标准化

特点:通过对原始数据进行变换把数据变换到均值为0,方差为1范围内。

公式:

技术图片

注:作用于每一列,mean为平均值,??为标准差(考量数据的稳定性)

std成为方差:

技术图片

对于归一化来说:如果出现异常点,影响了最大值和最小值,那么结果显然会发生改变。
对于标准化来说:如果出现异常点,由于具有一定数据量,少量的异常点对于平均值的影响并不大,从而方差改变较小。

sklearn特征化API:scikit-learn.preprocessing.StandardScaler。

StandardScaler(…)

  • 处理之后每列来说所有数据都聚集在均值0附近方差为1
  • StandardScaler.fit_transform(X,y)
    •   X:numpy array格式的数据[n_samples,n_features]
    •   返回值:转换后的形状相同的array
  • StandardScaler.mean_
    •   原始数据中每列特征的平均值
  • StandardScaler.std_
    •   原始数据每列特征的方差
from sklearn.preprocessing import StandardScaler

def stand():
    """
    标准化缩放
    :return:
    """
    std = StandardScaler()

    data = std.fit_transform([[ 1., -1., 3.],[ 2., 4., 2.],[ 4., 6., -1.]])

    print(data)

    return None

if __name__ == "__main__":
    stand()

运行结果:

技术图片

 可以通过缺失值每行或者每列的平均值、中位数来填充。

机器学习实战基础(十八):sklearn中的数据预处理和特征工程特征选择之wrapper包装法

Wrapper包装法 包装法也是一个特征选择和算法训练同时进行的方法,与嵌入法十分相似,它也是依赖于算法自身的选择,比如coef_属性或feature_importances_属性来完成特征选择。但不同的是,我们往往使用一个目标函数作为黑盒... 查看详情

机器学习实战基础(十七):sklearn中的数据预处理和特征工程特征选择之embedded嵌入法(代码片段)

Embedded嵌入法嵌入法是一种让算法自己决定使用哪些特征的方法,即特征选择和算法训练同时进行。在使用嵌入法时,我们先使用某些机器学习的算法和模型进行训练,得到各个特征的权值系数,根据权值系数从大到小选择特征... 查看详情

机器学习实战基础(十六):sklearn中的数据预处理和特征工程特征选择之filter过滤法总结

 过滤法总结到这里我们学习了常用的基于过滤法的特征选择,包括方差过滤,基于卡方,F检验和互信息的相关性过滤,讲解了各个过滤的原理和面临的问题,以及怎样调这些过滤类的超参数。通常来说,我会建议,先使用... 查看详情

数据预处理与特征选择

...程包含的内容:本文数据预处理与特征选择的代码均采用sklearn所提供的方法,并使用sklearn中的IRIS(鸢尾花)数据集来对特征处理功能进行 查看详情

机器学习实战基础:sklearn中的数据预处理和特征工程数据预处理preprocessing&impute之处理分类特征:处理连续性特征二值化与分段(代码片段)

处理连续性特征二值化与分段sklearn.preprocessing.Binarizer根据阈值将数据二值化(将特征值设置为0或1),用于处理连续型变量。大于阈值的值映射为1,而小于或等于阈值的值映射为0。默认阈值为0时,特征中所有的正值都映射到1... 查看详情

机器学习实战基础(十五):sklearn中的数据预处理和特征工程特征选择之filter过滤法相关性过滤(代码片段)

...白白浪费我们的计算内存,可能还会给模型带来噪音。在sklearn当中,我们有三种常用的方法来评判特征与标签之间的相关性:卡方,F检验,互信息。3卡方过滤卡方过滤是专门针对离散型标签(即分类问题)的相关性过滤。卡方 查看详情

黑马程序员---三天快速入门python机器学习(第一天)(代码片段)

机器学习入门一、机器学习概述1.1人工智能概述1.1.1机器学习与人工智能、深度学习1.1.2机器学习、深度学习能做什么1.1.3人工智能阶段课程安排1.2什么是机器学习1.2.1定义1.2.2解释1.2.3数据集构成1.3机器学习算法分类1.3.1总结1.3.2... 查看详情

机器学习基础一文带你用sklearn做特征工程(代码片段)

使用sklearn做特征工程特征工程是什么?有这么一句话在业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。那特征工程到底是什么呢?顾名思义,其本质是一项工程活动,目的是最大限度... 查看详情

人工智能机器学习之运用特征脸(eigenface)和sklearn.svm.svc进行人脸识别

运用特征脸(eigenface)和sklearn.svm.SVC进行人脸识别。首先需要下载一个经过预处理的数据集,从数据集中找出最有代表性的前5人的预期结果第一步,import导入实验所用到的包importmatplotlib.pyplotaspltfromsklearn.model_selectionimporttrain_test... 查看详情

机器学习-3.数据特征预处理与数据降维(代码片段)

...;one-hot编码。时间类型:时间的切分。预处理API:sklearn.preprocessin 查看详情

(原创)机器学习笔记之数据预处理

...正态分布的方法:对每维特征单独处理:其中,可以调用sklearn.preprocessing中的StandardScaler()进行数据的标准化。(2)数据归一化把某个特征的所有样本取值限定在规定范围内(一般为[-1,1]或者[0,1])。归一化得方法为:可以调用sk 查看详情

sklearn-特征工程之特征选择(代码片段)

title:sklearn-特征工程之特征选择date:2016-11-2522:49:24categories:skearntags:sklearn---抄袭/参考资料使用sklearn做单机特征工程sckearn中文周志华《机器学习》当数据预处理完成后,我们需要选择有意义的特征输入机器学习的算法和模型进行训... 查看详情

sklearn机器学习基础(day01基本数据处理)(代码片段)

...滤相关系数主成分分析PCA小结环境python3.7sklearnnumpyscipypip3installnumpypip3installscipypip3installsklearn& 查看详情

如何使用机器学习神器sklearn做特征工程?

来源:jasonfreak使用sklearn做特征工程特征工程是什么?有这么一句话在业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。那特征工程到底是什么呢?顾名思义,其本... 查看详情

机器学习sklearn----初识kmeans(代码片段)

文章目录概述KMeans中几个概念KMeans工作过程KMeans使用示例导入相关模块生成原始数据通过KMeans分类KMeans常用属性分类结果展示KMeans中的predict方法总结概述KMeans是一种无监督学习的方法。他是一种分类算法。用于探索原始数据ÿ... 查看详情

sklearn学习:特征提取

http://cwiki.apachecn.org/pages/viewpage.action?pageId=10814137该sklearn.feature_extraction模块可用于从包含文本和图像等格式的数据集中提取机器学习算法支持的格式的特征。 注意:特征提取与特征选择非常不同:前者包括将任意数据(如文本... 查看详情

机器学习特征工程(代码片段)

目录数据集可用数据集sklearn数据集特征提取字典文本特征预处理无量纲化归一化标准化特征降维特征选择主成分分析(PCA降维)数据集下面列举了一些示例来说明哪些内容能算作数据集:包含某些数据的表格或CSV文... 查看详情

吴恩达《机器学习》章节1绪论:初识机器学习

...重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。监督学习和无监督学的的区别为是否需要人工参... 查看详情