增量方法

2024-05-07

增量方法(精选九篇)

增量方法 篇1

关键词:交通运输系统工程,导航电子地图,增量更新,拓扑维护

导航电子地图数据库中数据量通常都比较庞大而且对数据的现势性要求很高,同时中心端和车载端由于受到通信的限制,地图数据的更新必须考虑传输数据量要小,才能实现传递,这就对增量更新模式提出了要求。增量式更新只带来与它相关的那部分路网拓扑关系的变化,只需在增量更新过程中注意局部拓扑关系的维护与重构,将会明显地提高编辑空间数据的效率。国外已经有组织的开展了这方面的研究,欧洲的ActMap项目是由欧洲道路交通信息实施协调组织(European Road Transport Telematics Implementation Coordination Organization,ERTICO)引导几大汽车厂商和几大地图厂商以及一些导航厂商联合开发的1个系统。在ActMap项目中,提出了一系列有创造性的机制和技术方法用来实现导航电子地图的在线增量式更新[1]。国内车辆导航系统中多采用更换存储介质或重写数据的更新方式来更新地图数据。增量式更新方法与离线版本式的更新方法相比较,导航数据母库的存储容量、数据冗余度、应用数据库更新效率和更新性价比等方面都具有明显的优势,是未来导航电子地图更新的主流趋势。而对于传输费用,离线版本式更新方法采用的是分发替换CD/DVD方式,费用较高,且不可二次利用。而增量式更新方法采用的是通过无线传输通道发送的。随着无线通信技术的发展,传输费用必将随之减少,这也是在线增量式更新的1个很大优势。无论是对于生产导航电子地图数据的数据厂商,还是对于使用导航电子地图的车载用户而言,增量式更新方法将使得更新效率和更新性价比得到迅速提高,从而使其成为导航电子地图数据更新的主要方法。因此本文针对导航数据库的特点,基于支持拓扑更新的拓扑数据结构,提出了具体增量更新操作的方法,并同时实现了对路网拓扑关系的维护,从而提高了导航数据的现势性。

1 支持增量更新的拓扑结构数据存储

用邻接矩阵存储交通路网为稀疏矩阵,占用空间大,存储效率低,而采用邻接表则不会有这种问题,它可以有效表现大型的交通网络。另外,由于邻接表是采用链表实现的,而链表对于元素的增删操作相当方便,这在网络的动态调整中极为有用[2]。所以本文中网络拓扑结构的数据采用邻接表结构,该表示法使用2个数组来表示网络的拓扑关系。1个数组存储和弧相关的数据,称之为弧段数组;另1个数组存储和结点相关的数据,称之为结点数组。网络中所有的弧以起点为顺序在数组中排列,起点相同的弧按指向结点ID顺序排列。弧段数组类似于邻接矩阵的压缩存储方式,即1条弧以2结点表示。弧的属性数据,如距离、权值等,保存在弧段属性表中。结点数组相当于1个基于邻接表结构的索引表,对于结点数组的邻接边的列数,本文采用结点最大出度数确定,如图1所示,图中结点的最大出度为3,则结点数组中弧段部分为3列,在结点数组中,第i个元素存储的是以结点i为起点的所有弧段ID[3]。

2 更新操作与拓扑维护

在进行增量更新过程中,常常引起拓扑关系的改变。所以,在修改空间数据时,一定要注意拓扑关系的维护,每次改动数据后都要确定是否需要进行拓扑重构。由于图幅中的数据量通常都比较庞大,建立整个图幅的拓扑关系仍是比较复杂和费时的工作,如果每次数据变动后都对所有的拓扑关系进行重构,势必造成大量的重复性工作,降低系统的效率;另一方面,在编辑操作中的修改一般都是局部的改动,它只带来与它相关的那部分实体之间拓扑关系的变化,对大量的其它实体间的拓扑关系没有任何影响,所以,如果能够在数据修改后只对部分受影响的拓扑关系进行局部更新,将会明显地提高编辑空间数据的效率。

2.1 导航电子地图数据库增量更新基本框架

中心端服务器存储管理更新数据源,根据客户端需求生成增量数据包,通过无线网络发送到车载端。在车载端,导航数据以文件形式存储,车载端接收到数据包通过解析转化,把增量数据合并到本地导航数据文件中,从而完成了整个导航电子地图数据库的动态更新过程,更新后的地图数据将能更好的支持导航系统的功能[4]。增量更新服务的基本框架如图2所示。

2.2 增量更新操作及拓扑维护

导航地图的更新主要体现在道路的更新上以

及兴趣点信息的更新上。道路的更新主要表现为道路的新建,道路的拓宽、若干道路的合并以及道路的废弃等,而道路的拓宽和若干道路的合并实际上只是道路路段属性的变化。道路的新建和删除则需要考虑新增和删除道路对原有导航地图数据所产生的影响。具体更新操作如下:

1) 添加路段。指原有导航地图中添加了1条路段,由于导航地图中存在结点、路段和区域面,因此添加的路段很有可能和他们存在相交。由于本文中采取连通拓扑只定义边和结点之间的拓扑关系,不定义面和边之间的拓扑关系,因此添加路段可以分为以下2种情况处理:当路段不与原有路段相交时,首先判断新加路段的首结点是否与已存在的某个结点重合:若重合,在该结点邻接路段中添加该路段的标志,同时弧段表里增加新路段ID和首尾结点ID;若没有结点与新弧的首结点重合,则在新弧的首结点地理位置建立新结点,并把新弧的标志加到该结点的邻接路段中,同时弧段表里增加新路段ID和首尾结点ID。当新路段与原有路段相交时则首先应该进行路段拆分操作,路段拆分完成后,再添加新路段,则就变成了新路段不与原有道路相交的情况了。就可以直接参照上述的方法进行更新操作了。

2) 删除路段。指删除任意1条已存在的路段,删除路段操作相对简单,主要是从地图数据和一体化时空数据表中删除对应路段的相关数据。由于删除路段后有可能存在的路段合并操作。首先从地图的道路段表以及一体化数据库的道路路段表中删除关于被删路段的记录,以及删除对应删除路段ID所对应的数据库数据,并从被删路段的首结点的邻接路段中删除该路段的信息。若图幅中不允许存在假结点,则还要判断删去路段后,被删路段的首结点和尾结点的出入度是否全为1,若是,则删除假结点,连接2条路段,参见合并路段操作。

