机器学习八 异常值

来源:互联网 发布:淘宝详情页价格 编辑:程序博客网 时间:2024/06/15 15:28

异常值(Outliers

定义:指样本中的个别值,其数值明显偏离它(或他们)所属样本的其余观测值,也称异常数据,离群值。


产生异常值的因素:

1、传感器故障所引起的值,通常为零,这些零都是异常值;

2、手动录入值引起的错误;

3、反常事件所产生的值(即你认为不可能发生的情况)。


异常值检测/删除算法:

步骤一:训练数据集;

步骤二:去掉最大误差的点,一般也叫残差;

步骤三:对剩下的数据进行再训练。

以上操作有时候需要循环操作。

备注:一般情况下,去除所有数据点的10%。

去除10%数据的代码参考(引用代码):

    cleaned_data = []    import operator    errors = [a-b for a,b in zip(predictions,net_worths)]    data = zip(ages,net_worths,errors)    data.sort(key = operator.itemgetter(2))    cleaned_data = data[:int(len(predictions)*0.9)]


原创粉丝点击