《大数据处理技术.docx》由会员分享,可在线阅读,更多相关《大数据处理技术.docx(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、大数据处理技术1.技术背景:分布式并行计算是大数据(pb)处理 的有效方法,编写正确高效的大规模并行分布式程序是计算机工程领域的难题。并行计算的模型、计算任务分发、计算机结果合并、计算节点的通讯、计算节点的负载均衡、计算机节点容错处理、节点文件的管理等方面都要考虑。为了解决上述复杂的问题,谷歌设计 一个新的抽象模型,使用这个抽象模型, 普通程序员只要表述他们想要执行的简单 运算即可,而不必关心并行计算、容错、 数据分布、负载均衡等复杂的细节,这些 问题都被封装了,交个了后台程序来处理。 这个模型就是mapreduce。谷歌2004年公布的mapreduce编程模型, 在工业界、学术界产生巨大影
2、响,以至于 谈大数据必谈mapreduce。工业界试图做的事情就是要实现一个 能够媲美或者比Google mapreduce更好的 系统,多年的努力下来,Hadoop (开源)脱颖而出,成为外界实现MapReduce计算模型事实上的标准,围绕着Hadoop,已经 形成了 一个庞大的生态系统。6、容错第三局部:dataNode失效FAULT TOLERANCE IN HOFS. PART IH; H4N0LING DATANODE FAILURESi First-1 must tell you about the two fables I keep .y -JList of BlocksBloc
3、k 1 -stored of DN1, DN2, DBlock 2 - stored at DN1, DN4, DN3N5List of Datonodes Datanode i has block 1,2,. botanode 2 - has block 1,5,.8、结束语WHERE TO GO FROM HERE?第三节 nosqlhbase为什么要用HBase?1 .数据集成长为tb和pb级.横向扩展(增加节点)比扩容廉价,通过添加节点即 可适应数据的持续增长出于同样的原因,我们需要Hadoop,但有时Hadoop是不d够的2 .需要支持随机读取和随机写入4,传统数据库扩容很昂贵,而且
4、数据很难分发(分布.式HBase是什么? 分布式列式数据库 多维高可用性 高性能存储系统目标:十亿行数百万列成千上万的版本Pb级数据分布在成千上万的服务器节点上HBase不是不是传统的SQL数据库没有连接,没有查询引擎,没有类型,没有SQL有事务和一级索引,但这些是插件,而不是HBase的核心 局部作为RDBMS的替代必须了解RDBMS相反的模式非标准的数据表格很宽,数据分布稀疏HBase是如何工作的呢?两种类型的HBase节点:Master管理节点和RegionServer分区节点master (智理B节T占)f )管理量加的操作任务窗度、负载平衡、数据分裂它不负责读/写数据MhtZooKe
5、eper and standbys (备用服务器)实现高度 可用性RegionServer(个或多个)一存表格的节点:执行读取、缓冲写.与客户端直接点对点进行读/写HBase 表个HBase集群是由任意数量的用户定义的表组成表模式只定义列族每个列族包含任意数量的列一每一列包含任意数量的版本列只在插入时才产生,空值不占用空间除了表名和列族名外,所有的数据都是字节存储表中的行已被排序,顺序存储列族里列也被排序,顺序存储(表、行、列族、歹山时间戳)值HBase表数据结构张表里行的映射与其列族是个有序映射关系SortedMap(row list(ColumnFamilies)个列族里的列名与版本值是一
6、个有序映射关系SortedMap(column SortedMap(Versioned Values)列里时间戳与值是一个有序映射关系SortedMap(Timestamp Value)HBase表是个三维有序的映射表力SortedMap(RowKey, List(SortedMap(Column, List( SortedMap(Timestamp, Value)一 row Key (ASC) + columnLabel(ASC) Version (DESC) - valuesortedRowRow Kekeynvaln. tn /keym-vsln. tnRow勘Column family
7、ColumnFamily*1 ColumnFamily*nrowkeycontents*anchor.sortedkey1:vsH.t1 / kyA:val1.t1 k”1:val2.l2 / keyA:v&l242 k”2:V8.t2k”8:vaJ2key2:val2, keyB:v12. Mlanguage:a (t1) E.Mhor:6MLeCNN ,me博soca *6 /tso.gifftU,me博soca *6 /tso.gifftU幅狄瑞门威8品底调;,)ColumnFamily:ColumnKeyt ColumnValue(Timestamp)行舞时间戮列族 contents列
8、族anchor列族mimet9anchor ennsi comCNN1,I t8anchor:my look ca=RCNN wt6contcnts:html*, .Mminic:typc=,tcxVHml,t5contcnts:html-w.M13contents:html=l1.r,Row KeyTime Stamp Column Family anchor“con cnn.忡”* anchor:cnnsi. com = CNNcnn. ww”t8anchor:my. look, ca = CNN. com.Table 5.2. ColunnFamily anchorTable 5. 3.
9、 ColumiFniDi ly contentsRow Keycontents:t6contents:html : . “com erm. www”com cnn.旧刑”“com cnn. wwwt3contents:html : *.contents:html =行键升序 row=rowO, row=rowO, row=rowO, row=row1, row=row1, row=row1, row=row2, row=row2, row=row2,列族:列名 column=anchor:bar, column=anchor:foo, column=anchor:foo, column=anc
10、hor:bar, column=anchor:foo, column=anchor:foo, column=anchor:bar, column=anchor:foo, column=anchor:foo,时间戳 传统行式数据库数据是按行存储的没有索引的查询使用大量1/0建立索引和物化视图需要花费大量时间和资源面对查询的需求,数据库必须被大量膨胀才能满足性能要求数据按列存储-每一列单独存放 数据即是索引只访问查询涉及的列-大量降低系统10 每一列由一个线索来处理-查询的并发处理数据类型一致,数据特征相似-高效压缩口口中口口 Slor 诉HRe5tor、MRcQonSofvwHReonSigSk
11、xeFiioIhfjgStoreFioStoreFfe特点 良好的压缩比。由于大多数数据库设计都有冗余,如此来,压缩比非常高,: 40多M的数据导入infobright,没想到数据文件只有1M多 列上的计算非常的快。方便MapReduce和Keywalue模型的融合读取整行的数据较慢,但局部数据较快HBase Regions表由任意数量的Regions组成regions 用 startKey 和 endKey 来标记表:(Table, NULL, NULL)两个region表:(Table, NULL, “MidKey”)and (Table, ttMidKeyn, NULL)一个 regio
12、n 放在一小RegionServer 节点上多个region,可能放在 个不同的节点上,每个region由假设干个HDFS files and blocks组成,每个HDFS files and blocks由Hadoop复制,保存多个副本。HBase架构region信息和位置信息存储在特殊目录表一 ROOT表包含元数据表的位置.META表包含user regions的模式(结构说明)和位置信息ROOT的位置存储在zookeeper上,-这是“引导”区zookeeper节点用于协调/监痉引导集群选举一个节点作为master节点检测RegionServer节点故障的临时节点(故障信息传递给mas
13、ter处理)System ArchitectureSystem ArchitectureHBase关键特性 数据的自动分区数据的增长,region是自动分裂数据透明分布节点间的负载自动均衡 表按照行排序,行按照列排序这个设计可以高效读取和扫描 组合键(即列)可以排序也可以分组有服务器端的过滤功能 因为集成ZooKeeper,所以没有单点故障 在线状态下(不终止服务的情况下)快速添加/移除的节点移动数 据的位置,不移动数据(指向另外两个备份的中的个) 在线状态下(不终止服务的情况下)支持创立/修改表可以配置表 和列族的参数与Hadoop MapReduce关系密切: TablelnputForm
14、at / TableOutputForma 表输 A/输出格式化HFileOutputFormat文件输出麻式化(都是m叩reduce计算)HBase访问接口Native Java Client/API一 Get, Scan, Put, Delete classes一 HTable for read/write, HBaseAdmin for admin stuff Non-Java Clients-Thrift server (Ruby, C+, PHP, etc)一 REST server (stargate contrib)HBase Shell-Jruby shell supports
15、 put, delete, get, scan-Also supports administrative tasks TablelnputFormat/TableOutputFormatHBase插件 MapReduce / Cascading / Hive / Pig一 Support for HBase as a data source or sink Transactional HBase一 Distributed transactions using OCC Indexed HBase一 Utilizes Transactional HBase for secondary indexi
16、ng IHbase一 New contrib for in-memory secondary indexesHBql一 SQL syntax on top of HBase今天,HBase已经是Apache顶级工程,有着众多的开发人员和兴旺的用户社区。它成为一个核心的基础架构部件,运行在世界上许多公司(如 StumbleUpon Trend Micro、Facebook Twitter、Salesforce和Adobe)的大规模生产环境中。HBase网页搜索的例子 /存储搜索到的网页数据-搜索表有一个content列族,2A-Row is URL with Columns行是url (统资源定
17、位符,网页的地址),列族是content-1content:data歹ij: stores raw crawled data (存储抓起到的具体网页数据) contentJanguageiJ : stores language header (存彳源语言)content:type 歹ij: stores content-type header (存储内容的类型)-如果需要对原始数据的超链接和图片进行处理增加列族 links and images ,列名:vurllinks: :保存超链接 images: :保存图片Row=url1Rdbms网页搜索的例子传统的数据库里如何保存数据?网页表表包含
18、:url列,data列,language列,type歹ij-链接表包含:url列,link列 图片表包含:url列,image列表格的规模怎样?10M documents w/ avg10 links and 10 images (平均每个网页 有10个链接和10张图片,共有10m个网页内容)210M total rows versus 10M total rows (rdbms需要210m条记录来存储这些内容而hbase只要10m条记录来存储)Index bloat with links/images (tableslinks/images 表呈现指数 膨胀)说明:10个网页,平均每个网页有
19、10个链接和10张图片,用关系型数 据来存储:网页表有10条记录,链接表、图片表分别有10*10=100条 记录,总行数=10+100+100=210行,而hbase只有10行。“NoSQL”是什么?与sq I的关系不大-SQL只是个查询语言标准HBql试图向HBase添加SQL语法sql操作面对数百万的数据无能为力!hive和pig在处理原始的MapReduce时很受欢迎。nosql在非RDBMS架构方面有以下改进:放弃rdbms的关联关系降低在acid事务性方面的要求 说明:ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistenc
20、y) 隔离性 (Isolation)、持久性(Durability)。一个支持事务. (Transaction)的数据库系统,必需要具有这四种特性,否那么在口务过程(Transaction processing)当中无法保证数据的/工确性,交易过程极可能达不到交易方的要求。NoSQL类型和工程Column-oriented一 HBase, Cassandra, HypertableKey/Value一 BerkeleyDB, Tokyo, Memcache, Redis, SimpleDBDocument-CouchDB, MongoDB其他方面的区别: -一强致性(数据备份同一时刻同一值)V
21、S最终一致性。Database层面的复制vs Filesystem层面的复制。大数据处理大数据处理利器:Hadoop具有五大优势现在,如果你没有听说过Hadoop,那么你一定落伍了。作为一个全新的开源项 目,Hadoop提供了一中新的方式用来存储和处理器数据。大型的互联网公司, 如谷歌、Facebook都使用Hadoop来存储和管理它们庞大的数据集。Hadoop也通 过在这些领域的应用证明了其五大优势:高可扩展性Hadoop是一个高度可扩展的存储平台,因为他可以存储和分发横跨数 百个并行操作的廉价的服务量数据集群。不同于传统的关系型数据库系统不能扩 展到处理大量的数据,Hadoop是能给企业提
22、供涉及成百上千TB的数据节点上运 行的应用程序。本钱效益Hadoop还为企业用户提供了极具本钱效益的存储解决方案。传统的关 系型数据库管理系统的问题是,他并不符合海量数据的处理器,不能够符合企业 的本钱效益。许多公司过去不得不假设那些数据最优价值,然后根据这些有价值 的数据设定分类,如果保存所有的数据,那么本钱就会过高。虽然这种方法可以 短期内实现工作,但是随着数据量的增大,这种方式并不能很好的解决问题。Hadoop的架构那么不痛,其被设计为一个向外扩展的架构,可以经济的 存储所有公司的数据供以后使用,节省的费用是非常惊人的,Hadoop提供数百 TB的存储和计算能力,而不是几千块钱就能解决的
23、问题。灵活性更好Hadoop能够使企业轻松访问到新的数据源,并可以分析不同类型的数 据,从这些数据中产生价值,这意味着企业可以利用Hadoop的灵活性从社交媒 体、电子邮件或点击流量等数据源获得珍贵的商业价值。止匕外,Hadoop的用途非常广,诸如对数处理、推荐系统、数据仓库、 市场活动分析以及欺诈检测。Hadoop处理更快Hadoop拥有独特的存储方式,用于数据处理的工具通常在与数据相同的服 务器上,从而导致能够更快的处理器数据,如果你正在处理大量的非结构化数据, Hadoop能够有效的在几分钟内处理TB级的数据,而不是像以前PB级数据都要 以小时为单位。容错能力使用Hadoop的一个关键优
24、势就是他的容错能力。当数据被发送到一个 单独的借点,该数据也被复制到集群的其它节点上,这意味着在故障情况下,存 在另一个副本可供使用。总结:当涉及到处理大量数据集以及平安和本钱效益的时候,Hadoop相比 关系型数据库管理系统更具有优势。它适用于任何规模的非结构化数据持续增长 的企业,将帮助企业持续发现商业价值。2. mapreduce的概念:MapReduce是一个编程模型,一个处 理和生成超大数据集的算法模型的相关实 现。简单的一句话解释MapReduce就是 “任务的分解与结果的汇总”。mapreduce成功的最大因素是它简单的编 程模型。程序员只要按照这个框架的要求, 设计mao和re
25、duce函数,剩下的工作,如 分布式存储、节点调度、负载均衡、节点通讯、容错处理和故障恢复都由mapreduce框架(比方hadoop)自动完成, 设计的程序有很高的扩展性。3. mapreduce的编程模型原理:开发人员用两个函数表达这个计算:Map 和Reduce。即:(input) = map(kl,vl)- list(k2,v2) = combine = reduce(k2Jist(v2) -list(v2) (output)单词统计Hello World Bye WorldHello HgdQQP Bye HQdQQP Bye2Hello22Word 2%大数据处理:技术与流程“大数
26、据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。特点是: 数据量大(Volume)、数据种类多样(Variety)、要求实时性强(Velocity) o对它关注也是因为它蕴藏的商业价值大(Value)o也是大数据的4V特性。符合这些特性的,叫大数据。大数据会更多的表达数据的价值。各行业的数据都越来越多,在大数 据情况下,如何保障业务的顺畅,有效的管理分析数据,能让领导层做出最有利的决策。这是关注大数据的原因。也是大数据处理技术要解决的问题大数据处理技术大数据时代的超大数据体量和占相当比例的半结构化和非结构化数 据的存在,已经超越了传统数据库
27、的管理能力,大数据技术将是IT领域新一代的技术与架构,它将帮助人们存储管理好大数据并从大体量、高 复杂的数据中提取价值,相关的技术、产品将不断涌现,将有可能给IT行业开拓一个新的黄金时代。大数据本质也是数据,其关键的技术依然逃不脱:1)大数据存储和 管理;2)大数据检索使用(包括数据挖掘和智能分析)O围绕大数据,一批新兴的数据挖掘、数据存储、数据处理与分析技术将不 断涌现,让我们处理海量数据更加容易、更加廉价和迅速,成为企业业务经营的好助手,甚至可以改变许多行业的经营方式。1)大数据的商业模式与架构一-云计算及其分布式结构是重要途径大数据处理技术正在改变 目前计算机的运行模式,正在改变着这个世
28、界:它能处理儿乎各种类型的海量数据,无论是 微博、文章、电子邮件、文档、音频、视频,还是其它形态的数据;它工作的速度非常快速: 实际上几乎实时;它具有普及性:因为它所用的都是最普通低本钱的硬件,而云计算它将计 算任务分布在大量计算机构成的资源池上,使用户能够按需获取计算力、存储空间和信息服 务。云计算及其技术给了人们廉价获取巨量计算和存储的能力,云计算分布式架构能够很好 地支持大数据存储和处理需求。这样的低本钱硬件+低本钱软件+低本钱运维,更加经济和实 用,使得大数据处理和利用成为可能。2)大数据的存储和管理-云数据库的必然很多人把NoSQL叫做云数据库,因为其处理数据的模式完全是分布于各种低
29、本钱服务器和 存储磁盘,因此它可以帮助网页和各种交互性应用快速处理过程中的海量数据。它采用分布 式技术结合了一系列技术,可以对海量数据进行实时分析,满足了大数据环境下一局部业务 需求。但我说这是错误的,至少是片面的,是无法彻底解决大数据存储管理需求的。云计算对关 系型数据库的开展将产生巨大的影响,而绝大多数大型业务系统(如银行、证券交易等)、 电子商务系统所使用的数据库还是基于关系型的数据库,随着云计算的大量应用,势必对这 些系统的构建产生影响,进而影响整个业务系统及电子商务技术的开展和系统的运行模式。 基于关系型数据库服务的云数据库产品将是云数据库的主要开展方向,云数据库(CloudDB),
30、 提供了海量数据的并行处理能力和良好的可伸缩性等特性,提供同时支持在在线分析处理 (OLAP)和在线事务处理(OLTP)能力,提供了超强性能的数据库云服务,并成为集群环境 和云计算环境的理想平台。它是一个高度可扩展、平安和可容错的软件,客户能通过整合降 低IT本钱,管理位于多个数据,提高所有应用程序的性能和实时性做出更好的业务决策服 务。这样的云数据库要能够满足:A.海量数据处理:对类似搜索引擎和电信运营商级的经营分析系统这样大型的应用而言, 需要能够处理PB级的数据,同时应对百万级的流量。B.大规模集群管理:分布式应用可以更加简单地部署、应用和管理。C.低延迟读写速度: 快速的响应速度能够极
31、大地提高用户的满意度。D.建设及运营本钱:云计算应用的基本要 求是希望在硬件本钱、软件本钱以及人力本钱方面都有大幅度的降低。所以云数据库必须采用一些支撑云环境的相关技术,比方数据节点动态伸缩与热插拔、对所 有数据提供多个副本的故障检测与转移机制和容错机制、SN (Share Nothing)体系结构、中 心管理、节点对等处理实现连通任一工作节点就是连入了整个云系统、与任务追踪、数据压 缩技术以节省磁盘空间同时减少磁盘10时间等。云数据库路线是基于传统数据库不断升级并向云数据库应用靠拢,更好的适应云计算模式, 如自动化资源配置管理、虚拟化支持以及高可扩展性等,才能在未来将会发挥不可估量的作 用。
32、3)大数据的处理和使用-新型商业智能的产生传统针对海量数据的存储处理,通过建立数据中心,建设包括大型数据仓库及其支撑运行的 软硬件系统,设备(包括服务器、存储、网络设备等)越来越高档、数据仓库、OLAP及ETL、 BI等平台越来越庞大,但这些需要的投资越来越大,而面对数据的增长速度,越来越力不从 心,所以基于传统技术的数据中心建设、运营和推广难度越来越大。另外一般能够使用传统的数据库、数据仓库和BI工具能够完成的处理和分析挖掘的数据, 还不能称为大数据,这些技术也不能叫大数据处理技术。面对大数据环境,包括数据挖掘在 内的商业智能技术正在发生巨大的变化。传统的传统商业智能技术,包括数据挖掘,主要
33、任 务舒建立比拟复杂的数据仓库模型、数据挖掘模型,来进行分析和处理不太多的数据。也许由于云计算模式、分布式技术和云数据库技术的应用,我们不需要这么复杂的模型,不 用考虑复杂的计算算法,就能够处理大数据,对于不断增长的业务数据,用户也可以通过添 加低本钱服务器甚至是PC机也可以,来处理海量数据记录的扫描、统计、分析、预测。如 果商业模式变化了,需要一分为二,那么新商业智能系统也可以很快地、相应地一分为二,继续强力支撑商业智能的需求附录资料:不需要的可以自行删除大数据挖掘技术之DM经典模型(下)数据分析微信公众号datadw关注你想了解的,提供你需要的。接着上篇大数据挖掘技术之DM经典模型(上)文
34、章,接下来我们将探讨 朴素贝叶斯模型、线性回归、多元回归、逻辑回归分析等模型。4、朴素贝叶斯模型表查询模型简单有效,但是存在一个问题。随着输入数量的额增加,每个单 元格中训练样本的数量会迅速减少。如果维度为2,且每一维有1。个不同的变 量,那么就需要10。个单元格,而当有3个维度时,就需要1000个单元格,4 个维度就是1000。.这样成指数级的增长,哪怕的传统数据挖掘中都会遇到明显瓶颈。当试图预测某一个概率值时,朴素贝叶斯模型就提供这一方法。基本思想: 每个输入变量本身就包含一些预测需要的信息。比方目标变量是取消业务的概率, 解释变量是市场、获取渠道、初始信用评分、利率计划、 号码类型、手机
35、号 以及客户年龄。这些变量都具有预测能力。根据取消率的显著差异性,可将每个变量划分在不同的范变量划分在不同的范中。简单理解:条件概率是指给定B的条件下A的概率以及给定A的条件下B 的概率。解释:给定B的条件下A发生的概率,等于给定A的条件下B发生的概率 乘以A和B发生的概率的比例。如果A代表停止续签,B代表使用黑莓手机,然后给定使用黑莓手机的条 件下停止续签的概率,就是给定停止续签的条件下使用黑莓手机的概率乘以总体 停止续签的概率与总体使用黑莓手机的概率之比。4.1、 概率、几率和释然 概率:0到1之间的一个数字,表示一个特定结果发生的可能性。一种估 计结果概率的方法是计算样本数据中出现结果次
36、数的百分比。 几率:某一特定结果发生于不发生的概率比。如果一个事件发生的概率是0.2,那么不发生的概率是0.8。那么其发生的几率就是1/4O几率的取值是。 到无穷。 似然:两个相关的条件概率比。即给定B发生的情况下,某一特定结果A 发生的概率和给定B不发生的情况下A发生的概率之比。4.2、 朴素贝叶斯计算对任意数量属性中的每一个属性,朴素贝叶斯公式都将目标事件的几率与该 事件的似然联系起来。回到基于营销市场、渠道获取、最初信用评分、费率计算、 号码类型、手机型号以及客户年龄来预测客户流失的例子。例如上面谈到的 黑莓手机续签的案例,我们关注的是。1、停止续签的总体几率。2、黑莓手机 用户停止的似
37、然。3、在整个州市场停止续签的似然。之所以定义为“朴素”,是基于所有似然相乘都基于输入变量相互独立的假 设。在这个案例中,假设的是使用黑莓手机的似然与市场独立(并且存在于该州 的似然与手机类型独立)。而在实际中,这种真正相互独立的情况很少见。朴素贝叶斯模型最吸引人的点:对于待评分的观测,如果缺失某些输入值, 可以简单地将缺失的似然从模型中去掉。意味着,包含那些并不是对所有有用都 可用的输入(用户年龄),但如果知道这些变量,它们就有用。给定不同输入的 概率,且这些输入与停止续签相关,朴素贝叶斯公式就可以计算停止续签的几率,而公司对这种停止续签的用户更感兴趣。4.3、 朴素与表查询模型的比拟对于概
38、率型目标来说,朴素贝叶斯模型和表查询模型密切相关。两者之间的 主要区别就在于如何使用维度。在表查询模型中,使用所有维度依次定义单元格, 然后计算每一个单元格的目标概率。因此,表查询模型可以获取变量之间的相互 作用。在朴素中,需要为每一个维度单独计算似然,之后组合这些似然,从而计 算出目标概率。似然的组合有一个假设:各维度关于目标彼此独立。表查询没有 说明这样一类属性的组合关系,即由于在训练数据中出现的频率很低,导致这些 概率很低的属性就不会出现。在朴素模型中可以预测任何从未出现过的组合,但要这样做,就必须假设这 些输入所造成的影响彼此独立。表查询模型没有这样的假设,所以当数据多到可 以支持一个
39、可信的估计模型时,表查询模型也许会做的更好。5、线性回归回归模型也是一种预测建模技术。在Excel中就可以使用线性回归。回归 模型也很复杂,这里谈到最正确拟合曲线。输入变量和目标变量必须都是数值 变量,回归方程描述了两者之间的一种算术关系。“最正确的”关系是指最大限度 地减少了从数据点到拟合曲线的垂直距离的平方和。5.1 最正确拟合曲线如下列图,显示了一个知名博主发表的一篇文章日浏览率随着时间和被关注度 之间的关系。图中使用描点的符号是空心圆,它有助于清楚的显示各点之间的聚 集情况。例如,在较短时间内用户的关注度分布非常密集。当使用不同的颜色比 较不同的客户组时,这种散点图尤其有用。随着时间的
40、增加,博客的日访问量会越来越低,最后维持到一个水平。画出 来的曲线更像是一个双曲线。根据X轴,时间的递增。Y轴,日访问量的增加。 我们可以模拟出这个博主的访问量随时间变化的曲线。如果在保证博客质量的同 时,我们就可以预测博主的一篇博客的访问量大致在什么范围。可能这里有很多 的误差或不精确的地方。但是通过拟合曲线,我们更能从直观上看到,曲线的走 势。如果曲线更精确的化,我们甚至可以模拟出曲线的函数表达式。如果用作数据点的标记并没有完全拟合,散点图可以传递出更多的信息。最 佳拟合曲线的性质:在所有可能的曲线中,最正确拟合曲线指的是从观察点到曲线 垂直距离的平方最下的那条曲线,散点图显示了每个点到曲
41、线之间的距离。最正确拟合曲线的定义就是最小二乘法的定义。欧式距离公式对该值进行了开 方,在没有计算机的年代,计算欧式距离非常困难。当时,高斯提出这一观点, 就是利用计算平方和,代替计算距离之和。这样做的目的,就使最正确拟合曲线系数很容易计算。5.07.510.012.515.0X1600.00-500.00-500.00-400.00-工 300.00-200 00-100.00-10.0X112.515.0这里谈到的是线性回归,其实回归模型是一个直线方程,这里只是来描述一 个拟合曲线,其实算不上一个回归曲线。在现实之中,更多线性回归的模型很少 见,更多的是曲线拟合。5.2 拟合的优点对于一个
42、给定的数据集,总是可以找到一条最正确的拟合曲线。但是,存在很 多条曲线,哪条才是最正确的。这里引入“残差”,就是度量预测值与实际值之差。 还有一个标准方法,成为,用来衡量描述曲线对观测数据的拟合程度。(1)残差如图,身高与体重模型的残差。一个无偏模型在丧失高值点方面应与丧失低值点类似。在残差图中,最重要 的一点就是,这些值是位于拟合曲线之上的可能性与之下的可能性是否一样。从 图中我们也可以看到在曲线上与在曲线下的样本点是不一样的。一个良好的模型所产生的估计值应该接近真实值,所以残差应该集中于曲线 轴附近。如图中也是可以看到抛离曲线的一些孤立点。这些点出现的原因,可能 是由于一些人为记录的原因造
43、成的。IBS 17017510185身是单词统计map(String key, String value):/ key: document name value: document contentsfor each word w in value:Emitlntermediate(w, al,f );reduce(String key, Iterator values):/ key: a word values: a list of countsint result = 0;for each v in values:, result += Parselnt(v);Emit(AsString(r
44、esult);一共分为map (分解)shuffle (洗牌 reduce (归并)三个阶段。mcp阶段,每 点调用程序员编写的m叩函数,作用于每一个 在此节点存放的键值对,map函数的输出同样 是一些键值对,中间结果进入shuffle阶段, shuffle系统自动完成,程序员无须也无法控制, shuffle阶段会把所有中间结果里的键相同的所有键值对通过网络传递给同一个目标节点。在最后的reduce阶段,每个节点会对所有键相 同的键值对调用程序员编写的reduce函数,输 出最终结果。在统计学中,残差在回归方程中要考虑误差项。最正确拟合曲线的方程是:Y=aX+b但该曲线,不是完整的模型。统计人
45、员会将模型方程表示为:代表误差项, 因为X并不能完美的展示丫。误差项表示模型无法解释的丫的局部。Y=aX +b+s(2) R(R这里代表是R的平方)对于最正确拟合曲线,R的取值始终在。1之间。当该值接近1时,说明该 曲线在捕获输入和目标之间的关系方面表现很好。假设接近于0,那么说明最正确拟合 曲线的表现很差。在。1的范围内,值越大说明两者之间存在很强的关系,越 下其关系越下。相比于随机猜想的平均值,模型的估计值有多好。定义简单,但计算起来复 杂。R要比拟最正确拟合曲线与y平均值的水平线。1减去两个误差的比值可以计 算出Ro分子式最正确拟合曲线残差的平方和。分母是水平线的残差平方和。R度 量了最正确拟合曲线优于均值作为估计的程度。R度量了数据的稳定性。同一数据集中不同的样本是否会生成相似的模型。当R值较低时,不同的样本可能会表现出非常不同的行为。或者,在此基础上, 再加入少量观察值可能会极大地改变模型的系数。当R值较高时,再加入少量 观察值就不会有上述的改变。5.3全局效应内的所有输入回归方程能发现数据中的全局模式。即,方程系数应该对范 变量都起作用。这说明回归模型善于捕获那些总是正确的模式,