3) 合并路段。合并路段是指如果某个结点只与2条路段相连,可将2条路段连成1条,删去中间的结点。合并路段的前提条件是:2条被连接的路段有公共结点且此结点只与这2条路段相连。若不满足条件则不能进行连接。合并路段是拆分路段的反操作,主要更新步骤如下:删去中间结点的信息;根据所连接的2条路段的数据建立新路段,新路段的起点是以中间结点为尾结点的原路段的起点,新路段的尾结点是以中间结点为起点的原有路段的尾结点;同时将以中间结点为尾结点的路段的首结点邻接路段ID更新为新路段ID:删除与被连接的2条路段相关的信息。

4) 拆分路段。拆分路段是指在某条路段的中间位置添加1个结点,即将1条路分成2段。拆分路段主要应用于新加路段后,新加路段与原有路段存在交点,因而要将原有路段拆分成2条路段。拆分路段的更新主要包括结点的添加和路段的改变。步骤如下:在路段的分裂点处建立新结点,原路段分成2条新路段,建立新路段的记录,第1条新路段的首结点为原路段的首结点,尾结点为新结,第2条新路段的首结点为新结点,尾结点为原路段的尾结点,更新记录中一定要对新增的路段ID编号进行记录,以防止以后增加新路段ID发生冲突。接着把产生的第2条新路段加入新结点的邻接路段中,将产生的第1条新路段加入到原路段起点的邻接路段中,并删除与被分裂路段相关的信息。

3 增量更新数据包格式

增量更新数据包是中心端在完成增量更新操作以后,生成的下发给下方车载终端的增量更新地图数据。根据以上增量更新的类型以及处理方式,增量更新数据的数据包通过XML可扩展标记语言的形式来完成[5,6]。

整体设计结构如下:

-<UpdateOperation Operation= string,

Category=String>

-<LinkFeature FeatureID=double>

<Update>List</Update>

-</LinkFeature>

-<PointFeature FeatureID=double>

<Update>List</Update>

-</PointFeature>

-<UpdateOperation>

<ModifyID>double</ModifyID>

<LinkID>string</ LinkID >

<ConnectLinkID>double</ConnectLinkID>

<RoadCondit>int</RoadCondit>

<NodeID>double<NodeID>

<Coordinates>double</Coordinates>

XML语句解析:

UpdateOperation为操作类别项,参数Operation定义为string,内容可选为“Add”、“Modify”“Delete”,分别代表对数据库中写入、修改和删除的内容。参数Category定义为String,内容可选为“Link”,“Node”,分别对应了路段和结点属性的更新。

UpdateOperation项中包含LinkFeature和PointFeature2项,代表数据库中更新的路段和结点信息,分别对应写入相应的路段和结点数据表中。

Update项为更新的内容,由List项表示;List项为多变项,共有<ModifyID>、<LinkID>、<ConnectLinkID>、<RoadCondit>、<NodeID>、<Coordinates>等子项构成。

<ModifyID>为新的ID编号,当更新类型为Modify时,子项可用;

<LinkID>为新的路段ID编号,当更新类型为Modify和Add时,子项可用;

<ConnectLinkID>为与新加结点相邻的路段名称,当更新类型为Modify和Add,且<UpdateOperation>项为PointFeature项时可用;

<RoadCondit>为新加路段的道路等级,当更新类型为Modify和Add,且<UpdateOperation>项为LinkFeature项时可用;

<NodeID>为新加路段的前、后结点的ID号,当更新类型为Modify和Add,且<UpdateOperation>项为LinkFeature项时可用;

<Coordinates>为新加路段的所有组成结点的经纬度,当更新类型为Add,且<UpdateOperation>项为LinkFeature项时可用;

4 增量更新算法流程图

增量更新算法流程图如图3所示。整个流程包括中心端系统增量更新处理,生成增量更新数据包过程;以及车载端接受到增量更新数据包后完成的客户端地图增量更新操作。

5 试验与分析

中心平台交通数据库采用Oracle数据库管理,一体化时空数据库采用Oracle Spatial管理,中心平台地图显示及更新采用MapX完成[7],中心平台通信方案采用广播和GPRS方式。车载终端操作系统采用Windows CE嵌入式操作系统,GIS引擎使用eSuperMap嵌入式二次开发引擎,实现地图界面的显示与更新。软件系统开发使用VC编程语言[8]。增量更新前后的路径规划结果如图4、5所示。采用经典的Dijkstra算法完成最短路径分析,验证了增量更新后拓扑关系的可用性。以下是对数据完整性和数据一致性的分析:

1)数据完整性分析。在进行增量操作时,对于添加操作来说,需要做的处理就是将其中的要素逐一的添加到目标图层,由于其处理方式简单、清晰、方便,易于控制,所以在数据安全性可以保障,可以保证处理前后数据的完备性。而对于删除操作来说,处理起来要麻烦一些。为了保证数据删除操作的正确性和安全性,在执行每一次删除操作之前,都需要严格确认道路要素是否可以被删除。所以,在进行图形匹配时,采取多级筛选法来进行控制,只有在多级条件都满足时,才能认为该要素是可以删除的。经过测试发现,多级条件对删除操作可以进行安全、可靠的控制,满足多级条件的道路在客观上是可以进行删除的,而且是需要进行删除的。

2)数据一致性分析。更新事务是一系列更新操作的集合,在这组更新操作结束之后,导航电子地图仍能保持一致性。例如,新增加1条道路后,还需要处理该路段与周围其他路段之间的拓扑关系。更新事务依赖是指以更新事务作为导航电子地图更新的原子单位,如果1个更新事务包括有其他未处理的更新事务的结果,则需要将该事务所涉及到的所有其他未处理事务处理之后,才能对该事务进行处理。

6 结束语

