CN111126031A - 代码文本处理方法及相关产品 - Google Patents

代码文本处理方法及相关产品 Download PDF

Info

Publication number
CN111126031A
CN111126031A CN201911290957.3A CN201911290957A CN111126031A CN 111126031 A CN111126031 A CN 111126031A CN 201911290957 A CN201911290957 A CN 201911290957A CN 111126031 A CN111126031 A CN 111126031A
Authority
CN
China
Prior art keywords
text
code
texts
feature
similarity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911290957.3A
Other languages
English (en)
Inventor
于俊
连顺
李雅洁
谭昶
谢榭
丁辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Qiancui Intelligent Technology Service Co Ltd
Original Assignee
Nanjing Qiancui Intelligent Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Qiancui Intelligent Technology Service Co Ltd filed Critical Nanjing Qiancui Intelligent Technology Service Co Ltd
Priority to CN201911290957.3A priority Critical patent/CN111126031A/zh
Publication of CN111126031A publication Critical patent/CN111126031A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/75Structural analysis for program understanding

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例公开了一种代码文本处理方法及相关产品,方法包括:首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。本申请实施例有利于提升代码文本相似性计算的精准度。

Description

代码文本处理方法及相关产品
技术领域
本申请涉及电子技术领域,具体涉及一种代码文本处理方法及相关产品。
背景技术
随着科技的发展,电子文档带来的抄袭技术门槛低,所以代码文本抄袭现象很普遍,由于编程类作业大多数以电子文档的方式呈现,通过开发工具和电子文档编辑器可以很容易地复制和修改电子文档,使得抄袭代码外观与原来的代码不相同,而程序结构以及运行结果却与源代码完全一样,人们通过更改注释、变量名、方法名、类名,或者改变代码块顺序,改变表达式中操作符和操作数顺序,增加或删除冗余语句和变量就可以形成新的代码文本,为了解决人工很难直接发现抄袭行为,因此,计算代码文本的相似度尤为重要。
现有技术中,一般采用以下几种方法计算代码文本之间的相似度,第一种是根据软件复杂性度量模型,第二种是采取基于属性计数的检测技术评价作业相似度,使用编译优化和反汇编技术将源代码转变为目标代码,然后通过删除和替换汇编指令中对程序特征影响不大的元素,使用决策函数计算程序代码的相似度,第三种是使用基于结构度量方法进行相似度的计算,第四种是使用最长公共子序列算法和编辑距离来计算作业相似度,然而,现有的相似度检测技术,在实际检测中,会受到一些因素(如大量重复的变量声明语句及抄袭者对源代码的改动)的干扰,导致相似度的计算不精确。
发明内容
本申请实施例提供了一种代码文本处理方法及相关产品,以期提升代码文本相似检测的精准度。
第一方面,本申请实施例提供一种代码文本处理方法,应用于电子设备,所述方法包括:
获取两个第一代码文本;
确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
第二方面,本申请实施例提供一种代码文本处理装置,应用于电子设备,所述装置包括:获取模块和处理模块,其中,
所述获取模块,用于获取两个第一代码文本;
所述处理模块,用于确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
所述处理模块,还用于将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
所述处理模块,还用于根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行本申请实施例第一方面任一方法中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤,所述计算机包括电子装置。
第五方面,本申请实施例提供了一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种代码文本处理方法的流程示意图;
图2是本申请实施例提供的另一种代码文本处理方法的流程示意图;
图3是本申请实施例提供的再一种代码文本处理方法的流程示意图;
图4是本申请实施例提供的一种电子设备的结构示意图;
图5是本申请实施例提供的一种代码文本处理装置的功能模块组成框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例所涉及到的电子设备可以是具备通信能力的电子设备,该电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(User Equipment,UE),移动台(Mobile Station,MS),终端设备(terminal device)等等。
通常,人们可以通过更改注释、变量名、方法名、类名,或者改变代码块顺序,改变表达式中操作符和操作数顺序,增加或删除冗余语句和变量就可以形成新的代码文本,为了解决人工很难直接发现抄袭行为,因此,计算代码文本的相似度尤为重要,然而,现有的相似度检测技术,在实际检测中,会受到一些因素(如大量重复的变量声明语句及抄袭者对源代码的改动)的干扰,导致相似度的计算不精确。
针对上述问题,本申请提出一种代码文本处理方法,下面结合附图对本申请实施例进行详细介绍。
请参阅图1,图1是本申请实施例提供了一种代码文本处理方法的流程示意图,应用于电子设备,所述电子设备设置有窄带通信模块,如图1所示,本代码文本处理方法包括:
S101,电子设备获取两个第一代码文本。
其中,所述电子设备获取第一代码文本的实现方式可能是:电子设备在检测到文本相似度检测请求时,获取用户已提交的至少一个压缩包;解压用户已提交的至少一个压缩包,得到对应的至少一个原始代码文本;若所述原始代码文本为多个时,将所述多个原始代码文本进行无序拼接,得到所述第一代码文本;若所述原始代码文本为一个时,将所述原始代码文本作为所述第一代码文本。
其中,所述文本相似度检测请求和所述两个第一代码文本可以是同一个用户提交,举例来说,老师想了解两个学生之间代码作业的相似情况,可以将两个学生的代码作业上交,并提出文本相似度检测请求;其中,文本相似度检测请求和所述两个第一代码文本可以是不同用户提交,第一种情况为:文本相似度检测请求为用户A提交,所述两个第一代码文本中的其中一个为用户B提交,所述两个第一代码文本中的其中一个为用户C提交,举例来说,老师想了解两个学生之间代码作业的相似情况,可以让两个学生的提交代码作业,在确定该两个学生均递交代码作业后,提出文本相似度检测请求;第二种情况为:文本相似度检测请求为用户A提交,所述两个第一代码文本为用户B提交,在课代表提交了学生代码作业后,老师对任意两个学生的代码作业提出文本相似度检测请求;第三种情况为:文本相似度检测请求为用户A和所述两个第一代码文本中的其中一个为用户A提交,所述两个第一代码文本中的其中一个为用户B提交,甲用户在提交代码文本后,乙用户也提交了代码文本,乙用户想了解两个代码文本之间相似情况,可提出文本相似度检测请求。
需要说明的是,所述两个第一代码文本可以是多个第一代码文本中的两个第一代码文本,在实际应用中,当用户提交多个第一代码文本和文本相似度处理请求之后,电子设备可获取所述多个第一代码文本中任意两个第一代码文本之间的文本相似度。
可见,本示例中,电子设备能够获取两个第一代码文本。
S102,所述电子设备确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分。
其中,所述第一文本特征可以是文本指纹,所述第一文本特征也可以是指纹向量,第一文本不同对应的获取方式不同。
可选的,当所述第一文本特征为文本指纹时,所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征,包括:计算所述每个第一代码文本的对应的散列值;根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹,所述多个文本指纹为第一代码文本的第一文本特征。
其中,所述电子设备计算所述每个第一代码文本的对应的散列值可以是:所述电子设备对所述每个第一代码文本进行格式化;所述电子设备计算格式后的所述第一代码文本对应的散列值。第一代码文本进行格式化是为了去除代码文本影响相似度计算的噪音,所述电子设备对所述每个第一代码文本进行格式化所述电子设备采用基于标记串的方法对所述每个第一代码文本进行格式化,比如,对所述每个第一代码文本进行格式化可以是对所述每个第一代码文本执行以下操作:过滤掉空格和注释、替换所有的变量名为第一预设字母、替换所有的字符串为第二预设字母、替换所有的函数名为第三预设字母(如所有的变量名替换为V,所有字符串替换为S,所有函数名替换为F),所述电子设备计算格式后的所述第一代码文本对应的散列值可以是所述电子设备采用随机串匹配算法计算格式后的所述第一代码文本对应的散列值,其中,所述计算格式后的所述第一代码文本对应的散列值,其中,所述电子设备根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹可以是所述电子设备采用字符串匹配算法根据所述每个第一代码文本的对应的散列值。
举例来说,第一代码文本内容为:def finger():print 1,首先,对该代码文本进行格式化,如去除空白、注释,进行标记化:得到格式化后的第一代码文本内容:defN():printS,采用N-Gram模型,如5-gram,得到格式化后的第一代码文本内容的子串:defN(、efN()、fN():、N():p、():pr、):pri、:prin、print、rintS,分别计算Hash值:72 73 32 34 4589 78 43 23,再通过浮动窗口处理,如滑动窗口(w=4),会得到对应的窗口(72,73,32,34)(73,32,34,45)(32,34,45,89)(34,45,89,78)(45,89,78,43)(89,78,43,23),在每个窗口选择最小值,并记录位置:(32,2)(34,3)(43,7)(23,8),最后,生成的文本多个指纹为:3234 43 23。
可见,本示例中,电子设备能够获取代码文本的文本指纹作为第一文本特征。
可选的,所述第一文本特征也可以是指纹向量,所述电子设备确定所述两个第一代码文本中每个第一代码文本的第一文本特征,包括:所述电子设备计算所述每个第一代码文本的对应的散列值;所述电子设备根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹;所述电子设备根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量,所述指纹向量为第一代码文本的第一文本特征。
其中,上述多个文本指纹的获取过程区与前述当所述第一文本特征为文本指纹的描述内容相同,在前述当所述第一文本特征为文本指纹的基础之上,根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量。
下面,对根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量进行详细描述。
举例来说,若两个第一代码文本A和B中,第一代码文本A对应的多个指纹为:32 3443 235611,第一代码文本B对应的多个指纹为:38 36 34 23 34 56 2213 14,列出第一代码文本A和B所有出现过的指纹32 34 43 23 56 11 38 36 221314,计算第一代码文本A对应的词频32-1,34-1,43-1,23-1,56-1,11-1,38-0,36-0,22-0,13-0,14-0;计算第一代码文本B对应的词频32-0,34-1,43-0,23-1,56-1,11-0,38-1,36-1,22-1,13-1,14-1;则第一代码文本A对应的指纹向量为(1,1,1,1,1,1,0,0,0,0,0),则第一代码文本B对应的指纹向量为(0,1,0,1,1,0,1,1,1,1,1)。
可见,本示例中,电子设备能够获取代码文本的文本指纹向量作为第一文本特征。
S103,所述电子设备将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征。
可选的,所述第二文本特征包括语义向量,所述预先训练好的文本特征提取模型包括第一模型和第二模型。举例来说,将两个第一代码文本A和B输入预先训练好的文本特征提取模型,两个第一代码文本A和B中,第一代码文本A的文本内容为:Frank is the mostserious boy in his class,第一代码文本B的文本内容为:Frank is more serious thanany other boys in his class,在该预先训练好的文本特征提取模型中,先对两个第一代码文本A和B进行格式化处理得到人名地名统一的代码文本,格式化后的第一代码文本A的文本内容为:w is the most serious boy in his class,格式化后的第一代码文本A的文本内容为:w is more serious than any other boys in his class,再对两个第一代码文本A和B进行分词处理,第一代码文本A的词组列表为w,is,the,most,serious,boy,in,his,class,第一代码文本A的词组列表为w,is,more,serious,than,any,other,boys,in,his,class,然后使用word2vec,把每个词映射成一个向量,得到一个代码矩阵,输入上述第一模型中,得到所述两个第一代码文本对应的两个词频向量,将所述两个词频向量导入所述第二模型,得到所述两个第一代码文本对应的两个语义向量。
可见,本示例中,电子设备能够获取代码文本的语义向量作为第二文本特征。
S104,所述电子设备根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
在第一文本特征为文本指纹时,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度,包括:根据所述两个第一代码文本中所述每个第一代码文本的多个文本指纹,得到所述两个第一代码文本的第一相似度;计算所述两个第一代码文本的两个语义向量的余弦相似度,得到所述两个第一代码文本的第二相似度;根据所述第一相似度和所述第二相似度得到所述目标相似度。
其中,所述根据所述两个第一代码文本中所述每个第一代码文本的多个文本指纹,得到所述两个第一代码文本的第一相似度的实现方式可以是:确定所述两个第一代码文本相同文本指纹的个数;根据所述相同文本指纹的个数和所述两个第一代码文本总个数确定所述两个第一代码文本的第一相似度,得到所述两个第一代码文本对应的第一相似度。
举例来说,若两个第一代码文本A和B中,第一代码文本A对应的多个指纹为:32 3443 23 56 11,第一代码文本B对应的多个指纹为:38 36 34 23 34 5622 13 14,所述两个第一代码文本相同文本指纹的个数为3,两个第一代码文本A和B的指纹总个数为15,则两个第一代码文本A和B的第一相似度为3/15,两个第一代码文本A和B,若该第一代码文本A对应的语义向量为(0.2,0.5,-0.38,0.7,0.5),则第一代码文本B对应的语义向量为(0.1,0.6,-0.2,0.7,0.3)则计算出两个第一代码文本A和B对应的余弦相似度cos θ为
Figure BDA0002315189660000081
再根据所述第一相似度和所述第二相似度得到所述目标相似度,实际应用中,可根据不同的应用场景确定所述目标相似度,若所述第一相似度满足需求,则确定所述第一相似度为所述目标相似度,若所述第二相似度满足需求,则确定所述第二相似度为所述目标相似度。
在第一文本特征为文本指纹向量时,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度,包括:根据所述两个第一代码文本的所述语义向量和所述指纹向量,得到所述两个第一代码文本的两个综合向量;计算所述两个综合向量的余弦相似度,所述余弦相似度为所述两个第一代码文本对应的目标相似度。
举例来说,两个第一代码文本A和B,若第一代码文本A对应的指纹向量为(1,1,1,1,1,1,0,0,0,0,0),第一代码文本B对应的指纹向量为(0,1,0,1,1,0,1,1,1,1,1),第一代码文本A对应的语义向量为(0.2,0.5,-0.38,0.7,0.5),则第一代码文本B对应的语义向量为(0.1,0.6,-0.2,0.7,0.3),则第一代码文本A的综合向量为(1,1,1,1,1,1,0,0,0,0,0,0.2,0.5,-0.38,0.7,0.5),则第一代码文本B的综合向量为(0,1,0,1,1,0,1,1,1,1,1,0.1,0.6,-0.2,0.7,0.3),最后,求两个第一代码文本A和B的综合向量的余弦相似度。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
需要说明的是,S103和S104的内容还可以是通过预先训练好的相似度计算模型实现,即是将将所述两个第一代码文本导入预先训练好的相似度计算模型,得到所述两个第一代码文本的所述目标相似度,其中,所述相似度计算模型的获取步骤如下:首先,使用Winnowing算法获得种子样本,相似度大于80%时记为正样本1,相似度小于50%记为负样本0,选取完全不相似的1000个样本为种子数据,用常用的抄袭手段对样本1:15进行抄袭样本构建,产生15000对正样本;种子样本两两匹配选取30000对为负样本,接着,使用词法分析器pygment预处理代码之后,将原文T1、正例T2、负例T3的三元输入,把代码变成矩阵,利用矩阵来还原学生编程类作业,使用TF-IDF值进行填充,然后,使用CNN模型的512个filter模拟kgram的卷积过程,然后进行池化,得到F1,F2,F3特征向量,然后,叠加一层DNN模型,都得到200维度的语义向量,并再此基础之上,拼接winnowing算法得到的指纹向量,最后,使用目标函数:max(0,simi(F1,F2)-simi(F1,F3)+1)重新计算作业相似度。
在一个可能的示例中,当一次对多个第一代码文件进行相似度计算的情况下,所述将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,包括:计算所述两个第一代码文本的第一文本特征的第一相似度;判断所述第一相似度对应的相似区分度是否小于预设区分度;若是,则将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征。
其中,所述预设区分度可以是用户根据经验自己设定的阈值,所述第一相似度对应的相似区分度可以是通过以下操作得到的:根据所述多个第一代码文本中任意两个第一代码文本的第一文本特征,计算所述任意两个第一代码文本的第一相似度,得到所述多个第一代码文本对应的多个第一相似度;获取所述多个第一相似度中的最大第一相似度和最小第一相似度的差值;根据所述差值得到所述多个第一代码文本的相似区分度。
即是,电子设备可以根据多个代码文本对应的多个第一文本特征得到的多个第一相似度,当多个第一相似度的相似区分度达不到预设区分度时,则进一步获取多个代码文本对应的多个第二文本特征,最终,结合多个代码文本对应的第一文本特征和第二文本特征得到精确度更高的相似度结果。
在一个可能的示例中,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度之后,所述方法还包括:根据所述目标相似度生成人机交互界面,所述人机交互界面包括第一功能按钮;在当前界面显示所述交互界面;在检测到用户针对所述第一功能按钮的触控操作时,确定所述两个第一代码文本对应的至少一处内容相似的文本内容;标记所述两个第一代码文本对应的至少一处内容相似的文本内容;在当前显示界面上显示标记后的所述两个第一代码文本。
举例来说,人机交互界面包括相似度结果信息,如“两个代码文本的相似度为百分之七十”,人机界面上还包括用户操作提示信息和对应的第一功能按钮,如“是否查看相似内容?”,当用户点击按钮第一功能按钮“是”,则此时电子设备会确定两个第一代码文本对应的至少一处内容相似的文本内容,并并列或并排显示两个第一代码文本,还可进行联动显示,方便查看相似内容。
可见,本示例中,电子设备根据用户操作显示进行相似内容标记后的两个代码文本。
与上述图1所示的实施例一致的,请参阅图2,图2是本申请实施例提供的又一种代码文本处理方法的流程示意图,如图2所示,本代码文本处理方法包括:
S201,电子设备获取两个第一代码文本;
S202,所述电子设备计算所述每个第一代码文本的对应的散列值;
S203,所述电子设备根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹;
S204,所述电子设备根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量,所述指纹向量为第一代码文本的第一文本特征;
S205,将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,得到所述两个第一代码文本对应的两个语义向量;
S206,所述电子设备根据所述两个第一代码文本的所述语义向量和所述指纹向量,得到所述两个第一代码文本的两个综合向量;
S207,所述电子设备计算所述两个综合向量的余弦相似度,所述余弦相似度为所述两个第一代码文本对应的目标相似度。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
与上述图1所示的实施例一致的,请参阅图3,图3是本申请实施例提供的再一种代码文本处理方法的流程示意图,如图3所示,本代码文本处理方法包括:
S301,电子设备获取两个第一代码文本;
S302,所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
S303,所述电子设备计算所述两个第一代码文本的第一文本特征的第一相似度;
S304,所述电子设备判断所述第一相似度对应的相似区分度是否小于预设区分度;
S305,若是,则将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征;
S306,所述电子设备根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
与上述图1、图2、图3所示的实施例一致的,请参阅图4,图4是本申请实施例提供的一种电子设备400的结构示意图,如图4所示,所述电子设备400包括应用处理器410、存储器420、通信接口430以及一个或多个程序421,其中,所述一个或多个程序421被存储在上述存储器420中,并且被配置由上述应用处理器410执行,所述一个或多个程序421包括用于执行以下步骤的指令;
获取两个第一代码文本;
确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
在一个可能的示例中,在所述将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征方面,所述一个或多个程序421中的指令具体用于执行以下操作:计算所述两个第一代码文本的第一文本特征的第一相似度;判断所述第一相似度对应的相似区分度是否小于预设区分度;若是,则将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征。
在一个可能的示例中,所述第二文本特征包括语义向量。
在一个可能的示例中,在所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征方面,所述一个或多个程序421中的指令具体用于执行以下操作:计算所述每个第一代码文本的对应的散列值;根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹;根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量,所述指纹向量为第一代码文本的第一文本特征。
在一个可能的示例中,在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度方面,所述一个或多个程序421中的指令具体用于执行以下操作:根据所述两个第一代码文本的所述语义向量和所述指纹向量,得到所述两个第一代码文本的两个综合向量;计算所述两个综合向量的余弦相似度,所述余弦相似度为所述两个第一代码文本对应的目标相似度。
在一个可能的示例中,在所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征方面,所述一个或多个程序421中的指令具体用于执行以下操作:计算所述每个第一代码文本的对应的散列值;根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹,所述多个文本指纹为第一代码文本的第一文本特征。
在一个可能的示例中,在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度方面,所述一个或多个程序421中的指令具体用于执行以下操作:根据所述两个第一代码文本中所述每个第一代码文本的多个文本指纹,得到所述两个第一代码文本的第一相似度;计算所述两个第一代码文本的两个语义向量的余弦相似度,得到所述两个第一代码文本的第二相似度;根据所述第一相似度和所述第二相似度得到所述目标相似度。
在一个可能的示例中,所述一个或多个程序421包括用于执行以下步骤的指令:在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度之后,根据所述目标相似度生成交互界面,所述人机交互界面包括第一功能按钮;在当前界面显示所述交互界面;在检测到用户针对所述第一功能按钮的触控操作时,确定所述两个第一代码文本对应的至少一处内容相似的文本内容;标记所述两个第一代码文本对应的至少一处内容相似的文本内容;在当前显示界面上显示标记后的所述两个第一代码文本。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述图1、图2、图3所示的实施例一致的,请参阅图5,图5是本申请实施例中所涉及的代码文本处理装置500的功能模块组成框图。如图5所示,该代码文本处理装置500应用于电子设备,包括通信单元501和处理单元502,其中,
所述通信单元501,用于获取两个第一代码文本;
所述处理单元502,用于确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
所述处理单元502,还用于将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
所述处理单元502,还用于根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
其中,所述代码文本处理装置500还可以包括存储单元503,用于存储电子设备的程序代码和数据。所述通信单元501可以是触控显示屏或者收发器,所述处理单元502可以是处理器,所述存储单元503可以是存储器。
可以看出,本申请实施例中,首先获取两个第一代码文本,之后,确定两个第一代码文本中每个第一代码文本的第一文本特征,第一文本特征用于表征文本的结构特征,结构特征用于反映文本的组成成分,然后,将两个第一代码文本导入预先训练好的文本特征提取模型,得到两个第一代码文本中每个第一代码文本的第二文本特征,第二文本特征用于表征文本的语义特征,最后,根据两个第一代码文本的第一文本特征和第二文本特征,得到两个第一代码文本对应的目标相似度。可见,本申请实施例的电子设备在获取两个代码文本之后,通过处理两个代码文本的结构特征和语义特征,根据两个代码文本的结构特征和语义特征计算两个代码文本的相似度,进而提升代码文本之间相似度计算的精确性。
在一个可能的示例中,在所述将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征方面,所述处理单元502具体用于:计算所述两个第一代码文本的第一文本特征的第一相似度;判断所述第一相似度对应的相似区分度是否小于预设区分度;若是,则将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征。
在一个可能的示例中,所述第二文本特征包括语义向量。
在一个可能的示例中,在所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征方面,所述处理单元502具体用于:计算所述每个第一代码文本的对应的散列值;根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹;根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量,所述指纹向量为第一代码文本的第一文本特征。
在一个可能的示例中,在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度方面,所述处理单元502具体用于:根据所述两个第一代码文本的所述语义向量和所述指纹向量,得到所述两个第一代码文本的两个综合向量;计算所述两个综合向量的余弦相似度,所述余弦相似度为所述两个第一代码文本对应的目标相似度。
在一个可能的示例中,在所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征方面,所述处理单元502具体用于:计算所述每个第一代码文本的对应的散列值;根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹,所述多个文本指纹为第一代码文本的第一文本特征。
在一个可能的示例中,在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度方面,所述处理单元502具体用于:根据所述两个第一代码文本中所述每个第一代码文本的多个文本指纹,得到所述两个第一代码文本的第一相似度;计算所述两个第一代码文本的两个语义向量的余弦相似度,得到所述两个第一代码文本的第二相似度;根据所述第一相似度和所述第二相似度得到所述目标相似度。
在一个可能的示例中,所述处理单元502还用于:在所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度之后,根据所述目标相似度生成交互界面,所述人机交互界面包括第一功能按钮;在当前界面显示所述交互界面;在检测到用户针对所述第一功能按钮的触控操作时,确定所述两个第一代码文本对应的至少一处内容相似的文本内容;标记所述两个第一代码文本对应的至少一处内容相似的文本内容;在当前显示界面上显示标记后的所述两个第一代码文本。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有该变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (11)

