特征工程之特征选择

一、为什么要做特征选择?

如果一个模型在训练数据上的表现比在测试数据上要好很多,这就表示这个模型过拟合了。过拟合是指模型的参数对于训练数据的特定观测值拟合的非常接近,而训练数据的分布于真实数据的分布并不一致,所以模型具有较高的方差。产生过拟合的原因是因为,对于训练数据集上的模型过于复杂,通常我们可以通过以下几种方式来降低过拟合:

1、收集更多的训练数据

2、通过正则化引入罚项

3、选择一个参数相对较少的简单模型

4、降低数据的维度

特征选择除了防止模型过拟合降低模型的泛化误差之外,它还可以减少硬件资源的损耗,降低模型的开发成本,减少训练的时间。下面我们会介绍通过正则化、随机森林算法进行特征选择。

二、使用L1正则化进行特征选择

常用的正则化有L1正则化和L2正则化,L1正则化和L2正则化都是为代价函数添加罚项,不同的是L1正则化增加的罚项是使用权重绝对值的和而L2正则化增加的罚项时权重的平方和。L1正则化生成的是一个稀疏的特征向量,且大多数的权值为0。如果数据集中包含了许多不相关的特征,尤其是不相关的特征数量大于样本的数量时,通过L1正则化处理之后能降低模型的复杂度。

import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

if __name__ == "__main__":
    data = pd.read_csv("
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值