本文中网络拓扑结构的数据采用邻接表结构,该表示法使用2个数组来表示网络的拓扑关系,数组的维数由结点的最大出度确定。这种结构既能高效的存储路网,也有利于元素的增删操作。详细介绍了路段新增、删除以及属性信息发生变化时,采用增量更新的方式进行了导航数据库的更新操作,并对拓扑关系进行了详细的维护,避免了拓扑重构,从技术上描述了更新流程。并对数据完整性和一致性进行了分析。从而把导航数据的增量更新作为车辆导航系统的基本功能来实现。

参考文献

[1]Ying Shen,Li Lin,Liu Xiaofei,et.al.Change-onlymodeling in navigation geo-databases[C].ISPRSWorkshop on Updating Geo-spatial Databases withImagery&The 5th ISPRS Workshop on DMGISs.August 28-29,2007:Urumchi,Xingjiang,China.547-551

[2]殷人昆,陶永雷.数据结构[M].北京:清华大学出版社,2002

[3]熊少非,赵丕锡,李军.Mapinfo中城市道路网络拓扑结构的自动生成[J].测控技术,2005,24(3):67-68

[4]宋莺.导航电子地图动态更新核心技术研究[J].计算机系统应用,2008(5):69-72

[5]Goldfarb C F,Prescod P.XML handbook[M].4thed.Beijing:Publishing House of Electronics Indus-try,2004

[6]栗松涛.XML程序设计[M].北京:清华大学出版社,2001

[7]李连营,李清泉.基于MapX的GIS应用开发[G].武汉:武汉大学出版社,2003

增量方法 篇2

一般大厂家都要求分销商全品项卖进产品,其实,厂家的产品分销指导只能作为参考,不能完全服从和操作。厂家大多都只是按KA、A、B、C、D这样的门店规模分类方法要求产品卖进,较少厂家能按居住人群消费特点分类卖进产品。实际上,每类人群,其消费都会有一些共同点的,我们只有按照其消费特性来卖进产品,才能让产品转换成商品的过程更加贴切、更加快速,更加适合消费者消费,商品周转率更高。下面就是本人按照人群消费特点进行分类卖进产品的一些总结介绍,以飨读者。

第一、按居民社区店卖进

在居民社区里,小店的特点主要是附近居民来消费,他们的消费特点是家庭装为主。比如洗衣液,他们一般选择大包装的,包装容量在一公升以上,很少会购买一些如360毫升的小包装。还有一个特点是家庭主妇们斤斤计较,对商品价格相当敏感,哪怕是一角钱,她们也会比较来比较去。她们常常为购买促销商品跑上几条街,等上一个礼拜的时间;她们也不惜时间跑上几家商店对比商品价格,所以说价格是很重要的销售购买要素,她们经常会拿回来一些超市DM做参考对照;其他人的购物意见也会左右这些家庭主妇们,总之,她们生怕买错和错过购买机会,

香港的百佳连锁和惠康连锁就常常针对师奶们喜欢贪便宜的习惯总是在礼拜五、礼拜六举行特价促销和绑赠促销活动,而活动的宗旨总是以家庭大包装为主。师奶们购买时也总是贪大的多,不管自己家庭能否真的派上用场,就是浪费了也不会觉得可惜。

第二、按学生学校店卖进

据了解,目前对90后最受广泛认同的描述是流行与时尚的领跑者,自主与创造的拥护者,娱乐与表现自我的狂热者。也许是90后学生有着不同的成长环境、思维方式、生活理念和消费特点。他们出手阔绰,喜欢尝试新事物,崇尚新奇消费,个性明显,具有超前消费的意识,在消费观念上更加大胆、勇于尝试。但是,很多人认为他们的消费特点是注重名牌,其实不然,根据笔者观察他们的消费特点是并非名牌而是喜欢不喜欢,不是贵与不贵而是合适不合适。比如Tempo得宝纸巾迷你装手帕纸就特受学生们的喜爱,他们不会因为一包手帕纸卖一块钱觉得是贵的,也不会因为他们自己还是学生,用的是家长的钱,所以从节约、节省钱这种角度去思考。

增量方法 篇3

关键词:MOGIS,导航,增量更新

GPS导航随着GPS技术的发展日渐成熟,导航市场不断扩大。随着大众化GPS应用时代的到来,给导航电子地图的时效性提出了新的要求。现今中国正处在高速发展时期,城乡建设日新月异,路网及周边信息都在不断地发生变化。面对市场需求的不断上升所带来的对导航电子地图时效性的压力,目前业内通用的卫星导航数据版本式更新方式已不能满足客户的需求,卫星导航数据增量更新技术应运而生[1]。

虽然国内外对增量更新进行了大量的研究,但是支持增量更新的导航数据模型、标准尚不完善,导航数据快速更新和维护方法亟待解决[2,3]。在当前国际国内导航环境下,如何根据最新外业采集数据和原有地图数据获取增量数据,借助现有的通信网络完成服务器端和车载导航终端的数据动态更新显得尤为重要。

1地图要素全局标识体系——MOGIS

地图要素全局标识体系(Map Object Global Identification System,MOGIS)是凯立德公司自主研发的面向导航地图要素的一种编码方案。该方案引入地物性质、区域、类别等信息因素,确保地图要素编码的唯一性和关联性,具有继承、衍生等操作属性,为电子地图中的各项要素建立了唯一的MOGIS ID。从地物被采集进电子地图系统开始,电子地图数据随着地物的更新,各种属性信息不断地发生变化,但直至地物被销毁前,其标识ID是唯一确定且不变的。同时如果地物在不同层数据间存在多个映像对象,其标识ID是相同的。在处理电子地图数据变更时,最小操作粒度即是由这种唯一ID所标识的地图数据要素。

地图要素全局标识码(MOGIS ID)由16个十六进制数字(0—9,A—F)构成,分成5个码段,即:区位码、性质码、类别码、序列码、衍生码,结构如表1所示:

其中,各码段编码规则如下:

区位码用于标识地图要素所在空间区域位置,由8位十六进制数字构成。区位码为地图要素所在空间区域位置最小分块的代码。位于同一分块内的各地图要素的区位码相同。

性质码用于表征地图要素的地物性质,由1位十六进制数字构成。地图要素按地物性质大致可分为道路、交通辅助设施、居民地、建筑物、公园、水系、植被、企事业单位等类型。

