SAS的功能模块介绍,第1张

SAS (Statistical Analysis System)是一个模块化、集成化的大型应用软件系统。

  它由数十个专用模块构成,功能包括数据访问、数据储存及管理、应用开发、图形处理、数据分析、报告编制、运筹学方法、计量经济学与预测等等。

SAS系统基本上可以分为四大部分:SAS数据库部分;SAS分析核心;SAS开发呈现工具;SAS对分布处理模式的支持及其数据仓库设计。

SAS系统主要完成以数据为中心的四大任务:数据访问;数据管理(sas 的数据管理功能并不很出色,而是数据分析能力强大所以常常用微软的产品管理数据,再导成sas数据格式.要注意与其他软件的配套使用);数据呈现;数据分析。当前(2012年)软件最高版本为SAS93。其中Base SAS模块是SAS系统的核心。其它各模块均在Base SAS提供的环境中运行。用户可选择需要的模块与Base SAS一起构成一个用户化的SAS系统。

Base SAS

Base SAS作为SAS系统的核心,负责数据管理,交互应用环境管理,进行用户语言处理,调用其它SAS模块。

Base SAS 为SAS系统的数据库提供了丰富的数据管理功能,还支持标准的SQL语言对数据进行操作。Base SAS能够制作从简单列表到比较复杂的统计报表。 Base SAS可进行基本的描述性统计及基相关 系数的计算,进行正态分布检验等。

SAS/GHAPH

SAS/GHAPH可将数据及其包含着的深层信息以多种图形生动地呈现出来,如直方图、圆饼图、星形图、散点相关图、曲线图、三维曲面图、等高线图及地理图等。

SAS/GHAPH提供一个全屏幕编辑器,提供多种设备程序,支持非常广泛的图形输出设备以及标准的图形交换文件。

SAS/ASSIST

SAS/ASSIST为SAS系统提供了面向任务的菜单界面,借助它可以通过菜单系统来使用SAS系统其它产品。它自动生成的SAS程序既可辅助有经验的用户快速编写SAS程序,又可帮助用户学习SAS。

SAS/AF

SAS/AF是一个应用开发工具。用户使用SAS/AF可将包含众多功能的SAS软件作为方法库,利用 SAS/AF的屏幕设计能力以及SCL语言的处理能力来快速开发各种功能强大的应用系统。SAS/AF也了采用了OOP(面向对象编辑)技术,使用户可方便快速开发各类具有图形用户界面(GUI)的应用系统。

SAS/EIS

SAS/EIS是决策工具,也是一个快速应用开发工具。SAS/EIS完全采用新兴的面向对象的编程模式(OOP)。EIS以生动直观的方式(图或表)将关键性或总结性信息呈现给使用者。

SAS/ACCESS

为了对众多不同格式的数据进行查询、访问和分析,SAS/ACCESS提供了与许多流行数据库软件的接口,利用SAS/ACCESS,可建立外部其它数据库的一个统一的公共数据界面。SAS/ACCESS提供的接口是透明的和动态的。用户不必将此文件当作真正存储着数据的SAS数据集一样使用,而只需在SAS中建立对外部的描述(即VIEW)文件,便可将此文件当作真正存储着数据的SAS数据集一样使用。对一些经常使用的外部数据,可以利用SAS/ACCESS将数据真正提取进入SAS数据库。 SAS/ACCESS 提供的接口是双向的,既可将数据读入SAS,也可在SAS中更新外部数据或将SAS数据加载到外部数据库中。

SAS/ACCESS支持的数据库主要有:IML-DL/I, SQL/DS, DB2, ADABAS, Rdb, ORACLE, Sybase, INGRES, Informix, DBF/DIF,ODBC等。

SAS/STAT

SAS/STAT覆盖了所有的实用数理统计分析方法,是国际统计分析领域的标准软件。SAS/STAT提供了八十多个过程,可进行各种不同模型或不同 特点数据的回归分析,如正交回归/面回归、响应面回归、logistic回归、非线性回归等,且具有多种模型选择方法。 可处理的数据有实型数据、有序数据和属性数据,并能产生各种有用的统计量和诊断信息。

在方差分析方面, SAS/STAT为多种试验设计模型提供了方差分析工具。

另外,它还有处理一般线性模型和广义线性模型的专用过程。在多变量统计方面, SAS/STAT为主成分分析、典型相关分析、判别分析和因子分析提供了许多专用过程。SAS/STAT还包含多种聚类准则的聚类分析方法。

SAS/QC

SAS/QC为全面质量管理提供了一系列工具。它也提供一套全屏幕菜单系统引导用户进行标准的统计过程以及试验设计。SAS/QC提供了多种不同类型控制图的制作与分析。Pareto图(排列图)可用于发现需优先考虑的因素,Ishikawa图(鱼骨图)可用于直观地进行因果分析。

SAS/ETS

SAS/ETS提供丰富的计量经济学和时间序列分析方法,是研究复杂系统和进行预测的有力工具。它提供方便的模型设定手段、多样的参数估计方法。

SAS/OR

SAS/OR提供全面的运筹学方法,是一种强有力的决策支持工具。它辅助人们实现对人力、时间以及其它各种资源的最佳利用。 SAS/OR包含通用的线性规划、混合整数规划和非线性规划的求解,也为专门的规划问题提供更为直接的解决办法,如网络流问题、运输问题、分配问题等。

SAS/IML

SAS/IML提供功能强大的面向矩阵运算的编程语言,帮助用户研究新算法或解决SAS中没有现成算法的专门问题。SAS/IML中的基本数据元素是矩阵。它包含大量的数学运算符、函数和例行程序,用户用很少的语句便可执行很复杂的计算过程。

SAS/WA

SAS/WA(Warehouse Administrator)是建立数据仓库的集成工具,它在其它SAS软件的基础上提供了一个建立数据仓库的管理层,包括:定义数据仓库和主题,数据转换和汇总,汇总数据的更新,Metadata的建立、管理和查询,Data marts和Info marts的实现。

SAS/MDDB Server

SAS/MDDB Server是SAS的多维数据库产品,主要用于在线分析处理(OLAP),可将从数据仓库或其它数据源来的数据以立体阵列的方式存储,以便于用多维数据浏览器等工具快速和方便地访问。

SAS/IntrNet

SAS/IntrNet为SAS Web应用提供了数据服务和计算服务,包括htmSQL,它为一UNIX Web服务器的CGI程序,使得能通过支持Web浏览器动态查询SAS数据或外部的关系型数据库;SAS ODBC Driver使得能通过支持ODBC的Windows Web服务器来访问SAS数据;SAS Driver for JDBC使得可以通过Java applet来查询SAS数据; SAS/IntrNet Application Dispatcher使得可以通过Web浏览器动态地递交SAS程序到SAS应用服务器执行,并将结果返回浏览器。

SAS/GIS

SAS/GIS集地理位置系统功能与数据的显示分析于一体。它提供层次化的地理信息,每一层可以是某些地理元素,也可与用户定义的主题(例如:人口、产值等)相关联。用户可交互式地缩小或放大地图,设定各层次显示与否,并利用各种交互式工具进行数据显示与分析。

SAS/ITSV

IT Service Vision(ITSV)是企业的全面IT服务的性能评估和管理的软件,这些IT服务包括计算机系统、网络系统、Web服务器和电话系统等。ITSV将不同来源的数据进行整理和组织,存放于性能数据仓库中,用GUI或批处理的方式产生组织任意层面的报告。系统程序员及网络工程师能借此识别、研究并解决有关问题,业务分析人员能借此制定资源管理的总体策略,CIO和数据中心经理能借此定期地得到所需的IT运作的汇总和分析报告。

