python大法攻略机器学习和人工智能入门

SKlearn进行数据预处理

2017-10-27  本文已影响16人  眼君

数据背景

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

数据样本分布

数据集标准化

由于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

交叉验证

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

切分样本
上一篇下一篇

猜你喜欢

热点阅读