类别码用于标识地图要素的属性类别,由2位十六进制数字构成。类别码是在具有相同性质码前提下进一步对地物属性进行细分的类别编码。类别编码一般结合地物的规模、权属、用途等各类属性进行划分。

序列码用于区分和唯一标识地图要素,由4位十六进制数字构成,作为同区域、同性质、同类别不同地物的唯一标识码。

考虑到地物分裂、衍变的特点,MOGIS ID的最后1位十六进制数字为衍生识别码。当地物发生拆分、裂变时,裂变后的衍生物标识码的同前四段编码与母体相同,但产生一个新的衍生码,通过衍生码与母体相区分。

MOGIS是实现地图数据增量更新的关键,一方面这个标识体系必须为地图中的每一要素提供唯一的标识码(MOGIS ID);另一方面,它也必须适应地图数据对现实环境中各种地物的抽象描述,是面向对象的、分层次和归属的并具有继承性,同时要能适应随现实环境变化而产生的地物裂变、衍生等[4,5]。

2基于MOGIS的地图增量更新方法

为实现海量空间地理信息支持下的导航数据动态更新,采用空间信息多级格网(SIMG)理论与技术结合MOGIS,实现导航数据的动态增量更新。更新主要包括三个环节:SIMG空间对象格网划分、差分增量数据提取及增量数据更新服务。

2.1SIMG空间对象格网划分

空间信息多级格网(Spatial Information Multi-Grid,SIMG)技术是将地理空间划分成不同层次的规则或不规则的格网,每个格网用它中心点所在的坐标来确定其地理位置,同时记录与此格网的相关导航基本数据项[6]。

根据导航电子地图要素区域分布特征,在此将全国境内导航电子地图按照SIMG思想,根据地图比例尺和行政区划划分为多个不规则的格网,并建立相应的SIMG-R树索引机制[7]。每个格网都有其相应的由8位十六进制数字构成MOGIS区位码,如图1所示。

2.2基于MOGIS的差分增量提取

通过对更新前后两版电子地图数据应用基于全局标识和层块式结构的电子地图数据差分更新技术,可以生成最小差异更新地图数据包,用于在生产系统差分数据提取。其中增量数据的生产如图2所示。

针对海量地图数据的各种要素,利用独特的高速相似度分析算法,在元数据信息的索引支持下,快速进行数据要素的匹配及相似度校验,以迅速找出变更元素,为增量更新的数据组织提供前期性能优化准备。

增量数据组织过程中,针对电子地图要素的多维管理特点,在数据的逻辑和物理存储组织上,根据SIMG技术对电子地图划分的格网,采用MOGIS编码体系对电子地图要素进行组织管理。具体地,系统将地图从低到高、数据从详细到概略分层管理,同时所有对象均通过MOGIS ID来访问,而上下层之间的相同对象具有同一MOGIS ID。

增量数据包中数据对象包含主要地图数据和路径规划数据。主要地图数据是反映了真实地物的形状属性特征,而路径规划数据则是抽象了的地物概念,其中保留了路径计算所需的信息。对于路径规划数据,由于分块是不规则的,故采用对象外接矩形来管理该对象[8]。

2.3增量数据更新服务

集固定电话网络、移动无线网络以及互联网于一体,设置一个专用的服务器群用于增量更新服务,变更信息分析系统生产的增量数据包将通过电子地图增量数据发布平台实时地上传到服务器上,供用户下载使用。

下载服务软件将与数据采集中心的上载服务软件实现同数据源管理,将用户的上载回报机制与下载联动起来,当地图数据有更新时,软件将自动通过短信、邮件或在用户开启带通讯的导航终端时主动将相关信息传给用户终端,提醒用户进行更新。

数据更新服务支持用户直接通过互联网进行连接,也支持用户通过GPRS/CDMA无线方式进行连接。用户通过应用服务网络既可以得到全新版本数据,也可以得到增量式的部分更新数据。比起传统的版本式数据发布(数据量在压缩后接近1GB—2GB),增量数据包因为是最小差异更新地图数据,更新一次数据只需下载一个几百K的文件,可以大大减小用户更新地图数据的时间和费用。

3在实际生产中的应用

采用凯立德电子地图2011春季版作为基础数据,利用增量更新包对导航地图进行增量更新,该增量更新包是根据文中方法将凯立德外业采集工作人员从2011年3月到7月期间在全国各地进行数据采集的成果与基础数据差分处理得到。

图3分别为两幅增量更新前后对比图,其中图3-b中2011年2月通车的武麻高速麻城段、图3-d中2011年深圳市新开业的六星汽车宾馆和新金得宾馆系增量数据,通过文中增量更新方法进行增量更新后成功地显示在地图上参与导航,提高了地图的现势性,且更新过程更为轻松便捷。

4总结

针对导航电子地图数据的特点,文章建立了地图要素全局标识体系MOGIS,并采用SIMG的格网划分方法,利用数据差分技术实现了导航电子地图的增量更新。该方法不仅从技术上实现了导航电子地图的增量更新,还在很大程度上减小了用户更新地图数据所需花费的时间和费用。但是还有一些需要继续研究和改进的地方,比如说增量数据的动态监测问题等等。近年来,导航电子地图数据的增量更新问题是行业内的热门问题,对导航地图数据的增量更新机制进行研究,发展相应的模型、算法和软件系统,对于实现增量更新产业化具有十分重要的意义。

参考文献

[1]朱照荣.城市GPS应用及发展趋势探讨.北京测绘,2002;3(3):27—29

[2]盛秀杰,李宏利.初探导航电子地图的增量更新.地理信息世界,2009;10(5):51—55

[3]林娜,王斌.空间数据库增量式更新机制的研究.测绘科学,2008;33(3):198—200

[4]王华斌,唐新明,李黔湘.海量遥感影像数据存储管理技术研究与实现.测绘科学,2008;33(6):156—157

[5]徐敬海,李清泉.基于时态GIS的导航电子地图增量更新研究.武汉大学学报,信息科学版,2008;33(11):1182—1185

