基于大数据平台的数据挖掘的研究与应用_第1页
基于大数据平台的数据挖掘的研究与应用_第2页
基于大数据平台的数据挖掘的研究与应用_第3页
基于大数据平台的数据挖掘的研究与应用_第4页
基于大数据平台的数据挖掘的研究与应用_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于大数据平台的数据挖掘的研究与应用曹水根1大数据平台生态系统2应用与研究3软件著作权目录大数据是什么? 大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。1)Volume(大体量):即可从数百TB到数十数百PB、甚至EB的规模。2)Variety(多样性):即大数据包括各种格式和形态的数据。3)Velocity(时效性):即很多大数据需要在一定的时间限度下得到及时处理。4)Veracity(准确性):即处理的结果要保证一定的准确性。5)Value(大

2、价值):即大数据包含很多深度的价值,大数据分析挖掘和利用将带来巨大的商业价值。 数据挖掘(英语:Data mining),又译为资料探勘、数据采矿。它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤。数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘是什么?大数据生态系统1、数据采集层2、数据存储层3、数据计算分析层4、数据可视化层hdfsHadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。HDFS有着高容错性(fault-toler

3、ant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。hdfs总体结构图mapreduceMapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念Map(映射)和Reduce(归约),是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新

4、的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。hive hive是Hadoop上用于大数据中数据仓库的工具,它能把具有结构化的的数据形式文件投影到数据库的表格中,在其中提供结构化查询语言的数据查询,sql语句编译解释是运行在Hadoop上MapReduce的任务。 Hive的优势在于较低的学习成本,我们只需要编写基本的类SQL语句就能很快的完成具有规模较大数据模块的MapReduce数据的查询、检索、统计任务,不需要另外的开发专门用于MapReduce的应用,非常适用于统计分析数据仓库。优化研究与应用!赛题背景:阿里巴巴旗下电商拥有海量的买家和

5、卖家交易场景下的数据。利用数据挖掘技术,我们能对未来的商品需求量进行准确地预测,从而帮助商家自动化很多供应链过程中的决策。这些以大数据驱动的供应链能够帮助商家大幅降低运营成本,提升用户的体验,对整个电商行业的效率提升起到重要作用。 !赛题介绍:本赛题以历史一年海量买家和卖家的数据为依据,要求参赛者预测某商品在未来二周全国和区域性需求量。选手们需要用数据挖掘技术和方法精准刻画商品需求的变动规律,对未来的全国和区域性需求量进行预测,同时考虑到未来的不确定性对物流成本的影响,做到全局的最优化。更精确的需求预测,能够大大地优化运营成本,降低收货时效,提升整个社会的供应链物流效率。解决方案-比赛任务!评

6、测成本:在本赛题中,参赛者需要提供对于每个商品在未来两周的全国最优目标库存和分仓区域最优目标库存的预测。我们会提供每一个商品的补少成本(A)和补多成本(B),然后根据用户预测的目标库存值跟实际的需求的差异来计算总的成本。参赛者的目标是让总的成本最低。全国范围内的成本计算如下:分仓区域内的成本计算如下:总的衡量指标:解决方案-比赛任务!赛题数据:我们提供商品从20141010到20151227的全国和区域分仓数据。参赛者需给出后面两周(20151228-20160110)的全国和区域分仓目标库存。 商品在全国的特征包括商品的本身的一些分类:类目、品牌等,还有历史的一些用户行为特征:浏览人数、加购

7、物车人数,购买人数。注意我们要预测的未来需求是“非聚划算支付件数”(qty_alipay_njhs)。 表(1)item_feature:商品粒度相关特征表(2)item_store_feature: 商品和分仓区域粒度相关特征表(3)config: 每个商品在全国和分仓区域的补少、补多的成本表(4)选手需要提交的结果表(预测目标表)参赛者需要提供每个商品的全国和分仓区域的未来两周(20151228-20160110)目标库存。注:各表的具体详情请参考赛程说明文档数据预处理采样与过滤A增加序列号C缺失值填充E数据合并B拆分D归一化F天池的御膳房算法平台提供数据预处理工具和方法标准化G采样与过滤

8、!加权采样: 以加权方式生成采样数据;权重列必须为double或int类型,按照该列的value大小采样;如col的值是1.2和1.0;则value=1.2所属样本的被采样的概率就大一些。!随机采样: 以随机方式生成采样数据,每次采样是各自独立的。!过滤与映射: 对数据按照过滤表达式进行筛选。过滤条件中填写where语句后面的sql脚本即可;映射规则可以rename字段名称。!分层采样 : 根据用户指定的分组字段分层采样样本数据合并!JOIN: 类似sql join的功能,将两张表通过一个字段关联合成一张表;同时用户可以rename输出的字段名称!合并列: 将两张表的数据按列合并,需要表的行数

9、保持一致,否则报错。!UNION: 类似sql union的功能,将两张表的数据按行合并,左、右表选择输出的字段保持完全一致;去重是union,不去重是union all。增加序列号 在数据表第一列追加ID列。缺失值填充!忽略元组!人工填写缺失值!使用全局常量(如Unknown)填写缺失值!使用属性的中心度量(如均值或者中位数)填充缺失值!使用与给定元组属同一类的所以样本的属性均值或中心值!使用最可能的值填充缺失值拆分! 按照比例拆分样本集,如设置0.6,切分成60:40两个样本集 归一化!min-max 标准化也称为离差标准化,是对原始数据的线性变换,使结果值映射到0 - 1之间。转换函数如

10、下:其中max为样本数据的最大值,min为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。标准化! Z-score标准化方法 这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:MinMMXXaxin*-*XX 结合赛题的实际情况所做的一些具体的数据预处理步骤预处理的前期工作: 把表格数据倒进来 查看数据 congfig的预处理 数据合并: 合并所有仓库 合并全国表和分仓表 归一化和标准化:最后两周每种商品的销售额 求方差

11、日期的处理 得到每周商品的标准差数据过滤:消除双十二的影响,得到20151129之后的商品销量数据。双十二的数据用12月10日和12月13日的平均值代替 购物节数据预处理:每个商品的每周内的销量的平均数和标准差 购物节特征 特征工程特征变换A特征选择C数据视图E特征重要性评估B特征生成D天池的御膳房算法平台提供特征工程的工具和方法菜鸟-需求预测与分仓规划项目的特征工程特征提取: 提取训练集的特征 提取商品的特征 提取store_code的特征 提取brand_id的特征 提取cate_level_id的特征 提取supplier_id的特征 提取store_code 提取cate_level_

12、id的特征 提取store_code的特征 提取brand_id的特征合并特征:合并训练集特征 特征变换主成成分分析(PCA): 通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。降维的目的:1.减少预测变量的个数2.确保这些变量是相互独立的3.提供一个框架来解释结果PCA过程: 1.特征中心化。即每一维的数据都减去该维的均值。 2.求协方差矩阵。 3.计算协方差矩阵的特征值和特征向量。 4.选取大的特征值对应的特征向量,得到新的数据集。特征变换特征规范: 当数据变化波动比较大时,采用标准化或者归一化的方式做数据。本节点可以根据特征取值的波动性,自动筛

13、选需要离散的TopN个特征。特征尺度变换:支持稠密或稀疏的数值类特征进行常见的尺度变化。特征离散:支持稠密或稀疏的数值类特征 等频离散 和 等距离散。特征离散:支持稠密或稀疏的数值类特征 等频离散 和 等距离散。特征异常平滑:根据用户选择异常特征,将特征含有异常的数据平滑到一定区间, 支持稀疏和稠密 数值类特征。随机森林随机森林特征重要行评估: 指的是利用多棵树对样本进行训练并预测的一种分类器。随机森林就是由多棵CART(Classification And Regression Tree)构成的。对于每棵树,它们使用的训练集是从总的训练集中有放回采样出来的,这意味着,总的训练集中的有些样本可

14、能多次出现在一棵树的训练集中,也可能从未出现在一棵树的训练集中。2 特征选择 在特征重要性的基础上,特征选择的步骤如下:1)计算每个特征的重要性,并按降序排序2)确定要剔除的比例,依据特征重要性剔除相应比例的特征,得到一个新的特征集3)用新的特征集重复上述过程,直到剩下m个特征(m为提前设定的值)。4)根据上述过程中得到的各个特征集和特征集对应的袋外误差率,选择袋外误差率最低的特征集。特征重要性评估随机森林特征重要行评估:根据训练数据和随机森林模型评估特征的重要性优点: 1. 它能够处理很高维度(feature很多)的数据,并且不用做特征选择;2. 由于随机选择样本导致的每次学习决策树使用不同

