几个名词解释:大数据、Hadoop、云计算、机器学习、NLP、数据挖掘

几个名词解释: 大数据、Hadoop、云计算、机器学习、NLP、数据挖掘

大数据:
大数据是相对于传统"小数据"的,
传统由于数据处理的成本很高,所以只能处理部分信息系统中产生的非常规范的数据,而对于文本、图片等数据不能处理,而且数据量非常大的话,只能通过抽样的方式来降低数据量。
大数据的所谓4个特征是,Volume(数据量大,海量数据),Variety(数据类型多,文本/音频/视频/传感器数据),Velocity(产生速度快,一些实时监控的数据要求实时的进行处理),Value(价值,大数据里面蕴含人们通过逻辑推理得不到的价值)
在总数据量相同的情况下,与个别分析独立的小型数据集(data  set)相比,将各个小型数据集合并后进行分析可得出许多额外的信息和数据关系性,可用来察觉商业趋势、判定研究质量、避免疾病扩散、打击犯罪或测定实时交通路况等;这样的用途正是大型数据集盛行的原因。
大数据的应用示例包括大科学、RFID、感测设备网络、天文学、大气学、基因组学、生物学、大社会数据分析、互联网文件处理、制作互联网搜索引擎索引、通信记录明细、军事侦查、社交网络、通勤时间预测、医疗记录、照片图像和视频封存、大规模的电子商务等。


Hadoop:
Hadoop是Apache软件基金会管理的开源软件平台,但Hadoop到底是什么呢?简单来说,Hadoop是在分布式服务器集群上存储海量数据并运行分布式分析应用的一种方法。Hadoop被设计成一种非常“鲁棒”的系统,即使某台服务器甚至集群宕机了,运行其上的大数据分析应用也不会中断。此外Hadoop的效率也很高,因为它并不需要你在网络间来回捣腾数据。
以下是Apache的正式定义:
Apache Hadoop软件库是一个框架,允许在集群服务器上使用简单的编程模型对大数据集进行分布式处理。Hadoop被设计成能够从单台服务器扩展到数以千计的服务器,每台服务器都有本地的计算和存储资源。Hadoop的高可用性并不依赖硬件,其代码库自身就能在应用层侦测并处理硬件故障,因此能基于服务器集群提供高可用性的服务。
如果更深入地分析,我们发现Hadoop还有更加精彩的特性。首先,Hadoop几乎完全是模块化的,这意味着你们能用其他软件工具抽换掉Hadoop的模块。这使得Hadoop的架构异常灵活,同时又不牺牲其可靠性和高效率。
Hadoop分布式文件系统(HDFS)
如果提起Hadoop你的大脑一片空白,那么请牢记住这一点:Hadoop有两个主要部分:一个数据处理框架和一个分布式数据存储文件系统(HDFS)。
HDFS就像Hadoop系统的篮子,你把数据整整齐齐码放在里面等待数据分析大厨出手变成性感的大餐端到CEO的桌面上。当然,你可以在Hadoop进行数据分析,也可以见gHadoop中的数据“抽取转换加载”到其他的工具中进行分析。
数据处理框架和MapReduce
顾名思义,数据处理框架是处理数据的工具。具体来说Hadoop的数据处理框架是基于Jave的系统——MapReduce,你听到MapReduce的次数会比HDFS还要多,这是因为:
1.MapReduce是真正完成数据处理任务的工具
2.MapReduce往往会把它的用户逼疯
在常规意义上的关系型数据库中,数据通过SQL(结构化查询语言)被找到并分析,非关系型数据库也使用查询语句,只是不局限于SQL而已,于是有了一个新名词NoSQL。
有一点容易搞混的是,Hadoop并不是一个真正意义上的数据库:它能存储和抽取数据,但并没有查询语言介入。Hadoop更多是一个数据仓库系统,所以需要MapReduce这样的系统来进行真正的数据处理。
MapRduce运行一系列任务,其中每项任务都是单独的Java应用,能够访问数据并抽取有用信息。使用MapReduce而不是查询语言让Hadoop数据分析的功能更加强大和灵活,但同时也导致技术复杂性大幅增加。
-----------------------------------------------------
hadoop是一个平台,是一个适合大数据的分布式存储和计算的平台。什么是分布式存储?这就是后边我们要讲的hadoop核心之一HDFS;什么是分布式计算?这是我们后边要讲的hadoop另外一个重要的核心MapReduce。
hadoop的优点一:低成本
hadoop本身是运行在普通PC服务器组成的集群中进行大数据的分发及处理工作的,这些服务器集群是可以支持数千个节点的。
hadoop优点二:高效性
这也是hadoop的核心竞争优势所在,接受到客户的数据请求后,hadoop可以在数据所在的集群节点上并发处理。
hadoop优点三:可靠性
通过分布式存储,hadoop可以自动存储多份副本,当数据处理请求失败后,会自动重新部署计算任务。
hadoop优点四:扩展性
hadoop的分布式存储和分布式计算是在集群节点完成的,这也决定了hadoop可以扩展至更多的集群节点。
hadoop安装方式|hadoop部署方式
hadoop安装方式只有三种:本地安装;伪分布安装;集群安装。
--------------------------------------------------
hadoop 用 java写的分布式 ,处理大数据的框架。
只要思想是 分组合并 思想
分组:比如 有一个大型数据,那么他就会将这个数据按照算法分成多份,每份存储在 奴隶主机上,并且在奴隶主机上进行计算。
合并:将每个机器上的计算结果合并起来 再在一台机器上计算,得到最终结果。
就是mapreduce 算法。
--------------------------------------------------
你也可以这么理解Hadoop的构成,Hadoop=HDFS(文件系统,数据存储技术相关)+HBase(数据库)+MapReduce(数据处理)+……Others
Hadoop用到的一些技术有:
HDFS: Hadoop分布式文件系统(Distributed File System) - HDFS (HadoopDistributed File System)
MapReduce:并行计算框架
HBase: 类似Google BigTable的分布式NoSQL列数据库。
Hive:数据仓库工具,由Facebook贡献。
Zookeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献。
Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。
Pig:大数据分析平台,为用户提供多种接口。
Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。
Sqoop:用于在Hadoop与传统的数据库间进行数据的传递。
举个实际的例子,虽然这个例子有些陈旧,但是淘宝的海量数据技术架构还是有助于我们理解对于大数据的运作处理机制:

淘宝的海量数据产品技术架构分为五个层次,从上至下来看它们分别是:数据源,计算层,存储层,查询层和产品层。




云计算:
云计算(cloud computing),分布式计算技术的一种,其最基本的概念,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经搜寻、计算分析之后将处理结果回传给用户。透过这项技术,网络服务提供者可以在数秒之内,达成处理数以千万计甚至亿计的信息,达到和“超级计算机”同样强大效能的网络服务。




机器学习:
机器学习通过从数据里提取规则或模式来把数据转换成信息。
主要的方法有归纳学习法和分析学习法。
数据首先被预处理,形成特征,然后根据特征创建某种模型。
机器学习算法分析收集到的数据,分配权重、阈值和其他参数达到学习目的。如果只想把数据分成不同的类,那么“聚类”算法就够了;如果需要预测,则需要一个“分类”算法。
OpenCV库里面包含的是基于概率统计的机器学习方法,贝叶斯网络、马尔科夫随机场、图模型等较新的算法还在成长过程中,所以OpenCV还没有收录。
机器学习的算法有很多很多:
1、Mahalanobis
2、K-means 非监督的聚类方法
3、朴素贝叶斯分类器 特征是高斯分布&&统计上相互独立 条件比较苛刻
4、决策数 判别分类器,根据阈值分类数据,速度快。ID3,C4. 5
5、Boosting 多个判别子分类器的组合
6、随机森林 由多个决策树组成
7、人脸检测/Haar分类器 使用Boosting算法
8、期望最大化EM 用于聚类的非监督生成算法
9、K-近邻 最简单的分类器
10、神经网络(多层感知器) 训练分类器很慢,但是识别很快
11、支持向量机 SVM 可以分类,也可以回归。通过分类超平面实现在高维空间里的最优分类
12、遗传算法 借鉴生物遗传机制 ,随机化非线性计算算法
总之呢,个人觉得,机器学习、数据挖掘、模式识别、专家系统等方向和领域目前还是一种比较混乱的局面。学术界和商业界可能是不同的,关于算法的理论研究和使用这些方法生成商品是分别关注的。按照不同的领域、不同的方法可以划分出众多的分支。但是有一点是肯定的,这些在上世纪80年代提出来的公式和证明,如今正在变成一行行的代码,在一些猫(tomcat)、IIS等服务器的支持下,爬上了网络,到处寻觅对主人有用的信息,然后运送到网络中,最终生成产品,或者半产品。看看你电脑上的那根网线,它那么小,但是很难想象它从你的电脑上拿走了什么,又给你送来了什么。有些远了,继续说数据这些事。目前我接触过的算法有:(太多了,一时间真不好说出来) 神经网络(感知器、BP、RBF等很多的算法),遗传算法,支持向量机,层次分析法,各种回归,灰色系统(国产的方法,用于不确定知识的预测),粗糙集,贝叶斯网络,时间序列分析(也有很多)。学习和研究纸面的算法公式只是第一步,不可以忽略的基础,如何使用这些方法,在浩瀚的互联网上找到自己需要的、满足客户需要的数据和信息,从而让需要的人能够更加方便地得到,是今后的重头戏了。貌似很多的企业已经进军数据仓库这一块,并尝到了巨大的甜头,也有企业养着一队预备军,专注研发,随时准备奔赴前线,占领市场。无线网络市场的竞争已经到了激烈的局面,普适计算的时代也快到了吧。它依赖于硬件产品的可穿戴,和软件产品的内嵌、快速响应。总而言之,越来越人性化,谁都不愿意抱着笔记本电脑蹲厕所,是吧?