SAS/CFO Vision

SAS/CFO Vision用于财务整合和报告,内部包含了会计知识,为日常财务工作提供了现成的程序,并提供了访问所有主要数据源的接口。它主要用于;访问财务和非财务的有关住处整合财务数据,通过一个财务信息仓库来管理业务结构,通过财务报告和分析帮助理解财务的结果,并在组织内交流关键的业务结果信息。

所谓FAQ,它就是一种在线的帮助文档,是英文Frequently Asked Questions的缩写,从字面意思上可以理解为“常见问题解答”。

很多知名的产品在开发过程中,都会涉及到大量的技术细节和产品要点等信息,而且开发团队一般人数众多,如果每个人都独立开发,没有一套可以共享的文档资料,就会增加很多沟通成本,不利于高效开发产品。

FAQ不仅可以内部使用,也可以分享给使用用户,当用户遇到相关问题的时候,可以直接查阅FAQ系统,这样在方便用户使用产品的同时,也提高了产品售后服务的效率,节约了客服介入的时间。

编撰产品FAQ文档

一套系统完整的产品FAQ文档是要包含:产品简介、快速入门、操作指南、常见问题、查询检索等这些基本要素的,可以通过登录 HelpLook 系统快速编纂一套完整的产品FAQ文档,可以实现:

支持UI修改、文档编辑、跨团队协作等,无需借助研发资源,等待研发排期,业务人员自行编辑、自行实时发布、其中多权限多角色管理,更好的进行权限分工等,具体操作步骤如下:

搭建网站站点

无需复杂的网站注册和服务器购买等操作,只需要提前准备好:站点icon、站点Logo、站点名称、站点语言,直接按照系统提示上传内容就可以搭建一个专业的产品FAQ中心(支持多端适配)。

文档编辑制作

FAQ文档在设计的时候可以根据自己的业务需要,选择栏目层级,不同层级栏目和内容要做好内容关联,作为开发者而言,要持续性丰富文本编辑的内容,这样用户检索的时候才能搜索出更丰富的内容。

也可以结合常见的产品FAQ文档样式,上传丰富的、视频、超链接等内容,一方面提高用户检索查询体验感,另一方面丰富的站点内容,对于百度/谷歌SEO建设是非常有帮助的。

最后还需要提醒的是:不仅要理解FAQ意思,更要重视FAQ文档的价值,做好长期的内容规划和设计,持续性更新维护产品FAQ文档。

 随着GIS技术在各个行业的应用以及数据挖掘 空间数据采集技术 数据库技术的迅速发展 对从空间数据库发现隐含知识的需求日益增长 从而出现了用于在空间数据库中进行知识发现的技术——空间数据挖掘(Spatial Data Mining 本文简称为SDM) 空间数据挖掘是从空间数据库中提取隐含的 用户感兴趣的空间和非空间模式和普遍特征的过程

 本文分析了空间数据库知识发现面临的困难 研究了扩展传统数据挖掘方法如分类 关联规则 聚类等到空间数据库的方法 并对空间数据库系统实现技术及空间数据挖掘系统开发模式等进行了比较分析

 空间数据库知识发现面临的困难

 从空间数据库发现知识的传统途径是通过专家系统 数据挖掘 空间分析等技术来实现的 但是在空间数据库隐含知识的发现方面 只单独依某一种技术 往往存在着这样或那样的缺陷 对于专家系统来讲 专家系统不具备自动学习的能力 GIS中的专家系统也达不到真正的智能系统的要求 仅能利用已有的知识进行推导 对于数据挖掘来讲 空间数据库与普通数据库的在数据存储机制的不同和空间数据的相互依赖性等特点决定了在空间数据库无法直接采用传统的数据挖掘方法 对于空间分析来讲 虽然空间分析中常用的统计方法可以很好地处理数字型数据 但是它存在的问题很多 如统计方法通常假设空间分布的数据间是统计上独立的 而现实中空间对象间一般是相互关联的;其次 统计模型一般只有具有相当丰富领域知识和统计方面经验的统计专家才能用;另外 统计方法对大规模数据库的计算代价非常高 所以在处理海量数据方面能力较低

 从上面的分析可以看出 由于空间数据具有诸多特点 因此在空间数据库进行知识发现 需要克服使用单一技术的缺陷 即需要融合多种不同技术 所以研究人员提出了空间数据挖掘技术来解决从空间数据库知识发现隐含知识的难题

 空间数据挖掘是多学科和多种技术交综合的新领域 它综合了机器学习 空间数据库系统 专家系统 可移动计算 统计 遥感 基于知识的系统 可视化等领域的有关技术

 空间数据挖掘利用空间数据结构 空间推理 计算几何学等技术 把传统的数据挖掘技术扩充到空间数据库并提出很多新的有效的空间数据挖掘方法 与传统空间分析方法相比 它在实现效率 与数据库系统的结合 与用户的交互 发现新类型的知识等方面的能力大大增强 空间数据挖掘能与GIS的结合 使GIS系统具有自动学习的功能 能自动获取知识 从而成为真正的智能空间信息系统

 扩展传统数据挖掘方法到空间数据库

 空间数据挖掘技术按功能划分可分为三类 描述 解释 预测 描述性的模型将空间现象的分布特征化 如空间聚类 解释性的模型用于处理空间关系 如处理一个空间对象和影响其空间分布的因素之间的关系 预测型的模型用来根据给定的一些属性预测某些属性 预测型的模型包括分类 回归等 以下介绍将几个典型的数据挖掘技术聚类 分类 关联规则扩展到空间数据库的方法

 聚类分析方法按一定的距离或相似性测度将数据分成一系列相互区分的组 而空间数据聚类是按照某种距离度量准则 在某个大型 多维数据集中标识出聚类或稠密分布的区域 从而发现数据集的整个空间分布模式 经典统计学中的聚类分析方法对海量数据效率很低 而数据挖掘中的聚类方法可以大大提高聚类效率 文献[ ]中提出两个基于CLARANS聚类算法空间数据挖掘算法SD和ND 可以分别用来发现空间聚类中的非空间特征和具有相同非空间特征的空间聚类 SD算法首先用CLARANS算法进行空间聚类 然后用面向属性归纳法寻找每个聚类中对象的高层非空间描述;ND算法则反之 文献[ ]中提出一种将传统分类算法ID 决策树算法扩展到空间数据库的方法 该算法给出了计算邻近对象非空间属性的聚合值的方法 并且通过对空间谓词进行相关性分析和采用一种逐渐求精的策略使得计算时间复杂度大大降低 Koperski等[ ]将大型事务数据库的关联规则概念扩展到空间数据库 用以找出空间对象的关联规则 此方法采用一种逐渐求精的方法计算空间谓词 首先在一个较大的数据集上用MBR最小边界矩形结构技术对粗略的空间谓词进行近似空间运算 然后在裁剪过的数据集上用代价较高的算法进一步改进挖掘的质量

 空间数据库实现技术

 空间数据挖掘系统中 空间数据库负责空间数据和属性数据的管理 它的实现效率对整个挖掘系统有着举足轻重的影响 所以下面详细介绍空间数据库的实现技术

 根据空间数据库中空间数据和属性数据的管理方式 空间数据库有两种实现模式 集成模式和混合模式 后者将非空间数据存储在关系数据库中 将空间数据存放在文件系统中 这种采用混合模式的空间数据库中 空间数据无法获得数据库系统的有效管理 并且空间数据采用各个厂商定义的专用格式 通用性差 而集成模式是将空间数据和属性数据全部存储在数据库中 因此现在的GIS软件都在朝集成结构的空间数据库方向发展 下面对集成结构的空间数据库技术中的两个主流技术基于空间数据引擎技术的空间数据库和以Oracle Spatial为代表的通用空间数据库进行比较分析

 空间数据引擎是一种处于应用程序和数据库管理系统之间的中间件技术 使用不同GIS厂商的客户可以通过空间数据引擎将自身的数据交给大型关系型DBMS统一管理;同样 客户也可以通过空间数据引擎从关系型DBMS中获取其他类型GIS的数据 并转化成客户可使用的方式 它们大多是在Oracle i Spatial(较成熟的空间数据库版本 于 年 月推出)推出之前由GIS软件开发商提供的将空间数据存入通用数据库的解决方案 且该方案价格昂贵

 Oracle Spatial提供一个在数据库管理系统中管理空间数据的完全开放体系结构 Oracle Spatial提供的功能与数据库服务器完全集成 用户通过SQL定义并操作空间数据 且保留了Oracle的一些特性 如灵活的n 层体系结构 对象定义 健壮的数据管理机制 Java存储过程 它们确保了数据的完整性 可恢复能力和安全性 而这些特性在混合模式结构中几乎不可能获得 在Oracle Spatial中 用户可将空间数据当作数据库的特征使用 可支持空间数据库的复制 分布式空间数据库以及高速的批量装载 而空间中间件则不能 除了允许使用所有数据库特性以外 Spatial Cart ridge还提供用户使用行列来快速访问数据 使用简单的SQL语句 应用者就能直接选取多个记录 Spatial Cart ridge数据模型也给数据库管理员提供了极大的灵活性 DBA可使用常见的管理和调整数据库的技术

 空间数据挖掘系统的开发

 通用SDM系统

 在空间数据挖掘系统的开发方面 国际上最著名的有代表性的通用SDM系统有 GeoMiner Descartes和ArcView GIS的S PLUS接口 GeoMiner是加拿大Simon Fraser大学开发的著名的数据挖掘软件DBMiner的空间数据挖掘的扩展模块 空间数据挖掘原型系统GeoMiner包含有三大模块 空间数据立方体构建模块 空间联机分析处理(OLAP)模块和空间数据采掘模块 能够进行交互式地采掘并显示采掘结果 空间数据采掘模块能采掘 种类型的规则 特征规则 判别规则和关联规则 GeoMiner采用SAND体系结构 采用的空间数据采掘语言是GMQL 其空间数据库服务器包括MapInfo ESRI/OracleSDE Informix Illustra以及其它空间数据库引擎

 Descartes可支持可视化的分析空间数据 它与开发此软件的公司所开发的数据挖掘工具Kepler结合使用 Kepler完成数据挖掘任务且拥有自己的表现数据挖掘结果的非图形界面 Kepler和Descarte动态链接 把传统DM与自动作图可视化和图形表现操作结合起来 实现C 决策树算法 聚类 关联规则的挖掘

 ArcView GIS的S PLUS接口是著名的ESRI公司开发的 它提供工具分析空间数据中指定类

 除了以上空间数据挖掘系统外 还有GwiM等系统

 从以上SDM系统可以看出 它们的共同优点是把传统DM与地图可视化结合起来 提供聚类 分类等多种挖掘模式 但它们在空间数据的操作上实现方式不尽相同 Descartes是专门的空间数据可视化工具 它只有与DM工具Kepler结合在一起 才能完成SDM任务 而GeoMiner是在MapInfo平台上二次开发而成 系统庞大 造成较大的资源浪费 S PLUS的局限在于 它采用一种解释性语言(Script) 其功能的实现比用C和C++直接实现要慢得多 所以只适合于非常小的数据库应用 基于现存空间数据挖掘系统的结构所存在的缺陷 我们提出空间数据挖掘系统一种新的实现方案

