Advertisement

了解TransCoder的功能与用途

阅读量:

TransCoder模型概述

    • 无监督的代码转换
      • 无监督机器翻译

        • XLM
          • 字典-- BPE
      • 两种预训练

        • 去噪编码和回译
      • TransCoder三部曲

        • XLM: 预训练编码器和解码器
        • 去噪自编码:用于训练同一种语言之间的“翻译”能力
        • 回译:用于训练不同语言之间的翻译能力
      • 测试集

      • 效果

      • 总结

倘若人工智能具备编写代码的能力,那么对于程序员而言或许将构成极大的挑战。然而,这或许也能促使人们将更多的时间与精力投入到更具创造性的事务中,例如探索火星移民等课题。尽管Facebook推出的TransCoder尚未能够真正实现人类的解放,但其在这一方向上已然迈出了关键性的一步。

无监督代码转换方法

本研究的核心聚焦于“无监督”这一关键点。实际上,倘若我们拥有理想的平行语料,即源语言与目标语言完全对齐的语料库,那么代码转换(或代码互译)便可被视作神经机器翻译(NMT)问题,例如英译德、中译英等情形。然而,在现实中,并不存在如此完美对齐的代码语料库。

研究者借助GitHub平台上丰富的单语语料库作为训练数据,涵盖C++、Java和Python等多种编程语言,并成功实现了它们之间的相互转换功能。

全部评论 (0)

还没有任何评论哟~