⼤数据分析与可视化介绍,基于机器学习的⼤数据分析具有哪些独特的特点
孙红雷演的黑社会在⼤数据时代,⼈们迫切希望在由普通机器组成的⼤规模集上实现⾼性能的以机器学习算法为核⼼的数据分析,为实际业务提供服务和指导,进⽽实现数据的最终变现。与传统的在线联机分析处理OLAP不同,对⼤数据的深度分析主要基于⼤规模的机器学习技术,⼀般⽽⾔,机器学习模型的训练过程可以归结为最优化定义于⼤规模训练数据上的⽬标函数并且通过⼀个循环迭代的算法实现,因⽽与传统的OLAP相⽐较,基于机器学习的⼤数据分析具有⾃⼰独特的特点。
(1)迭代性:由于⽤于优化问题通常没有闭式解,因⽽对模型参数确定并⾮⼀次能够完成,需要循环迭代多次逐步逼近最优值点。
(2)容错性:机器学习的算法设计和模型评价容忍⾮最优值点的存在,同时多次迭代的特性也允许在循环的过程中产⽣⼀些错误,模型的最终收敛不受影响。
工科专业排名>领导送礼(3)参数收敛的⾮均匀性:模型中⼀些参数经过少数⼏轮迭代后便不再改变,⽽有些参数则需要很长时间才能达到收敛。
这些特点决定了理想的⼤数据分析系统的设计和其他计算系统的设计有很⼤不同,直接应⽤传统的分布式计算系统应⽤于⼤数据分析,很⼤⽐例的资源都浪费在通信、等待、协调等⾮有效的计算上。
元宵节的吉祥语句
传统的分布式计算框架MPI(messagepassinginterface,信息传递接⼝)虽然编程接⼝灵活功能强⼤,但由于编程接⼝复杂且对容错性⽀持不⾼,⽆法⽀撑在⼤规模数据上的复杂操作,研究⼈员转⽽开发了⼀系列接⼝简单容错性强的分布式计算框架服务于⼤数据分析算法,以MapReduce、Spark和参数服务器ParameterServer等为代表。
建造师考试时间分布式计算框架MapReduce将对数据的处理归结为Map和Reduce两⼤类操作,从⽽简化了编程接⼝并且提⾼了系统的容错性。但是MapReduce受制于过于简化的数据操作抽象,⽽且不⽀持循环迭代,因⽽对复杂的机器学习算法⽀持较差,基于MapReduce的分布式机器学习库Mahout需要将迭代运算分解为多个连续的Map和Reduce操作,通过读写HDFS⽂件⽅式将上⼀轮次循环的运算结果传⼊下⼀轮完成数据交换。在此过程中,⼤量的训练时间被⽤于磁盘的读写操作,训练效率⾮常低效。为了解决MapReduce上述问题,Spark基于RDD定义了包括Map和Reduce在内的更加丰富的数据操作接⼝。不同于MapReduce的是Job中间输出和结果可以保存在内存中,从⽽不再需要读写HDFS,这些特性使得Spark能更好地适⽤于数据挖掘与机器学习等需要迭代的⼤数据分析算法。基于Spark实现的机器学习算法库MLLIB已经显⽰出了其相对于Mahout的优势,在实际应⽤系统中得到了⼴泛的使⽤。
近年来,随着待分析数据规模的迅速扩张,分析模型参数也快速增长,对已有的⼤数据分析模式提出了挑战。例如在⼤规模话题模型LDA 中,⼈们期望训练得到百万个以上的话题,因⽽在训练过程中可能需要对上百亿甚⾄千亿的模型参数进⾏更新,其规模远远超出了单个节点的处理能⼒。为了解决上
述问题,研究⼈员提出了参数服务器(ParameterServer)的概念,如图5所⽰。在参数服务器系统中,⼤规模的模型参数被集中存储在⼀个分布式的服务器集中,⼤规模的训练数据则分布在不同的⼯作节点(worker)上,这样每个⼯作节点只需要保存它计算时所依赖的少部分参数即可,从⽽有效解决了超⼤规模⼤数据分析模型的训练问题。⽬前参数服务器的实现主要有卡内基梅隆⼤学的Petuum、PSLit等。
谷歌街景图在⼤数据分析的应⽤过程中,可视化通过交互式视觉表现的⽅式来帮助⼈们探索和理解复杂的数据。可视化与可视分析能够迅速和有效地简化与提炼数据流,帮助⽤户交互筛选⼤量的数据,有助于使⽤者更快更好地从复杂数据中得到新的发现,成为⽤户了解复杂数据、开展深⼊分析不可或缺的⼿段。⼤规模数据的可视化主要是基于并⾏算法设计的技术,合理利⽤有限的计算资源,⾼效地处理和分析特定数据集的特性。通常情况下,⼤规模数据可视化的技术会结合多分辨率表⽰等⽅法,以获得⾜够的互动性能。在科学⼤规模数据的并⾏可视化⼯作中,主要涉及数据流线化、任务并⾏化、管道并⾏化和数据并⾏化4种基本技术。微软公司在其云计算平台Azure上开发了⼤规模机器学习可视化平台(AzureMachineLearning),将⼤数据分析任务形式为有向⽆环图并以数据流图的⽅式向⽤户展⽰,取得了⽐较好的效果。在国内,阿⾥巴巴旗下的⼤数据分析平台御膳房也采⽤了类似的⽅式,为业务⼈员提供的互动式⼤数据分析平台。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论