您的位置:首页 > 其它

机器学习中的数据清洗与特征处理综述

2016-11-08 22:52 267 查看
抱着认真崇拜的心情学习这篇博客: http://dataunion.org/25792.html

机器学习in action其他四篇:

机器学习如何解决问题:http://www.wtoutiao.com/p/f34DQa.html

Logistic Regression 模型简介:http://tech.meituan.com/intro_to_logistic_regression.html

美团推荐算法实践:http://tech.meituan.com/mt-recommend-practice.html

另外:

spark性能优化基础篇:http://tech.meituan.com/spark-tuning-basic.html

spark性能优化高级篇:http://tech.meituan.com/spark-tuning-pro.html

另外:

fm:http://tech.meituan.com/deep-understanding-of-ffm-principles-and-practices.html

online_learning:http://tech.meituan.com/online-learning.html

活动大促容量预估:http://tech.meituan.com/stress-test-before-promotion.html

1、摘抄1:本文以点击下单率预测为例,结合实例来介绍如何进行数据清洗和特征处理。首先介绍下点击下单率预测任务,其业务目标是提高团购用户的用户体验,帮助 用户更快更好地找到自己想买的单子。这个概念或者说目标看起来比较,我们需要将其转换成一个技术目标,便于度量和实现。最终确定的技术目标是点击下单率 预估,去预测用户点击或者购买团购单的概率。

感受:工作中要切实可行的目标

2、特征选择方法:

1 业务经验拍特征,与点击率有关的特征:

距离,很显然这是一个很重要的特征。如果购买一个离用户距离较远的单子,用户去消费这个单子需要付出很多的代价。 当然,也并不是没有买很远单子的用户,但是这个比例会比较小。

用户历史行为,对于老用户,之前可能在美团有过购买、点击等行为。

用户实时兴趣。

单子质量,上面的特征都是比较好衡量的,单子质量可能是更复杂的一个特征。

是否热门,用户评价人数,购买数等等。

在确定好要使用哪些数据之后,我们需要对使用数据的可用性进行评估,包括数据的获取难度,数据的规模,数据的准确率,数据的覆盖率等

数据获取难度

例如获取用户id不难,但是获取用户年龄和性别较困难,因为用户注册或者购买时,这些并不是必填项。即使填了也不完全准确。这些特征可能是通过额外的预测模型预测的,那就存在着模型精度的问题。

数据覆盖率

数据覆盖率也是一个重要的考量因素,例如距离特征,并不是所有用户的距离我们都能获取到。PC端的就没有距离,还有很多用户禁止使用它们的地理位置信息等。

用户历史行为,只有老用户才会有行为。

用户实时行为,如果用户刚打开app,还没有任何行为,同样面临着一个冷启动的问题。

数据的准确率

单子质量,用户性别等,都会有准确率的问题。

3 标注和特征数据清洗

数据采样,例如对于分类问题:选取正例,负例。对于回归问题,需要采集数据。对于采样得到的样本,根据需要,需要设定样本权重。当模型不能使用全部的数据来训练时,需要对数据进行采样,设定一定的采样率。采样的方法包括随机采样,固定比例采样等方法。

除了采样外,经常对样本还需要进行过滤,包括

1.结合业务情况进行数据的过滤,例如去除crawler抓取,spam,作弊等数据。

2.异常点检测,采用异常点检测算法对样本进行分析,常用的异常点检测算法包括

偏差检测,例如聚类,最近邻等。

基于统计的异常点检测算法

例如极差,四分位数间距,均差,标准差等,这种方法适合于挖掘单变量的数值型数据。全距(Range),又称极差,是用来表示统计资料中的变异量数 (measures of variation) ,其最大值与最小值之间的差距;四分位距通常是用来构建箱形图,以及对概率分布的简要图表概述。

基于距离的异常点检测算法,主要通过距离方法来检测异常点,将数据集中与大多数点之间距离大于某个阈值的点视为异常点,主要使用的距离度量方法有绝对距离 ( 曼哈顿距离 ) 、欧氏距离和马氏距离等方法。

基于密度的异常点检测算法,考察当前点周围密度,可以发现局部异常点,例如LOF算法

(发现异常,还没试过)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  机器学习