毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

Python广告投放分类问题中的特征提取方法(5)

时间:2023-08-06 15:40来源:毕业论文
用数据框的unique函数就能得到所有的工作情况。 adult[Work-Class]。unique() 输出结果如下: array([State-gov, Self-emp-not-inc, Private,Federal-gov, Local-gov, ?, Self-emp-inc,

用数据框的unique函数就能得到所有的工作情况。

adult["Work-Class"]。unique()

输出结果如下:

array(['State-gov', 'Self-emp-not-inc', ' Private','Federal-gov', 'Local-gov', '?', 'Self-emp-inc',' Without-pay',

' Never-worked', nan], dtype=object)

数据集部分数据缺失,但不会影响这里的计算。

对于Adult数据集,我们可以创建LongHours(时长)特征,用它来表示一个人每周工作时间是否多于40小时。这样就把连续值(Hours-per-week,每周工作时长)转换为类别型特征。

adult["LongHours"] = adult["Hours-per-week"] > 40

选择好的分类算法也可以提升数据挖掘应用的效果,但是通过选用好的特征来达到同样的目的。

3。2 特征选择

通常特征数量很多,但是我们只想选用其中一部分。有如下几个原因:

降低复杂度:随着特征数量的增加,很多数据挖掘算法需要更多的时间和资源。减少特征数量,是提高算法运行速度,减少资源使用的好办法。

降低噪音:增加额外特征并不总会提升算法的表现。额外特征可能扰乱算法的正常工作,这些额外特征间的相关性和模式没有实际应用价值(这种情况在小数据集上很常见)。只选择合适的特征有助于减少出现没有实际意义的相关性的几率。

增加模型可读性:根据成千上万个特征创建的模型来解答一个问题,对计算机来说很容易,但模型对我们自己来说就晦涩无比。因此,使用更少的特征,创建我们自己可以理解的模型,就很有必要。

有些分类算法确实很强壮,能够处理噪音问题,特征再多也不在话下,但是选用干净的数据,选取更具描述性的特征,对算法效果提升很有帮助。文献综述

在开展数据挖掘工作前,有些基础测试我们要做,比如确保特征值是不同的。如果特征值都相同,就跟没提供什么信息一样,挖掘就失去了意义。

Scikit-learn中的VarianceThreshold转换器可用来删除特征值的方差达不到最低标准的特征。下面通过代码来讲下它的用法,首先用numpy创建一个简单的矩阵。

import numpy as np 

X = np。arange(30)。reshape((10, 3))

上述矩阵包含0到29,共30个数字,分为3列10行。可以把它看成一个有10个个体、3个特征的数据集。

Python广告投放分类问题中的特征提取方法(5):http://www.youerw.com/jisuanji/lunwen_191827.html
------分隔线----------------------------
推荐内容