自然语言处理NLP:
NLP包括语言文本处理和语音处理等,文本处理的代表有搜索引擎的分词和机器翻译,语音处理的代表有语音识别。
NLP的关键在于语言模型,而这个模型涉及大量的语言学和数学的知识,主要有两种类型,一是基于规则的,类似我们学英语时主谓宾和从句之类的分析,二是基于统计的,比如计算“The dog”后面跟着"barks"的概率,这种方法是目前的主流。而机器学习是一门类似工具的学科,研究如何从已有的知识中推断出新的知识,在基于统计的NLP的得到很好的应用。





数据挖掘:
数据挖掘(Data Mining)是采用数学的、统计的、人工智能和神经网络等领域的科学方法,如记忆推理、聚类分析、关联分析、决策树、神经网络、基因算法等技术,从大量数据中挖掘出隐含的、先前未知的、对决策有潜在价值的关系、模式和趋势,并用这些知识和规则建立用于决策支持的模型,提供预测性决策支持的方法、工具和过程。
简单理解就是找出海量的数据所蕴含的具有战略意义的,潜在的规律。
数据挖掘综合了各个学科技术,有很多的功能,当前的主要功能如下:
(1)、分类:按照分析对象的属性、特征,建立不同的组类来描述事物。例如:银行部门根据以前的数据将客户分成了不同的类别,现在就可以根据这些来区分新申请贷款的客户,以采取相应的贷款方案。
(2)、聚类:识别出分析对内在的规则,按照这些规则把对象分成若干类。例如:将申请人分为高度风险申请者,中度风险申请者,低度风险申请者。
(3)、关联规则:关联是某种事物发生时其他事物会发生的这样一种联系。例如:每天购买啤酒的人也有可能购买香烟,比重有多大,可以通过关联的支持度和可信度来描述。
(4)、预测:把握分析对象发展的规律,对未来的趋势做出预见。例如:对未来经济发展的判断。
(5)、偏差的检测:对分析对象的少数的、极端的特例的描述,揭示内在的原因。例如:在银行的100万笔交易中有500例的欺诈行为,银行为了稳健经营,就要发现这500例的内在因素,减小以后经营的风险。
当然除了以上所列出的还有时间序列分析等一些其他的功能,需要注意的是:数据挖掘的各项功能不是独立存在的,在数据挖掘中互相联系,发挥作用。




  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值