[6]李德仁,朱欣焰,龚健雅.从数字地图到空间信息网格———空间信息多级网格理论思考.武汉大学学报(信息科学版),2003;28(6):112—116

[7]喻丹丹,何炎祥,涂国庆,等.空间信息网格的多级资源管理结构模型.计算机工程,2005;31(21):40—42

增量工程申请 篇4

二郎镇人民政府:

郎城路玉林段泥结石路基长1.2公里,因县交通局列出的工程量清单未包含路基挡墙工程,且项目合同价款(壹拾陆万元整)未包含路基挡墙工程项目及修建款项,为防止大雨天气冲毁路基,延长路基使用寿命,保证人车正常通行,现需新增路基挡墙工程。我方根据实际情况测算,新增挡墙工程约120m³,按单价250元/m³,涉及款项约叁万元整,请镇政府实地测量后批准。

附:增加工程量明细

玉林村村民委(签字盖章):

施工方代表:

自顶向下的决策树增量剪枝方法研究 篇5

决策树是人类对未知实例归类过程的一种直观表示方法。它是一种树形结构, 由节点和连接节点的边组成。

在机器学习方法中, 决策树生成算法一般以若干带有类别的实例作为输入, 我们称之为训练样例集合Train Set。然后通过决策树生成算法, 归纳推理出一棵决策树。在ID3决策树生成算法中, J.R.Quinlan使用信息熵度量训练样例集合的均一性。对于一个具有c个不同类别的训练样例集合, 定义信息增益作为测试属性的选择标准。ID3算法选择可以带来最大信息增益的属性作为决策树当前节点包含的测试属性。

二、决策树剪枝算法

决策树的生长过程实际上是一个对训练样例集合的分割过程, 在实际中, 这个控制决策树停止生长的策略并非总是最优的。

过度拟合是决策树生成算法为了完全分隔训练样例集合所造成的结果。当训练样例集合中包含错误的样例, 或者其中所包含样例的数量较少时, 该集合容易体现出巧合的规律性, 使得实例的某种属性恰好可以完美的分隔样例集合。但是由于这样的规则只是少数样例构成的集合表现出的偶然现象, 与实际真实存在的规则无关, 所以一旦有偶然性规则出现, 决策树就有过度拟合的风险。

为了克服过度拟合现象, 学者们已经提出了多种算法, 总结起来可以分为预剪枝方法和后剪枝方法两类。在不同的方法之间, 在多个方面存在着显著的不同。预剪枝方法一般是自顶向下的剪去决策树中的某些子树, 后剪枝方法则采用自底向上的策略优化决策树。一般认为预剪枝方法速度快, 简单易实现, 但由于很难准确估计出何时停止树的增长, 一般认为后剪枝方法在实践中效果更好。

三、自顶向下的决策树增量剪枝算法

本文在研究前人工作的基础上, 提出了一种新的后剪枝算法。由ID3决策树生成算法我们可以看到, 分隔训练样例集合产生的规则可以分为偶然规则和必然规则。其中必然规则是指真正蕴含于训练样例集合中的分类规则, 它不随训练样例的数量变化而变化;而偶然规则是指少数训练样例的集合所体现出的巧合性规则, 随着训练样例数量的变化而不断产生或消失。因此, 我们可以向每一个非叶子节点N中添加若干训练样例s, 如果在原测试属性下新节点N’的信息增益不变, 那么说明该测试属性属于必然规则, 反之则为偶然规则。最终通过“保留必然规则, 去除偶然规则”来达到优化决策树的目的。

综上所述, 我们给出决策树增量剪枝方法的算法框架如下

定义剪枝集合Prune Set, Prune Set∈Set, Prune Set∩Train Set=Ф;

从根节点Root开始, 向每一个非叶子节点Node中加入样例d∈Prune Set。计算添加前后节点Node在原测试属性A下信息增益Gain (Train Set, A) 和Gain (Prune Set∪Train Set, A)

如果G a i n (T r a i n S e t, A) =Gain (Prune Set∪Train Set, A) , 则保留该子树TNode;

如果G a i n (T r a i n S e t, A) >Gain (Prune Set∪Train Set, A) , 用叶子节点代替该子树TNode, 叶子节点的类别标志为节点中最常见的类别标志;

如果该子树TNode保留, 那么使用原测试属性A将当前剪枝集合Prune Set分割为相应的子集Prune Set1 (A) , …, Prune Setn (A) , 对该子树的每一个分支TNode (A) 1, …, TNode (A) n重复添加过程;

这个递归过程直到遇到叶子节点为止。

根据信息增益的定义

影响信息增益的变化的因素有两个方面, 父节点的熵Entropy (S) 和子节点的熵Entropy (Sv) 。为了避免父节点的熵Entropy (S) 对信息增益产生影响, 我们假定剪枝集合Prune Set中各类别样例的比例与原节点中各类别样例的比例相等。在这个前提下, 如果添加后信息增益下降, 则说明原测试属性对新训练样例集合的分类性能下降, 该分类规则属于偶然规则。

此外, 该递归过程自顶向下进行, 将原剪枝集合Prune Set分成小的子集Prune Set1 (A) , …, Prune Setn (A) , 使得子集中的样例与原节点中的样例距离较近, 保持了添加前后训练样例集合中样例分布的一致性。

四、结论

决策树剪枝是优化决策树的常用方法, 可以有效的避免决策树生成算法过度拟合训练样例集合现象的发生。本文提出的自顶向下决策树增量剪枝方法, 将属性信息增益这一决策树生成阶段最重要的条件引入决策树剪枝阶段, 增强了决策树的稳定性, 提高了决策树的泛化能力。优化后决策树结构简洁, 可理解性高。

摘要:决策树剪枝是决策树优化的常用方法。本文提出了一种自顶向下的决策树剪枝方法。通过向决策树的非叶子节点中添加未见训练样例的方法, 检验决策树中规则的稳定性, 去掉决策树中不稳定的规则, 达到决策树剪枝的效果, 得到的决策树降低了由于过度拟合而产生的偶然规则, 使得剪枝后的决策树不仅具有较小的规模, 而且具有良好的分类性能。

