导航:首页 > 源码编译 > 分类算法背景

分类算法背景

发布时间:2023-08-17 04:19:32

1. 朴素贝叶斯分类算法的sklearn实现

1、背景

《机器学习实战》当中,用python根据贝叶斯公式实现了基本的分类算法。现在来看看用sklearn,如何实现。还拿之前的例子,对帖子的分类。数据如下:

补充:题目的值左边是几个人的评论,右边是评论属于侮辱类(1)、正常类(0),需要进行文本分类,且再有新的文本过来时能自动划分至0或1。

2、分类

(1)算法的准备

通过查看sklearn的训练模型函数,fit(X, Y),发现只需要准备两个参数。一个是数据的矩阵,另一个是数据的分类数组。首先就是将以上的文本转化成矩阵。

在前一章其实已经讲解过如何将文本转化成矩阵。这里将示意的再补充下。

a.首先选取所有的单词,形成列,也可理解为属性。例如:

b.其次将遍历每个文本,填满上述列的值。文本出现过列的次,填一。没有出现过填0。比如第一句就是:my dog has flea problems help please,可表示为:

同理所有的文本都可如此表示,所以就形成了一个数字的矩阵。

(2)beyes模型的选择

在完成数据的准备以后,就可以直接调用sklearn的模型和函数完成模型的训练啦。但在beyes模型的选择的时候发现,beyes下有多个模型可选择,所以这个会让人纠结。接下来共同了解下这些模型:

a.高斯模型(GaussianNB)

高斯模型是对于每个属性的值是连续的,且服从高斯分布时可使用:

比如人的身高,比如花的高度等等。当然你也可将这些数据离散化,比如按等距划分、等频划分成离散的值,但可能效果都没有直接用高斯模型来计算的好。

用法:class sklearn.naive_bayes.GaussianNB

参数:无

b.多项式模型(MultinominalNB)

如果大部分是多元离散值,则采用多项式模型要好些。多项式模型,通常就是构造参数向量,然后通过极大似然估计来寻求参数的最有值。

这里只简单的略列一些公式,具体可查询更多资料。从这个计算过程中可得出,这里引入啦一个平滑先验值alpha,这个值在模型训练的时候也会用到。通常alpha>0,可引入不在训练集的特征,尤其当alpha=1,成为拉普拉丝平滑。具体alpha取值对模型的影响可附件的图。

用法:class sklearn.naive_bayes.MultinomialNB(alpha=1.0,fit_prior=True,class_prior=None) 

参数:

alpha:浮点数,就是上述说的引入平滑的值;

fit_prior:bool值,如果为Ture,则不用去学习P(y=ck),以均匀分布替代,否则则去学习P(y=ck)(不懂)

class_prior:一个数组。它指定了每个分类的先验概率P(y=c1),P(y=c2)…..,若指定了该参数 

则每个分类的先验概率无需学习 (不懂)

c.伯努利模型(BernoulliNB)

如果特征值为二元离散值或是稀疏的多元离散值,则可采用伯努利模型。

公式:class sklearn.naive_bayes.BernoulliNB(alpha=1.0,binarize=0.0,fit_prior=Ture, 

class_prior=None) 

参数:

binarize:一个浮点数或者None,如果为浮点数则以该数值为界,特征值大于它的取1,小于的为0 。如果为None,假定原始数据已经二值化 

其它参数同上。

通过以上的模型对比和分析,由于文本分析转化后是很多二项取值的稀疏矩阵,因此选取伯努利模型效果会更佳。

补充:alpha、binarize值对模型效果的影响

2. 大数据挖掘的算法有哪些

大数据挖掘的算法:
1.朴素贝叶斯,超级简单,就像做一些数数的工作。如果条件独立假设成立的话,NB将比鉴别模型收敛的更快,所以你只需要少量的训练数据。即使条件独立假设不成立,NB在实际中仍然表现出惊人的好。
2. Logistic回归,LR有很多方法来对模型正则化。比起NB的条件独立性假设,LR不需要考虑样本是否是相关的。与决策树与支持向量机不同,NB有很好的概率解释,且很容易利用新的训练数据来更新模型。如果你想要一些概率信息或者希望将来有更多数据时能方便的更新改进模型,LR是值得使用的。
3.决策树,DT容易理解与解释。DT是非参数的,所以你不需要担心野点(或离群点)和数据是否线性可分的问题,DT的主要缺点是容易过拟合,这也正是随机森林等集成学习算法被提出来的原因。
4.支持向量机,很高的分类正确率,对过拟合有很好的理论保证,选取合适的核函数,面对特征线性不可分的问题也可以表现得很好。SVM在维数通常很高的文本分类中非常的流行。

