首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 430 毫秒
1.
消除GCC抽象语法树文本中冗余信息的算法研究   总被引:1,自引:0,他引:1  
由GCC编译器对C语言源程序进行语法分析产生的抽象语法树文本存在大量的冗余信息,如果直接对其进行解析,则会产生解析效率低、产生的抽象语法树会占用大量的存储空间的问题.针对此问题,在深入研究(GDC抽象语法树文本结构和解析过程的基础上,提出了一种高效消除冗余的算法,通过实验证明了算法的正确性和适用性,并提出了GCC抽象语法树解析的数学定义.  相似文献   

2.
文章对基于文本、Token和抽象语法树的同源性检测技术进行探讨,详细介绍了关于抽象语法树的同源性检测技术。同时,在对实际应用大量研究的基础上,文章着重介绍了源代码同源性检测系统的架构设计,以及引擎比对、比对结果分析和比对结果输出等主要功能模块,并对开发的系统进行了系统测试和分析,验证了算法的可行性。  相似文献   

3.
一种解析GCC抽象语法树的方法   总被引:6,自引:0,他引:6  
石峰  刘坚 《计算机应用》2004,24(3):115-116
介绍了GCC抽象语法树的结构及在编译过程中的作用。给出解析抽象语法树所使用的词法规则和语法规则,提出了解析GCC抽象语法树的方法。  相似文献   

4.
基于抽象语法树的软件度量工具的设计与实现   总被引:4,自引:0,他引:4  
为了提高软件质量和控制,改善软件开发过程,文中提出了以抽象语法树为核心的软件度量工具(ASTMT)的体系结构图,介绍了度量工具的功能及特点,详细论述了工具中各个模块的设计与实现方法,着重讨论了抽象语法树的组成及其节点设计。介绍该工具在软件开发中的实际应用,进而验证了工具的实用性与有效性。  相似文献   

5.
规范抽象语法与抽象语法树的直接生成   总被引:1,自引:0,他引:1  
张幸儿 《计算机学报》1990,13(12):926-933
抽象语法树在很多应用领域中是一个重要的工具,但是在概念上不一致与不规范。本文提出了抽象语法(树)的设计准则,并引进规范抽象语法的概念。本文还给出了为一个源程序从文法直接生成改进的规范抽象语法树的算法。改进的规范抽象语法树结点数远比通常语法分析树少。内存需求量的剧降与应用软件运行的加速,使语法树有实际的应用价值,也可扩大其应用范围。  相似文献   

6.
控制流图描述了函数执行时可能采取的执行路径。绝大多数静态分析工具都在抽象语法树之上生成控制流图并据此对程序的运行行为进行分析。在模型检测过程中,提取正确的控制流图是构建系统模型的关键。在分析C程序的抽象语法树和控制结构的基础上,设计并实现了程序控制流图提取的算法,并分析了算法的正确性。基于提取的控制流程,可对C程序的某些性质进行模型检验。  相似文献   

7.
传统的基于Token的克隆检测方法利用代码字符串的序列化特性,可以在大型代码仓中快速检测克隆.但是与基于抽象语法树(AST)、程序依赖图(PDG)的方法相比,由于缺少语法及语义信息,针对文本有较大差异的克隆代码检测困难.为此,提出一种赋予语义信息的Token克隆检测方法.首先,分析抽象语法树,使用AST路径抽象位于叶子节点的Token的语义信息;然后,在函数名和类型名角色的Token上建立低成本索引,达到快速并有效地筛选候选克隆片段的目的.最后,使用赋予语义信息的Token判定代码块之间的相似性.在公开的大规模数据集BigCloneBench实验结果表明,该方法在文本相似度较低的Moderately Type-3和Weakly Type-3/Type-4类型克隆上显著优于主流方法,包括NiCad、Deckard、CCAligner等,同时在大型代码仓上需要更少的检测时间.  相似文献   

8.
近年来,随着不同编程语言代码自动转换工具的出现,跨语言的代码抄袭检测问题受到了越来越多的关注.现有跨语言代码抄袭检测主要包括传统的基于中间特征的检测方法和近年来出现的基于机器学习的检测方法,后者在检测模型训练完成之后具有更好的检测速度,是当前跨语言代码抄袭检测的研究热点.然而,现有的基于机器学习的跨语言抄袭检测方法大多将代码作为文本来处理,未考虑代码的结构特征.结合代码基于抽象语法树的结构特征,本文提出了一个基于伪孪生神经网络框架的跨语言抄袭检测工具CLPDetector.该工具将训练数据中的源代码对转换成对应的抽象语法树,基于抽象语法树生成代码的向量表示,然后将结合BiLSTM、CNN和Attention的深度神经网络嵌入到伪孪生网络架构中训练抄袭检测模型,从而实现了跨语言代码抄袭的检测.为了提高检测精度,首先,在训练检测模型前,利用基于抽象语法树的skip-gram算法对词向量进行了预训练,并基于程序依赖图删除了训练数据集代码中的冗余代码.其次,在代码抄袭检测阶段,提出了一个基于属性计数的过滤器,用以排除不可能抄袭的代码对,提高检测效率.实验中基于一个开源的数据集,以Java代码和...  相似文献   

9.
在软件同源性检测方法中,基于抽象语法树的比对方法能够有效地检测出基于代码全文拷贝、修改变量名、调整代码顺序等的抄袭手段,被广泛用于抄袭检测工具中。但基于抽象语法树的比对方法对于修改变量类型和添加无意义变量的抄袭手段束手无策。针对这种情况,提出了一种基于抽象语法树的改进思想,该思想通过剪去语法树中影响判断的叶子节点的手段来还原检测原文抄袭,能够达到有效检测修改变量类型和添加无意义变量等抄袭的目的。  相似文献   

10.
为了提高程序题自动评分的准确性,及解决传统评分方法无法从语法结构和语义角度衡量错误的学生程序与正确答案之间的相似度,提出了一种基于抽象语法树匹配的程序题自动评分方法。文中以JavaCC技术为核心,首先通过词法分析、语法分析和语义分析生成错误列表和抽象语法树的中间表示,然后通过语法树切片匹配得分,最后和错误列表结合给出评分结果。文中详细论述了各个模块的设计方法,着重讨论了抽象语法树生成并匹配的细节,设计并实现了一个传统方法与语义分析结合的C++程序题自动评分系统。通过对实际考试的结果进行实验,进而验证了该系统的实用性与有效性。  相似文献   

11.
陈千  桂志国  郭鑫  向阳 《计算机应用》2015,35(2):456-460
针对网络大数据时代文本流的主题演化研究大多基于经典概率主题模型,以词袋假设为前提导致主题的语义缺失问题和批处理问题,提出一种在线增量的基于特征本体的主题演化算法。首先,基于词共现和通用本体库WordNet构建特征本体,用特征本体对文本流主题进行建模;其次,提出一种文本流主题矩阵构建算法,实现在线增量主题演化分析;最后,依据该矩阵提出文本流主题本体演化图构建算法,利用特征本体的子图相似度计算主题相似度,从而获得文本流中主题随时间的演化模式。在科技文献上的实验上,满意度同传统在线潜在狄利克雷分配模型(LDA)不相上下,但时间复杂度降低到O(nK+N)。所提出的方法引入了本体,加入了语义关系标注,可图形化展现主题的语义特征,并在此基础上在线增量地实现了主题演化图的构建,在语义解释性和主题可视化方面更具有优势。  相似文献   

12.
本文在分析Web数据挖掘相关理论基础上,深入探讨XML在Web数据挖掘中应用问题,利用XML和Web数据挖掘技术的结合点,提出建立基于XML的Web文本数据挖掘模型,为如何从大量的Web资源中获得有价值的知识提供了一种可行的解决方案。  相似文献   

13.
基于本体论的文本特征提取   总被引:7,自引:0,他引:7  
文章提出了一种基于本体论的文本特征提取方法。通过构建文本结构树来充分利用文本结构分析得到的信息,利用本体对领域知识的描述信息来分析特征词之间的关系,而且在特征权值的计算中提出了特征词统领长度的概念和计算方法。实验数据表明该方法提高了文本特征提取的准确性。  相似文献   

14.
命名实体识别是文本信息处理的重要基础,也是自然语言处理的一项关键技术.近几年来微博迅速发展成为人们进行信息交流的平台,微博文本俨然已经成为进行命名实体抽取的新载体.论文利用微博内容和结构的特点,提出了一种基于统计与规则相结合的命名实体识别的方法.微博文本较短并且文本中含有标签、话题等内容,论文在考虑这些特点基础上,利用微博评论和转发进行词频统计,通过规则筛选,完成命名实体识别.在新浪微博数据上的实验结果表明该方法可以有效地提高微博中命名实体识别效果.  相似文献   

15.
一种基于反向文本频率互信息的文本挖掘算法研究   总被引:1,自引:0,他引:1  
针对传统的文本分类算法存在着各特征词对分类结果的影响相同,分类准确率较低,同时造成了算法时间复杂度的增加,在分析了文本分类系统的一般模型,以及在应用了互信息量的特征提取方法提取特征项的基础上,提出一种基于反向文本频率互信息熵文本分类算法。该算法首先采用基于向量空间模型(vector spacemodel,VSM)对文本样本向量进行特征提取;然后对文本信息提取关键词集,筛选文本中的关键词,采用互信息来表示并计算词汇与文档分类相关度;最后计算关键词在文档中的权重。实验结果表明了提出的改进算法与传统的分类算法相比,具有较高的运算速度和较强的非线性映射能力,在收敛速度和准确程度上也有更好的分类效果。  相似文献   

16.
基于概念的文本结构分析方法   总被引:26,自引:1,他引:25  
本结构分析是本处理领域中的重要内容,它可以有效地改进本要、本检索以及本过滤的精度、中简要描述了本的物理结构和逻辑结构以及本分析的背景,提出了本结构分析中的层次分析方法。该方法保证了层次是分的有序性,可操作性强,便于解释,不依融于具体领域。其基本思想是对于输入本,首先识别出本的物理结构,然后在概念映射、要领密度和概念消歧的基础上,将本依据主题划分为若干层次;最终获得本的逻  相似文献   

17.
在解析 微博文本语法的基础上,结合实体关系的定义和形式化表示,提出了采用关系网络有向图模型的方法来反映文本之间的结构关系,较好地表达了文本的语义信息,弥补了词频特征刻画的不足之处。利用改进后的TPR(Topic-PAGERANK)测算各节点对应的度来表现关系元组的重要程度,按序输出关系元组对应的原博文语义字段作为摘要。最后,通过实验证明了基于关系网络的文本自动文摘方法抽取出的摘要涵盖信息更全面,冗余更少。  相似文献   

18.
大数据时代,文本数据量的爆炸式增长使得特征选择成为文本挖掘领域最关键的任务之一。文档中的词语和模式规模庞杂,故需保证所挖掘特征的质量充满挑战。“基于模式”特征选择方法具有传统“基于词语”方法所没有的优越特性,可以进行有效地信息去噪,提升文本挖掘性能。该文提出基于包含度和频繁模式的文本特征选择方法: 首先,定义基于包含度的相似性度量原理;然后,提出基于包含度的冗余文本频繁模式过滤方法。基于包含度度量文本频繁模式间相似性,以此去除子模式及相似度较高的交叉模式。再通过冗余模式去噪,提升文本频繁模式挖掘性能;提出基于关联度的文本特征选择方法。以经过过滤处理后的非冗余文本频繁模式为基础,进行文本特征选择,并利用词语与文档的关联度进行词语类别划分及权重分配。使所选特征与文档关联度更加清晰,分类效果更好。通过在数据集Reuters-21578上的实验得知,基于包含度和频繁模式的文本特征选择算法性能,优于当前普遍应用的传统文本特征选择方法和新的特征选择及特征抽取方法。  相似文献   

19.
基于抽象语法树分析的版本控制分支合并算法   总被引:1,自引:0,他引:1  
在软件开发中,并行开发已经成为了现实中标准的开发模式,因此软件开发的版本控制在开发过程中得到了非常广泛的应用.虽然大多数的版本控制工具都能完成分支合并以及将不同版本的更改合并起来,但这些工具往往是以一行一行的代码为单位进行文本比较的合并,在遇到某行被同时修改时,则不能给出满意的合并结果.给出了一种新的合并算法,用来解决文本比较分支合并中的问题,它在传统工具的文本比较出现冲突的代码行,对该代码块建立抽象语法树,根据抽象语法树的分析比较,完成不同分支版本代码的自动合并,减少分支合并中的代码冲突及手动合并的工作量,提高开发效率.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号