关键词:决策树,过度拟合,后剪枝算法

参考文献

[1]L.Breiman, J.Friedman, R.Olshen, etal.Classification and regression trees.Belmont.Calcification:Wadsworth, 1984.

增量方法 篇6

Atmega128与增量式编码器硬件接口线路图(Atmega128CPU板与主板是分体的)如图1所示。

YM0802液晶显示器与单片机的硬件线路图如图2所示。

增量式编码器A、B相产生的是方波,相位差是90°,可以通过程序时序来区分先后,产生转向判断,通过脉冲增减计数产生对应的分度值,进而换算成角度值。本例采用的NEMICON 1000P/R增量式编码器,经四倍频可以把一个圆周4000等分,在液晶屏上显示0~3999,表示相对于Z零点的相对位置及转向。因增量式编码器是靠计数来确定角度的,断电后没有记忆,所以重上电后需要重新进行零点定位,也就是要编码器经过一次Z点后才能显示角度,程序会一直等待编码器过Z点信号。

编码器接口程序部分,以中断方式运行。A、B、Z相分别对应于Atmega128的PE4、PE5、PD2引脚。程序分3部分:预义部分;编码器接口程序;角度显示程序。程序如下:

只要在不断电的情况下,角度值是可逆的,通过程序可以产生实际角度值,突破这个接口程序是很关键的一步。

以上接口程序可扩展到几方面应用:依据实时角度值,很容易通过编程产生需要的电子凸轮,据此产生各种控制动作(电磁阀,步进及伺服等);通过设定角度范围,产生准确的传感器采样范围,既准确又可防干扰;通过定时中断实现速度测量;在程序中可以把角脉冲换算成位移测量,生成与位移相关的控制;在自动化设备中编码器是产生同步基准的部件,可以为伺服或步进提供同步信号。

参考文献

增量数据割接法 篇7

某局华为智能网系统进行升级,该局发行UCS卡号业务,数据量为900万,机器为HP L2000,采用informix数据库,由于当初的磁盘规划不合理,所有的数据库空间都分布在一块普通硬盘上,没有任何RAID处理,数据转移效率非常低。

割接前进行了数据迁移测试,测试的数据如下:

业务为UCS1.5, basetab_206表中900万记录,数据倒换时间如下:

1)在HP L2000单机上使用ipload倒换的时间:导出15分钟, 导入10分钟

2)在HP D280的HDR上直接倒换数据的时间:导入10000条/20秒

3)在HP L2000的HDR上直接倒换数据的时间:导入约2.5小时

4)在HP L2000的HDR上采用先倒主机(无日志)、再主机0机备份到备机恢复的时间:零级备份+恢复=90分钟

升级过程中割接时间一般是从临晨0:00到6:00,总共6小时,减去割接失败回退的时间1.5小时,整个割接过程只有4.5小时。若按普通方法进行割接,单数据倒换就至少需要2个小时,加上业务验证等其他零星工作,整个升级过程至少4个小时。如果过程中出现什么意外,几乎没有时间定位问题。为解决此问题,于是便提出了增量倒换的概念。

2 增量割接法原理

增量割接法的主要思想是提前将在线将数据进行一次完全割接,正式割接当晚,只倒换自完全割接后更新过的数据。

一般情况下,要在正式升级割接的前几天(设为n) 在线作一次数据的完全倒换。在正式割接当晚,将n+1天(1天的过渡时间,这主要是防止跨天呼叫漏掉)的更新数据导入。

简而言之,增量割接分为两个步骤,第一步做一次完全的数据割接,也就是基线建立的过程;第二步是正式割接的过程,需要找出变化过的数据,并只针对变化过的数据进行倒换。因此如何找出变化过的数据是关键。

3 增量割接法方案设计

下面以UCS业务改造为ICRAD业务,对basetab表的卡数据进行割接为例,描述增量割接法的具体实施步骤:

设UCS业务的卡号表为basetab_206, ICARD业务的卡号表为bas e tab_ccs,欲将bas e tab_206表中的数据割接到bas e tab_ccs

1)割接前基线数据的建立:正式割接前1天先做一次将UCS业务的basetab_206表的数据全部迁移到ICARD的basetab_ccs表中,因不受时间的限制,可以选择普通的unload、dbload方式进行数据的倒换;

2)找出更新过的卡数据:分析ucs业务可以得知,对bas e tab_206表中数据的更新主要有以下三点:

A新开户数据,根据bas e tab_206表的las tus e date tim e字段识别;

B普通呼叫流程在密码验证成功后,更新bas e tab_206的las-tus e date tim e;

C转帐过程中,转出帐号更新las tus e date tim e,转入帐号不更新。

找出更新过的卡数据的脚本如下(假设将这些数据倒出汇总到change dcard.unl中):

s e le ct*from bas e tab_206 w he re las tus e date tim e[1]>=[基线数据建立日期-1天];

s e le ct b.*from ucs_trans fe rlog a

le ft join bas e tab_206 b on a.accountnum be rt=b.accountnumbe r

w he re a.re gis te rdate tim e[1]>=[基线数据建立日期-1天];

3)下一步要根据选出的数据,将新表中的相关数据删除,再将这些更新数据插入,更新到基线数据建立的表上,即可完成整个倒换。具体实现如下:

A.使用dbload将change dcard.unl中的accountnum be r字段数据装入新库的一个表中,如changedcard (仅含一个字段account-num be) r

B.执行:de le te from bas e tab_206 w he re accountnum be r in (s e le ct*from change dcard)

C.将change dcard.unl装入新库的bas e tab_ccs中。注意这时bas e tab_ccs的accountnum be r要建唯一索引,以防止有重复的记录插入。

4 增量割接法的注意事项

增量割接法通过割接前的基线数据的建立,将耗费大量时间的数据迁移提前做了,正式割接时只需要将自基线数据建立以来有过更新的那部分数据进行割接,从而大大减少了正式割接时要迁移的数据量,也就达到了节约割接时间的目的。

从增量割接法的两个步骤来看,第一步是基线数据的建立,这一步的数据迁移可以在任何时间来做,只要注意不影响机器性能,可以采用HPL、SPL、ESQL/C编程、SHELL编程、unload/dbload等各种数据迁移的方法来做,因此在基线建立的过程没有制约条件的限制。