如果想要或许更多更详细的讯息,建议您去参加CDA数据分析课程。大数据分析师现在有专业的国际认证证书了,CDA,即“CDA 数据分析师”,是在数字经济大背景和人工智能时代趋势下,面向全行业的专业权威国际资格认证, 旨在提升全民数字技能,助力企业数字化转型,推动行业数字化发展。 “CDA 数据分析师”具体指在互联网、金融、零售、咨询、电信、医疗、旅游等行业专门从事数据的采集、清洗、处理、分析并能制作业务报告、 提供决策的新型数据分析人才。点击预约免费试听课。

3. 大数据代码分享

3月13日下午,南京邮电大学计算机学院、软件学院院长、教授李涛在CIO时代APP微讲座栏目作了题为《大数据时代的数据挖掘》的主题分享,深度诠释了大数据及大数据时代下的数据挖掘。

众所周知,大数据时代的大数据挖掘已成为各行各业的一大热点。
一、数据挖掘
在大数据时代,数据的产生和收集是基础,数据挖掘是关键,数据挖掘可以说是大数据最关键也是最基本的工作。通常而言,数据挖掘也称为DataMining,或知识发现Knowledge Discovery from Data,泛指从大量数据中挖掘出隐含的、先前未知但潜在的有用信息和模式的一个工程化和系统化的过程。
不同的学者对数据挖掘有着不同的理解,但个人认为,数据挖掘的特性主要有以下四个方面:
1.应用性(A Combination of Theory and Application):数据挖掘是理论算法和应用实践的完美结合。数据挖掘源于实际生产生活中应用的需求,挖掘的数据来自于具体应用,同时通过数据挖掘发现的知识又要运用到实践中去,辅助实际决策。所以,数据挖掘来自于应用实践,同时也服务于应用实践,数据是根本,数据挖掘应以数据为导向,其中涉及到算法的设计与开发都需考虑到实际应用的需求,对问题进行抽象和泛化,将好的算法应用于实际中,并在实际中得到检验。
2.工程性(An Engineering Process):数据挖掘是一个由多个步骤组成的工程化过程。数据挖掘的应用特性决定了数据挖掘不仅仅是算法分析和应用,而是一个包含数据准备和管理、数据预处理和转换、挖掘算法开发和应用、结果展示和验证以及知识积累和使用的完整过程。而且在实际应用中,典型的数据挖掘过程还是一个交互和循环的过程。
3.集合性(A Collection of Functionalities):数据挖掘是多种功能的集合。常用的数据挖掘功能包括数据探索分析、关联规则挖掘、时间序列模式挖掘、分类预测、聚类分析、异常检测、数据可视化和链接分析等。一个具体的应用案例往往涉及多个不同的功能。不同的功能通常有不同的理论和技术基础,而且每一个功能都有不同的算法支撑。
4.交叉性(An Interdisciplinary Field):数据挖掘是一门交叉学科,它利用了来自统计分析、模式识别、机器学习、人工智能、信息检索、数据库等诸多不同领域的研究成果和学术思想。同时一些其他领域如随机算法、信息论、可视化、分布式计算和最优化也对数据挖掘的发展起到重要的作用。数据挖掘与这些相关领域的区别可以由前面提到的数据挖掘的3个特性来总结,最重要的是它更侧重于应用。
综上所述,应用性是数据挖掘的一个重要特性,是其区别于其他学科的关键,同时,其应用特性与其他特性相辅相成,这些特性在一定程度上决定了数据挖掘的研究与发展,同时,也为如何学习和掌握数据挖掘提出了指导性意见。如从研究发展来看,实际应用的需求是数据挖掘领域很多方法提出和发展的根源。从最开始的顾客交易数据分析(market basket analysis)、多媒体数据挖掘(multimedia data mining)、隐私保护数据挖掘(privacy-preserving data mining)到文本数据挖掘(text mining)和Web挖掘(Web mining),再到社交媒体挖掘(social media mining)都是由应用推动的。工程性和集合性决定了数据挖掘研究内容和方向的广泛性。其中,工程性使得整个研究过程里的不同步骤都属于数据挖掘的研究范畴。而集合性使得数据挖掘有多种不同的功能,而如何将多种功能联系和结合起来,从一定程度上影响了数据挖掘研究方法的发展。比如,20世纪90年代中期,数据挖掘的研究主要集中在关联规则和时间序列模式的挖掘。到20世纪90年代末,研究人员开始研究基于关联规则和时间序列模式的分类算法(如classification based on association),将两种不同的数据挖掘功能有机地结合起来。21世纪初,一个研究的热点是半监督学习(semi-supervised learning)和半监督聚类(semi-supervised clustering),也是将分类和聚类这两种功能有机结合起来。近年来的一些其他研究方向如子空间聚类(subspace clustering)(特征抽取和聚类的结合)和图分类(graph classification)(图挖掘和分类的结合)也是将多种功能联系和结合在一起。最后,交叉性导致了研究思路和方法设计的多样化。
前面提到的是数据挖掘的特性对研究发展及研究方法的影响,另外,数据挖掘的这些特性对如何学习和掌握数据挖掘提出了指导性的意见,对培养研究生、本科生均有一些指导意见,如应用性在指导数据挖掘时,应熟悉应用的业务和需求,需求才是数据挖掘的目的,业务和算法、技术的紧密结合非常重要,了解业务、把握需求才能有针对性地对数据进行分析,挖掘其价值。因此,在实际应用中需要的是一种既懂业务,又懂数据挖掘算法的人才。工程性决定了要掌握数据挖掘需有一定的工程能力,一个好的数据额挖掘人员首先是一名工程师,有很强大的处理大规模数据和开发原型系统的能力,这相当于在培养数据挖掘工程师时,对数据的处理能力和编程能力很重要。集合性使得在具体应用数据挖掘时,要做好底层不同功能和多种算法积累。交叉性决定了在学习数据挖掘时要主动了解和学习相关领域的思想和技术。
因此,这些特性均是数据挖掘的特点,通过这四个特性可总结和学习数据挖掘。
二、大数据的特征
大数据(bigdata)一词经常被用以描述和指代信息爆炸时代产生的海量信息。研究大数据的意义在于发现和理解信息内容及信息与信息之间的联系。研究大数据首先要理清和了解大数据的特点及基本概念,进而理解和认识大数据。
研究大数据首先要理解大数据的特征和基本概念。业界普遍认为,大数据具有标准的“4V”特征:
1.Volume(大量):数据体量巨大,从TB级别跃升到PB级别。
2.Variety(多样):数据类型繁多,如网络日志、视频、图片、地理位置信息等。
3.Velocity(高速):处理速度快,实时分析,这也是和传统的数据挖掘技术有着本质的不同。
4.Value(价值):价值密度低,蕴含有效价值高,合理利用低密度价值的数据并对其进行正确、准确的分析,将会带来巨大的商业和社会价值。
上述“4V”特点描述了大数据与以往部分抽样的“小数据”的主要区别。然而,实践是大数据的最终价值体现的唯一途径。从实际应用和大数据处理的复杂性看,大数据还具有如下新的“4V”特点:
5.Variability(变化):在不同的场景、不同的研究目标下数据的结构和意义可能会发生变化,因此,在实际研究中要考虑具体的上下文场景(Context)。
6.Veracity(真实性):获取真实、可靠的数据是保证分析结果准确、有效的前提。只有真实而准确的数据才能获取真正有意义的结果。
7.Volatility(波动性)/Variance(差异):由于数据本身含有噪音及分析流程的不规范性,导致采用不同的算法或不同分析过程与手段会得到不稳定的分析结果。
8.Visualization(可视化):在大数据环境下,通过数据可视化可以更加直观地阐释数据的意义,帮助理解数据,解释结果。
综上所述,以上“8V”特征在大数据分析与数据挖掘中具有很强的指导意义。
三、大数据时代下的数据挖掘
在大数据时代,数据挖掘需考虑以下四个问题:
大数据挖掘的核心和本质是应用、算法、数据和平台4个要素的有机结合。
因为数据挖掘是应用驱动的,来源于实践,海量数据产生于应用之中。需用具体的应用数据作为驱动,以算法、工具和平台作为支撑,最终将发现的知识和信息应用到实践中去,从而提供量化的、合理的、可行的、且能产生巨大价值的信息。
挖掘大数据中隐含的有用信息需设计和开发相应的数据挖掘和学习算法。算法的设计和开发需以具体的应用数据作为驱动,同时在实际问题中得到应用和验证,而算法的实现和应用需要高效的处理平台,这个处理平台可以解决波动性问题。高效的处理平台需要有效分析海量数据,及时对多元数据进行集成,同时有力支持数据化对算法及数据可视化的执行,并对数据分析的流程进行规范。
总之,应用、算法、数据、平台这四个方面相结合的思想,是对大数据时代的数据挖掘理解与认识的综合提炼,体现了大数据时代数据挖掘的本质与核心。这四个方面也是对相应研究方面的集成和架构,这四个架构具体从以下四个层面展开:
应用层(Application):关心的是数据的收集与算法验证,关键问题是理解与应用相关的语义和领域知识。
数据层(Data):数据的管理、存储、访问与安全,关心的是如何进行高效的数据使用。
算法层(Algorithm):主要是数据挖掘、机器学习、近似算法等算法的设计与实现。
平台层(Infrastructure):数据的访问和计算,计算平台处理分布式大规模的数据。
综上所述,数据挖掘的算法分为多个层次,在不同的层面有不同的研究内容,可以看到目前在做数据挖掘时的主要研究方向,如利用数据融合技术预处理稀疏、异构、不确定、不完整以及多来源数据;挖掘复杂动态变化的数据;测试通过局部学习和模型融合所得到的全局知识,并反馈相关信息给预处理阶段;对数据并行分布化,达到有效使用的目的。
四、大数据挖掘系统的开发
1.背景目标
大数据时代的来临使得数据的规模和复杂性都出现爆炸式的增长,促使不同应用领域的数据分析人员利用数据挖掘技术对数据进行分析。在应用领域中,如医疗保健、高端制造、金融等,一个典型的数据挖掘任务往往需要复杂的子任务配置,整合多种不同类型的挖掘算法以及在分布式计算环境中高效运行。因此,在大数据时代进行数据挖掘应用的一个当务之急是要开发和建立计算平台和工具,支持应用领域的数据分析人员能够有效地执行数据分析任务。
之前提到一个数据挖掘有多种任务、多种功能及不同的挖掘算法,同时,需要一个高效的平台。因此,大数据时代的数据挖掘和应用的当务之急,便是开发和建立计算平台和工具,支持应用领域的数据分析人员能够有效地执行数据分析任务。
2.相关产品
现有的数据挖掘工具
有Weka、SPSS和SQLServer,它们提供了友好的界面,方便用户进行分析,然而这些工具并不适合进行大规模的数据分析,同时,在使用这些工具时用户很难添加新的算法程序。
流行的数据挖掘算法库
如Mahout、MLC++和MILK,这些算法库提供了大量的数据挖掘算法。但这些算法库需要有高级编程技能才能进行任务配置和算法集成。
最近出现的一些集成的数据挖掘产品
如Radoop和BC-PDM,它们提供友好的用户界面来快速配置数据挖掘任务。但这些产品是基于Hadoop框架的,对非Hadoop算法程序的支持非常有限。没有明确地解决在多用户和多任务情况下的资源分配。
3.FIU-Miner
为解决现有工具和产品在大数据挖掘中的局限性,我们团队开发了一个新的平台——FIU-Miner,它代表了A Fast,Integrated,and User-Friendly System for Data Miningin Distributed Environment。它是一个用户友好并支持在分布式环境中进行高效率计算和快速集成的数据挖掘系统。与现有数据挖掘平台相比,FIU-Miner提供了一组新的功能,能够帮助数据分析人员方便并有效地开展各项复杂的数据挖掘任务。
与传统的数据挖掘平台相比,它提供了一些新的功能,主要有以下几个方面:
A.用户友好、人性化、快速的数据挖掘任务配置。基于“软件即服务”这一模式,FIU-Miner隐藏了与数据分析任务无关的低端细节。通过FIU-Miner提供的人性化用户界面,用户可以通过将现有算法直接组装成工作流,轻松完成一个复杂数据挖掘问题的任务配置,而不需要编写任何代码。
B.灵活的多语言程序集成。允许用户将目前最先进的数据挖掘算法直接导入系统算法库中,以此对分析工具集合进行扩充和管理。同时,由于FIU-Miner能够正确地将任务分配到有合适运行环境的计算节点上,所以对这些导入的算法没有实现语言的限制。
C.异构环境中有效的资源管理。FIU-Miner支持在异构的计算环境中(包括图形工作站、单个计算机、和服务器等)运行数据挖掘任务。FIU-Miner综合考虑各种因素(包括算法实现、服务器负载平衡和数据位置)来优化计算资源的利用率。
D.有效的程序调度和执行。
应用架构上包括用户界面层、任务和系统管理层、逻辑资源层、异构的物理资源层。这种分层架构充分考虑了海量数据的分布式存储、不同数据挖掘算法的集成、多重任务的配置及系统用户的交付功能。一个典型的数据挖掘任务在应用之中需要复杂的主任务配置,整合多种不同类型的挖掘算法。因此,开发和建立这样的计算平台和工具,支持应用领域的数据分析人员进行有效的分析是大数据挖掘中的一个重要任务。
FIU-Miner系统用在了不同方面:如高端制造业、仓库智能管理、空间数据处理等,TerraFly GeoCloud是建立在TerraFly系统之上的、支持多种在线空间数据分析的一个平台。提供了一种类SQL语句的空间数据查询与挖掘语言MapQL。它不但支持类SQL语句,更重要的是可根据用户的不同要求,进行空间数据挖掘,渲染和画图查询得到空间数据。通过构建空间数据分析的工作流来优化分析流程,提高分析效率。
制造业是指大规模地把原材料加工成成品的工业生产过程。高端制造业是指制造业中新出现的具有高技术含量、高附加值、强竞争力的产业。典型的高端制造业包括电子半导体生产、精密仪器制造、生物制药等。这些制造领域往往涉及严密的工程设计、复杂的装配生产线、大量的控制加工设备与工艺参数、精确的过程控制和材料的严格规范。产量和品质极大地依赖流程管控和优化决策。因此,制造企业不遗余力地采用各种措施优化生产流程、调优控制参数、提高产品品质和产量,从而提高企业的竞争力。
在空间数据处理方面,TerraFly GeoCloud对多种在线空间数据分析。对传统数据分析而言,其难点在于MapQL语句比较难写,任务之间的关系比较复杂,顺序执行之间空间数据分许效率较低。而FIU-Miner可有效解决以上三个难点。
总结而言,大数据的复杂特征对数据挖掘在理论和算法研究方面提出了新的要求和挑战。大数据是现象,核心是挖掘数据中蕴含的潜在信息,并使它们发挥价值。数据挖掘是理论技术和实际应用的完美结合。数据挖掘是理论和实践相结合的一个例子。

4. 大数据分析领域有哪些分析模型

数据角度的模型一般指的是统计或数据挖掘、机器学习、人工智能等类型的模型,是纯粹从科学角度出发定义的。
1. 降维
在面对海量数据或大数据进行数据挖掘时,通常会面临“维度灾难”,原因是数据集的维度可以不断增加直至无穷多,但计算机的处理能力和速度却是有限的;另外,数据集的大量维度之间可能存在共线性的关系,这会直接导致学习模型的健壮性不够,甚至很多时候算法结果会失效。因此,我们需要降低维度数量并降低维度间共线性影响。
数据降维也被成为数据归约或数据约减,其目的是减少参与数据计算和建模维度的数量。数据降维的思路有两类:一类是基于特征选择的降维,一类是是基于维度转换的降维。
2. 回归
回归是研究自变量x对因变量y影响的一种数据分析方法。最简单的回归模型是一元线性回归(只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示),可以表示为Y=β0+β1x+ε,其中Y为因变量,x为自变量,β1为影响系数,β0为截距,ε为随机误差。
回归分析按照自变量的个数分为一元回归模型和多元回归模型;按照影响是否线性分为线性回归和非线性回归。
3. 聚类
聚类是数据挖掘和计算中的基本任务,聚类是将大量数据集中具有“相似”特征的数据点划分为统一类别,并最终生成多个类的方法。聚类分析的基本思想是“物以类聚、人以群分”,因此大量的数据集中必然存在相似的数据点,基于这个假设就可以将数据区分出来,并发现每个数据集(分类)的特征。
4. 分类
分类算法通过对已知类别训练集的计算和分析,从中发现类别规则,以此预测新数据的类别的一类算法。分类算法是解决分类问题的方法,是数据挖掘、机器学习和模式识别中一个重要的研究领域。
5. 关联
关联规则学习通过寻找最能够解释数据变量之间关系的规则,来找出大量多元数据集中有用的关联规则,它是从大量数据中发现多种数据之间关系的一种方法,另外,它还可以基于时间序列对多种数据间的关系进行挖掘。关联分析的典型案例是“啤酒和尿布”的捆绑销售,即买了尿布的用户还会一起买啤酒。
6. 时间序列
时间序列是用来研究数据随时间变化趋势而变化的一类算法,它是一种常用的回归预测方法。它的原理是事物的连续性,所谓连续性是指客观事物的发展具有合乎规律的连续性,事物发展是按照它本身固有的规律进行的。在一定条件下,只要规律赖以发生作用的条件不产生质的变化,则事物的基本发展趋势在未来就还会延续下去。
7. 异常检测
大多数数据挖掘或数据工作中,异常值都会在数据的预处理过程中被认为是“噪音”而剔除,以避免其对总体数据评估和分析挖掘的影响。但某些情况下,如果数据工作的目标就是围绕异常值,那么这些异常值会成为数据工作的焦点。
数据集中的异常数据通常被成为异常点、离群点或孤立点等,典型特征是这些数据的特征或规则与大多数数据不一致,呈现出“异常”的特点,而检测这些数据的方法被称为异常检测。
8. 协同过滤
协同过滤(Collaborative Filtering,CF))是利用集体智慧的一个典型方法,常被用于分辨特定对象(通常是人)可能感兴趣的项目(项目可能是商品、资讯、书籍、音乐、帖子等),这些感兴趣的内容来源于其他类似人群的兴趣和爱好,然后被作为推荐内容推荐给特定对象。
9. 主题模型
主题模型(Topic Model),是提炼出文字中隐含主题的一种建模方法。在统计学中,主题就是词汇表或特定词语的词语概率分布模型。所谓主题,是文字(文章、话语、句子)所表达的中心思想或核心概念。
10. 路径、漏斗、归因模型
路径分析、漏斗分析、归因分析和热力图分析原本是网站数据分析的常用分析方法,但随着认知计算、机器学习、深度学习等方法的应用,原本很难衡量的线下用户行为正在被识别、分析、关联、打通,使得这些方法也可以应用到线下客户行为和转化分析。

5. 遥感图像分类法

利用计算机进行遥感信息的自动提取则必须使用数字图像,由于地物在同一波段、同一地物在不同波段都具有不同的波谱特征,通羡毁过对某种地物在各波段的波谱曲线进行分析桥派汪,根据其特点进行相应的增强处理后,可以在遥感影像上识别并提取同类目标物。早期的自动分类和图像分割主要是基于光谱特征,后来发展为结合光谱特征、纹理特征、形状特征、空间关系特征等综合因素的计算机信息提取。

常用的信息提取方法是遥感影像计算机自动分类。首先,对遥感影像室内预判读,然后进行野外调查,旨在建立各种类型的地物与影像特征之间的对应关系并对室内预判结果进行验证。工作转入室内后,选择训练样本并对其进行统计分析,用适当的分类器对遥感数据分类,对分类结果进行后处理,最后进行精度评价。遥感影像的分类一般是基于地物光谱特征、地物形状特征、空间关系特征等方面特征,目前大多数研究还是基于地物光谱特征。

在计算机分类之前,往往要做些预处理,如校正、增强、滤波等,以突出目标物特征或消除同一类型目标的不同部位因照射条件不同、地形变化、扫描观测角的不同而造成的亮度差异等。

利用遥感图像进行分类,就是对单个像元或比较匀质的像元组给出对应其特征的名称,其原理是利用图像识别技术实现对遥感图像的自动分类。计算机用以识别和分类的主要标志是物体的光谱特性,图像上的其它信息如大小、形状、纹理等标志尚未充分利用。

计算机图像分类方法,常见的有两种,即监督分类和非监督分类。监督分类,首先要从欲分类的图像区域中选定一些训练样区,在这样训练区中地物的类别是已知的,用它建立分类标准,然后计算机将按同样的标准对整个图像进行识别和分类。它是一种由已知样本,外推未知区域类别的方法;非监督分类是一种无先验(已知)类别标准的分类方法。对于待研究的对象和区域,没有已知类别或训练样本作标准,而是利用图像数据本身能在特征测量空间中聚集成群的特点,先形成各个数据集,然后再核对这些数据集所代表的物体类别。

与监督分类相比,非监督分类具有下列优点:不需要对被研究的地区有事先的了解,对分类的结果与精度要求相同的条件下,在时间和成本上较为节省,但实际上,非监督分类不如监督分类的精度高,所以监督分类使用的更为广泛。

细小地物在影像上有规律地重复出现,它反映了色调变化的频率,纹理形式很多,包括点、斑、格、垅、栅。在这些形式的基础上根据粗细、疏密、宽窄、长短、直斜和隐显等条件还可再细分为更多的类型。每种类型的地物在影像上都有本身的纹理图案,因此,可以从影像的这一特征识别地物。纹理反映的是亮度(灰度)的空间变化情况,有三个主要标志:某种局部的序列性在比该序列更大的区域内不断重复;序列由基本部分非随机排列组成;各部分大致都是均匀的统一体,在纹理区域内的任何地方都有大致相同的结构尺寸。这个序列的基本部分通常称为纹理基元。因此可以认为纹理是由基元按某种确定性的规律或统计性的规律排列组成的,前者称为确定性纹理(如人工纹理),后者呈随机性纹理(或自然纹理)。对纹理的描述可通过纹理的粗细度、平滑性、颗粒性、随机性、方向性、直线性、周期性、重复性等这些定性或定量的概念特征来表征。

相应的众多纹理特征提取算法也可归纳为两大类,即结构法和统计法。结构法把纹理视为由基本纹理元按特定的排列规则构成的周期性重复模式,因此常采用基敏仔于传统的Fourier频谱分析方法以确定纹理元及其排列规律。此外结构元统计法和文法纹理分析也是常用的提取方法。结构法在提取自然景观中不规则纹理时就遇到困难,这些纹理很难通过纹理元的重复出现来表示,而且纹理元的抽取和排列规则的表达本身就是一个极其困难的问题。在遥感影像中纹理绝大部分属随机性,服从统计分布,一般采用统计法纹理分析。目前用得比较多的方法包括:共生矩阵法、分形维方法、马尔可夫随机场方法等。共生矩阵是一比较传统的纹理描述方法,它可从多个侧面描述影像纹理特征。

图像分割就是指把图像分成各具特性的区域并提取出感兴趣目标的技术和过程,此处特性可以是像素的灰度、颜色、纹理等预先定义的目标可以对应单个区域,也可以对应多个区域。

图像分割是由图像处理到图像分析的关键步骤,在图像工程中占据重要的位置。一方面,它是目标表达的基础,对特征测量有重要的影响;另一方面,因为图像分割及其基于分割的目标表达、特征抽取和参数测量的将原始图像转化为更抽象更紧凑的形式,使得更高层的图像分析和理解成为可能。

图像分割是图像理解的基础,而在理论上图像分割又依赖图像理解,彼此是紧密关联的。图像分割在一般意义下是十分困难的问题,目前的图像分割一般作为图像的前期处理阶段,是针对分割对象的技术,是与问题相关的,如最常用到的利用阈值化处理进行的图像分割。

图像分割有三种不同的途径,其一是将各象素划归到相应物体或区域的象素聚类方法即区域法,其二是通过直接确定区域间的边界来实现分割的边界方法,其三是首先检测边缘象素再将边缘象素连接起来构成边界形成分割。

阈值是在分割时作为区分物体与背景象素的门限,大于或等于阈值的象素属于物体,而其它属于背景。这种方法对于在物体与背景之间存在明显差别(对比)的景物分割十分有效。实际上,在任何实际应用的图像处理系统中,都要用到阈值化技术。为了有效地分割物体与背景,人们发展了各种各样的阈值处理技术,包括全局阈值、自适应阈值、最佳阈值等等。

当物体与背景有明显对比度时,物体的边界处于图像梯度最高的点上,通过跟踪图像中具有最高梯度的点的方式获得物体的边界,可以实现图像分割。这种方法容易受到噪声的影响而偏离物体边界,通常需要在跟踪前对梯度图像进行平滑等处理,再采用边界搜索跟踪算法来实现。

为了获得图像的边缘人们提出了多种边缘检测方法,如Sobel,Cannyedge,LoG。在边缘图像的基础上,需要通过平滑、形态学等处理去除噪声点、毛刺、空洞等不需要的部分,再通过细化、边缘连接和跟踪等方法获得物体的轮廓边界。

对于图像中某些符合参数模型的主导特征,如直线、圆、椭圆等,可以通过对其参数进行聚类的方法,抽取相应的特征。

区域增长方法是根据同一物体区域内象素的相似性质来聚集象素点的方法,从初始区域(如小邻域或甚至于每个象素)开始,将相邻的具有同样性质的象素或其它区域归并到目前的区域中从而逐步增长区域,直至没有可以归并的点或其它小区域为止。区域内象素的相似性度量可以包括平均灰度值、纹理、颜色等信息。

区域增长方法是一种比较普遍的方法,在没有先验知识可以利用时,可以取得最佳的性能,可以用来分割比较复杂的图像,如自然景物。但是,区域增长方法是一种迭代的方法,空间和时间开销都比较大。

基于像素级别的信息提取以单个像素为单位,过于着眼于局部而忽略了附近整片图斑的几何结构情况,从而严重制约了信息提取的精度,而面向对象的遥感信息提取,综合考虑了光谱统计特征、形状、大小、纹理、相邻关系等一系列因素,因而具有更高精度的分类结果。面向对象的遥感影像分析技术进行影像的分类和信息提取的方法如下:

首先对图像数据进行影像分割,从二维化了的图像信息阵列中恢复出图像所反映的景观场景中的目标地物的空间形状及组合方式。影像的最小单元不再是单个的像素,而是一个个对象,后续的影像分析和处理也都基于对象进行。

然后采用决策支持的模糊分类算法,并不简单地将每个对象简单地分到某一类,而是给出每个对象隶属于某一类的概率,便于用户根据实际情况进行调整,同时,也可以按照最大概率产生确定分类结果。在建立专家决策支持系统时,建立不同尺度的分类层次,在每一层次上分别定义对象的光谱特征、形状特征、纹理特征和相邻关系特征。其中,光谱特征包括均值、方差、灰度比值;形状特征包括面积、长度、宽度、边界长度、长宽比、形状因子、密度、主方向、对称性,位置,对于线状地物包括线长、线宽、线长宽比、曲率、曲率与长度之比等,对于面状地物包括面积、周长、紧凑度、多边形边数、各边长度的方差、各边的平均长度、最长边的长度;纹理特征包括对象方差、面积、密度、对称性、主方向的均值和方差等。通过定义多种特征并指定不同权重,建立分类标准,然后对影像分类。分类时先在大尺度上分出"父类",再根据实际需要对感兴趣的地物在小尺度上定义特征,分出"子类"。

阅读全文

与分类算法背景相关的资料

热点内容
拍卖程序员 浏览:101
电脑的图片放在哪个文件夹 浏览:274
unsignedintjava 浏览:216
编译器下载地址 浏览:42
什么是面对对象编程 浏览:708
b站服务器什么时候恢复 浏览:721
6p相当于安卓机什么水准 浏览:498
能否给隐藏相册加密 浏览:596
糖心app改什么名 浏览:823
战地1控服务器如何部署 浏览:394
xp还原系统输入命令 浏览:323
mysql命令行版本 浏览:303
如何进入itunes找文件夹 浏览:832
CAD中重复命令使用 浏览:478
心智pdf 浏览:476
网站电台直播间源码 浏览:854
文件夹14c和18c的区别 浏览:36
android隐式调用 浏览:668
plc的编程指令边沿继电器 浏览:724
voc文件夹 浏览:866