Boosted by deep learning, natural language processing (NLP) techniques have recently seen spectacular progress, mainly fueled by breakthroughs both in representation learning with word embeddings (e.g. word2vec) as well as novel architectures (e.g. transformers). This success quickly invited researchers to explore the use of NLP techniques to other field, such as computer programming languages, with the promise to automate tasks in software programming (bug detection, code synthesis, code repair, cross language translation etc.). By extension, NLP has potential for application to network configuration languages as well, for instance considering tasks such as network configuration verification, synthesis, and cross-vendor translation. In this paper, we survey recent advances in deep learning applied to programming languages, for the purpose of code verification, synthesis and translation: in particularly, we review their training requirements and expected performance, and qualitatively assess whether similar techniques can benefit corresponding use-cases in networking.
翻译:在深层学习的推动下,自然语言处理(NLP)技术最近取得了令人瞩目的进展,主要得益于在语言嵌入(例如Word2vec)和新结构(例如变压器)的代言学习方面的突破,这一成功迅速邀请研究人员探索将NLP技术应用于其他领域,例如计算机编程语言,并有望使软件编程中的任务自动化(监听、代码合成、代码修复、跨语言翻译等),由此推而广,NLP有可能应用于网络配置语言,例如考虑网络配置核查、合成和跨供应商翻译等任务。我们在本文件中调查了用于编程语言的深层次学习的最新进展,目的是进行代码核查、合成和翻译:特别是,我们审查他们的培训要求和预期业绩,并定性评估类似的技术是否有利于网络中的相应使用案例。