本发明属于语义匹配,具体涉及一种含代码文本信息的重复帖子标注方法、存储介质及电子设备。
背景技术:
1、语义匹配是自然语言处理领域一项基本任务,其目的在于判断文本之间在语义关系层面上的相似程度。语义相似程度是很多下游任务如语言翻译、句子改写、情感分析等任务的基础工作。语义匹配研究两端文本之间的关系,又根据文本类型进行细分,如重复问题检测、释义识别等。这些任务对智能客服、个人助手、语言模型等领域具有重要促进作用。该领域数据集以离散标签表示文本对之间的语义相似程度,且在数据集构建时,需要考虑标签分布均衡,在构建过程中,需要人工对数据进行主观判断,给出标注结果。在对数据进行配对时,采用随机配对会导致标签分布不均衡,从而需要更多的标注数据进行补充,费时费力。
2、在线教育领域内,帖子问答是一种常见形式,对帖子数据应用常见重复问题(faq)检索问答可以缓解平台师生比例失调、学生问题无人回答的现象,该现象在选课人数众多的编程课程尤为明显。然而现有语义匹配数据集少有对此领域展开,多针对特定领域的单一、短小句子。有些数据集来源于论坛但抛弃了用户回答的部分,丢失了实际信息,而对于编程类课程而言,少有的数据集也没有考虑到代码文本为帖子带来的丰富语义信息。这些数据集的种种问题影响着编程类课程重复帖子识别任务的发展。
技术实现思路
1、针对上述问题,本发明的目的是提供一种含代码文本信息的重复帖子标注方法、存储介质及电子设备,以解决现有语义匹配领域缺少在线教育领域内容,缺少代码文本融合信息的数据集,致使在线教育领域智能问答发展阻塞的问题。
2、为实现上述目的,本发明采取的技术方案包括:
3、一种含代码文本信息的重复帖子标注方法,包括以下步骤:
4、s1,采集多个原始帖子,每个原始帖子包括自然语言文本和帖子信息,自然语言文本包括问题标题、问题描述和用户回复,帖子信息至少包括帖子编号和帖子所属类别;
5、s2,以xml格式存储s1获得的多个原始帖子,得到多个xml格式帖子,提取各xml格式帖子中自然语言文本中的代码文本和图片并单独保存,并将各xml格式帖子中代码文本的位置替换为代码标识符,将各xml格式帖子中图片的位置替换为图片标识符,得到多个xml标识帖子和各xml标识帖子对应的代码文本和/或图片;
6、s3,清洗s2得到的多个xml标识帖子,得到多个一次清洗后的xml标识帖子;具体包括剔除帖子所属类别中不属于学生用户提问的xml标识帖子,剔除用户回复为空的xml标识帖子,剔除问题描述仅有图片的xml标识帖子;
7、s4,对s3得到的各一次清洗后的xml标识帖子对应的代码文本进行校验,剔除代码文本的中文字符占比超过阈值的一次清洗后的xml标识帖子,得到多个二次清洗后的xml标识帖子;
8、s5,对s4得到的多个二次清洗后的xml标识帖子进行分词并进行词向量化,得到多组词向量,并对各组词向量求和得到多个帖子向量;
9、随机采样一部分帖子向量作为样本集,对样本集中的每一个帖子向量与所有帖子向量逐一两两计算余弦相似度值,逐一保留除自身外余弦相似度值最高的两条并去重,得到多对匹配结果;
10、s6,对s5得到的多对匹配结果通过标注等级进行人工标注分级,得到多对匹配分级帖子。
11、优选的,s1中的多个原始帖子中至少包含1段代码文本的原始帖子占总原始帖子的比值不少于30%。
12、优选的,s1中的帖子信息还包括提问时间、回复时间、提问用户名、帖子点赞数。
13、优选的,s2中的提取各xml格式帖子中的代码文本具体包括:提取代码文本展示区域的内容,或通过基于规则的正则匹配方法提取自然语言文本中的代码文本。
14、优选的,通过基于规则的正则匹配方法提取自然语言文本中的代码文本具体包括:对于自然语言文本中出现成对的大括号元素、编程语言特有的头文件、编程语言特有的函数标识进行整段提取,视为代码文本。
15、优选的,s6中的标注等级包括0、1和2三个级别;
16、其中,0表示两个帖子没有相关性,属于不同帖子;1表示两个帖子描述的不是同一问题,但对另一帖子有帮助,属于相似帖子;2表示两个帖子描述的是同一问题,属于相同帖子。
17、优选的,s4中的阈值为20%。
18、优选的,s4还包括对中文字符占比超过阈值的代码文本进行人工复筛,将人工复筛判定属于代码文本所对应的一次清洗后的xml标识帖子补入二次清洗后的xml标识帖子。
19、一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行可执行指令时,实现本申请个公开的含代码文本信息的重复帖子标注方法。
20、一种电子设备,包括:存储器,用于存储可执行指令;处理器,用于执行存储器中存储的可执行指令时,以实现本申请公开的含代码文本信息的重复帖子标注方法。
21、与现有技术相比,本发明的优点为:
22、本发明的含代码文本信息的重复帖子标注方法、存储介质及电子设备,保证数据标签均衡,极大减少人工标注成本,提高标注效率且平衡标签分布;经过该方法构建的数据集标签分布均衡,标注时间花费较少,数据集质量优质。
1.一种含代码文本信息的重复帖子标注方法,其特征在于,包括以下步骤:
2.如权利要求1所述的含代码文本信息的重复帖子标注方法,其特征在于,所述s1中的多个原始帖子中至少包含1段代码文本的原始帖子占总原始帖子的比值不少于30%。
3.如权利要求1所述的含代码文本信息的重复帖子标注方法,其特征在于,所述s1中的帖子信息还包括提问时间、回复时间、提问用户名、帖子点赞数。
4.如权利要求1所述的含代码文本信息的重复帖子标注方法,其特征在于,所述s2中的提取各xml格式帖子中的代码文本具体包括:提取代码文本展示区域的内容,或通过基于规则的正则匹配方法提取自然语言文本中的代码文本。
5.如权利要求4所述的含代码文本信息的重复帖子标注方法,其特征在于,通过基于规则的正则匹配方法提取自然语言文本中的代码文本具体包括:对于自然语言文本中出现成对的大括号元素、编程语言特有的头文件、编程语言特有的函数标识进行整段提取,视为代码文本。
6.如权利要求1所述的含代码文本信息的重复帖子标注方法,其特征在于,所述s6中的标注等级包括0、1和2三个级别;
7.如权利要求1-6任一所述的含代码文本信息的重复帖子标注方法,其特征在于,所述s4中的阈值为20%。
8.如权利要求7所述的含代码文本信息的重复帖子标注方法,其特征在于,s4还包括对中文字符占比超过阈值的代码文本进行人工复筛,将人工复筛判定属于代码文本所对应的一次清洗后的xml标识帖子补入二次清洗后的xml标识帖子。
9.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现权利要求1-8任意一项所述的含代码文本信息的重复帖子标注方法。
10.一种电子设备,其特征在于,包括:
