1、1大数据平台生态系统2应用与研究3软件著作权目录大数据是什么?大数据(bigdata),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。1)Volume(大体量):即可从数百TB到数十数百PB、甚至EB的规模。2)Variety(多样性):即大数据包括各种格式和形态的数据。3)Velocity(时效性):即很多大数据需要在一定的时间限度下得到及时处理。4)Veracity(准确性):即处理的结果要保证一定的准确性。5)Value(大价值):即大数据包含很多深度的价值,大数据分析
2、挖掘和利用将带来巨大的商业价值。数据挖掘(英语:Datamining),又译为资料探勘、数据采矿。它是数据库知识发现(英语:Knowledge-DiscoveryinDatabases,简称:KDD)中的一个步骤。数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘是什么?大数据生态系统1、数据采集层2、数据存储层3、数据计算分析层4、数据可视化层hdfs!Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。!HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-c
3、ost)硬件上。而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。hdfs总体结构图mapreduce!MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念Map(映射)和Reduce(归约),是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。!它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所
4、有映射的键值对中的每一个共享相同的键组。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采样与过滤!加权采样:以加权方式生成采样数据;权重列必须为double或i
8、nt类型,按照该列的value大小采样;如col的值是1.2和1.0;则value=1.2所属样本的被采样的概率就大一些。!随机采样:以随机方式生成采样数据,每次采样是各自独立的。!过滤与映射:对数据按照过滤表达式进行筛选。过滤条件中填写where语句后面的sql脚本即可;映射规则可以rename字段名称。!分层采样:根据用户指定的分组字段分层采样样本数据合并!JOIN:类似sqljoin的功能,将两张表通过一个字段关联合成一张表;同时用户可以rename输出的字段名称!合并列:将两张表的数据按列合并,需要表的行数保持一致,否则报错。!UNION:类似sqlunion的功能,将两张表的数据按行
9、合并,左、右表选择输出的字段保持完全一致;去重是union,不去重是unionall。增加序列号在数据表第一列追加ID列。缺失值填充!忽略元组!人工填写缺失值!使用全局常量(如Unknown)填写缺失值!使用属性的中心度量(如均值或者中位数)填充缺失值!使用与给定元组属同一类的所以样本的属性均值或中心值!使用最可能的值填充缺失值拆分!按照比例拆分样本集,如设置0.6,切分成60:40两个样本集归一化!min-max标准化也称为离差标准化,是对原始数据的线性变换,使结果值映射到0-1之间。转换函数如下:其中max为样本数据的最大值,min为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,
10、可能导致max和min的变化,需要重新定义。标准化!Z-score标准化方法这种方法给予原始数据的均值(mean)和标准差(standarddeviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:结合赛题的实际情况所做的一些具体的数据预处理步骤预处理的前期工作:把表格数据倒进来查看数据congfig的预处理数据合并:合并所有仓库合并全国表和分仓表归一化和标准化:最后两周每种商品的销售额求方差日期的处理得到每周商品的标准差数据过滤:消除双十二的影响,得到20151129之后的商品销量数据。双十二的数据用12月10日和12月13日的平均值代替购物节
11、数据预处理:每个商品的每周内的销量的平均数和标准差购物节特征特征工程特征变换A特征选择C数据视图E特征重要性评估B特征生成D天池的御膳房算法平台提供特征工程的工具和方法菜鸟-需求预测与分仓规划项目的特征工程特征提取:提取训练集的特征提取商品的特征提取store_code的特征提取brand_id的特征提取cate_level_id的特征提取supplier_id的特征提取store_code提取cate_level_id的特征提取store_code的特征提取brand_id的特征合并特征:合并训练集特征特征变换主成成分分析(PCA):通过正交变换将一组可能存在相关性的变量转换为一组线性不相关
12、的变量,转换后的这组变量叫主成分。降维的目的:1.减少预测变量的个数2.确保这些变量是相互独立的3.提供一个框架来解释结果PCA过程:1.特征中心化。即每一维的数据都减去该维的均值。2.求协方差矩阵。3.计算协方差矩阵的特征值和特征向量。4.选取大的特征值对应的特征向量,得到新的数据集。特征变换特征规范:当数据变化波动比较大时,采用标准化或者归一化的方式做数据。本节点可以根据特征取值的波动性,自动筛选需要离散的TopN个特征。特征尺度变换:支持稠密或稀疏的数值类特征进行常见的尺度变化。特征离散:支持稠密或稀疏的数值类特征等频离散和等距离散。特征离散:支持稠密或稀疏的数值类特征等频离散和等距离散
13、。特征异常平滑:根据用户选择异常特征,将特征含有异常的数据平滑到一定区间,支持稀疏和稠密数值类特征。随机森林随机森林特征重要行评估:指的是利用多棵树对样本进行训练并预测的一种分类器。随机森林就是由多棵CART(ClassificationAndRegressionTree)构成的。对于每棵树,它们使用的训练集是从总的训练集中有放回采样出来的,这意味着,总的训练集中的有些样本可能多次出现在一棵树的训练集中,也可能从未出现在一棵树的训练集中。2特征选择在特征重要性的基础上,特征选择的步骤如下:1)计算每个特征的重要性,并按降序排序2)确定要剔除的比例,依据特征重要性剔除相应比例的特征,得到一个新的
14、特征集3)用新的特征集重复上述过程,直到剩下m个特征(m为提前设定的值)。4)根据上述过程中得到的各个特征集和特征集对应的袋外误差率,选择袋外误差率最低的特征集。特征重要性评估随机森林特征重要行评估:根据训练数据和随机森林模型评估特征的重要性优点:1.它能够处理很高维度(feature很多)的数据,并且不用做特征选择;2.由于随机选择样本导致的每次学习决策树使用不同训练集,所以可以一定程度上避免过拟合。缺点:1.随机森林已经被证明在某些噪音较大的分类或回归问题上会过拟合;2.对于有不同级别的属性的数据,级别划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信
15、的。特征重要性评估决策树与迭代决策树(决策树与迭代决策树(GBDT)特征重要性:GBDT是一种常用的非线性模型,它基于集成学习中的boosting思想,每次迭代都在减少残差的梯度方向新建立一颗决策树,迭代多少次就会生成多少颗决策树。GBDT的思想使其具有天然优势可以发现多种有区分性的特征以及特征组合,决策树的路径可以直接作为LR输入特征使用,省去了人工寻找特征、特征组合的步骤。GBDT树有多少个叶子节点,通过GBDT得到的特征空间就有多大。计算梯度渐进决策树特征重要性。线性模型特征重要性:线性模型,是数理统计学中研究变量之间关系的一种模型,其中未知参数仅以线性形式出现。主要包括线性回归分析、方
16、差分析和协方差分析。计算线性模型的特征重要性,包括线性回归和二分类逻辑回归,支持稀疏和稠密。特征选择与生成偏好计算:根据用户的行为数据,计算用户偏好分。过滤式特征选择:过滤式特征选择:是指根据一定的算法,从所有特征数据中过滤出比较比较强的特征数据。是一个统一的特征筛选框架.目前支持以上方式:iv,信息增益,Gini增益:主要用于单特征重要性评估;Lasso:用户超大规模特征的降维筛选(集成中);RandomForest,GBDT:用于多特征之间的重要性评估(集成中);窗口变量统计:给定时间窗口,计算相应用户在距离运行时间的时间窗内的行为次数和金额。如时间窗口为1,7,30,90,180,则计算
17、用户相应天数内的行为次数和金额。数据视图:大数据通用可视化控件。统计分析在御膳房中为我们提供了七种可以使用的统计方法(1)百分位(2)全表统计(3)皮尔森系数(4)直方图(多字段)(5)离散值特征分析(6)T检验(7)卡方检验机器学习运用机器学习中的回归方法根据实测数据来求解模型的各个参数,然后评价回归模型是否能够很好的拟合实测数据;如果能够很好的拟合,则根据自变量作进一步预测。(1)线性回归(2)GBDT回归(3)XGBOOST回归机器学习线性回归,是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y=wx+e,e为误差服从均
18、值为0的正态分布。机器学习 Boosting方法:方法:Boosting这其实思想相当的简单,大概是,对一份数据,建立M个模型(比如分类),一般这种模型比较简单,称为弱分类器(weaklearner)每次分类都将上一次分错的数据权重提高一点再进行分类,这样最终得到的分类器在测试数据与训练数据上都可以得到比较好的成绩。机器学习Gradient Descent Boosting的框架:的框架:假设我们的模型能够用下面的函数来表示,P表示参数,可能有多个参数组成,P=p0,p1,p2.,F(x;P)表示以P为参数的x的函数,也就是我们的预测函数。我们的模型是由多个模型加起来的,表示每个模型的权重,表
19、示模型里面的参数。为了优化F,我们就可以优化,也就是P。我们还是用P来表示模型的参数,可以得到,(P)表示P的likelihood函数,也就是模型F(x;P)的loss函数,(P)=后面的一块看起来很复杂。机器学习Gradient Descent Boosting的框架:的框架:既然模型(F(x;P)是可加的,对于参数P,我们也可以得到下面的式子:这样优化P的过程,就可以是一个梯度下降的过程了,假设当前已经得到了m-1个模型,想要得到第m个模型的时候,我们首先对前m-1个模型求梯度。得到最快下降的方向,gm就是最快下降的方向。机器学习XGBOOST回归:回归:!xgboost是极端梯度上升(E
20、xtremeGradientBoosting)的简称,它类似于梯度上升框架,但是更加高效。它兼具线性模型求解器和树学习算法。因此,它快速的秘诀在于算法在单机上也可以并行计算的能力。!这使得xgboost至少比现有的梯度上升实现有至少10倍的提升。它提供多种目标函数,包括回归,分类和排序。!由于它在预测性能上的强大但是相对缓慢的实现,xgboost成为很多比赛的理想选择。评估混淆矩阵混淆矩阵一个完美的分类模型是,将实际上是good的实例预测成good,将bad的实例预测称bad。对于实际应用中的分类模型,可能预测错误实例类型,因此我们需要知道到底预测对了多少实例,预测错了多少实例。混淆矩阵就是将
21、这些信息放在一个表中,便于直观的观测和分析。predictnegativepositiveactualnegativeabpositivecdAC(Accuracy)=(a+d)/(a+b+c+d)TP(recall or true positive rate)=d/(c+d)FP(false positive rate)=b/(a+b)TN(true negative rate)=a/(a+b)FN(false negative rate)=c/(c+d)P(precision)=d/(b+d)评估回归模型评估:一些用于回归模型的评价指标(1)Mean dependent var因变量的样本
22、均值:目的是为了度量因变量的集中度。E(y)=(y1+y2+,.,+yn)/n;(2)S.E regression回归标准差:显然是越小越好其中,T表示样本的个数,k表示回归方程右式的变量的个数,包括常数项。软件著作权首先从hive数据预处理端对数据预处理和提取特征集:mahout数据挖掘端建立模型并优化模型;Apache应用服务器端读取数据、并接受客户端请求,根据请求给予客户端回应;安卓客户端向服务器端发送预测请求并显示预测请求。软件准备4个word文档:(1)部分源代码:若代码不满3000行,需全部提交;若超过3000行,需提交代码的前30页以及后30页,每页50行代码。注意:页眉添加软件名称,页脚添加页码。(2)操作手册:图片不能有敏感性息,注意:页脚添加页码。(3)学校审批表:自主知识产权审批表及承诺书,提交给校科技处。(4)信息采集表:填写软件著作权登记申请表用。软件著作权申请流程总结1、找工作要早作准备2、大数据工作类型EndThankyou