1.一种代码文本处理方法,其特征在于,应用于电子设备,所述方法包括:
获取两个第一代码文本;
确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
2.根据权利要求1所述的方法,其特征在于,所述将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,包括:
计算所述两个第一代码文本的第一文本特征的第一相似度;
判断所述第一相似度对应的相似区分度是否小于预设区分度;
若是,则将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征。
3.根据权利要求1或2所述的方法,其特征在于,所述第二文本特征包括语义向量。
4.根据权利要求3所述的方法,其特征在于,所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征,包括:
计算所述每个第一代码文本的对应的散列值;
根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹;
根据所述两个第一代码文本中每个第一代码文本的多个文本指纹得到所述每个第一代码文本的指纹向量,所述指纹向量为第一代码文本的第一文本特征。
5.根据权利要求4所述的方法,其特征在于,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度,包括:
根据所述两个第一代码文本的所述语义向量和所述指纹向量,得到所述两个第一代码文本的两个综合向量;
计算所述两个综合向量的余弦相似度,所述余弦相似度为所述两个第一代码文本对应的目标相似度。
6.根据权利要求3所述的方法,其特征在于,所述确定所述两个第一代码文本中每个第一代码文本的第一文本特征,包括:
计算所述每个第一代码文本的对应的散列值;
根据所述每个第一代码文本的对应的散列值得到所述每个第一代码文本的多个文本指纹,所述多个文本指纹为第一代码文本的第一文本特征。
7.根据权利要求6所述的方法,其特征在于,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度,包括:
根据所述两个第一代码文本中所述每个第一代码文本的多个文本指纹,得到所述两个第一代码文本的第一相似度;
计算所述两个第一代码文本的两个语义向量的余弦相似度,得到所述两个第一代码文本的第二相似度;
根据所述第一相似度和所述第二相似度得到所述目标相似度。
8.根据权利要求1所述的方法,其特征在于,所述根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度之后,所述方法还包括:
根据所述目标相似度生成交互界面,所述人机交互界面包括第一功能按钮;
在当前界面显示所述交互界面;
在检测到用户针对所述第一功能按钮的触控操作时,确定所述两个第一代码文本对应的至少一处内容相似的文本内容;
标记所述两个第一代码文本对应的至少一处内容相似的文本内容;
在当前显示界面上显示标记后的所述两个第一代码文本。
9.一种代码文本处理装置,其特征在于,应用于电子设备,所述装置包括:通信模块和处理模块,其中,
所述通信模块,用于获取两个第一代码文本;
所述处理模块,用于确定所述两个第一代码文本中每个第一代码文本的第一文本特征,所述第一文本特征用于表征文本的结构特征,所述结构特征用于反映文本的组成成分;
所述处理模块,还用于将所述两个第一代码文本导入预先训练好的文本特征提取模型,得到所述两个第一代码文本中每个第一代码文本的第二文本特征,所述第二文本特征用于表征文本的语义特征;
所述处理模块,还用于根据所述两个第一代码文本的所述第一文本特征和所述第二文本特征,得到所述两个第一代码文本对应的目标相似度。
10.一种电子设备,其特征在于,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-8任一项所述的方法中的步骤的指令。
11.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-8任一项所述的方法。
CN201911290957.3A 2019-12-12 2019-12-12 代码文本处理方法及相关产品 Pending CN111126031A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911290957.3A CN111126031A (zh) 2019-12-12 2019-12-12 代码文本处理方法及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911290957.3A CN111126031A (zh) 2019-12-12 2019-12-12 代码文本处理方法及相关产品