第二步是对增量数据的割接,这一步要考虑要确保能够判断出自基线数据建立后更新过的数据。首先要列举出导致数据更新的不同操作,比如开户、销户、转帐、打电话、充值等操作都会更新数据,要将可能导致数据更新的操作一一列举出来。其次,对列举出来的导致数据更新的操作要能够找出数据更新的判断条件,这很关键,一般来说业务对数据进行更新时,都会有记录更新时的时间的记载。

摘要:在智能网业务升级和割接中, 经常会遇到大量的数据割接、搬迁, 本文介绍了一种对大数据量割接也非常有效且简单易行的数据割接方法:增量数据割接法。

关键词:基线建立,增量割接,方案设计

参考文献

[1]张光业.Informix向导—Informix SQL参考与语法[M].北京:人民邮电出版社.2001.

[2]孙刚玉.Informix系统管理员指南[M].北京:科学出版社, 1999.

增量拓展:报业转型的原则 篇8

但是如果在增量上做文章,则规避了上述这些问题。报业转型“不能在旧楼里拆东墙补西墙,要实现增量拓展。旧楼不变,盖上新楼,然后打通它们之间。这叫增量拓展。”

党报向都市报的成功转型

报业有一段辉煌的转型历史,值得今天的报业同行重新仔细回味品鉴学习提高。

上世纪90年代初,在世界各地的晚报纷纷衰落的形势下,中国晚报却逆向而动悄悄地火起来。当时有晚报“四朵金花”,《新民晚报》、《羊城晚报》、《北京晚报》、《今晚报》,发行量都在百万左右,广告额都在3亿元以上。还有《扬子晚报》、《钱江晚报》、《齐鲁晚报》、《金陵晚报》、《成都晚报》、《辽沈晚报》……这些晚报当时的发行量和广告收入都是党报的4-8倍。与此形成鲜明对比的是党报的衰落。1996年初,《人民日报》的期发数比它鼎盛时期的1979年下跌了66.3%;在30家省级党报中,下跌幅度在30%以上的达到23家。

面对横冲直撞的晚报,党报没有在自己身上下功夫,在存量上做文章,搞什么改版、策划的动作。那样,绝不可能成功;党报只是创造出了新的挑战者——都市报。原本也打算叫晚报,但是当时的新闻出版总署为避免一个城市两张晚报而创造了“都市报”这个名字。许多的省级党报都申请到了这个晚报的替代品——都市报。在成都,面对《成都晚报》,《四川日报》创办了《华西都市报》,在广州,面对《羊城晚报》,《南方日报》创办了《南方都市报》,在石家庄,面对《燕赵晚报》,《河北日报》创办了《燕赵都市报》。都市报的办报理念要比晚报的“飞入寻常百姓家”更新、更灵活、更有效,很快就赢得了市场,并在全国“一纸风行天下”。都市报的赢利能力完全超过了原先的党报、行业报、晚报,而成为中国独领风骚的报纸种类。而党报则继续下滑。1998年初,时任国家广电总局局长的徐光春在文章中透露,十多家中央级报纸在1998年1月的发行量,除了两家各增长0.34%和1.1%外,其余都在下降。从这个意义上说,是党报在自掘坟墓,搬起石头砸自己的脚,创造了自己的竞争对手。

但是,从另外一个角度看,党报转型创造出都市报是有史以来党报最成功的转型,没有之一。自都市报形成气候之后,党报在营收上的位置就退居幕后,专攻舆论导向,成为“母报”,都市报“儿子养老子”的模式也成为全国大部分报业集团的潜规则。而随着都市报营收的进一步扩大,党报集团日子越来越好,才有了报业集团持续今天的繁荣。

规避不彻底的创新

存量的体制机制的限定,无法再做太大的动作。只能在增量上做文章。众所周知,《广州日报》的内容转型,只是在头版之后使劲地扩版,增加内容,它也没有在存量——头版上改革,把书记讲话拿掉,而换成一条东莞扫黄的新闻,这注定是徒劳的;那样的改革在当前的形势下也是没有任何前途的。它只在增量上做文章,增加版数、增加内容,稀释头版内容,这也是增量拓展的转型。

上世纪90年代中期党报创造出一个自己的竞争对手——都市报,从而实现非常成功的转型,成就了二十年报业的繁荣;而近几年,报业也纷纷制造了各种各样的竞争者——新媒体,但这次,却没有实现“华丽的转身”,依然在苦苦探索?为什么?这

这,在于两个关键性的错误:

一是报业创造的新媒体的核心理念竟然是融合!试图融合传统媒体,然后拯救传统报业的颓势。这样一来,创新就有了牵绊,各种老体制、老机制、老观念、老人的制约;不能够彻彻底底地创新。党报创造的都市报,当初可没有谁说要让都市报来拯救党报,要让都市报继续在头版刊登会议新闻,刊登主要领导同志的长篇讲话稿。所以当初的都市报才能够成功。

为避免既得利益者对改革创新的抵制与反对,减少转型成本。“老人老办法,新人新办法”,“增量拓展”的转型基本上不触犯原有的条条框框和你的利益关系,换取的是既得利益者对于改革开放的支持或者只是一个默认。这样的转型模式更能成功。

SVM增量学习算法研究 篇9

支持向量机是Vapnik等人提出的一类新型机器学习方法, 它能够非常成功地处理分类和回归问题, 由于支持向量机出色的学习性能, 该技术已成学习界的研究热点, 并在很多领域得到成功的应用。但是, 作为一种尚未成熟的新技术, 支持向量机模型目前还有很多局限性。比如当训练样本集的规模很大时需要花费的存储空间和运行时间的代价十分巨大, 迫切需要寻找解决的思路;再比如在目标识别过程中, 要在训练初期就收集一个完整的训练集市非常困难甚至是难以实现的, 而更多的情况下, 样本是不断加入的, 即增量式地加入训练样本, 因此希望支持向量机具有这样的能力, 即其学习的精度可以随着应用过程中样本集的不断积累而逐渐提高。

