CN113139054A - 一种基于Transformer的代码编程语言分类方法 - Google Patents
一种基于Transformer的代码编程语言分类方法 Download PDFInfo
- Publication number
- CN113139054A CN113139054A CN202110430772.9A CN202110430772A CN113139054A CN 113139054 A CN113139054 A CN 113139054A CN 202110430772 A CN202110430772 A CN 202110430772A CN 113139054 A CN113139054 A CN 113139054A
- Authority
- CN
- China
- Prior art keywords
- code
- programming language
- model
- embedding
- roberta
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 239000013598 vector Substances 0.000 claims abstract description 37
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000013507 mapping Methods 0.000 claims abstract description 6
- 230000011218 segmentation Effects 0.000 claims abstract description 5
- 238000012549 training Methods 0.000 claims description 45
- 230000002457 bidirectional effect Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 5
- 210000002569 neuron Anatomy 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 claims description 2
- 238000004140 cleaning Methods 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 239000013604 expression vector Substances 0.000 abstract description 2
- 230000008569 process Effects 0.000 abstract description 2
- 238000007781 pre-processing Methods 0.000 abstract 1
- 238000013145 classification model Methods 0.000 description 15
- 230000018109 developmental process Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种基于Transformer的代码编程语言分类方法,包括以下步骤:(1)从Stack Overflow上搜集问答帖子作为数据集,对原始数据集中的数据进行数据预处理;(2)对使用BPE分词后的数据进行词嵌入将词转换成向量;(3)基于上述构建的数据集,对RoBERTa模型进行微调,将生成的词向量输入进RoBERTa模型,通过双层的Transformer编码器进行代码语义的学习,生成语义表示向量Xsemantic;(4)将语义向量Xsemantic通过线性层映射到编程语言类别标签上,通过Softmax算法得到相应的编程语言。本发明的有益效果为:可以根据代码片段快速识别代码类型,以起到辅助开发人员在问答网站上快速寻找到解决方案的作用。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于Transformer的代码编程语言分类方法。
背景技术
在软件开发周期中,不同的开发任务通常使用不同的编程语言(如Java、Python、C#、C语言等)。在大多数情况下,针对不同编程语言类型的问题需要的解决方案是不同的。在软件开发过程中程序员经常会遇到各种问题,在问答网站发帖子寻求解决方案成为主流的解决方式。因此当开发人员在问答网站上(例如Stack Overflow)提问时,网站需要标记该语言的类型从而快速的找到对应的解决方案,Stack Overflow依赖于帖子中源代码的语言标签来匹配能够提供答案的用户。然而,在Stack Overflow中的新用户或新手开发人员可能因为对于源代码不熟悉的缘故,无法正确地标记他们的帖子中代码帖子的语言类型。源代码分类工具可以根据代码片段快速识别代码类型,从而帮助Stack Overflow快速筛选出与问题相对应的解决方案。且代码分类是软件工程领域长期研究的热点问题,代码分类的研究可以推动对各子领域的发展,例如,程序理解,漏洞检测以及恶意软件检测等,可以协助后续的软件升级,降低软件维护的成本。
已有工作通过机器学习方法建立分类模型,如朴素贝叶斯分类器,或者随机森林分类器,但是基于传统机器学习的分类方法在性能上存在一定的瓶颈,分类效果并不好。少数使用深度学习模型(CNN,RNN)的分类方法效果和传统机器学习方法相比,分类效果有所提升但是效果仍不佳。
如何解决上述技术问题成为本发明面临的课题。
发明内容
本发明的目的在于提供一种基于Transformer的代码编程语言分类方法。
本发明的思想为:本发明提出基于深度学习的代码分类方法,即借助基于Transformer编码器的RoBERTa预训练模型作为本发明的分类模型,本发明的方法在相同的数据集上的分类效果已经优于现有的最佳方法。
本发明是通过如下措施实现的:一种基于Transformer的代码编程语言分类方法,其中,包括以下步骤:
(1)、搜集来自Stack Overflow中问答帖子的内容,从帖子中获取代码片段以及代码的编程语言类型的标记,对收集的数据进行清洗、过滤,得到数据集D,将数据集D中的数据格式设定为<代码,编程语言类型标签>;
(2)、对数据集D中的代码片段进行分词处理;
(3)、将分词输入嵌入层得到分词的特征向量X;
(4)、基于上述所建的数据集,通过数据集D中划分的训练集数据对基于Transformer的预训练模型进行训练微调,预训练模型使用Transformer的编码器作为语义学习算法的主要框架,可以捕捉真实意义上的双向上下文信息,具体包括如下步骤:
(4-1)、嵌入层中学习到的特征向量X输入到预训练模型中的双向编码器(Bidirectional Encoder)中进行语义学习,具体包括如下步骤:
(4-1-1)、将特征向量输入到多头注意力层(multi-head attention layer)中,接着通过残差连接和归一化层,使得矩阵运算维度一致;
(4-1-2)、通过前馈神经网络层,使用残差连接和归一化层生成语义向量Y;
(4-2)、语义学习得到的语义向量Y通过线性层映射到数据集中的编程语言类型标签上,通过softmax函数得到最终分类的编程语言类型。
作为本发明提供的一种基于Transformer的代码编程语言分类方法进一步优化方案,所述步骤(2)中对代码片段分词使用(Byte-Pair Encoding)BPE算法,将数据集的代码片段当作文本进行分词,将代码片段中的单词和符号拆分为字符序列,并在末尾添加后缀“</w>”,避免了训练集中出现更多的“[UNK]”符号,BPE算法对代码片段分词可以有效解决在使用测试集测试模型时出现的OOV(Out-Of-Vocabulary)问题。
作为本发明提供的一种基于Transformer的代码编程语言分类方法进一步优化方案,所述步骤(3)中的分词的嵌入得到特征向量,具体内容为以下步骤:
(3-1)通过分词的位置嵌入(PositionEmbedding)将分词的位置信息编码成特征向量,本发明将模型中的位置编码类型设置为“absolute”,即表示为"position_embedding_type":"absolute",模型根据分词的绝对位置信息作为编码依据,从而使得位置编码会在词向量中加入单词的位置信息;
(3-2)通过分段嵌入(Segment Embedding)来区分两个句子之间的关系;
(3-3)最后通过令牌嵌入(Token Embedding)后将词映射成向量,将三个学习的向量相叠加得到最终代码片段的特征向量X,即表示为:X=Position Embedding+SegmentEmbedding+Token Embedding。
作为本发明提供的一种基于Transformer的代码编程语言分类方法进一步优化方案,所述步骤(4)中的基于Transformer的预训练模型为RoBERTa模型,使用RoBERTa预训练模型作为编码器将分词映射到高维的向量空间。
作为本发明提供的一种基于Transformer的代码编程语言分类方法进一步优化方案,所述步骤(4)具体包括如下步骤:
(1)特征向量进入多头注意力层(multi-head attention layer)中,然后采用残差连接和归一化层,使得矩阵运算的维度一致,并将网络中的隐藏层归一化为标准正态分布,从而加快了模型的训练速度和收敛速度;
(2)所述RoBERTa预训练模型的参数设置如下:
所述RoBERTa预训练模型的词向量维度设置为768;
所述RoBERTa预训练模型的编码器-解码器设置为12层;
所述RoBERTa预训练模型的注意力机制的Dropout设置为为0.1;
所述RoBERTa预训练模型的最大位置编码设置为514;
所述RoBERTa预训练模型的隐藏层激活函数为gelu函数;
所述RoBERTa预训练模型的隐藏层Dropout设置为0.1;
所述RoBERTa预训练模型的隐藏层神经元数设置为768;
所述RoBERTa预训练模型的编码器中间的隐层神经元数设置为3072;
所述RoBERTa预训练模型的词表大小为50265。
与现有技术相比,本发明的有益效果为:本发明首先进行数据整理和收集,剔除数据集中的噪音数据,可提升代码分类预测模型的分类效果;其次不同于现有技术中使用传统机器学习方法或者CNN,RNN等构造的模型,本发明使用近阶段表现最好的RoBERTa预训练模型经过微调后对代码进行分类。该模型是预训练模型容易实现,微调模型可以进一步提高代码语言分类的准确率。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明提供的一种基于Transformer的代码编程语言分类方法的系统框架图;
图2为本发明实施例的嵌入层的流程图;
图3为本发明提供的一种基于Transformer的代码编程语言分类方法使用的编码器的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。当然,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例1
参见图1所示,本发明提供了一种基于Transformer的代码编程语言分类方法,具体包括以下内容:
(1)搜集Stack Overflow中问答帖子的内容,整理数据集格式为<代码,语言类型>,其中包含224445对代码片段和对应的语言类型;
(2)使用BPE算法对代码片段当成文本进行分词,将代码片段中的单词和符号拆分为字符序列,并在末尾添加后缀“</w>”,避免了训练集中更多的“[UNK]”符号,BPE算法对代码片段分词可以有效解决在使用测试集测试模型时出现OOV(Out-Of-Vocabulary)问题;
(3)我们将数据集中的数据按照4:1的比例划分为训练集和验证集,其中训练集的数量为179556,验证集的数量为44889;根据语言类型的标识可将分类类别分为19种,包括:Bash,C,C++,CSS,Haskell,Java,JavaScript,Lua,Objective-C,Perl,PHP,Python,R,Ruby,Scala,SQL,Swift,VB.Net。
(4)将分词输入进Roberta模型,通过双层的Transformer编码器进行代码语义的学习,编码器的结构图入图3所示;
(5-1)Roberta和Bert类似,它们都使用Transformer作为算法的主要框架,因为Transformer可以更彻底地捕捉句子中的双向关系。Roberta模型使用了更宽、更深的双向Transformer编码器结构。
(5-2)与RNN模型相比,Roberta模型更有效率,可以捕获长距离依赖关系,并捕获真实意义上的双向上下文信息。RoBERTa使用Transformer的编码器作为语义学习算法的主要框架。为了更彻底地捕捉到这句话中的双向关系,RoBERTa通过Bidirectional Encoder学习。给定一段代码,经过BPE分词处理后,得到模型X=(x1,x2,···,xn)的输入。代码片段“def split lines(s):return s.split(‘\n’)”经过BPE分词后为通过BPE分词后为“def”,“Gsplit”,“_”,“lines”,“(”,“s”,“)”,“:”,“Greturn”,“Gs”,“.”,“split”,“(”,“’”,“C”,“’”,“)”;
(5-3)如图2所示,对Position嵌入、Segment嵌入和Token嵌入的学习,将学习到的三个嵌入向量叠加在一起,得到代码片段的嵌入特征向量X。
(5-4)然后,将嵌入的特征向量X输入双向编码器进行语义学习。首先,模型将向量X输入到多头注意力机制层。然后,该模型利用残差连接和层归一化使矩阵操作维度一致,并将网络中的隐含层归一化为标准正态分布,可以加快模型的训练速度和收敛速度。在下一步,模型传递前馈层。该模型还利用残差连接和层归一化方法生成语义表示向量Xsemantic。最后,将语义向量Xsemantic通过线性层映射到编程语言类别标签上,通过Softmax函数得到相应的编程语言。
(5-5)所述代码编程语言分类模型的参数设置如下:
所述代码编程语言分类模型的词向量维度为768;
所述代码编程语言分类模型的编码器为12层;
所述代码编程语言分类模型的attention_probs_dropout_prob为0.1;
所述代码编程语言分类模型的max_position_embeddings为514;
所述代码编程语言分类模型的隐藏层激活函数为gelu;
所述代码编程语言分类模型的隐藏层dropout为0.1;
所述代码编程语言分类模型的hidden_size设置为768;
所述代码编程语言分类模型的intermediate_size为3072;
所述代码编程语言分类模型的type_vocab_size大小为1;
所述代码编程语言分类模型的vocab_size词表大小为50265;
(5)将相同的数据集对已有的代码编程语言分类模型进行训练,经实验表明,本发明提出的分类方法最后的分类效果要优于已有的方法。
表1本发明方法和其余模型的结果对照表
为了评估代码编程语言分类模型的表现,采用Accuracy,Precision,Recall以及F1-score作为评估指标,如表中表明,本发明使用的RoBERTa预训练模型在各项指标中均为最高。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于Transformer的代码编程语言分类方法,其特征在于,包括以下步骤:
(1)、搜集来自Stack Overflow中问答帖子的内容,从帖子中获取代码片段以及代码的编程语言类型的标记,对收集的数据进行清洗、过滤,得到数据集D,将数据集D中的数据格式设定为<代码,编程语言类型标签>;
(2)、对数据集D中的代码片段进行分词处理;
(3)、将分词输入嵌入层得到分词的特征向量X;
(4)、基于上述所建的数据集,通过数据集D中划分的训练集数据对基于Transformer的预训练模型进行训练微调,预训练模型使用Transformer的编码器作为语义学习算法的主要框架,可以捕捉真实意义上的双向上下文信息,具体包括如下步骤:
(4-1)、嵌入层中学习到的特征向量X输入到预训练模型中的双向编码器中进行语义学习,具体包括如下步骤:
(4-1-1)、将特征向量输入到多头注意力层中,接着通过残差连接和归一化层,使得矩阵运算维度一致;
(4-1-2)、通过前馈神经网络层,使用残差连接和归一化层生成语义向量Y;
(4-2)、语义学习得到的语义向量Y通过线性层映射到数据集中的编程语言类型标签上,通过softmax函数得到最终分类的编程语言类型。
2.根据权利要求1所述的基于Transformer的代码编程语言分类方法,其特征在于,所述步骤(2)中对代码片段分词使用BPE算法,将数据集的代码片段当作文本进行分词,将代码片段中的单词和符号拆分为字符序列,并在末尾添加后缀“</w>”,避免了训练集中出现更多的“[UNK]”符号,BPE算法对代码片段分词可以有效解决在使用测试集测试模型时出现的OOV(Out-Of-Vocabulary)问题。
3.根据权利要求1或2所述的基于Transformer的代码编程语言分类方法,其特征在于,所述步骤(3)中的分词的嵌入得到特征向量,具体内容为以下步骤:
(3-1)通过分词的位置嵌入(PositionEmbedding)将分词的位置信息编码成特征向量,本发明将模型中的位置编码类型设置为“absolute”,即表示为"position_embedding_type":"absolute",模型根据分词的绝对位置信息作为编码依据,从而使得位置编码会在词向量中加入单词的位置信息;
(3-2)通过分段嵌入(Segment Embedding)来区分两个句子之间的关系;
(3-3)最后通过令牌嵌入(Token Embedding)后将词映射成向量,将三个学习的向量相叠加得到最终代码片段的特征向量X,即表示为:X=Position Embedding+SegmentEmbedding+Token Embedding。
4.根据权利要求1-3任一项所述的基于Transformer的代码编程语言分类方法,其特征在于,所述步骤(4)中的基于Transformer的预训练模型为RoBERTa模型,使用RoBERTa预训练模型作为编码器将分词映射到高维的向量空间。
5.根据权利要求4所述的基于Transformer的代码编程语言分类方法,其特征在于,所述步骤(4)具体包括如下步骤:
(1)特征向量进入多头注意力层中,然后采用残差连接和归一化层,使得矩阵运算的维度一致,并将网络中的隐藏层归一化为标准正态分布,从而加快了模型的训练速度和收敛速度;
(2)所述RoBERTa预训练模型的参数设置如下:
所述RoBERTa预训练模型的词向量维度设置为768;
所述RoBERTa预训练模型的编码器-解码器设置为12层;
所述RoBERTa预训练模型的注意力机制的Dropout设置为为0.1;
所述RoBERTa预训练模型的最大位置编码设置为514;
所述RoBERTa预训练模型的隐藏层激活函数为gelu函数;
所述RoBERTa预训练模型的隐藏层Dropout设置为0.1;
所述RoBERTa预训练模型的隐藏层神经元数设置为768;
所述RoBERTa预训练模型的编码器中间的隐层神经元数设置为3072;
所述RoBERTa预训练模型的词表大小为50265。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430772.9A CN113139054B (zh) | 2021-04-21 | 2021-04-21 | 一种基于Transformer的代码编程语言分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430772.9A CN113139054B (zh) | 2021-04-21 | 2021-04-21 | 一种基于Transformer的代码编程语言分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113139054A true CN113139054A (zh) | 2021-07-20 |
CN113139054B CN113139054B (zh) | 2023-11-24 |
Family
ID=76813563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110430772.9A Active CN113139054B (zh) | 2021-04-21 | 2021-04-21 | 一种基于Transformer的代码编程语言分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113139054B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113961933A (zh) * | 2021-10-21 | 2022-01-21 | 南通大学 | 一种基于改进Bert模型的信息安全漏洞分类方法 |
CN114297382A (zh) * | 2021-12-28 | 2022-04-08 | 杭州电子科技大学 | 基于生成式预训练模型参数精调整的可控文本生成方法 |
CN114418033A (zh) * | 2022-02-24 | 2022-04-29 | 南通大学 | 一种利用CodeBert各层表征信息的代码编程语言分类方法 |
CN114880022A (zh) * | 2022-04-28 | 2022-08-09 | 南通大学 | 一种基于CodeBERT微调和检索增强的Bash代码注释生成方法 |
CN114998631A (zh) * | 2022-08-08 | 2022-09-02 | 成都薯片科技有限公司 | 企业logo生成方法、装置及存储介质 |
CN116910646A (zh) * | 2023-07-04 | 2023-10-20 | 南京航空航天大学 | So网站中知识单元的内部链接目的分类方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008344A (zh) * | 2019-04-16 | 2019-07-12 | 中森云链(成都)科技有限责任公司 | 一种自动给代码打数据结构标签的方法 |
US20200226218A1 (en) * | 2019-01-14 | 2020-07-16 | International Business Machines Corporation | Automatic classification of adverse event text fragments |
CN112214599A (zh) * | 2020-10-20 | 2021-01-12 | 电子科技大学 | 基于统计学和预训练语言模型的多标签文本分类方法 |
US20210012199A1 (en) * | 2019-07-04 | 2021-01-14 | Zhejiang University | Address information feature extraction method based on deep neural network model |
-
2021
- 2021-04-21 CN CN202110430772.9A patent/CN113139054B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200226218A1 (en) * | 2019-01-14 | 2020-07-16 | International Business Machines Corporation | Automatic classification of adverse event text fragments |
CN110008344A (zh) * | 2019-04-16 | 2019-07-12 | 中森云链(成都)科技有限责任公司 | 一种自动给代码打数据结构标签的方法 |
US20210012199A1 (en) * | 2019-07-04 | 2021-01-14 | Zhejiang University | Address information feature extraction method based on deep neural network model |
CN112214599A (zh) * | 2020-10-20 | 2021-01-12 | 电子科技大学 | 基于统计学和预训练语言模型的多标签文本分类方法 |
Non-Patent Citations (1)
Title |
---|
孙松涛;何炎祥: "基于CNN特征空间的微博多标签情感分类", 工程科学与技术, vol. 49, no. 3 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113961933A (zh) * | 2021-10-21 | 2022-01-21 | 南通大学 | 一种基于改进Bert模型的信息安全漏洞分类方法 |
CN114297382A (zh) * | 2021-12-28 | 2022-04-08 | 杭州电子科技大学 | 基于生成式预训练模型参数精调整的可控文本生成方法 |
CN114297382B (zh) * | 2021-12-28 | 2022-06-10 | 杭州电子科技大学 | 基于生成式预训练模型参数精调整的可控文本生成方法 |
CN114418033A (zh) * | 2022-02-24 | 2022-04-29 | 南通大学 | 一种利用CodeBert各层表征信息的代码编程语言分类方法 |
CN114418033B (zh) * | 2022-02-24 | 2024-05-24 | 南通大学 | 一种利用CodeBert各层表征信息的代码编程语言分类方法 |
CN114880022A (zh) * | 2022-04-28 | 2022-08-09 | 南通大学 | 一种基于CodeBERT微调和检索增强的Bash代码注释生成方法 |
CN114998631A (zh) * | 2022-08-08 | 2022-09-02 | 成都薯片科技有限公司 | 企业logo生成方法、装置及存储介质 |
CN114998631B (zh) * | 2022-08-08 | 2022-11-11 | 成都薯片科技有限公司 | 企业logo生成方法、装置及存储介质 |
CN116910646A (zh) * | 2023-07-04 | 2023-10-20 | 南京航空航天大学 | So网站中知识单元的内部链接目的分类方法 |
CN116910646B (zh) * | 2023-07-04 | 2024-02-09 | 南京航空航天大学 | So网站中知识单元的内部链接目的分类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113139054B (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zheng et al. | Characterization inference based on joint-optimization of multi-layer semantics and deep fusion matching network | |
CN113139054B (zh) | 一种基于Transformer的代码编程语言分类方法 | |
CN111552821B (zh) | 法律意图搜索方法、法律意图搜索装置和电子设备 | |
US8452772B1 (en) | Methods, systems, and articles of manufacture for addressing popular topics in a socials sphere | |
CN107315737A (zh) | 一种语义逻辑处理方法及系统 | |
CN112347796B (zh) | 一种基于蒸馏BERT与改进Transformer相结合的蒙汉神经机器翻译方法 | |
CN112307773B (zh) | 机器阅读理解系统的自定义问题数据自动生成方法 | |
CN112101044B (zh) | 一种意图识别方法、装置及电子设备 | |
CN110781672A (zh) | 基于机器智能的题库生产方法及系统 | |
CN113360582B (zh) | 基于bert模型融合多元实体信息的关系分类方法及系统 | |
CN116992005A (zh) | 基于大模型及本地知识库的智能对话方法、系统及设备 | |
CN113886562A (zh) | 一种ai简历筛选方法、系统、设备和存储介质 | |
Hidayaturrahman et al. | Enhancing argumentation component classification using contextual language model | |
CN114036246A (zh) | 商品图谱向量化方法、装置、电子设备及存储介质 | |
CN114595700A (zh) | 融合零代词与篇章信息的汉越神经机器翻译方法 | |
Xue et al. | Intent-enhanced attentive Bert capsule network for zero-shot intention detection | |
US20230289528A1 (en) | Method for constructing sentiment classification model based on metaphor identification | |
Yang et al. | Research on AI-assisted grading of math questions based on deep learning | |
CN116029300A (zh) | 一种强化中文实体语义特征的语言模型训练方法和系统 | |
CN114528459A (zh) | 一种基于语义的网页信息抽取方法及系统 | |
CN114330350A (zh) | 一种命名实体识别方法、装置、电子设备及存储介质 | |
CN114239555A (zh) | 一种关键词提取模型的训练方法及相关装置 | |
Ren et al. | A hybrid representation-based simile component extraction | |
Sun et al. | Text sentiment polarity classification method based on word embedding | |
CN114418033B (zh) | 一种利用CodeBert各层表征信息的代码编程语言分类方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |