SKlearn进行数据预处理

数据背景

我们有一批两种类型值的数据,且这两种数据样本数量分布差异很大。

数据样本分布

数据集标准化

由于amount这个特征数量级远远大于其他特征,所有我们需要对其进行标准化。

Amount

对Amount这列数据进行标准化处理,即(减均值,除标准差)

标准化

然后替换掉Amount这列数据

剔除Amount后的数据

下采样

下采样

查全率与精度

一般我们使用精度来判断模型的准确性,但是精度并不是在所有情况下都适用,例如:

在1000个样本中,有10个负例,如果我们使模型总是认为样本预测结果为正常,则精确率应该为99.9%,但是却无法识别出任何一个负例,这种情况下,我们需要去使用另外一个概率--查回率。

说到查全率,我们先需要明确以下概率:

TP(true positives)正类判定为正例的个数。

FP(false positives)负类判定为正类的个数。

FN (false negatives)正类判断为负类的个数。

TN (true negatives)负类判断为负类的个数。

查回率recall = TP/TP+FN

如果继续沿用上面的例子,TP = 0,FN=10,recall = 0

交叉验证

首先,切分样本,将样本切分成训练集和测试集:

切分样本
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容