Publications (1)

Publication Number Publication Date
CN111126031A true CN111126031A (zh) 2020-05-08

Family

ID=70498970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911290957.3A Pending CN111126031A (zh) 2019-12-12 2019-12-12 代码文本处理方法及相关产品

Country Status (1)

Country Link
CN (1) CN111126031A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112749131A (zh) * 2020-06-11 2021-05-04 腾讯科技(上海)有限公司 信息消重处理方法、装置及计算机可读存储介质
CN113064634A (zh) * 2021-03-01 2021-07-02 苏州棱镜七彩信息科技有限公司 一种对代码克隆进行同源检测的方法
WO2023065638A1 (zh) * 2021-10-22 2023-04-27 平安科技(深圳)有限公司 一种数据检索方法、装置、电子设备以及存储介质
CN116414445A (zh) * 2023-06-07 2023-07-11 深圳海云安网络安全技术有限公司 一种基于源代码水印的同源性检测方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912514A (zh) * 2016-04-28 2016-08-31 吴国华 基于指纹特征的文本复制检测系统及方法
CN110297891A (zh) * 2019-04-24 2019-10-01 南京邮电大学 一种面向程序设计答疑系统的知识库检索方法
CN110471835A (zh) * 2019-07-03 2019-11-19 南瑞集团有限公司 一种基于电力信息系统代码文件的相似度检测方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912514A (zh) * 2016-04-28 2016-08-31 吴国华 基于指纹特征的文本复制检测系统及方法
CN110297891A (zh) * 2019-04-24 2019-10-01 南京邮电大学 一种面向程序设计答疑系统的知识库检索方法
CN110471835A (zh) * 2019-07-03 2019-11-19 南瑞集团有限公司 一种基于电力信息系统代码文件的相似度检测方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112749131A (zh) * 2020-06-11 2021-05-04 腾讯科技(上海)有限公司 信息消重处理方法、装置及计算机可读存储介质
CN113064634A (zh) * 2021-03-01 2021-07-02 苏州棱镜七彩信息科技有限公司 一种对代码克隆进行同源检测的方法
WO2023065638A1 (zh) * 2021-10-22 2023-04-27 平安科技(深圳)有限公司 一种数据检索方法、装置、电子设备以及存储介质
CN116414445A (zh) * 2023-06-07 2023-07-11 深圳海云安网络安全技术有限公司 一种基于源代码水印的同源性检测方法及系统
CN116414445B (zh) * 2023-06-07 2023-08-29 深圳海云安网络安全技术有限公司 一种基于源代码水印的同源性检测方法及系统