增量学习技术是一种得到广泛应用的智能化的数据挖掘与知识发现技术, 其思想学习精度随样本的逐渐积累而随之提高。由于可以充分利用历史学习的结果, 增量学习技术可以很好地节省后继训练时间, 这相对于传统学习技术来说具有显著优势。一种机器学习方法是否具有良好的增量学习功能已经成为评价其性能优劣的重要标准之一, 但经典的支持向量机理论与增量式学习并不具备直接的相容性。支持向量机训练所得的支持向量能够完全反映分类超平面的信息, 而SV通常只占训练样本很小的一部分, 这对支持向量机的增量学习算法的构建具有重要意义。

2 现有增量算法研究

2.1 曹杰等提出了一种新的SVM增量学习算法[2]。

这种方法是将SV集的向量划分为两种类型:一种是对应于的SV向量, 这类向量称为BSV, 代表了所有不能被正确分类的样本向量;另一类的SV, 其对应的值满足, 这类向量代表了训练中大部分样本的分类特征, 并与BSV共同决定最终的结果分类器的形式。

2.2 萧嵘等提出简单SVM增量算法[3]:

形成了分类和训练的循环, 每次都把误分样本引入和SV样本一起训练, 直到误分样本比例小于系统设定的与阈值。

2.3 申晓勇等提出的一种SVM增量学习淘汰算法[1]:

通过对SVM增量学习算法的研究, 发现若某样本为支持向量, 则其在连续多次的学习中甚至在训练过程的全程, 都违背KKT条件, 反之如果某样本在连续多次学习中都满足KKT, 在以后的学习中该样本将以很高的概率满足KKT条件。基于上述分析将后者遗忘, 则会对后续的学习影响较小。

2.4 孔锐等提出了一种快速增量学习算法, 该算法依据边界向量不

一定是支持向量, 但支持向量一定是边界向量的原理, 首先选择那些可能成为支持向量的边界向量, 进行SVM的增量学习, 找出支持向量, 最终求出最优分类面, 提高了训练速度。

3 一种新的增量算法

新的增量算法是在原有的增量算法的基础上, 将KKT条件作为判定新增数据样本是否更新现有SVM分类的依据, 包括新增数据样本改变SVM分类函数和新增样本不改变SVM分类函数两个过程。新增样本过程是使用新数据样本更新现有SVM分类函数, 使得扩充数据样本处于最优化状态;已有数据样本学习过程是使指定的数据样本不对SVM分类函数产生影响, 同时保持数据样本集的最优化状态。

前提:原样本集A, 表示数据样本的Lagrange乘子。将A原样本集进行分类后得到三类数据样本: (a.) 对应的样本分布在分类器间隔之外, 将这类样本记为RIG; (b.) 的样本位于分类间隔之上, 将这类样本记为MAR;位于分类间隔之内, 将这类样本记为ERR;是的偏导数, 结果对应不同的KKT条件。C表示新增样本。

算法:

新的增量算法是在原有的增量算法的基础上, 将KKT条件作为判定新增数据样本是否更新现有SVM分类的依据。

3.1 首先检验新增样本C是否违背SVM分类函数的KKT条件, 如果数据样本C没有违背, 则停止。

3.2 如果数据样本C违背样本SVM的KKT条件, 则:

a.若样本C正好都在分类面上的支持向量 () , 则将C加入到MAR中, 更新MAR, 停止。

b.若样本C都在分类面的边缘以内甚至被错分 () , 则将C加入到ERR中, 更新ERR, 停止。

c.当不满足上述的两种条件, 则将违背样本SVM的数据样本分为前提中的三类数据, 对每类数据在进行四种处理:a.如果MAR中的数据样本点的=0, 则将这个数据样本点加入到RIG中, 并将其从MAR中删除。更新RIG, MAR。b.如果MAR中的数据样本点的=C, 则将这个数据样本点加入到ERR中, 并将其从MAR中删除。更新ERR, MAR。c.如果ERR中的数据样本点的也满足MAR的条件, 则将这个数据样本点加入到MAR中, 并将其从ERR中删除。更新ERROR, MAR。d.如果RIG中的数据样本点的也满足MAR的条件, 则将这个数据样本点加入到MAR中, 并将其从RIG中删除。更新RIG, MAR。

重复, 直到增量样本训练完。

3.3 加入新的增量训练样本B, 将上次训练样本得到的ERR集加入到B中得到一个新的增量样本。并将赋给C。

3.4 重复以上的步骤, 直到所有的增量样本都训练结束。

4 结论与展望

虽然SVM较其它学习方法具有一定的优越性, 但是它作为一种新型的技术仍然具有一些局限性, 尤其是不能很好地支持增量式学习。所以本课题基于SVM理论, 在于解决SVM不具有增量学习能力的问题, 在VC理论的基础上, 通过对SVM中SV集进行分析, 从而找到一种SVM新的增量的算法。

本文通过对KKT条件和样本之间的关系研究, 样本增加后支持向量机的变化情况分析, 支持向量在增量学习中的活动规律, 提出了一种新的支持向量增量学习算法。通过对实验数据集的实验结果表明, 使用该方法在时间消耗上明显低于传统的SVM学习算法。但算法还是不能有效的解决存储空间的占用。训练样本知识涉及到样本的一小部分, 其余的仍然还在内存中, 这一问题有待日后近一步的研究。

参考文献

[1]申晓勇, 雷英杰等.一种SVM增量学习淘汰算法[J].计算机工程与应用, 2007:58-74.

[2]曹杰, 刘志镜.基于支持向量机的增量学习算法[J].计算机应用研究, 2007:13-16.

[3]萧嵘, 王继成, 孙正兴, 张复炎.一种SVM增量学习算法[J].南京大学学报, 2002:34-38.

[4]Foltz P W.Latent Semantic Analysis for Text-based Research:Be-havior Research Methods[J].Instruments and Computer, 28-42, 1996.

[5]Joachims T.A probabilistic analysis of the Rocchio algorithm withTFIDF for text categorization[J].Machine Learning:Proceedings of theFourteenth International Conference:143~151, 1997.

上一篇:跨年演唱会下一篇:作品与表现手法