15、训练集,所以可以一定程度上避免过拟合。缺点: 1. 随机森林已经被证明在某些噪音较大的分类或回归问题上会过拟合;2. 对于有不同级别的属性的数据,级别划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信的。特征重要性评估决策树与迭代决策树(决策树与迭代决策树(GBDT)特征重要性: GBDT是一种常用的非线性模型,它基于集成学习中的boosting思想,每次迭代都在减少残差的梯度方向新建立一颗决策树,迭代多少次就会生成多少颗决策树。GBDT的思想使其具有天然优势可以发现多种有区分性的特征以及特征组合,决策树的路径可以直接作为LR输入特征使用,省去了人工寻找特

16、征、特征组合的步骤。 GBDT树有多少个叶子节点,通过GBDT得到的特征空间就有多大。计算梯度渐进决策树特征重要性。线性模型特征重要性:线性模型,是数理统计学中研究变量之间关系的一种模型,其中未知参数仅以线性形式出现。主要包括线性回归分析、方差分析和协方差分析。计算线性模型的特征重要性,包括线性回归和二分类逻辑回归, 支持稀疏和稠密。特征选择与生成偏好计算: 根据用户的行为数据,计算用户偏好分。过滤式特征选择: 过滤式特征选择:是指根据一定的算法,从所有特征数据中过滤出比较比较强的特征数据。是一个统一的特征筛选框架.目前支持以上方式: iv,信息增益,Gini增益:主要用于单特征重要性评估;

17、Lasso: 用户超大规模特征的降维筛选(集成中); RandomForest,GBDT:用于多特征之间的重要性评估(集成中);窗口变量统计: 给定时间窗口,计算相应用户在距离运行时间的时间窗内的行为次数和金额。如时间窗口为1,7,30,90,180,则计算用户相应天数内的行为次数和金额。数据视图:大数据通用可视化控件。统计分析 在御膳房中为我们提供了七种可以使用的统计方法(1)百分位(2)全表统计(3)皮尔森系数(4)直方图(多字段)(5)离散值特征分析(6)T检验(7)卡方检验机器学习运用机器学习中的回归方法 根据实测数据来求解模型的各个参数,然后评价回归模型是否能够很好的拟合实测数据;如

18、果能够很好的拟合,则根据自变量作进一步预测。(1)线性回归(2)GBDT回归(3)XGBOOST回归机器学习 线性回归,是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y = wx+e,e为误差服从均值为0的正态分布。机器学习 Boosting方法:方法: Boosting这其实思想相当的简单,大概是,对一份数据,建立M个模型(比如分类),一般这种模型比较简单,称为弱分类器(weak learner)每次分类都将上一次分错的数据权重提高一点再进行分类,这样最终得到的分类器在测试数据与训练数据上都可以得到比较好的成绩。 机器学习

19、 Gradient Descent Boosting的框架:的框架: 假设我们的模型能够用下面的函数来表示,P表示参数,可能有多个参数组成,P = p0,p1,p2.,F(x;P)表示以P为参数的x的函数,也就是我们的预测函数。我们的模型是由多个模型加起来的,表示每个模型的权重,表示模型里面的参数。为了优化F,我们就可以优化,也就是P。 我们还是用P来表示模型的参数,可以得到,(P)表示P的likelihood函数,也就是模型F(x;P)的loss函数,(P)=后面的一块看起来很复杂。机器学习 Gradient Descent Boosting的框架:的框架: 既然模型(F(x;P)是可加的,

20、对于参数P,我们也可以得到下面的式子: 这样优化P的过程,就可以是一个梯度下降的过程了,假设当前已经得到了m-1个模型,想要得到第m个模型的时候,我们首先对前m-1个模型求梯度。得到最快下降的方向,gm就是最快下降的方向。机器学习XGBOOST回归:回归:!xgboost 是极端梯度上升(Extreme Gradient Boosting)的简称, 它类似于梯度上升框架,但是更加高效。它兼具线性模型求解器和树学习算法。因此,它快速的秘诀在于算法在单机上也可以并行计算的能力。!这使得xgboost至少比现有的梯度上升实现有至少10倍的提升。它提供多种目标函数,包括回归,分类和排序。!由于它在预测性能上的强大但是相对缓慢的实现,xgboost 成为很多比赛的理想选择。评估混淆矩阵混淆矩阵 一个完美的分类模型是,将实际上是good的实例预测成good,将bad的实例预测称bad。对于实际应用中的分类模型,可能预测错误实例类型,因此我们需要知道到底预测对了多少实例,预测错了多少实例。混淆矩阵就是将这些信息放在一个表中,便于直观的观测和分析。predictnegativepositiveactualnegativ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论