我试图对从堆栈溢出中获取的源代码片段进行分类。我正在探索各种技术,如Tf-以色列国防军,角嵌入层与CNN,bert等。因为源代码分类与正常的文本分类问题有很大的不同,所以我正在寻找一些应该最适合当前问题的技术。
到目前为止,我已经申请了Tf-以色列国防军,而且我获得了大约75%的精确性。当使用文字CNN与角化嵌入层,我得到60%。我计划下一步实现与伯特相关的模型。我也读过实现‘代码-bert’的论文,但它们仅限于6-8种语言。我的数据集有超过20种语言。我想了解在底层哪种技术对源代码最有效。
发布于 2022-11-09 06:40:32
有些预先训练过的单词嵌入可以用于对源代码进行分类,但它们可能不涵盖您感兴趣的所有语言或域。一些例子是:
这些模型基于迁移学习的思想,这意味着您可以使用少量的标记数据对特定任务和数据集进行微调。但是,他们可能无法处理您在问题中可能面临的一些挑战,例如:
因此,对于哪种技术最适合于源代码分类,没有明确的答案,因为它取决于您的数据、任务、目标和首选项。您可能需要对不同的模型、嵌入、超参数和评估方法进行实验,以找到问题的最佳解决方案。您还可能需要查阅现有的关于源代码分析和自然语言处理的文献和研究,以获得更多的见解和想法。以下是您可能会发现有用的一些资源:
https://stackoverflow.com/questions/74370759
复制相似问题