数据源自动分类(共7篇)
数据源自动分类 篇1
0 引言
最近的研究表明Surface Web已经链接到了数十亿的静态页面,然而Web上有部分内容不能通过超链接直接访问到。这部分页面仅当用户填充表单并提交查询后才可以访问。这部分页面被称为是Hidden Web或者Deep Web[1,2]。根据Bright Plant公司的调查[3]已知:在内容上,Deep Web网站比Surface Web网站更专、更深,Deep Web提供的内容主要是后台的网络数据库[4],每个信息都可以通过一个或多个HTML表单查询到;在质量上,来源于这些网站的信息是高质量的,对于用户来说具有更高的价值。一方面考虑到Web的动态特性,即新资源的上载和旧资源的删除或者修改。能够通过简单使用HTML表单接口来自动发现这种Deep Web网站极其重要[5]。另一方面,由于网络数据库的领域特性,用户一般只对其中特定的领域感兴趣。有效地利用这些网络数据库中的信息,需要将其按领域进行分类。
为了定位Deep Web数据源,对一个比较好的定位机制的需求也迫在眉睫。文献[6]中提出的使用机器学习中C4.5决策树的方法来实现Web上查询接口的判别,其主要分两个步骤:首先是查询接口特征的自动生成,其次是以这些特征为依据,利用C4.5算法得到一棵决策树,通过这棵决策树来进行查询接口的判定。实验结果表明:从Web中随机查询的数据集准确性达到了87%,显然还有很大的提升空间,其实还有一些有用的信息可以利用,如HTML表单中,控制组件之间的文档内容,控制组件的数量和布局,页面中的频繁词汇等等。文献[7]提出了一种利用朴素贝叶斯分类算法的自动判定网页表单是否是Deep Web查询接口的方法,文章提取了HTML表单标签的属性值和控件类型以及控制标签之间的词汇信息等作为贝叶斯分类的特征集,实验结果表明在查询接口的查全率和查准率方面都有提高,但是忽略了整个页面的信息和数据源的领域相关性。文献[8]使用强化学习来建立一个聚焦爬虫,其对于分散的概念比较有效,并且其设计是用来搜索非Hidden Web数据库的内容。文献[9]提出了一种使用强化学习的基于Agent的Hidden Web爬虫(ALAC)来实现Deep Web数据源的判别。
本文描述了一种多分类器来实现对Deep Web数据源的分类和判别的方法,首先使用聚焦表单的爬虫实现对页面表单的抓取,然后利用朴素贝叶斯分类器对文档页面领域性分类的优势,对于抓取到的表单页面进行领域相关性分类,获取所需的领域信息,过滤非领域相关性的页面信息,最后依据C4.5决策树分类器对于查询接口判别错误率低的特点,对抓取到的领域表单页面进行查询接口的判别。
1 数据源的分类和判别框架
数据源分类的目标是在聚焦爬虫检索到的异构的表单中只选择领域相关和作为查询接口的表单。过程如下:给定一个Web表单的集合F和网络数据库领域D,这里F是通过聚焦爬虫自动搜集到的。目标是从集合F中选出那些仅作为D中某一特定领域的可查询的表单,过滤掉与特定领域不相关的可查询表单和非查询功能表单。
定义1
可查询表单作为网络数据库的查询接口,通常是以HTML中的表单的形式表示,当用户提交要查询的信息时,网络数据库会返回其查询结果的那些表单。
定义2
非查询表单主要包括两部分的信息。其一,只是作为信息的提交功能,虽与网络数据库进行交互,但是不会返回查询结果的表单;其二,作为搜索引擎或者元搜索引擎的表单,虽然返回查询结果,但结果一般是非结构化或者半结构化链接信息。
HTML表示的网页中包含有大量复杂的信息,可以从中获取大量有用的信息集合。网页特征的选择对于网页分类的速度和精度都至关重要。因此,如何有效地选择合适的网页特征对网页进行描述,是进行网页表单分类和判别的首要问题。
传统的查询接口分类与判别方法,如决策树和贝叶斯,其原理是对于提取到的表单页面,使用单一分类器分析表单文本与结构特征来实现查询接口的分类和判别,这样用于分类的特征就局限到表单内的特征,而忽略了整个页面的文本信息,而且单一分类器只对于某一功能有优势(贝叶斯对于接口分类有优势,决策树对于判定查询接口有较小的出错率)。故这里提出了一种分层的思想,即使用不同分类器分别对Deep Web数据源进行分类和判定。在这里,关注于提取整个页面的文本信息(用于表单网页的分类)和表单包含的全部信息(作为查询接口判别的特征)。
本文通过三个基本组件来实现上面的功能:基于表单的聚焦爬虫(FFC)、表单页面分类器(FPC)和表单分类器(FC)。图1显示了其结构框架。
聚焦爬虫工作原理
首先给定一个主题相关页面作为种子,然后宽度搜索其中静态连接,将链接到的包含HTML表单的页面抓取下来。在爬虫的抓取过程中,本文用到了一种有效的爬虫终止策略:1)当爬虫检索到一个给定的表单个数的时候,爬虫就离开此网站;2)当爬虫在一个网站上爬过的超链接超过提前预定的个数的话,爬虫也终止此网站的爬行。聚焦爬虫功能是根据页面之间的特征,将爬行的主题集中到含有表单信息的页面,从而避免了在非表单页面上的消耗。
表单页面分类器
将由爬虫获取到的表单页面,使用改进过的朴素贝叶斯分类器将包含表单的页面根据其领域相关性自动识别其领域,过滤掉不相关领域内的表单。
表单分类器
表单分类器将使用改进的C4.5决策树算法对相关领域的表单进行查询接口的判别,将其分为可查询的和非查询的表单,其细节将在下面内容讨论。
2 数据源的分类和判定
2.1 表单页面的分类器
表单页面分类可作为文本分类技术的一种扩展,但表单网页的特征比较复杂,网页格式灵活,而且同一格式的网页也存在多个标准,因此对其分类相比较于文档分类要难于处理,这里引入了朴素贝叶斯文档分类器。根据贝叶斯学习框架对于文档分类的处理过程,这里首先对特征进行标准化以提高分类的准确性。假设文档数据是通过参数模型产生的,使用训练数据来计算模型参数的最大后延估计。根据这个估计,来对新的测试文档所生成的模型使用贝叶斯规则计算其所属类别的后延概率来对其进行分类。分类过程就是将文档归类到有最大概率的类别里面。
贝叶斯分类器使用文档频率和词频对文档类别参数化。每个类别cj有一个和其它类别相关的先验概率P(cj),通过包含不同词汇的多项式模型来表示文档类别。也就是说,对于词汇表V中的每个词wt,P(wtcj)表示分类器在给定具体的类别cj时此词wt发生的概率。下面用di表示一个文档,它是一个无序的词的集合。为了使用此分类模型对其分类,首先假设对于每一个给定的类别,每个文档中出现的单词是相互独立的。利用此假设,分类问题就显得比较直接了。计算此文档di相对于文档类别cj的概率P(cjdi)并将其归类到P(cjdi)值最大的类别cj中。然后用wdik表示在文档di中的第k个词。根据前面的假设,使用贝叶斯规则可将P(cjdi)扩展为:
通过训练集合来学习到P(cj)和P(wtcj)这些参数值。与传统的贝叶斯分类不同的是,为了避免零概率可能会消除乘积中涉及的所有其他(后验)概率的影响,将拉普拉斯校准分别用于计算先验概率P(cj)和条件概率P(wtcj)。
算法1朴素贝叶斯分类器学习算法
其中,Examples为一组页面及其目标值,C为所有可能的目标值的集合。此函数作用是学习概率项P(wtcj),它描述了从类别cj中的一个页面文档中随机抽取的一个词为wt的概率。该函数也学习类别的先验概率P(cj)。
1)网页文本处理
(1)页面预处理。
(1)HTML去噪,删除HTML标签;
(2)Anchor Text提取,提取文档的In-link和Out-link Anchor Text;
(3)中文分词。
(2)特征选词
(1)禁用词表,预定义禁用词表,将禁用词表中出现的词从文档的特征向量中删去;
(2)词性选择,基于ICTCLAS的分词结果,只特定词性标注的词作为特征项;
(3)信息增益,对数据集进行特征降维,压缩特征空间;
(4)存放处理结果到DOC文档中。
(3)集Examples处理后的DOC文档中所有词以及其它信息:
V←将处理后的文本信息出现的所有词和记号的集合。
2)计算所需要的概率项P(cj)和P(wtcj)
根据上面贝叶斯文本分类器对于文档分类的知识分可知:
对C中的每个目标值cj
(1)docj←文档DOC中目标值为cj的文档子集;
其中di∈DOC,|C|表示目标值个数;
对V中每个词wt
(1)N(wt,di)表示为单词wt出现在文档di中的次数,并且P(cjdi)∈{0,1},作为表示文档的类别标签;
算法2贝叶斯分类算法
对待分析页面进行预处理,处理结果存入文档Doc中,文档Doc返回其估计的目标值。ai代表在Doc中的第i个位置上出现的词。
1)positions←在Doc中的所有词的位置,它包含能在V中找到的记号;
2)返回vNB:
对于给定的大量的训练文档,朴素贝叶斯分类器在文本文档分类方面表现良好[10],关于贝叶斯文本分类的细节在文献[11]有详细的描述。对于这里的分类只关心是否是用户关心的领域页面表单。
2.2 查询表单的判别分类器
在2.1节中,使用朴素贝叶斯对包含表单的页面进行领域分类,提取出感兴趣的页面,然后对固定领域的表单进行查询接口的判定。HTML表单包含有复杂的结构,通过它可以得到一个特征丰富的集合。事实上,表单结构化的特征就可以作为判断此表单是否是查询接口的一个指示器。此部分描述了一个自动产生HTML表单特征的方法作为有效进行查询接口探测的标准。
图2显示了统计得来的一些数据信息。由图2知:可查询的表单有比较多的Selection List和Check Box,而非查询表单有比较多的Text Box。其它的一些结构信息也被用来作为C4.5决策树的特征,如:hidden标签的个数,Radio标签的个数,Submit标签的个数,Password标签的个数,Text Box的个数,Submit的方法,还有一个很有用的是“查询”“搜索”此类别的关键字。事实上,表单中查询关键字和提交按钮的出现在特征集中拥有最高的权值。上面提到的特征信息都是可以从Web表单中自动提取的,不需要手工的预处理。在文献[6]提出使用决策树来对查询表单进行分类,此分类器使用的特征是其自动从表单提取出来的。因为此策略同时也考虑到表单标签内部的文本信息,使得策略最后要考虑的特征个数多于550个。而这里只用到了17个特征,这样极大地压缩了分类的特征空间。
这里用机器学习中的C4.5决策树算法进行判定。因为它有比较小的错误率,而且可以根据产生的特征类型对算法进行修改,更重要的是此算法会生成一个规则树,可以描述成简单的分类规则:IF条件成立,THEN判断是/否查询接口。而规则树的生成过程就是将分类能力最好的属性作为树的根节点进行测试,然后为根节点属性的每个可能值产生一个分支,并把训练样例排列到适当的分支之下。然后重复整个过程,用各个分支节点关联的训练样例来选取在该点被测试的最佳属性。一旦规则树生成后,查询接口的判定问题就简化为规则树的条件逻辑问题。
3 实验结果与分析
为了验证使用多分类器进行查询接口分类和判定的有效性,实验中从对于表单的网络爬虫随机抓取的网页中抽取大量的网页表单,然后手工对其进行分类,选取了65个Deep Web查询接口和130个非查询接口组成的训练集,140个Deep web查询接口和160个非查询接口组成的测试集,测试其与单一使用C4.5决策树分类器或贝叶斯分类器比较结果如图3所示。
实验表明,和单一使用C4.5决策树或贝叶斯分类器相比,此方法在精度和召回率方面都有所改善,特别是精度。召回率实验结果中,多分类器和C4.5决策树和单一贝叶斯方法相比效果虽有改进但不是很明显,它是使用贝叶斯分类器对页面进行分类时产生的误差引起,在图书领域有显著增强。分析原因,图书页面中含有丰富的文本信息,经过分词处理,与图书相关的关键词的出现以及词频,使得在使用朴素贝叶斯分类时,能更准确的将其进行分类;精度实验结果与C4.5和贝叶斯方法相比有较大提高,工作、图书、租赁领域,其精度都在90%以上,特别是工作领域其精度达94.4%。分析原因是,对于同一领域的页面表单,HTML表单的结构和特征有大的相似性,其中用到的Check Box和Select List比较多,Text Box比较少,而且对于特殊的领域,为了方便用户进行查询,网络查询接口提供给用户的选择控件的功能是一致的,这样多分类器中的决策树分类器更能将查询接口从中正确判别出来。
4 结束语
随着Deep Web数据库数量和其蕴含数据量的增长,对Deep Web数据的集成越来越成为研究领域关注的问题,而Deep Web数据源的分类和判别是进行Deep Web数据集成的基础,其二者的结合不仅保证了更高的准确性和效率,而且更有其实际应用意义。本文在研究以往判别查询接口方法的基础上,针对其提取特征方式不同和精度低以及忽略领域相关性的问题,提出了一种结合多分类器的方式来对Deep Web数据源进行分类和判别。实验结果比较于使用单一决策树分类器,在召回率和精度方面都有提高。以后的工作是对此种方法中的领域分类结果进行分析,分析出不同领域的查询接口的特征,缩小贝叶斯分类器在进行网页分类的错误率,根据提取不同领域的特征信息来提高查询接口的召回率和精度。
参考文献
[1]Bergman M K.The deep web:surfacing the hidden value[J/OL].The Journal of Electronic Publishing,2001,7(1).http://www.press.mich.edu/jep/07-01/bergman.html.
[2]Chang K C C,He B Li.CStructured databases on the Web:Observa-tions and Implications[R].Technical Report,UIUC,2004.
[3]Bergman M K.Deep Web Whitepaper[EB/OL].2004.http://briight-planet.com.
[4]Fllorescu D Levyay,Mendel A Zon.Database techniques for the world-wide web:A survey[J].SIGMOD Record,1998,27(3):5974.
[5]He B,Pater M,Zhang Z.Accessing the Deep Web:A Survey[C]//Communications of the ACM(CACM),2007.
[6]Cope J,Craswell N,Hawking D.Automated Discovery of Search Inter-faces on the Web[C]//Proceeding of ADC2003,2003.
[7]高岭,赵朋朋,崔志明.Deep Web查询接口的自动判定[J].计算机技术与发展,2007,17(5):14815.
[8]Rennie J,McCallum A.Using Reinforcement Learning to Spider the web Efficiently[C]//Proceeding of ICML,1999.
[9]Akilandeswari J,Gopalan N P.A Novel Design of Hidden Web crawler Using Reinforcement Learning[C]//APPT2007.Based Agents.Berlin Heidelberg,c2007.
[10]David D Lewis.Naive(Bayes)at forty:The independence assumption in information retrieval[C]//ECML-98.1998.
[11]Mitchell T.Machine Learning[M].McGraw-Hill,1997.
数据源自动分类 篇2
Deep Web数据源自动分类是当前的Deep Web研究中的一个热点。它实现将Deep Web资源按照现实的领域以自动的方式进行分类,以最终提高Deep Web资源的利用率。本文主要研究Deep Web数据源自动分类方法。目前,该研究还是一个刚刚起步的过程。Ipeirotis、Hedley、B.He、Qian Peng、Barbosa L等人[1,2,3,4]都提出了相应的Deep Web数据源自动分类方法。但是已有的研究工作只单纯地采用Post-query或Pre-query方法中的一种,并且绝大部分都忽略了上下文描述内容文本的利用和这些依据信息对分类影响度的差别。此外,中文Deep Web数据源自动分类研究也很少。
2 三段式逐步求精的中文Deep Web数据源自动分类方法
2.1 三个阶段结合的分类策略
单纯的Post-query分类方法,只依据查询返回的Web数据库内容摘要来分类。由于它返回的结果毕竟只是数据库的部分内容,而当数据库的记录具有较多属性时,这种方法则难以取得较好的分类效果。
而单纯的Pre-query分类方法,只依据查询接口表单网页自身的特征来分类。它仅适合数据库的内容可以完全由表单的特征表示出来的情形,它对一些查询接口表单中不含有任何基于领域特征属性的Deep Web数据源无法分类,从而使得这种方法总的分类效果不好。尤其是对中文Deep Web数据源,如果仅仅采用这种Pre-query方法,由于有较多的中文数据源的查询接口是不含有任何基于领域特征属性的简单查询接口,其自动分类效果则会更加不理想。
为此,本文提出了一种三段式逐步求精的中文Deep Web数据源自动分类方法。该方法将Post-query和Pre-query方法有机地结合起来,并且设置了两种不同的分类影响因子,通过Deep Web查询接口表单特征的利用、Deep Web数据库内容摘要的利用以及上下文描述内容文本的利用,这三个阶段逐步提高了中文Deep Web数据源自动分类的效果。
本文的分类策略包含以下三个阶段:
1)Deep Web查询接口表单特征的利用——作为分类的第一阶段。因为在所有Deep Web查询接口中有相当多的查询接口包含有基于领域的特征属性,并且Deep Web查询接口表单特征利用的分类影响度远远超过了上下文描述内容文本,此外,本文的Deep Web数据库摘要利用方案的基础是已知查询接口是否含有基于领域的特征属性的,因此,本文使用Pre-query分类方法,将其作为分类的第一阶段。由于Deep Web查询接口表单中的控件的文本标签、内部名和其值域提供了相应的语义和领域相关信息,因此在这一阶段抽取这些表单特征作为分类依据信息并对其进行标准化操作。
2)Deep Web数据库内容摘要的利用——作为分类的第二阶段。在这一阶段又结合了Post-query分类方法,其关键作用是:它能填补第一阶段无法给出任何简单Deep
Web查询接口及其Web数据库的所属领域的空缺。另外,还可以对高级Deep Web查询接口及其Web数据库在上一阶段得到的可能领域作进一步的细化。在Deep Web数据库内容摘要的利用过程中,本文从查询项选择出发,根据返回记录的关联对Deep Web数据库内容进行获取并且经过抽取与查询相关的信息形成Deep Web数据库内容摘要,并且将其作为分类依据信息进行了标准化操作。
3)上下文描述内容文本的利用——作为分类的第三阶段。由于上下文描述内容文本的利用对Deep Web数据源自动分类的影响要比前两者小,因此,本文将其单独于查询接口表单作为第三阶段的辅助分类。与文献[2]的方法相比,本文去除了噪音信息,找出了真正的Deep Web上下文描述内容文本。本文的上下文描述内容文本发现算法是利用文本块中出现的满足上下文描述内容文本特征的多少,来判断它是上下文描述内容文本的可能性的。
2.2 领域的确定
本文中提出的三段式逐步求精的中文Deep Web数据源自动分类方法是基于Deep Web数据源与领域知识库中主题之间的相似度实现的。而Deep Web数据源与领域知识库中主题之间的相似度又包括:Deep Web查询接口表单特征内容文本与领域知识库中主题文档之间的相似度Sim(P,Y),Deep Web数据库内容摘要与领域知识库中主题文档之间的相似度Sim(D,Y),上下文描述内容文本与领域知识库中主题文档之间的相似度Sim(M,Y)。
在分类的第一阶段得到的Sim(P,Y);第二阶段得到的Sim(D,Y);第三阶段得到的Sim(M,Y),它们的具体计算方法描述如下:
1)Deep Web查询接口表单抽取特征内容文本pdj用一维向量(pw1,j,pw2,j,…,pwt,j)表示,其中pwi,j为权重。
2)Deep Web数据库的内容摘要CS(D)用一维向量(w1,w2,w3……wt)表示,其中wi为权重。
3)Deep Web上下文描述内容文本mdj用一维向量(mw1,j,mw2,j,…,mwt,j)表示,其中mwi,j为权重。
4)领域数据库中每个主题描述信息文档ydj用一维向量(yw1,j,yw2,j,…,ywt,j)表示,其中ywt,j为权重。
本文将使用如下余弦相似度公式计算Sim(P,Y)、Sim(D,Y)以及Sim(M,Y):
下面以Deep Web查询接口表单特征内容文本与领域知识库中主题文档之间的相似度Sim(P,Y)的计算为例来说明Sim(P,Y)、Sim(D,Y)和Sim(M,Y)的计算方法。
由于Deep Web查询接口表单特征和数据库内容摘要本身直接就是数据源的信息,而上下文描述内容文本块是间接的反映Deep Web查询接口及后台数据库内容,因此,很显然上下文描述内容文本的利用对Deep Web数据源自动分类的影响要比这两者小。在本文的分类算法中,设置两种不同的分类影响因子ud和ux:Deep Web查询接口表单特征和数据库内容摘要的利用对应的是较大的影响因子ud,而上下文描述内容文本利用对应的是较小的影响因子ux。在本文中将Sim(P,Y),Sim(D,Y),Sim(M,Y)都乘以其相应的分类影响因子ud或ux,并且将这三项乘积相加就得到数据源与领域知识库中主题之间的相似度。因此,可以得到确定Deep Web数据源所属领域的计算公式,如公式(4):
接下来,就是依据公式(4)来确定Deep Web数据源其所属的领域:首先,依据公式(4)计算Deep Web数据源与领域知识库中主题之间的相似度值,然后将主题(领域)依据这个相似度值降序排列,选取k个与Deep Web数据源相似度值最高的主题,该相似度值最高的k个主题就是这个Deep Web数据源所属的领域主题。如果每个数据源只属于一个主题,即k=1。
2.3 自动分类系统的设计
图1是三段式逐步求精的中文Deep Web数据源自动分类系统的模型图。
该分类系统输入的是包含Deep Web查询接口的页面和数据库(即,一个数据源);输出的是该数据源所属的领域主题;它主要由第一阶段模块、第二阶段模块、第三阶段模块以及领域确定模块组成。在图中,领域知识库主要为上述模块中的相似度比较提供领域主题文档。本文的领域知识库主要参照了雅虎中文的分类目录体系,使用了其分类目录的前一、二层作为主题和子主题,并且使用一个主题目录下所有子目录中出现的所词汇集合作为该大主题(领域)的描述信息。该系统还对各个模块的分类依据信息进行了标准化,该过程包括:“基于‘词元’的中文分词”、“同义词替换”和“以空间向量模型表示”几个部分。本文中的“词元”字典和同义词字典都是以雅虎中文分类目录词为基础的,并与分类领域密切相关。
3 实验
本文针对中文站点,在前文所述的自动分类系统上进行了实验。实验数据集是人工收集的392个中文数据源,表1给出了这些Deep Web数据源人工分类结果。
本文将三段式逐步求精的中文Deep Web数据源自动分类方法分别与单纯的Pre-query分类方法、单纯的Post-query分类方法、无影响度差别的文献[2]的分类方法进行了比较实验,并采用了评估文本分类的指标:查准率、查全率和F1值。实验结果如表2所示。
从表2可知:对于实验数据源,本文的自动分类方法比单纯的Pre-query分类方法、单纯的Post-query分类方法以及无影响度差别的文献[2]的分类方法的分类效果都要好(查全率、查准率和F1值都有相应的提高),对其方法都起到了一定的改进作用。
4 结论
本文的三段式逐步求精的中文Deep Web数据源自动分类方法将Post-query和Pre-query方法有机地结合起来,并且设置了两种不同的分类影响因子,通过三个阶段逐步提高了中文Deep Web数据源自动分类的效果。
本文的贡献在于:它解决了单纯的Pre-query分类方法无法对不包含任何基于领域特征属性的简单Deep Web查询接口表单所对应的数据源分类的问题;并且解决了单纯的Post-query分类方法,在Deep Web数据库的记录具有较多属性时,其分类结果的查准率、查全率和F1值比较低的问题。还提出了三种分类依据信息对自动分类的影响度有差别的问题,改进了文献[2]自动分类方法。它为目前的中文Deep Web数据源自动分类方法研究提供了一种新的参考。
参考文献
[1]B He,T Tao,K C C Chang.Organizing structured web sources by query schemas:a clustering approach[C].In Proceedings of the13th Conference on Information and Knowledge Management.Washington:ACM Press,2004.22-31.
[2]Barbosa L,Freire J,Silva A.Organizing hidden-Web databases by clustering visible Web documents.In:Doqac A,ed.Proc.of IEEE the23rd Int’l Conf.on Data Engineering.I stanbul:IEEE Computer Society,2007.326-335.
[3]Yih-Ling Hedley,Muhammad Younas,Anne E James.The categorisation of hidden web databases through concept specificity and coverage[C].In proceedings of the2005international workshop on web and mobile information Systems,2005:371-376.
数据源自动分类 篇3
1 实验背景
早期手工分类,从粗到细,完全由分类员完成。主要工具是查阅专利分类表。随着计算机应用的发展,分类表由书籍变成电子版,又经历了网络版、网页版变迁。2010年以后才真正标志性地实现了自动分类技术的应用,将研究变为实用。一种基于历史文献的分类方法至今占据着主导位置。
1.1 基于历史文献的分类方法
以历史文献作训练空间,构建语料库,通过数学模型运算获得相似度评分,提供备选方案。其中数学模型可以多种。如SVM、KNN、Naive Bayes等等[1]。其优点是对已分类文献分类效果良好。其缺点是需配备海量装备,代价大。
这种方法后来也受到两点质疑。
1)发明专利的创新性
由于专利文献由两类构成:一类是开创性发明,另一类是改进性发明。对于开创性发明,其新技术方案所依据的基本原理与已有技术有质的不同。这类专利之间相似度很低。因此基于历史的方法,问题会出在参照物信息不充分上。
2)IPC分类的渐变性
在专利审查流程中有一种预警机制。当某个时期某个领域专利案件量增长超出预期就会报警。同时引起两个部门的注意。A)宏观战略研究部门,主要观测是否将有引领潮流的革命性技术到来,例如:纳米。预测5到10年将进入市场,对宏观经济产生影响。B)审查业务管理部门,检测到案件量当超过某个数量级的阀值时,就要考虑审查增员问题,或者考虑该分类是否需要再细分。一种变化是增加小组细目,另一种变化停止原小组细目,重新分配一个新的大组,然后再分到各个小组细目。因此,专利分类表会根据需要随时调整。因此基于历史的方法问题会出在参照物信息不确定上。
1.2 基于分类表的分类方法
分类表作为指导性工具,曾经是手工时代的产物,早已被自动化工具所取代,目前只剩备忘录作用。笔者以为分类表不仅有良好层级结构,还有规则指向,交叉参考等。如能充分利用,可以开发出分类导航(XML- Xslt版已初具导航作用)产品;将括弧中规则指向和交叉参考与人工智能相结合,自动分类可以达到极高准确率,当然引入规则会变得相当复杂。分类表简单使用,已经具备可计算性。这恰恰是轻量级分类方法须采用的重要手段之一,不可或缺。这种方法也有许多困难需要面对。例如:
1)专利文献语言文化差异
专利文献格式严格,结构特征明显。作者撰写文档,须通过形式审查才能进入审批流程。由于对撰写具体内容不作限定,说明书的撰写水平受作者的语言文化背景、地域差异、学识和规范习惯等因素影响,因人而异。发明标题中的词素非常重要,需要抓住主题重点;权利要求书的描述是树形结构,可以程式化固定。例如:“一种”(独立权利要求),“根据”(从属权利要求),可以构成林、树、杈关系。这对主分类和相关分类分析有参考价值。笔者曾抽样分析,结果令人失望。严格按统一规范来撰写的并不多,失去利用价值。要求文字术语统一规范,更是难事。
2)专利分类表术语不统一规范
电子版分类表中符号混乱,文字缺乏统一规范。通过取样几个近义词,便可略见一斑。参见表1。
某些词语意思相近,复杂而繁多,分布在不同分类中,给解析带来困难。
3)抽象专利分类表与具象专利文献之间术语差异
该差异是两者不在一个层面自然形成的,需要一个沟通机制。由此,引出基于同义词的术语分类方法。
1.3 基于同义词的分类方法
专利文献加工中人工标引主要的工作就是标注文献的关键词和同义词。该方法主要作为提高专利检索查准率、查全率的必要手段之一。而对于文档自动分类来说,利用分词技术来获取文档中有限高频词。两者目标一致,方法有别,一个人工,一个计算技术。由于计算技术缺乏模糊识别、灵活和准确的理解力。因此,最终还是需要适当植入人工标引关键词来弥补计算技术的缺陷,提高准确性。
其哲学思想也与数学方法论不相矛盾。如果把专利文献和专利分类看作向量空间模型,文档空间被看成是被简化了的一组能够代表文档的高频正交词条有限特征向量空间,词条频度权重,看作特征轴上的投影。IPC分类也是有限特征向量空间子集,由不同的特征排列组合而成。某些特征被不同的分类空间所共用。像星座群一样,每个星座对不同的分类群起的作用不同,有些分类群整体很耀眼,有些分类群整体有些黯淡,甚至没有光芒。如果文档空间向量与ipc空间向量存在交集,在ipc某些特征轴上能够直接找到投影;否则,就相离。如果,某些特征通过变换折射也可以找到投影,那么认为,两者之间间接存在交集。这里折射变换的原理也就是同义词和上位词植入的基本原理。
如果直接用分类表来解析文献,寻求的分类目标可能会发散。因为文档空间与IPC分类空间不直接在一个层面上,坐标没有对应关系,投影回到原点。有人会提出按照文档结构分类方法,认为标题或文摘部分很重要,通过增加整个标题或文摘的权重来施加影响力。这对于空间的形状会有所改善,但并未发生质的改变。也只是改变了投影形状量的大小。只有,真正将文档空间中不在同一个层面的那些高频特征词,通过上位词或同义词的折射变换,才可以改善其在分类空间中的投影,以突显或还原其真实形态。
利用这一方法,通过逐一折射扫描,捕捉分类空间的投影。不仅可以原型再现,还可以通过局部放大,来达到逐一捕获主IPC和或其他相关IPC的目的。分类会因同义词强化效果大大改善,达到很好的收敛性。
因此,建立一个完善的同义词库意义重大。提供捡拾同义关系词的入口,是基于同义词分类方案进入一个良性循环的必要手段。这是需要全员参与的工作,需要群体的智慧。同样,提供一个可植入关键词的入口,对于不依赖于现有或历史,也是设计者需要考虑的。
建立同义词或上位词关系词方法其实简单。例如:蛋白质是由肽构成的,肽是由氨基酸构成的。那么建立“肽→蛋白质”关系,肽是上位词,蛋白质是下位词。文献中使用了“…蛋白质”,就植入上位的“蛋白质”和“肽”;又例如:文献用“英文/英语”,那么就植入其上位词“外语”,建立“外语→英语”关系。新建立的关系词被积累保存到同义词库,一劳永逸。
与基于历史文献语料库相比,同义词库无疑是轻量级的。同义词库可以弥补专利分类表中词语抽象的不足,用来化解专利文献中词语具象的复杂性。在专利分类表和专利文献之间搭建起沟通的桥梁。
2 IPC自动分类的技术实现
IPC自动分类的实现,其专利文献自动分类实验流程图,如图1所示。
专利分类流程图分为两个部分,可以分开实现,IPC分类表语料库加工层最终得到的是分类表语料库。由{ipc,wj,cc,idf}构成,内容参见定义1。
定义1:ipci,用以表示IPC分类表中的某个专利分类号;wij,用以表示ipci分类描述文字切分出的某个特征词;cc(wij)表示,特征词wij在IPC分类表中有多少分类与之有关;N,用以表示IPC分类表中总共有多少分类条目;idf(wij) ,用以表示IPC分类条目中的词条相对于总体分类的反文档数,是wij的重新评估的权重,idf(wij)=log(N/ cc(wij))。
原始文档加工层,最终得到文档目标语料。由{wi,dn,tf}构成,内容参见定义2。
定义2:D,用以表示原始文献;wk,用以表示D中切分出的词条;dn(wk),用以表示wk的重复数;n,用以表示D中的总词条数,n=∑dn(wk);tf(wk),用以表示wk的词频,tf(wk)= dnk/ n;
计算相似度层,用三种算法分别计算相似度排名。参见自动分类算法。
2.1 IPC自动分类的算法
本文给出自定义的两种算法和一种已有算法进行对比。即:
WHZ算法——一个自定义算法
Tf-Idf算法——一个已有算法
Hit-Rate算法——一个自定义算法
2.1.1 WHZ算法
whz算法属于自定义算法,用来抑制版权争端,与Tf-Idf和BM25算法相当。
定义3:
文档D与分类条目ipci相似度,用whz(D,ipci)表示。
whz(D,ipci)=∑(dn(wj)/cc(wij))dn(w)w
其中,dn(wj)代表文档词条wj重复度权重,cc(wij)代表ipci条目中wj词条被多少个其他ipc分类条目所共用或分享。
2.1.2 Tf-Idf算法
Tf-Idf算法属于已有算法,其标准形式的定义有BM25算法[略]。
定义4:
文档D与分类条目ipci相似度,用Tf-Idf (D, ipci)表示,或sim(D, ipci)表示。
其中,dn(wj)代表词条wj重复数,cc(wij)代表词条wj逆文档数,亦即词条与其他ipc分类也相关的ipc条目数。
2.1.3 Hit-Rate算法
由于whz自定义算法,与tf-idf算法总体趋势接近。为防止前两种算法接近重叠,我们又从另外角度给出了一种自定义的算法。其主旨是,将ipc条目其所涉及分词,与专利文献中高重复度的词相匹配,匹配占比越大,得分越高,与ipc条目越相似。
定义5:
函数has(wij)如果wij出现在文献D中,则取值1,如果没有出现在文献D中,则取值0;Hit-r(D,ipci),用于表示命中率或占比。
其中j=1..m,则∑j(1)=m。
文档D与分类条目ipci相似度,用Hit-Rate(D, ipci)表示。
3 实验效果(The experiment effect)
抽样考察4个发明公开专利文献。取试验样本4个发明公开专利的“标题+文摘”,参见表2。
专利文献切分分词,参见表3。
观测实验结果,植入关键词对自动分类的三种算法排名的影响,参见表5。
直接通过分类表计算自动分类相似度排名,收敛性较差。参见表4 左部结果。植入同义词调整后,分类效果明显改善,基本收敛。参见表4右部结果。
笔者通过植入同义词和上位词来改善分类表解析不收敛的问题。如果调整得不到希望的分类,亦即,分类不收敛,就要重新调整其他同义词方向,来改变策略,直至得到与文献内容相符合且最接近的分类为止。
从实验效果看,本文所用的分类表与同义词修正相结合的分类方法,收敛效果明显。与实际采用何种算法无关,要发散都发散,要收敛都收敛。无疑TF-IDF优于自定义。
4 结论
IPC自动分类技术作为计算机辅助工具来使用,可为人们提供一种具有参考价值的分类信息,供使用者选择。本文所述分类方法是一种基于分类表和同义词相结合的方法,不依赖于历史信息也不受限于历史信息的不足,不需要大量训练数据的方法。其优点是:能将专利文献中的不同权重的高频词,通过同义词库的扩充,与分类表直接比对,不需要花费大量资源收集专利文献语料库,只需借助有限同义词植入来调整分类运算,来解决分类不收敛的问题。该方法在存储量和运算量方面属于轻量级的,且运算速度快,加工一篇文献不到1秒,需要的资源不多。通过植入同义词或上位词调整权重,可以改变某些分类的发散或收敛方向,来达到逐一捕获主ipc和每一个相关ipc的目的。可作为半自动的简单灵活的分类捕捉工具。其缺点是算法受限于同义词库的建立,取决于植入同义词的经验,调整植入词,改变某些分类的发散或收敛方向,需要使用者自己凭经验来掌握和控制。初期需花费一些时间将分类表作一个初步同义词整理,然后通过工作进行中不断来扩充同义词库,使之趋于完善。该方法对CPC自动分类的实现有借鉴意义。
参考文献
中文网页自动分类构架设计 篇4
关键词:网页自动分类,分词技术,特征抽取
1. 引言
本论文从网页分类方面对万维网上的数据处理技术进行了研究。对中文网页自动分类技术这一具有重要理论意义和广阔应用前景的课题进行了研究和探索。
研究内容主要包括:设计了一种中文网页自动分类技术模型, 应用该模型设计的中文网页分类器能够满足处理大规模中文网页的要求。
2. 技术模型架构
为了能够有效地组织和分析海量的Web信息资源, 帮助用户迅速地获取其所需要的知识和信息, 人们希望能够按照其内容实现对网页的自动分类。
每一个网页分类系统都是建立在一定的文档分类方法基础之上。准确、高效的文档属性选择和文档分类方法通常会不断出现, 因此, 一个文档分类系统应该具备功能和性能上的可扩展性, 这就要求文档分类系统建立在模块化、可扩展的体系结构基础之上。图1所示为我们设计的中文Web网页自动分类技术的体系结构。
3. 数据库部件和功能模块组成
整个技术的主要功能由下列数据库部件和功能模块组成:
(1) 分类模型库
基于机器学习的分类通常由训练和分类两个阶段组成, 在训练阶段, 从训练文本学习分类知识, 建立分类器;在分类阶段, 根据分类器将输入文本分到最可能的类别中。根据训练样本集中的文本数据和具体的属性选择方法与分类方法, 计算得到的分类模型数据, 都存于该库中。将属性选择方法和分类方法的任何一种组合都作为一个分类模型。
(2) 未标记网页库
保存大量的未标记网页数据。当训练集中的样本数量较少时, 可以通过未标记网页的利用方法从该库中选取一定的未标记网页加入到小规模的训练集中, 从而弥补训练样本的不足, 减少人工标记大量网页的需要。
(3) 特征抽取模块
负责从原始Web文档中提取特征信息。首先对网页进行页面分析, 提取出其中的文本信息, 经过分词程序分词后, 去除停用词 (如“的”、“和”等虚词) , 然后统计单词在当前网页中的词频 (同时考虑单词出现在网页中的位置) 。
构成文本的词汇数量是相当大的, 所以, 表示文本的向量空间的维数也相当大, 可以达到几万维。因此我们需要进行维数压缩的工作, 这样做的目的主要有两个:第一, 为了提高程序的效率, 提高运行速度;第二, 所有几万个词汇对文本分类的意义是不同的。
某些稀有词在全部训练文档中出现的次数都很少, 对于分类的意义不大, 应予以滤除。我们设定一个出线次数阈值, 如果某个特征项在训练集中的总出现次数小于该值, 则滤除该特征项。
(4) 文档属性选择模块
负责实施分类属性的选择, 提供各种用于文档属性选择的方法, 它实际上是一个算法库。该模块规定统一的属性选择算法接口, 以便于文档分类属性选择算法的增加与删减。
一些通用的、各个类别都普遍存在的词汇对分类的贡献小;在某特定类中出现比重大而在其它类中出现比重小的词汇对文本分类的贡献大。为了提高分类精度, 对于每一类, 我们应去除那些表现力不强的词汇, 筛选出针对该类的特征项集合, 存在多种筛选特征项的算法, 如前面介绍的文档频率、信息增益、χ2统计、互信息等。
(5) 文档分类方法 (模型) 模块
和前一个模块类似, 这是一个分类算法库。目前实现的分类算法有基本SVM算法、决策SVM算法。根据实际的研究和使用需要, 我们可以在该模块中补充新的分类算法。
(6) 分类模型训练模块
也就是学习模块, 即根据训练文档、属性选择方法和分类算法推算分类模型。
(7) 分类测试模块
对预处理后的Web文档进行分类处理。
(8) 输入预处理模块
对待分类的输入Web文档中进行预处理, 从文档中提取出文本信息, 滤掉对分类无用的非文本信息, 通过分词提取出网页中的有效特征, 并进行权值计算。
(9) 性能评估模块
通过对测试结果的分析, 进而评估分类器的性能。
(10) 输出表现模块
输出分类结果和指标。
(11) 训练样本集维护模块
负责增加和删减训练样本集中的文档。
(12) 分类控制模块
对整个分类过程进行控制, 包括设置分类训练和测试的参数、确定文档属性的选择方法、确定分类方法以及设置利用未标记数据的参数等。
(13) 人机界面
提供一个Web网页分类的交互环境。
(14) 未标记网页利用模块
该模块可以在少量的训练样本条件下, 从未标记网页数据库中抽取出部分网页补充到训练集中, 从而提高分类器性能, 减少人工标记网页的数量。
上述体系结构的突出优点是:
a.模块化的系统结构, 使得文档分类过程中的取词、选词等主要步骤相对独立, 各个步产生的中间结果可以重用, 从而提高效率。
b.文档属性选择和分类方法的分离, 便于属性选择方法和分类方法之间的优化组合。
c.文档属性选择方法库和分类方法库的使用, 有利于分档分类系统的扩展和完善。
d.未标记网页利用模块可以有效地减少人工标记大量的训练样本的需要。
4. 结束语
设计中文Web网页自动分类技术, 该技术综合了本文在中文网页分类技术方面的研究, 应用所研究的分类法提高分类器性能方面的工作, 根据实际的研究和使用需要做出设计。采用模块化的结构, 使得文档分类过程中的主要步骤相对独立, 各个步骤产生的中间结果可以重用, 从而提高了效率。文档属性选择方法库和分类方法库的使用, 也有利于文档分类技术的扩展和完善。
参考文献
[1]周水庚, 关佶红, 胡运发, 周傲英.一个无需辞典支持和切词处理的中文文档分类系统.计算机研究与发展, 2001, 38 (7) ;
数据源自动分类 篇5
数据挖掘技术[1,2]是一门主要由统计学和人工智能组成的交叉学科。它的主要任务是从海量的数据集中提取隐藏的、有用的信息。目前, 数据挖掘技术已被广泛应用于电信、金融、网络安全、天气预报等领域[3]。随着信息技术的广泛应用, 数据在不断地以几何级数增长, 而且不少数据以数据流 (datastream) 的形式存在。如何处理这些数据流, 提取有价值信息已经成为了数据挖掘领域新的挑战。
数据流模型可以表示成, 其中t为时间戳并且单调递增, at为t时间到达的数据。数据流模型在以下几个方面不同于传统的数据模型:
1) 数据高速到达, 实时性要求高;
2) 数据的到达顺序无法控制;
3) 数据可能是无限多的, 数据流中的元素被处理后将被抛弃, 无法存档 (archive) 。
传统的数据挖掘技术要求数据全部保存在存储介质上, 因此不适用于数据流挖掘。由于数据流的无限性、实时性、连续性等特点, 数据流挖掘研究已经成为数据挖掘领域的研究热点。
在数据流挖掘过程中, 通常会在新到达的数据流中蕴含新的目标概念 (targetconcept) , 即概念漂移[4,5,6,7] (conceptdrift) 。这种随着时间而变化的目标概念给数据流的挖掘造成了极大的困难。为了解决这个问题由Wang等人[8]提出了一种利用加权的多个分类器挖掘概念漂移数据流的方法。该方法首先训练几个基础分类器 (比如C 4.5, RIPPER和贝叶斯等分类器) , 然后对分类器进行测试, 根据测试结果计算分类精度期望值, 依据精度期望值对各个分类器进行加权。Street等[9]提出了基于多分类器集成学习的概念漂移检测算法SEA。以上组合方法是目前比较流行的数据流挖掘算法。
SEA方法在更新集成分类器时总是把权值最低 (即:已经过时的分类器) 的单体分类器直接抛弃, 轻易地放弃了已经掌握的知识, 以后再遇到相同概念的时候需要重新训练学习, 导致算法效率不高。
如果集成分类器保留学习过的概念, 以后再遇到此概念时就不必重新训练, 节省训练时间。在概念重复频率高的情况下, 这种思想能够提高数据流分类算法的效率。
1概念重复出现的数据流分类模型和算法设计
1.1概念重复出现的数据流模型
数据流中蕴含的概念是随着时间而变化的。有一种数据流模型, 如图1所示, 它的最新到达的数据流中蕴含的概念是以前出现过的目标概念。
图1中, t为时间戳, 可以在时间轴上无限延伸。ai为t=i时到达的数据集, 可以为单个数据, 也可以为数据序列。如果在时间段宽度d内到达的数据集都属于同一个概念范畴, 则该概念的宽度为d。图1中, 时间段i<t<i+d内到达的数据集属于概 (1) 念范畴;时间段j<t<j+d内到达的数据集属于概念 (2) 范畴;时间段k<t<k+d内到达的数据集属于概念 (3) 范畴, 与时间段i<t<i+d内到达的数据集属于同一概念范畴。在概念 (1) 在时间段i<t<i+d第一次出现时, 集成分类器对其进行了学习, 如果在概念 (1) 出现时需要更新分类器, 这时把概念 (1) 的分类器抛弃了, 概念 (1) 第二次出现时就需要重新训练分类器, 造成了极大的资源浪费。
1.2算法设计
在以往的集成分类方法的基础上, 我们设计并实现了名为ECRRC的算法。首先采用ID 4算法作为基础分类算法, 利用集成分类器技术求出全局结果。一旦数据流中发生概念漂移, 集成分类器会自动更新, ECRRC把被抛弃的概念保存到外存中。在数据流中概念重复出现时, 算法读取已经学习了的概念用于数据流分类, 从而节省了重新训练的时间, 提高了执行效率。分类器更新过程如下:
e为新训练出来的单体分类器, En为集成分类器, En的容量是En能够装载的最大分类数量, w为En中单体分类器的权值 (w表示分类器概念与当前数据流蕴含的概念的相似程度) , 如图2。
算法给出集成分类器的更新过程。关于基础分类器的权值衰减过程, M ID 4算法[9]以及SEA算法已经有良好的表现了。针对概念重复出现的数据流, 我们在这里没有设定阈值用来删除基础分类器, 而是选择了权值w最小的删除, 保证每次只删除一个基础分类器, 尽量多保存目标概念。并将这个被集成分类器删除了的基础分类器保存到外存中去。
集成分类器中保存的是最新流行的概念, 对于旧的概念, 我们使用另外附加一定数量的基础分类器。这些基础分类器中的概念随机地从外存中调入到内存中。
同时维护一个能够描述集成分类器中附加分类器所占的比率的因子rate, 这个数值根据概念重复的频度成正比, 这代表着如果当前数据段中概念重复出现的情况比较严重, 那么就相应地增加附加分类器的比率。
有一种特殊的情况, 就是在提取概念到外存时, 我们以前已经提取过同样的概念了, 算法依然会将此概念保存到外存中。这样做的原因是:
首先, 存储一个概念不需要太大的系统资源, 一颗普通的二叉树只有几KB的大小。
其次, 由于我们后期在外存中提取概念是随机提取的, 对于同样的概念保存的次数越多, 提取此概念的概率也就越大, 也就是说数据流中隐含该概念的数据量大, 进而算法找到正确的基础分类器的几率也提高了。
在提取概念并保存到外存的过程中。我们提取的概念是一颗二叉树, 这颗树可以被还原到集成分类器中。这样不必存储数据流数据也能保存已经学习过的知识。首先求出树的先序序列, 再保存这个序列到外存, 以后提取的时候可以使用这个先序序列建立二叉树的二叉链表。
2实验
我们使用SEA数据集模拟概念漂移, 其结构为 (f0, f1, f2, f3, f4, f5, f6, f7, f8, f9, C}其中f是条件属性 (取值范围1~10) , C是决策属性 (例如, 当样本属性满足条件f1+f2<p时, 属于class1, 否则属于class2) 。产生10 000条样本, 其中包含8个概念, 有3个概念分周期地重复出现在数据流中。因此, 它可以被用来评价算法处理概念重复数据流的能力。
为了使用标准的SEA概念来衡量ECRRC算法和SEA算法, 使用了SEA数据集。数据块D=500, 分别在无噪音和含有5%噪音两种情况下进行实验。集成分类器含有6个基础分类器, 附加2个保存旧概念的基础分类器。
实验方案:在相同的数据集上测试算法, 在特定的数据段上提高概念变化的频度迫使集成分类器进行更新。这个数据段中会重复出现以前有可能被集成分类器抛弃的概念, 用以测试算法处理概念重复出现的数据流能力。
两个算法的实验结果对比如图3、图4所示。在无噪音情况下ECRRC算法与SEA的准确率基本相同。在数据段分别为100到150, 250到300阶段, 350到400阶段 (在这3个阶段数据流中发生较多的概念漂移, 并且概念重复出现的概率加大。ECRRC捕获到一些重复概念, 因而准确率明显优越于SEA算法。
在5%噪音情况下, ECRRC算法表现出了较好的抗噪性, 另外在150到250的位置数据流发生概念漂移的频率骤然升高导致准确率下降, 在这个阶段ECRRC捕获到了少量旧概念, 2种算法表现相差不大。在350到450的位置, 数据流发生概念漂移的频率变得更大, 概念重复出现的频率更高, 由于ECRRC捕获到了较多的旧概念, 所以准确率明显高于SEA。
3结论
本文提出了一种使用集成分类器方法提取并保存数据流中所出现过概念的方法。实验表明, 针对概念重复出现频度较高的数据流, 该算法有较好的适应性。
参考文献
[1]Han J, Kamber M.Data mining:concept and techniques.2ed.San Fransisco, CA.Higher Education Press, 2001:1—7
[2]Tan Pang ning, Sreinbach M, Kumar V.数据挖掘导论.范明, 范宏建, 译.北京:北京大学出版社, 2006
[3]王涛, 李周军, 颜跃进, 等.数据流挖掘分类技术综述.计算机研究与发展, 2007;44 (11) :1809—1815
[4]Widmer G, Kubat M.Learning in the presence of concept drift and hidden contexts.Machine Learning, 1996;23 (1) :69—101
[5]金激清, 钱卫宁, 周傲英.流数据分析与管理综述.软件学报, 2004;15 (8) :1172—1181
[6]史金成, 胡学刚.数据流挖掘研究.计算机技术与发展, 2007;17 (11) :11—14
[7]Domingos P, Hulten G.Mining high—speed data streams.Proc of ACM SIGKDD Inter Conference Knowledge Discovery in Databases (KDD’00) , 2000:71—80
[8]Wang H, Yin J, Pei J.Suppressing model over-fitting in mining con-cept-drifting data streams.SIGKDD’06.Philadelphia.[s.n.], 2006:736—741
地质数据特点与分类 篇6
1 地质数据特点
多样性指地质数据的来源、格式、表达方式和量纲等的多样性, 多样性决定了数据处理需要采用不同的方式, 但最终应该保证空间数据表达形式上的统一。
不确定性表现为一部分数据的精度低, 难以精确表达模型;而数据采样的随机性往往导致仅能够获取研究区域内少量或片面的原始数据, 不足以刻画区域的空间地质变化特征;另外, 由于定性数据在地质数据的描述中占有较大的比例, 从而影响地质数学模型、几何模型的正确建立, 存在多解性因素。
复杂性主要指地质体空间几何形态的千变万化, 尤其是不连续性以及存在多值面的地质现象, 使三维建模的相应算法的复杂度增加、自动性减弱、费力又耗时。
2 地质数据分类
地质数据是地球在长期演变过程中经历的各种地质作用的记录, 是地质意义的一种表达形式。传统的地质数据包括:地质图、构造图、岩浆岩石图、矿产图、地质灾害图和岩相图等及与之相应的地层、古生物、构造和岩性资料等。还包括各种物化探资料, 如:重、磁、电测量资料, 以及地震资料、地球化学勘探资料, 各种钻井资料等。根据研究方法、目的、原则的不同, 数据分类方法也不一样。
2.1 按空间分布划分, 主要包括地表空间数据和地下空间数据两个方面
地表空间数据主要是反映地质研究区域的地形信息、地质露头信息及地质构造在地表的分布等。地表空间数据可以是通过遥感手段获取的遥感数据, 它真实地记录了地表的综合景观特征和各种地物的个体特征。从遥感影像上既可以了解地质勘探区地表的总体轮廓, 又可以识别各种地物的性质、特点及其相互联系。地表空间数据还可以通过传统的测量方法获得, 如:使用摄影测量、GPS测量或常规仪器测量所获得的地形数据和地质露头数据。其中, 地形数据主要包括地形特征点的坐标与高程、地形图等;而地质露头数据是地质填图过程中获得的有关露头的空间位置及其属性。
地下空间数据主要来源于勘探工程、物探和化探的结果。勘探工程根据其开挖深度的不同可以分为地表轻型勘探工程和地下重型勘探工程。地表轻型勘探工程 (如:探槽、浅井等) 主要用来揭露浅部的基岩、构造、破碎带、矿体和矿化带等。它所获取的空间数据包括: (1) 工程特征点坐标、方位、坡角; (2) 岩层、断层或矿化带走向、倾向、倾角等; (3) 岩性和品位数据; (4) 探槽和浅井的图形描述数据。地下重型勘探工程 (如:钻孔、坑道等) 主要用来揭露地下深部岩石、矿体或构造的空间分布。所获取的数据主要包括: (1) 钻孔或坑道开孔 (坑) 的坐标、方位、倾角等工程起始位置数据; (2) 钻孔或坑道所揭露的岩石的岩性、产状, 构造的性质、产状以及矿化带或矿体的性质、产状; (3) 采样样品的分析数据; (4) 各种反映勘探工程的图件, 如钻孔柱状图、坑道编录图、采样位置图、工程分布图和中段平面图等。
2.2 按信息来源划分, 主要包括采样数据和指示性数据。
Kelk认为采样数据是指对地质体的形态、物质组成、内部特征及空间关系直接测定所获得的数据。如通过地面或者钻孔采样、地形测量数据、是直接观察或测试分析所获得的结果, 这些数据一般可信度较高。而指示性数据则指非直接量测所获得的数据。它是对原始数据加工、处理得到的结果, 如遥感、航空测量和地球物理方法所获得的信息。从某种意义上, 它是模糊数据, 存在着多解性。
2.3 按准确性划分, 包括“硬数据”和“软数据”
用各种地质手段和方法所获得的原始采样数据和部分指示性数据尽管存在着一定误差, 但总体上数据精度较高, 可看作“硬数据”, 多为确定性数据, 如钻孔数据。而根据已有数据, 结合专家经验知识, 通过分析、解释、推断、内插和外推所得到的各种解释数据, 其精度或可靠性较差, 可看作“软数据”, 多为不确定性数据, 如:通过对遥感、地球物理等指示性数据解释, 所获得的地质对象的基本特征数据;根据钻孔等数据, 对钻孔之间地质对象基本特征的推断数据;对实际观测点数据进行内插、外推等手段所获得的数据。
2.4 按数据获取方式和处理方法的不同, 地质数据可划分为显示数据、隐式数据、编译数据和辅助数据
(1) 显示数据, 如岩芯钻井数据、属性数据等, 这些数据基本上是通过直接观测、测量而得到的原始采样数据, 具有比较高的精度即准确性强, 是三维建模系统的可直接利用数据。 (2) 隐式数据, 如地质图、地形图、二维或三维剖面、遥感数据和物探数据等, 这些数据也属于原始地质数据, 但随着图形图像的比例尺或分辨率的差异, 数据的精度也不同。这些数据无法直接作为三维建模的信息输入源, 必须经过矢量化、网格化等操作后才能使用。 (3) 编译数据, 这些数据都是通过不同的软件对隐式数据进行重采样而获得的, 其精度依赖于原始数据的精度以及软件工具的性能;这些数据不是原始地质数据, 但可以作为实体建模的输入数据。 (4) 辅助数据, 三维建模的辅助性数据, 如纹理使用的二维或三维的图像等。
3 数据处理策略
根据地质数据的特点及获取方式的不同, 模型建立的初始阶段多源数据集成包括3个步骤:
3.1 数据预处理
主要是指对通过地表地质调查、遥感、地震勘测及摄影测量等技术手段获得的原始数据进行预处理。由于岩芯、属性等显示数据无需进行进一步的加工处理, 可利用Acces、Oracle等数据库进行数据组织和存储管理。使用现有的硬件设备如激光扫描仪将地质图、地形图等隐式数据传送到计算机内, 以文件形式存储。
3.2 数据加工与解释
主要任务是通过二维GIS、CAD及其他软件完成编译所有有效数据的工作, 涉及对复杂的地层、矿体及地质结构的识别、解译、描述及定位等, 即通过软件工具对有效的隐式数据进行加工、解释得到编译数据, 为地质模型的建立奠定基础。典型的实体建模输入数据包括:来自GIS系统的二维地图、数字高程模型;来自地震解释软件或其他软件的剖面图;利用CAD工具交互式执行2.5D点、线等编辑操作, 从区域观测数据、摄影测量数据等中抽取出来的矢量元素;利用网格处理工具生成的地球物理数据网格、地球化学数据网格和矿体数据网格等。
3.3 数据集成
主要任务是把所有有效的编译数据通过数据转换接口变成实体建模可接受的输入数据格式, 同时保证空间几何形状及其各种复杂三维空间对象间关系的表达和操作的一致性。
摘要:由于自然界地质现象复杂多变、存在大量不确定因素, 从而决定了反映地质现象的地质数据所具有的特点为:多样性、不确定性和复杂性。根据研究方法、目的、原则的不同, 数据分类方法也不一样。
关键词:地质,数据,特点,分类
参考文献
[1]关文革.基于超面-四面体模型的三维地质建模研究[M].徐州:中国矿业大学, 2006.[1]关文革.基于超面-四面体模型的三维地质建模研究[M].徐州:中国矿业大学, 2006.
文件自动分类管理软件的开发 篇7
随着时间的推移, 存储在计算机中的文件类型越来越复杂、数量也越积越多, 造成了文件的庞大冗余, 为日后的使用、查看、整理带来越来越多的困难。这几十年来, 计算机技术飞速发展, 越来越多的应用程序和信息系统被开发、被完善, 可是针对文件管理的却少之又少。在微软开发的windows系统中自动集成的一个“文件搜索”的应用功能, 但这没有针对性, 不能满足人们对文件特殊操作的需求。windows系统中的“文件搜索”使用耗时, 模糊查找功能薄弱, 人们在日常生活中基本不用这个“文件搜索”。因此, 为满足针对有用文件的归类、合并、删除的管理, 设计一款帮助人们自动、快捷、简便地处理文件的工具“文件自动分类管理软件系统”成为迫切需要。
2 系统目标与分析
2.1 功能目标
文件自动分类管理软件系统将以用户需求为导向, 在目标存储空间里, 对磁盘创建索引, 记录磁盘内文件分布信息, 删除重复的、空的文件和文件夹;自动快速地比对文件, 分析文件相似度, 确认文件冗余情况, 而后合并目标文件或文件夹。
本系统将成为Windows的一个绿色插件, 可以嵌入到操作系统或者单独使用。
2.2 系统分析
创建索引:遍历各个存储器 (C、D、E、F等系统可以管理的盘符) 的全部文件, 包括各种类型、各个大小、不同产生日期的文件, 将文件名和文件绝对路径记录在特定数据文件中, 使用户可以通过查阅索引文件了解全系统文件的分布情况。同时, 索引文件也为查找文件和删除文件提供快捷通道。
查找文件:用户输入文件名、文件类型或其它关键词, 遍历索引文件, 查找相匹配的文件, 返回相匹配的文件的绝对路径。
删除文件:用户输入文件名、文件类型或其它关键词, 遍历索引文件, 查找相匹配的文件, 用户从返回列表中选择确定删除的文件。
检查文件:根据用户选择的目标磁盘或文件夹, 进行检查是否有相同文件 (文件名相同) , 使用户初步了解目标磁盘或文件夹中文件的冗余情况。
对比文件:用户输入两个文件的绝对路径, 比对两个文件中数据内容, 查看是否相同, 比如文件的大小、产生日期等属性是否相同而进一步确定文件是否冗余。
模块分析是描述系统需求的一个过程, 需要将需求分析中感性描述进行抽象, 提取出要实现的功能, 这是整个系统开发的一个关键过程。分析清楚各个功能之后, 分层次将其归纳与整理, 形成个层次的功能结构图, 然后自上而下的逐层归纳与整理, 形成以系统目标为核心的整个系统的功能结构图。本软件系统包括创建索引、查找文件、检查文件、比对文件、删除文件和帮助等功能模块, 如图1所示。
3 软件开发
软件开发过程包含了系统设计过程, 就是在保证实现逻辑模型的基础上, 尽可能提高系统的各项指标, 即系统的工作效率、可靠性、工作质量、可变性与经济性等。本软件采用了结构化设计方法 (SD, Structured Design) , 与分析阶段的结构化设计方法衔接起来使用。遵循系统性、灵活性、可靠性等原则, 按照从概要设计到详细设计, 从粗到细、从总体到局部的过程进行。进一步实现系统分析阶段提出的系统模型, 详细的确定系统的结构、应用软件的开发方法及内容。
3.1 技术路线
本软件系统采用Java语言进行开发, 主要考虑了三个原因:一.JAVA是面向对象的开发工具, 它集成了对象及接口的属性与方法, 提供了简单的类机制及动态的接口模型。使程序编写过程简便了许多。二.JAVA的稳健性。在编译和运行时, 它都要对可能出现的一些问题进行检查, 以消除错误的产生。三.JAVA的跨平台性。Java语言编写的程序在不同的平台之间具有良好的可移植性和轻便性。虽然开发是基于windows XP操作系统下进行的, 但软件可以在各种操作系统下运行, 满足软件系统推广使用的需要。
3.2 用户接口
为了适应各种水平层次人员的方便使用, 系统中设计了友好性的人机交换界面, 即用户接口。具有人性化、人体工学的特性。技术上选用了java.awt包的Grid Bag Layout类, 该设计模式能够设计出复杂而丰富的用户界面。使用时用户进入主界面窗口, 看到有图1所述功能的六个命令按钮组成的命令按钮组, 用户根据自己的需求选择按钮, 点击进入相应子界面。
3.3 几项重要设计
(一) 文件目录树。它是直观管理软件的工具, 可以使用滚动条。添加JAVA中Continer类能够简单地实现该方法。
(二) 文件权限管理。有些隐私文件, 用户需要对他人保密, 现在更多用户选择把文件放在复杂的磁盘目录下。这种方法不但给用户查找文件带来麻烦, 有时甚至会被他人无意发现, 这就显得保密措施的不合理性, 本系统采用了动态加密方法。根据文件的相关属性, 比如标题、时间等属性来自动产生密码, 也可以由用户设定密码生成规则, 同时, 也为用户提供了自己设定密码功能, 这样文件的保密性相对地比较好了。所有的文件处理过程都引入了java.io包里的File类, 如Setwritable、Setread Only等。
(三) 文件拷贝和文件删除。它们是文件管理中必需的模块。文件的删除直接使用delete方法就行, 比较简单。但对于文件拷贝, 需要用到java.io包, 设计两个实例对象, 利用数据流的形式可以快捷的文件拷贝。
(四) 数据存储。为了提高对磁盘文件查找和删除的效率, 需要创建一个全磁盘索引文件用于查询文件的数据存储。操作过程中软件系统对所有的可用磁盘进行扫描, 建立索引文件 (将文件的路径、名称、大小、属性等信息保存到该文件中) , 删除文件和查找文件时也将利用该索引文件, 以减少时间。
使用链表作为磁盘索引的存贮形式, 存贮文件的名称和绝对路径信息。软件运行中存储与读取的数据, 也可采用链表或动态数组的形式存储。链表是以二进制形式存储, 占用内存较小, 适用于较大数据量、提高程序运行效率;动态数组相对占用较大内存, 易操作, 数据量小的操作较方便。根据不同类型的数据采用不同形式存储。
另外, 索引数据 (链表形式) 可按需求存储到txt文本文件中或数据库中。txt文本文件特点是简单方便、普适性好, 数据库文件特点是必须有规则地存贮、事先建立索引功能, 才能在使用时快捷地读取数据。考虑到不是所有用户都安装了数据库系统, 所以本软件的索引数据不采用数据库存贮而利用文本文件进行储存。
数据存储过程中还需要对数据进行排序, 满足建立索引的需要。排序分为动态排序和静态排序, 动态排序是在建立索引文件期间, 扫描每一个文件存入索引文件的同时, 类似插入排序方法插入索引数据, 同时进行排序。这样磁盘遍历结束时便生成了一个有序的索引文件;静态排序方法就是等系统收集到全部文件数据后再进行排序。两种排序方法, 对于数据量大的操作来说, 很明显静态排序方法处理的速度比较动态排序方法慢, 花费的时间大约是动态排序方法的两倍。本软件中采用动态排序的插入排序方法, 在建立索引文件时利用插入法, 将数据插入到排序后的位置生成一个有序链表。
4 结论
人们利用文件自动分类处理软件可以提高操纵计算机的灵活性和方便性, 将来在文件版本管理方面也会起到帮助作用;本软件的功能和设计技术今后也可以应用到云存储领域。
参考文献
[1]张帆.Java范例开发大全[M].北京:清华大学出版社, 2010.