lishixinzhi/Article/program/SQL/201311/16146

从三个方向去预测大数据发展的未来趋势

技术的发展,让这个世界每天都在源源不断地产生数据,随着大数据概念被提出,这个技术逐渐发展成为一个行业,并被不断看好。那么大数据行业的未来发展如何?三个方向预测大数据技术发展未来趋势:

(一)社交网络和物联网技术拓展了数据采集技术渠道

经过行业信息化建设,医疗、交通、金融等领域已经积累了许多内部数据,构成大数据资源的“存量”;而移动互联网和物联网的发展,大大丰富了大数据的采集渠道,来自外部社交网络、可穿戴设备、车联网、物联网及政府公开信息平台的数据将成为大数据增量数据资源的主体。当前,移动互联网的深度普及,为大数据应用提供了丰富的数据源。

另外,快速发展的物联网,也将成为越来越重要的大数据资源提供者。相对于现有互联网数据杂乱无章和价值密度低的特点,通过可穿戴、车联网等多种数据采集终端,定向采集的数据资源更具利用价值。例如,智能化的可穿戴设备经过几年的发展,智能手环、腕带、手表等可穿戴正在走向成熟,智能钥匙扣、自行车、筷子等设备层出穷,国外 Intel、Google、Facebook,国内百度、京东、小米等有所布局。

企业内部数据仍是大数据主要来源,但对外部数据的需求日益强烈。当前,有 32%的企业通过外部购买所获得的数据;只有18%的企业使用政府开放数据。如何促进大数据资源建设,提高数据质量,推动跨界融合流通,是推动大数据应用进一步发展的关键问题之一。

总体来看,各行业都在致力于在用好存量资源的基础之上,积极拓展新兴数据收集的技术渠道,开发增量资源。社交媒体、物联网等大大丰富了数据采集的潜在渠道,理论上,数据获取将变得越来越容易。

(二) 分布式存储和计算技术夯实了大数据处理的技术基础

大数据存储和计算技术是整个大数据系统的基础。

在存储方面,2000 年左右谷歌等提出的文件系统(GFS)、以及随后的 Hadoop 的分布式文件系统 HDFS(Hadoop Distributed File System)奠定了大数据存储技术的基础。

与传统系统相比,GFS/HDFS 将计算和存储节点在物理上结合在一起,从而避免在数据密集计算中易形成的 I/O吞吐量的制约,同时这类分布式存储系统的文件系统也采用了分布式架构,能达到较高的并发访问能力。

在计算方面,谷歌在 2004 年公开的 MapReduce 分布式并行计算技术,是新型分布式计算技术的代表。一个 MapReduce 系统由廉价的通用服务器构成,通过添加服务器节点可线性扩展系统的总处理能力(Scale Out),在成本和可扩展性上都有巨大的优势。

(三) 深度神经网络等新兴技术开辟大数据分析技术的新时代

大数据数据分析技术,一般分为联机分析处理(OLAP,OnlineAnalytical Processing)和数据挖掘(Data Mining)两大类。

OLAP技术,一般基于用户的一系列假设,在多维数据集上进行交互式的数据集查询、关联等操作(一般使用 SQL 语句)来验证这些假设,代表了演绎推理的思想方法。

数据挖掘技术,一般是在海量数据中主动寻找模型,自动发展隐藏在数据中的模式(Pattern),代表了归纳的思想方法。

传统的数据挖掘算法主要有:

(1)聚类,又称群分析,是研究(样品或指标)分类问题的一种统计分析方法,针对数据的相似性和差异性将一组数据分为几个类别。属于同一类别的数据间的相似性很大,但不同类别之间数据的相似性很小,跨类的数据关联性很低。企业通过使用聚类分析算法可以进行客户分群,在不明确客户群行为特征的情况下对客户数据从不同维度进行分群,再对分群客户进行特征提取和分析,从而抓住客户特点推荐相应的产品和服务。

(2)分类,类似于聚类,但是目的不同,分类可以使用聚类预先生成的模型,也可以通过经验数据找出一组数据对象的共同点,将数据划分成不同的类,其目的是通过分类模型将数据项映射到某个给定的类别中,代表算法是CART(分类与回归树)。企业可以将用户、产品、服务等各业务数据进行分类,构建分类模型,再对新的数据进行预测分析,使之归于已有类中。分类算法比较成熟,分类准确率也比较高,对于客户的精准定位、营销和服务有着非常好的预测能力,帮助企业进行决策。

(3)回归,反映了数据的属性值的特征,通过函数表达数据映射的关系来发现属性值之间的一览关系。它可以应用到对数据序列的预测和相关关系的研究中。企业可以利用回归模型对市场销售情况进行分析和预测,及时作出对应策略调整。在风险防范、反欺诈等方面也可以通过回归模型进行预警。

传统的数据方法,不管是传统的 OLAP 技术还是数据挖掘技术,都难以应付大数据的挑战。首先是执行效率低。传统数据挖掘技术都是基于集中式的底层软件架构开发,难以并行化,因而在处理 TB 级以上数据的效率低。其次是数据分析精度难以随着数据量提升而得到改进,特别是难以应对非结构化数据。

在人类全部数字化数据中,仅有非常小的一部分(约占总数据量的 1%)数值型数据得到了深入分析和挖掘(如回归、分类、聚类),大型互联网企业对网页索引、社交数据等半结构化数据进行了浅层分析(如排序),占总量近 60%的语音、、视频等非结构化数据还难以进行有效的分析。

所以,大数据分析技术的发展需要在两个方面取得突破,一是对体量庞大的结构化和半结构化数据进行高效率的深度分析,挖掘隐性知识,如从自然语言构成的文本网页中理解和识别语义、情感、意图等;二是对非结构化数据进行分析,将海量复杂多源的语音、图像和视频数据转化为机器可识别的、具有明确语义的信息,进而从中提取有用的知识。

目前来看,以深度神经网络等新兴技术为代表的大数据分析技术已经得到一定发展。

神经网络是一种先进的人工智能技术,具有自身自行处理、分布存储和高度容错等特性,非常适合处理非线性的以及那些以模糊、不完整、不严密的知识或数据,十分适合解决大数据挖掘的问题。

典型的神经网络模型主要分为三大类:第一类是以用于分类预测和模式识别的前馈式神经网络模型,其主要代表为函数型网络、感知机;第二类是用于联想记忆和优化算法的反馈式神经网络模型,以 Hopfield的离散模型和连续模型为代表。第三类是用于聚类的自组织映射方法,以 ART 模型为代表。不过,虽然神经网络有多种模型及算法,但在特定领域的数据挖掘中使用何种模型及算法并没有统一的规则,而且人们很难理解网络的学习及决策过程。

随着互联网与传统行业融合程度日益加深,对于 web 数据的挖掘和分析成为了需求分析和市场预测的重要段。Web 数据挖掘是一项综合性的技术,可以从文档结构和使用集合中发现隐藏的输入到输出的映射过程。

目前研究和应用比较多的是 PageRank 算法。PageRank是Google算法的重要内容,于2001年9月被授予美国专利,以Google创始人之一拉里·佩奇(Larry Page)命名。PageRank 根据网站的外部链接和内部链接的数量和质量衡量网站的价值。这个概念的灵感,来自于学术研究中的这样一种现象,即一篇论文的被引述的频度越多,一般会判断这篇论文的权威性和质量越高。

需要指出的是,数据挖掘与分析的行业与企业特点强,除了一些最基本的数据分析工具外,目前还缺少针对性的、一般化的建模与分析工具。各个行业与企业需要根据自身业务构建特定数据模型。数据分析模型构建的能力强弱,成为不同企业在大数据竞争中取胜的关键。

什么是大数据

大数据是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。大数据技术,是指从各种各样类型的数据中,快速获得有价值信息的能力。适用于大数据的技术,包括大规模并行处理(MPP)数据库,数据挖掘电网,分布式文件系统,分布式数据库,云计算平台,互联网,和可扩展的存储系统。

大数据的定义

大数据由巨型数据集组成,这些数据集大小常超出人类在可接受时间下的收集、庋用、管理和处理能力。大数据的大小经常改变,截至2012年,单一数据集的大小从数太字节(TB)至数十兆亿字节(PB)不等。

在一份2001年的研究与相关的演讲中,麦塔集团(META Group,现为高德纳)分析员道格·莱尼(Doug Laney)指出数据增长的挑战和机遇有三个方向:量(Volume,数据大小)、速(Velocity,数据输入输出的速度)与多变(Variety,多样性),合称“3V”或“3Vs”。高德纳与现在大部分大数据产业中的公司,都继续使用3V来描述大数据。高德纳于2012年修改对大数据的定义:“大数据是大量、高速、及/或多变的信息资产,它需要新型的处理方式去促成更强的决策能力、洞察力与最优化处理。”另外,有机构在3V之外定义第4个V:真实性(Veracity)为第四特点。

大数据必须借由计算机对数据进行统计、比对、解析方能得出客观结果。美国在2012年就开始着手大数据,奥巴马更在同年投入2亿美金在大数据的开发中,更强调大数据会是之后的未来石油。数据挖掘(data mining)则是在探讨用以解析大数据的方法。

大数据的特点

具体来说,大数据具有4个基本特征:

一是数据体量巨大。百度资料表明,其新首页导航每天需要提供的数据超过15PB(1PB=1024TB),这些数据如果打印出来将超过5千亿张A4纸。有资料证实,到目前为止,人类生产的所有印刷材料的数据量仅为200PB。

二是数据类型多样。现在的数据类型不仅是文本形式,更多的是、视频、音频、地理位置信息等多类型的数据,个性化数据占绝对多数。

三是处理速度快。数据处理遵循“1秒定律”,可从各种类型的数据中快速获得高价值的信息。

四是价值密度低。以视频为例,一小时的视频,在不间断的监控过程中,可能有用的数据仅仅只有一两秒。

大数据的作用

第一,对大数据的处理分析正成为新一代信息技术融合应用的结点。移动互联网、物联网、社交网络、数字家庭、电子商务等是新一代信息技术的应用形态,这些应用不断产生大数据。云计算为这些海量、多样化的大数据提供存储和运算平台。通过对不同来源数据的管理、处理、分析与优化,将结果反馈到上述应用中,将创造出巨大的经济和社会价值。

大数据具有催生社会变革的能量。但释放这种能量,需要严谨的数据治理、富有洞见的数据分析和激发管理创新的环境(Ramayya Krishnan,卡内基·梅隆大学海因兹学院院长)。

第二,大数据是信息产业持续高速增长的新引擎。面向大数据市场的新技术、新产品、新服务、新业态会不断涌现。在硬件与集成设备领域,大数据将对芯片、存储产业产生重要影响,还将催生一体化数据存储处理服务器、内存计算等市场。在软件与服务领域,大数据将引发数据快速处理分析、数据挖掘技术和软件产品的发展。

第三,大数据利用将成为提高核心竞争力的关键因素。各行各业的决策正在从“业务驱动” 转变“数据驱动”。

对大数据的分析可以使零售商实时掌握市场动态并迅速做出应对;可以为商家制定更加精准有效的营销策略提供决策支持;可以帮助企业为消费者提供更加及时和个性化的服务;在医疗领域,可提高诊断准确性和药物有效性;在公共事业领域,大数据也开始发挥促进经济发展、维护社会稳定等方面的重要作用。

第四,大数据时代科学研究的方法手段将发生重大改变。例如,抽样调查是社会科学的基本研究方法。在大数据时代,可通过实时监测、跟踪研究对象在互联网上产生的海量行为数据,进行挖掘分析,揭示出规律性的东西,提出研究结论和对策。

大数据的分析

众所周知,大数据已经不简简单单是数据大的事实了,而最重要的现实是对大数据进行分析,只有通过分析才能获取很多智能的,深入的,有价值的信息。那么越来越多的应用涉及到大数据,而这些大数据的属性,包括数量,速度,多样性等等都是呈现了大数据不断增长的复杂性,所以大数据的分析方法在大数据领域就显得尤为重要,可以说是决定最终信息是否有价值的决定性因素。基于如此的认识,大数据分析普遍存在的方法理论有哪些呢?

1 可视化分析。大数据分析的使用者有大数据分析专家,同时还有普通用户,但是他们二者对于大数据分析最基本的要求就是可视化分析,因为可视化分析能够直观的呈现大数据特点,同时能够非常容易被读者所接受,就如同看图说话一样简单明了。

2 数据挖掘算法。大数据分析的理论核心就是数据挖掘算法,各种数据挖掘的算法基于不同的数据类型和格式才能更加科学的呈现出数据本身具备的特点,也正是因为这些被全世界统计学家所公认的各种统计方法(可以称之为真理)才能深入数据内部,挖掘出公认的价值。另外一个方面也是因为有这些数据挖掘的算法才能更快速的处理大数据,如果一个算法得花上好几年才能得出结论,那大数据的价值也就无从说起了。

3 预测性分析。大数据分析最终要的应用领域之一就是预测性分析,从大数据中挖掘出特点,通过科学的建立模型,之后便可以通过模型带入新的数据,从而预测未来的数据。

4 语义引擎。非结构化数据的多元化给数据分析带来新的挑战,我们需要一套工具系统的去分析,提炼数据。语义引擎需要设计到有足够的人工智能足以从数据中主动地提取信息。

5数据质量和数据管理。大数据分析离不开数据质量和数据管理,高质量的数据和有效的数据管理,无论是在学术研究还是在商业应用领域,都能够保证分析结果的真实和有价值。

大数据分析的基础就是以上五个方面,当然更加深入大数据分析的话,还有很多很多更加有特点的、更加深入的、更加专业的大数据分析方法。

大数据的技术

数据采集:ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。

数据存取:关系数据库、NOSQL、SQL等。

基础架构:云存储、分布式文件存储等。

数据处理:自然语言处理(NLP,Natural Language Processing)是研究人与计算机交互的语言问题的一门学科。处理自然语言的关键是要让计算机"理解"自然语言,所以自然语言处理又叫做自然语言理解(NLU,Natural Language Understanding),也称为计算语言学(Computational Linguistics。一方面它是语言信息处理的一个分支,另一方面它是人工智能(AI, Artificial Intelligence)的核心课题之一。

统计分析:假设检验、显著性检验、差异分析、相关分析、T检验、方差分析、卡方分析、偏相关分析、距离分析、回归分析、简单回归分析、多元回归分析、逐步回归、回归预测与残差分析、岭回归、logistic回归分析、曲线估计、因子分析、聚类分析、主成分分析、因子分析、快速聚类法与聚类法、判别分析、对应分析、多元对应分析(最优尺度分析)、bootstrap技术等等。

数据挖掘:分类 (Classification)、估计(Estimation)、预测(Prediction)、相关性分组或关联规则(Affinity grouping or association rules)、聚类(Clustering)、描述和可视化、Description and Visualization)、复杂数据类型挖掘(Text, Web ,图形图像,视频,音频等)

模型预测:预测模型、机器学习、建模仿真。

结果呈现:云计算、标签云、关系图等。

大数据的处理

1 大数据处理之一:采集

大数据的采集是指利用多个数据库来接收发自客户端(Web、App或者传感器形式等)的数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。比如,电商会使用传统的关系型数据库MySQL和Oracle等来存储每一笔事务数据,除此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。

在大数据的采集过程中,其主要特点和挑战是并发数高,因为同时有可能会有成千上万的用户来进行访问和操作,比如火车票售票网站和淘宝,它们并发的访问量在峰值时达到上百万,所以需要在采集端部署大量数据库才能支撑。并且如何在这些数据库之间进行负载均衡和分片的确是需要深入的思考和设计。

2 大数据处理之二:导入/预处理

虽然采集端本身会有很多数据库,但是如果要对这些海量数据进行有效的分析,还是应该将这些来自前端的数据导入到一个集中的大型分布式数据库,或者分布式存储集群,并且可以在导入基础上做一些简单的清洗和预处理工作。也有一些用户会在导入时使用来自Twitter的Storm来对数据进行流式计算,来满足部分业务的实时计算需求。

导入与预处理过程的特点和挑战主要是导入的数据量大,每秒钟的导入量经常会达到百兆,甚至千兆级别。

3 大数据处理之三:统计/分析

统计与分析主要利用分布式数据库,或者分布式计算集群来对存储于其内的海量数据进行普通的分析和分类汇总等,以满足大多数常见的分析需求,在这方面,一些实时性需求会用到EMC的GreenPlum、Oracle的Exadata,以及基于MySQL的列式存储Infobright等,而一些批处理,或者基于半结构化数据的需求可以使用Hadoop。

统计与分析这部分的主要特点和挑战是分析涉及的数据量大,其对系统资源,特别是I/O会有极大的占用。

4 大数据处理之四:挖掘

与前面统计和分析过程不同的是,数据挖掘一般没有什么预先设定好的主题,主要是在现有数据上面进行基于各种算法的计算,从而起到预测(Predict)的效果,从而实现一些高级别数据分析的需求。比较典型算法有用于聚类的Kmeans、用于统计学习的SVM和用于分类的NaiveBayes,主要使用的工具有Hadoop的Mahout等。该过程的特点和挑战主要是用于挖掘的算法很复杂,并且计算涉及的数据量和计算量都很大,常用数据挖掘算法都以单线程为主。

整个大数据处理的普遍流程至少应该满足这四个方面的步骤,才能算得上是一个比较完整的大数据处理。

大数据的常见误解

一、数据不等于信息

经常有人把数据和信息当作同义词来用。其实不然,数据指的是一个原始的数据点(无论是通过数字,文字,还是视频等等),信息则直接与内容挂钩,需要有资讯性(informative)。数据越多,不一定就能代表信息越多,更不能代表信息就会成比例增多。有两个简单的例子:

备份。很多人如今已经会定期的对自己的硬盘进行备份。这个没什么好多解释的,每次备份都会创造出一组新的数据,但信息并没有增多。

多个社交网站上的信息。我们当中的很多人在多个社交网站上活跃,随着我们上的社交网站越多,我们获得的数据就会成比例的增多,我们获得的信息虽然也会增多,但却不会成比例的增多。不单单因为我们会互相转发好友的微博(或者其他社交网站上的内容),更因为很多内容会十分类似,有些微博虽然具体文字不同,但表达的内容十分相似。

二、信息不等于智慧(Insight)

现在我们去除了数据中所有重复的部分,也整合了内容类似的数据,现在我们剩下的全是信息了,这对我们就一定有用吗?不一定,信息要能转化成智慧,至少要满足一下三个标准:

可破译性。这可能是个大数据时代特有的问题,越来越多的企业每天都会生产出大量的数据,却还没想好怎么用,因此,他们就将这些数据暂时非结构化(unstructured)的存储起来。这些非结构化的数据却不一定可破译。比如说,你记录了某客户在你网站上三次翻页的时间间隔:3秒,2秒,17秒,却忘记标注这三个时间到底代表了什么,这些数据是信息(非重复性),却不可破译,因此不可能成为智慧。

关联性。无关的信息,至多只是噪音。

新颖性。这里的新颖性很多时候无法仅仅根据我们手上的数据和信息进行判断。举个例子,某电子商务公司通过一组数据/信息,分析出了客户愿意为当天送货的产品多支付10块钱,然后又通过另一组完全独立的数据/信息得到了同样的内容,这样的情况下,后者就不具备新颖性。不幸的是,很多时候,我们只有在处理了大量的数据和信息以后,才能判断它们的新颖性。

大数据时代存储所面对的问题

随着大数据应用的爆发性增长,它已经衍生出了自己独特的架构,而且也直接推动了存储、网络以及计算技术的发展。毕竟处理大数据这种特殊的需求是一个新的挑战。硬件的发展最终还是由软件需求推动的,就这个例子来说,我们很明显的看到大数据分析应用需求正在影响着数据存储基础设施的发展。

从另一方面看,这一变化对存储厂商和其他IT基础设施厂商未尝不是一个机会。随着结构化数据和非结构化数据量的持续增长,以及分析数据来源的多样化,此前存储系统的设计已经无法满足大数据应用的需要。存储厂商已经意识到这一点,他们开始修改基于块和文件的存储系统的架构设计以适应这些新的要求。在这里,我们会讨论哪些与大数据存储基础设施相关的属性,看看它们如何迎接大数据的挑战。

容量问题

这里所说的“大容量”通常可达到PB级的数据规模,因此,海量数据存储系统也一定要有相应等级的扩展能力。与此同时,存储系统的扩展一定要简便,可以通过增加模块或磁盘柜来增加容量,甚至不需要停机。基于这样的需求,客户现在越来越青睐Scale-out架构的存储。Scale-out集群结构的特点是每个节点除了具有一定的存储容量之外,内部还具备数据处理能力以及互联设备,与传统存储系统的烟囱式架构完全不同,Scale-out架构可以实现无缝平滑的扩展,避免存储孤岛。

“大数据”应用除了数据规模巨大之外,还意味着拥有庞大的文件数量。因此如何管理文件系统层累积的元数据是一个难题,处理不当的话会影响到系统的扩展能力和性能,而传统的NAS系统就存在这一瓶颈。所幸的是,基于对象的存储架构就不存在这个问题,它可以在一个系统中管理十亿级别的文件数量,而且还不会像传统存储一样遭遇元数据管理的困扰。基于对象的存储系统还具有广域扩展能力,可以在多个不同的地点部署并组成一个跨区域的大型存储基础架构。

延迟问题

“大数据”应用还存在实时性的问题。特别是涉及到与网上交易或者金融类相关的应用。举个例子来说,网络成衣销售行业的在线广告推广服务需要实时的对客户的浏览记录进行分析,并准确的进行广告投放。这就要求存储系统在必须能够支持上述特性同时保持较高的响应速度,因为响应延迟的结果是系统会推送“过期”的广告内容给客户。这种场景下,Scale-out架构的存储系统就可以发挥出优势,因为它的每一个节点都具有处理和互联组件,在增加容量的同时处理能力也可以同步增长。而基于对象的存储系统则能够支持并发的数据流,从而进一步提高数据吞吐量。

有很多“大数据”应用环境需要较高的IOPS性能(IOPS (Input/Output Operations Per Second),即每秒进行读写(I/O)操作的次数,多用于数据库等场合,衡量随机访问的性能),比如HPC高性能计算。此外,服务器虚拟化的普及也导致了对高IOPS的需求,正如它改变了传统IT环境一样。为了迎接这些挑战,各种模式的固态存储设备应运而生,小到简单的在服务器内部做高速缓存,大到全固态介质的可扩展存储系统等等都在蓬勃发展。

并发访问一旦企业认识到大数据分析应用的潜在价值,他们就会将更多的数据集纳入系统进行比较,同时让更多的人分享并使用这些数据。为了创造更多的商业价值,企业往往会综合分析那些来自不同平台下的多种数据对象。包括全局文件系统在内的存储基础设施就能够帮助用户解决数据访问的问题,全局文件系统允许多个主机上的多个用户并发访问文件数据,而这些数据则可能存储在多个地点的多种不同类型的存储设备上。

安全问题

某些特殊行业的应用,比如金融数据、医疗信息以及政府情报等都有自己的安全标准和保密性需求。虽然对于IT管理者来说这些并没有什么不同,而且都是必须遵从的,但是,大数据分析往往需要多类数据相互参考,而在过去并不会有这种数据混合访问的情况,因此大数据应用也催生出一些新的、需要考虑的安全性问题。

成本问题

“大”,也可能意味着代价不菲。而对于那些正在使用大数据环境的企业来说,成本控制是关键的问题。想控制成本,就意味着我们要让每一台设备都实现更高的“效率”,同时还要减少那些昂贵的部件。目前,像重复数据删除等技术已经进入到主存储市场,而且现在还可以处理更多的数据类型,这都可以为大数据存储应用带来更多的价值,提升存储效率。在数据量不断增长的环境中,通过减少后端存储的消耗,哪怕只是降低几个百分点,都能够获得明显的投资回报。此外,自动精简配置、快照和克隆技术的使用也可以提升存储的效率。

很多大数据存储系统都包括归档组件,尤其对那些需要分析历史数据或需要长期保存数据的机构来说,归档设备必不可少。从单位容量存储成本的角度看,磁带仍然是最经济的存储介质,事实上,在许多企业中,使用支持TB级大容量磁带的归档系统仍然是事实上的标准和惯例。

对成本控制影响最大的因素是那些商业化的硬件设备。因此,很多初次进入这一领域的用户以及那些应用规模最大的用户都会定制他们自己的“硬件平台”而不是用现成的商业产品,这一举措可以用来平衡他们在业务扩展过程中的成本控制战略。为了适应这一需求,现在越来越多的存储产品都提供纯软件的形式,可以直接安装在用户已有的、通用的或者现成的硬件设备上。此外,很多存储软件公司还在销售以软件产品为核心的软硬一体化装置,或者与硬件厂商结盟,推出合作型产品。

数据的积累

许多大数据应用都会涉及到法规遵从问题,这些法规通常要求数据要保存几年或者几十年。比如医疗信息通常是为了保证患者的生命安全,而财务信息通常要保存7年。而有些使用大数据存储的用户却希望数据能够保存更长的时间,因为任何数据都是历史记录的一部分,而且数据的分析大都是基于时间段进行的。要实现长期的数据保存,就要求存储厂商开发出能够持续进行数据一致性检测的功能以及其他保证长期高可用的特性。同时还要实现数据直接在原位更新的功能需求。

灵活性

大数据存储系统的基础设施规模通常都很大,因此必须经过仔细设计,才能保证存储系统的灵活性,使其能够随着应用分析软件一起扩容及扩展。在大数据存储环境中,已经没有必要再做数据迁移了,因为数据会同时保存在多个部署站点。一个大型的数据存储基础设施一旦开始投入使用,就很难再调整了,因此它必须能够适应各种不同的应用类型和数据场景。