Similar Documents

Publication Publication Date Title
CN108647205B (zh) 细粒度情感分析模型构建方法、设备及可读存储介质
CN107908635B (zh) 建立文本分类模型以及文本分类的方法、装置
US11308278B2 (en) Predicting style breaches within textual content
CN111126031A (zh) 代码文本处理方法及相关产品
CN110276023B (zh) Poi变迁事件发现方法、装置、计算设备和介质
US8370278B2 (en) Ontological categorization of question concepts from document summaries
Van Atteveldt et al. Computational analysis of communication
US9514417B2 (en) Cloud-based plagiarism detection system performing predicting based on classified feature vectors
CN111930792B (zh) 数据资源的标注方法、装置、存储介质及电子设备
CN112818093A (zh) 基于语义匹配的证据文档检索方法、系统及存储介质
CN110569335A (zh) 基于人工智能的三元组校验方法、装置及存储介质
CN117290694B (zh) 问答系统评估方法、装置、计算设备及存储介质
CN117454884B (zh) 历史人物信息纠错方法、系统、电子设备和存储介质
CN110032734B (zh) 近义词扩展及生成对抗网络模型训练方法和装置
CN111198939A (zh) 语句相似度的分析方法、装置及计算机设备
US20220156468A1 (en) Method and apparatus for generating knowledge graph
CN116402166B (zh) 一种预测模型的训练方法、装置、电子设备及存储介质
CN113064973A (zh) 文本分类方法、装置、设备及存储介质
CN110110218A (zh) 一种身份关联方法及终端
JP5020352B2 (ja) 名前付き要素マーク付け装置、名前付き要素マーク付け方法及びそのコンピュータ読出可能な媒体
CN111602129B (zh) 针对注释和墨迹的智能搜索
CN112559711A (zh) 一种同义文本提示方法、装置及电子设备
CN107665442A (zh) 获取目标用户的方法及装置
CN114117015A (zh) 一种知识点溯源方法、装置、设备以及存储介质
CN114842982A (zh) 一种面向医疗信息系统的知识表达方法、装置及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200508