应用感知

最早一批使用大数据的用户已经开发出了一些针对应用的定制的基础设施,比如针对政府项目开发的系统,还有大型互联网服务商创造的专用服务器等。在主流存储系统领域,应用感知技术的使用越来越普遍,它也是改善系统效率和性能的重要手段,所以,应用感知技术也应该用在大数据存储环境里。

小用户怎么办?

依赖大数据的不仅仅是那些特殊的大型用户群体,作为一种商业需求,小型企业未来也一定会应用到大数据。我们看到,有些存储厂商已经在开发一些小型的“大数据”存储系统,主要吸引那些对成本比较敏感的用户。

信息检索不等于搜索引擎。

互联网的发展明显地促进了信息检索技术的发展和应用,一大批搜索引擎产品诞生,为网民提供了很好的快速信息获取和网络信息导航工具,但是将信息检索等同于使用搜索引擎就陷入了误区。搜索引擎技术中也普遍采用了全文信息检索技术,但互联网信息搜索和企业信息搜索是不同的。

一是数据量。传统信息检索系统一般索引库规模多在GB级,但互联网网页搜索需要处理几千万上亿的网页,搜索引擎的基本策略都是采用检索服务器群集,对大多数企业应用是不合适和不必要的,并不适用于企业应用。

二是内容相关性。信息太多,查准和排序就特别重要,Google等搜索引擎发展了网页链接分析技术,根据互联网上网页被连接次数作为重要性评判的依据。但企业网站内部的网页链接由网站内容采编发布系统决定,其链接次数存在偶然因素,不能作为判别重要性的依据。真正的企业应用的检索要求基于内容的相关性排序,就是说,和检索要求最相关的信息排在检索结果的前面,链接分析技术此种排序基本不起作用。

三是实时性。搜索引擎的索引生成和检索服务是分开的,周期性更新和同步数据,大的搜索引擎的更新周期需要以周乃至月度量;而企业信息检索需要实时反映内外信息变化,搜索引擎系统机制并不能适应企业中动态性数据增长和修改的要求。

四是安全性。互联网搜索引擎都基于文件系统,但企业应用中内容一般均会安全和集中地存放在数据仓库中以保证数据安全和管理的要求。

五是个性化和智能化。由于搜索引擎数据和客户规模的限制,相关反馈、知识检索、知识挖掘等计算密集的智能技术很难应用,而专门针对企业的信息检索应用能在智能化和个性走得更远。

(),通常指文本信息检索,包括信息的存储、组织、表现、查询、存取等各个方面,其核心为文本信息的索引和检索。从历史上看,信息检索经历了手工检索、计算机检索到目前网络化、智能化检索等多个发展阶段。

目前,信息检索已经发展到网络化和智能化的阶段。信息检索的对象从相对封闭、稳定一致、由独立数据库集中管理的信息内容扩展到开放、动态、更新快、分布广泛、管理松散的Web内容;信息检索的用户也由原来的情报专业人员扩展到包括商务人员、管理人员、教师学生、各专业人士等在内的普通大众,他们对信息检索从结果到方式提出了更高、更多样化的要求。适应网络化、智能化以及个性化的需要是目前信息检索技术发展的新趋势。

信息检索技术的热点

◆智能检索或知识检索

传统的全文检索技术基于关键词匹配进行检索,往往存在查不全、查不准、检索质量不高的现象,特别是在网络信息时代,利用关键词匹配很难满足人们检索的要求。智能检索利用分词词典、同义词典,同音词典改善检索效果,比如用户查询“计算机”,与“电脑”相关的信息也能检索出来;进一步还可在知识层面或者说概念层面上辅助查询,通过主题词典、上下位词典、相关同级词典,形成一个知识体系或概念网络,给予用户智能知识提示,最终帮助用户获得最佳的检索效果,比如用户可以进一步缩小查询范围至“微机”、“服务器”或扩大查询至“信息技术”或查询相关的“电子技术”、“软件”、“计算机应用”等范畴。另外,智能检索还包括歧义信息和检索处理,如“苹果”,究竟是指水果还是电脑品牌,“华人”与“中华人民共和国”的区分,将通过歧义知识描述库、全文索引、用户检索上下文分析以及用户相关性反馈等技术结合处理,高效、准确地反馈给用户最需要的信息。

◆知识挖掘

目前主要指文本挖掘技术的发展,目的是帮助人们更好的发现、组织、表示信息,提取知识,满足信息检索的高层次需要。知识挖掘包括摘要、分类(聚类)和相似性检索等方面。

自动摘要就是利用计算机自动地从原始文献中提取文摘。在信息检索中,自动摘要有助于用户快速评价检索结果的相关程度,在信息服务中,自动摘要有助于多种形式的内容分发,如发往PDA、手机等。相似性检索技术基于文档内容特征检索与其相似或相关的文档,是实现用户个性化相关反馈的基础,也可用于去重分析。自动分类可基于统计或规则,经过机器学习形成预定义分类树,再根据文档的内容特征将其归类;自动聚类则是根据文档内容的相关程度进行分组归并。自动分类(聚类)在信息组织、导航方面非常有用。

◆异构信息整合检索和全息检索

在信息检索分布化和网络化的趋势下,信息检索系统的开放性和集成性要求越来越高,需要能够检索和整合不同来源和结构的信息,这是异构信息检索技术发展的基点,包括支持各种格式化文件,如TEXT、HTML、XML、RTF、MSOffice、PDF、PS2/PS、MARC、ISO2709等处理和检索;支持多语种信息的检索;支持结构化数据、半结构化数据及非结构化数据的统一处理;和关系数据库检索的无缝集成以及其他开放检索接口的集成等。所谓“全息检索”的概念就是支持一切格式和方式的检索,从目前实践来讲,发展到异构信息整合检索的层面,基于自然语言理解的人机交互以及多媒体信息检索整合等方面尚有待取得进一步突破。

另外,从工程实践角度,综合采用内存和外部存储的多级缓存、分布式群集和负载均衡技术也是信息检索技术发展的重要方面。

随着互联网的普及和电子商务的发展,企业和个人可获取、需处理的信息量呈爆发式增长,而且其中绝大部分都是非结构化和半结构化数据。内容管理的重要性日益凸现,而信息检索作为内容管理的核心支撑技术,随着内容管理的发展和普及,亦将应用到各个领域,成为人们日常工作生活的密切伙伴。

信息检索起源于图书馆的参考咨询和文摘索引工作,从19世纪下半叶首先开始发展,至20世纪40年代,索引和检索成已为图书馆独立的工具和用户服务项目。

随着1946年世界上第一台电子计算机问世,计算机技术逐步走进信息检索领域,并与信息检索理论紧密结合起来;脱机批量情报检索系统、联机实时情报检索系统相继研制成功并商业化,20世纪60年代到80年代,在信息处理技术、通讯技术、计算机和数据库技术的推动下,信息检索在教育、军事和商业等各领域高速发展,得到了广泛的应用。Dialog国际联机情报检索系统是这一时期的信息检索领域的代表,至今仍是世界上最著名的系统之一。

搜索引擎工作流程

互联网是一个宝库,搜索引擎是打开宝库的一把钥匙。然而,绝大多数网民在搜索引擎的相关知识及使用技巧上能力不足。国外的一次调查结果显示,约有71%的人对搜索的结果感到不同程度的失望。作为互联网的第二大服务,这种状况应该改变。

互联网的迅速发展,导致了网上信息的爆炸性增长。全球目前的网页超过20亿,每天新增加730万网页。要在如此浩瀚的信息海洋里寻找信息,就像“大海捞针”一样困难。搜索引擎正是为了解决这个“迷航”问题而出现的技术。

搜索引擎的工作包括如下三个过程:

1在互联中发现、搜集网页信息;

2对信息进行提取和组织建立索引库;

3再由检索器根据用户输入的查询关字,在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并将查询结果返回给用户。

发现、搜集网页信息

需要有高性能的“网络蜘蛛”程序(Spider)去自动地在互联网中搜索信息。一个典型的网络蜘蛛工作的方式,是查看一个页面,并从中找到相关信息,然后它再从该页面的所有链接中出发,继续寻找相关的信息,以此类推,直至穷尽。网络蜘蛛要求能够快速、全面。网络蜘蛛为实现其快速地浏览整个互联网,通常在技术上采用抢先式多线程技术实现在网上聚集信息。通过抢先式多线程的使用,你能索引一个基于URL链接的Web页面,启动一个新的线程跟随每个新的URL链接,索引一个新的URL起点。当然在服务器上所开的线程也不能无限膨胀,需要在服务器的正常运转和快速收集网页之间找一个平衡点。在算法上各个搜索引擎技术公司可能不尽相同,但目的都是快速浏览Web页和后续过程相配合。目前国内的搜索引擎技术公司中,比如百度公司的网络蜘蛛采用了可定制、高扩展性的调度算法使得搜索器能在极短的时间内收集到最大数量的互联网信息,并把所获得的信息保存下来以备建立索引库和用户检索。

索引库的建立

关系到用户能否最迅速地找到最准确、最广泛的信息,同时索引库的建立也必须迅速,对网络蜘蛛抓来的网页信息极快地建立索引,保证信息的及时性。对网页采用基于网页内容分析和基于超链分析相结合的方法进行相关度评价,能够客观地对网页进行排序,从而极大限度地保证搜索出的结果与用户的查询串相一致。新浪搜索引擎对网站数据建立索引的过程中采取了按照关键词在网站标题、网站描述、网站URL等不同位置的出现或网站的质量等级等建立索引库,从而保证搜索出的结果与用户的查询串相一致。

我们经常听到:系统发育树、系统进化树、系统发生树,其实都是为了推测物种进化机制、预测机制背后的关键作用位置

基于距离的方法包括:UPGMA(现在很少用了)、ME(Minimum Evolution 最小进化法)、NJ(Neighbor-Joining 邻接法)

基于特征:MP(Maximum parsimony 最大简约法)、ML(Maximum likelihood 最大似然法)、BI(Bayesian Inference贝叶斯法)

建树完成,一般需要用bootstrap(自展率)或者Posterior probability(后验概率)来评估

这种方法是最准确,但同时也最慢貌似这是软件的通病,比如比对软件STAR也是如此

软件的官网在: https://nbiswedengithubio/MrBayes/downloadhtml

提供了pdf的官方教程后台回复“mb”获取

软件安装可以选择三大系统平台,但是我还是比较推荐linux,能用服务器就用服务器运行,一是节省时间,二是减少自己电脑消耗。

安装也很简单,直接用conda安装就好,为了避免软件安装过程中出现一些潜在的冲突问题,可以新建一个conda 环境

快速教程分为四部分:读取Nexus文件、设置进化模型、运行程序、归纳样本

数据格式需要是Nexus,包含比对好的核苷酸或氨基酸序列、形态学数据、限制性位点数据或者这四种数据的混合。关于Nexus格式的介绍: http://wikichristophchampcom/indexphptitle=NEXUS_file_format

Nexus数据中,不同的数据支持的字符是规定好的,例如

如果出现某些模糊的位点,可以用圆括号或者花括号注释,例如

使用 execute或者exe + 文件名(有路径的需要写路径) 来加载nex文件

在加载数据以后,我们可以使用 showmodel 来看看针对自己的数据类型,有哪些模型可选,然后需要用到的命令: lset 定义模型结构, prset 定义模型参数的先验概率分布

lset:使用 help lset 看一下怎么设置lset lset <parameter>=<option> <parameter>=<option>

还有一个表格,表示了参数及当前设置

行首:Model setting for partition 1,表示的是你要比较的序列都是同一类型,如果不同类型就会分成不同的partition;

第一个参数 Nucmodel : 设置核苷酸替换类型。默认是4by4(意思是核苷酸的四种形式ACGT/U);Doublet是核糖体DNA(即编码rRNA的序列)的成对茎区 [paired stem regions of ribosomal DNA]; Codon是利用密码子分析DNA序列;Protein也就是DNA转变的氨基酸序列;

第二个参数 Nst :用数字设置替换的种类。1表示所有替换率都一样(比如JC69 or F81 model);2表示所有转换和颠换的比率由一些差别(比如K80 or HKY85 model);6允许所有的替换率存在差别(如GTR model);mixed表示在所有可能的可逆替换模型中进行“马尔科夫链”抽样,并组合出不同的模型;

第三个参数 Code :只有当Nocmodel设置为Codon时才有效,默认就是全部密码子;

第四个参数 Ploidy :设置染色体倍数,"Haploid", "Diploid" or "Zlinked";

第五个参数 Rates : 设置模型的位点变异率。默认是equal(即所有位点没有变异);gamma表示位点变异符合gamma分布;lnorm表示正态分布的对数;propinv表示变异位点的分布是常数;invgamma表示变异位点的分布是常数,但是其他位点分布是gamma分布;

第六、七个参数 Ngammacat 、Nbetacat 一般用默认值4、5就好(大多数情况下,Ngammacat取4个rate categories就够了,增加rate categories数量可以增加准确度,但同时速度会变慢,4可以理解为一个折中的值);

有六种参数类型:拓扑(the topology), 分枝长度(the branch lengths), 4个stationary frequencies of the nucleotides, 6个different nucleotide substitution rates, the proportion of invariable sites 以及 the shape parameter of the gamma distribution of rate variation

默认值可以应对绝大多数分析,使用 help prset 可以看到设置

使用 shomodel 会看到目前模型的参数设置

在运行 mcmc 之前,可以用 help mcmc 看下

输入 mcmc ,首先看到这样一个表格,包括了需要用到的方法及占比

然后就开始运行,就像这样

当程序运行到设置的Ngen时,会问你要不要继续,并给出目前已经计算的结果Average standard deviation of split frequencies。一般来讲这个数小于001就可以退出了。但是在数据集比较大时,并不是很理想,下降的很慢,而且开始还有时会上升,如果到了Ngen还离001很远,比如最后还是1点几,那么还需要增加generation。如果达到了001到005之间,那么基本可以结束。

首先看下samplefreq生成的 p 文件,不同的模型结果信息不同这里以测试数据为例

然后使用 sump 得到一个图一个表。生成的表格中,主要看PSRF这一列数值是否接近10100-102是最理想的情况,但很难做到

tree和branch数据存储在 t 的文件中,也是Nexus格式

使用 sumt relburnin =yes burninfrac = 025 ,直接返回的结果包括:两个统计表两个图

另外,sumt还会返回5个额外的文件

parts 文件包含了二分法分类的key值;

tstat 和 vstat 包含了partition statistics和branch length statistics

con 包含了consensus trees,这个文件可以在FigTree中打开,展示一下后验概率以及每个枝的标准差这个应该是比较有用的

trprobs 包含了在mcmc搜索中找到的树,并用后验概率排序

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » SAS的功能模块介绍

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情