成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

7.5億美元做代碼轉換?一個Facebook TransCoder AI就夠了!

新聞 人工智能
代碼的遷移和語言轉換是一件很困難且昂貴的事情,澳大利亞聯邦銀行就曾花費5年時間,耗費7.5億美元將其平臺從COBOL轉換為Java。

 代碼的遷移和語言轉換是一件很困難且昂貴的事情,澳大利亞聯邦銀行就曾花費5年時間,耗費7.5億美元將其平臺從COBOL轉換為Java。而Facebook最近宣稱,他們開發的一種神經轉換編譯器(neural transcompiler),可以將一種高級編程語言(如C ++,Java和Python)轉換為另一種,效率飛起!

從 COBOL 到 Java,TransCoder能幫你省下7.5億美元

不同的編程語言之間也可以自動轉換了!

要知道,將現有的代碼庫遷移到現代或者更有效的語言,如 Java 或 c + + ,需要精通源語言和目標語言,而且無論是金錢還是時間耗費都十分高昂。

澳洲聯邦銀行在過去五年中花費了大約7.5億美元將其平臺從 COBOL 轉換為 Java。

[[329637]]

但是,Facebook最近開發的神經轉換編譯器TransCoder讓代碼轉換出現了新的轉機。該系統可以將代碼從一個高級語言轉換成另一個,比如 c + + 、 Java 和 Python。

這個系統是弱監督的,可以在沒有標簽的數據集中尋找以前未檢測到的模式,只需要少量的人工監督。研究人員稱,這比基于規則數據集的模型要高效得多。

理論上,代碼轉換編譯器能夠提供很多的幫助,讓開發者無需從頭重新寫代碼。但實踐中,代碼轉換是一件很困難的事情,因為不同語言依賴于不同的語法準則,不同的平臺api、標準庫函數和可變類型。

因此,TransCoder的面世,無疑是企業的福音。因為他們不必像澳洲聯邦銀行那樣,再去耗費大量的時間和金錢去做代碼轉換的復雜工作,只需要選擇Facebook,選擇TransCoder,平臺遷移即可迎刃而解。

從Java到C++,TransCoder轉換準確率超九成!

TransCoder是基于跨語言模型預訓練去做的模型初始化,這樣的訓練不著眼于編程語言的類型,而僅僅將表示相同指令的代碼段映射為相同的表示形式。

之所以TransCoder能進行跨語言模型的訓練,是因為系統的標記原理著眼于跨語言之間的共同關鍵字,如「if」,「for」等,以及數字、數學運算符和出現在源代碼中的英語字符串。這樣反向翻譯之后通過源-目標模型和并行訓練的目標-源模型耦合,從而提高了訓練的質量。

研究人員為了評估TransCoder的性能,從GeeksforGeeks中提取了852個C ++,Java和Python并行函數,利用這些不同語言的轉換來測試函數語義是否精準,測試的結果如下:

GeeksforGeeks是一個在線平臺,用于收集編寫代碼時的問題,并提供多種編程語言的解決方案。

研究人員稱,TransCoder在實驗過程中展示了對每種語言特有語法的理解能力,并且能夠適應小范圍的修改。盡管這個模型并不完美,但是性能優于已有的利用專家知識手動構建的框架。

從自然語言翻譯到代碼翻譯,seq2seq再立新功

TransCoder使用了經典的序列到序列(seq2seq)模型,該模型由基于Transformer的編碼器和解碼器組成,seq2seq模型的好處在于,你只需要有對應的輸入輸出即可,而不需要關心是哪兩種編程語言。

TransCoder仿照Lample等人中確定的無監督機器翻譯流程進行訓練,包括初始化,語言建模和反向翻譯。

實驗表明以跨語言方式對整個模型(不僅是單詞表示形式)進行預訓練顯著改善了無監督機器翻譯的效果,TransCoder遵循Lample和Conneau 的預訓練策略,其中跨語言模型(XLM)在單語言的源代碼數據集上,使用遮罩語言建模進行了預訓練。

TransCoder的轉換原理

 

其中,跨語言本質來源于多種語言中的大量通用標記(錨點)。在英語-法語翻譯的上下文中,錨點主要由數字、城市、人名等組成,而在編程語言中,這些定位點來自常見的關鍵字(for,while,if,try等),以及源代碼中出現的數字,運算符和英語字符串等。

seq2seq模型的編碼器和解碼器由預訓練的XLM模型參數進行初始化。對于編碼器而言,初始化非常簡單,因為它與XLM模型具有相同的體系結構。但是解碼器具有與attention機制有關的額外參數,所以這部分采用了隨機初始化。

XLM預訓練允許seq2seq模型生成輸入序列的高質量表示。然而,解碼器缺乏翻譯能力,因為從未訓練過解碼器基于源表示對序列進行解碼。為了解決這個問題,TransCoder利用降噪自編碼(DAE)對序列進行編碼和解碼,再對模型進行訓練。

在測試時,模型可以對Python序列進行編碼,并使用C ++起始符號對其進行解碼以生成C ++轉換。C ++轉換的質量取決于模型的「跨語言」性能:如果Python和C ++轉換被編碼器映射到相同的表示,則解碼器將成功生成對應的C ++代碼。

實際上,僅XLM預訓練和降噪自編碼就足以生成翻譯。但是,這些翻譯的質量往往很低,因為該模型從未對編程語言實現的功能進行訓練。TransCoder為了解決這個問題,使用了反向翻譯,這是在弱監督的情況下利用單語言數據的最有效方法。

在無監督的情況下,源到目標模型與后向的目標到源模型是并行訓練的。目標到源模型用于將目標序列翻譯成源語言,從而產生與真實目標序列相對應的嘈雜源序列。然后以弱監督的方式訓練源到目標模型,從前面生成的嘈雜源序列中重建目標序列,反之亦然,并行訓練兩個模型直到收斂。

作者簡介

該論文一作Marie-Anne Lachaux,目前是Facebook人工智能研究院NLP方向研究員,巴黎高等電信學院計算機圖像學學士,倫敦國王學院計算機圖像學碩士,曾在達索系統(Dassault Systèmes)擔任研究員。主要研究方向為計算機視覺和圖像識別,計算機神經網絡。

在達索擔任研究員期間,Marie-Anne Lachaux主要方向為拓撲優化研究。拓撲優化是設計機械零件的一種新方法,其目的是在保持機械性能的同時大量減少零件的質量。拓撲優化的實現方法是基于Visual Studio,c++和許多經典庫,這為Marie-Anne Lachaux在Facebook開展NLP研究奠定了基礎。

[[329638]]

此前,已經有很多基于深度學習的代碼自動補全,效果也十分驚艷,而基于規則的代碼轉換也有不少項目,但大多數泛化能力不強,畢竟能寫的規則有限。

TransCoder基于深度學習進行代碼轉換,無視了這些規則,直接端到端,對相關工作還是有很大的啟發,如果TransCoder準確率持續提升,那算法模型工程化的工作量將大幅縮減,程序員的編碼效率也將有質的飛躍。

 

責任編輯:張燕妮 來源: 新智元
相關推薦

2014-02-20 09:31:26

FacebookWhatsApp收購

2019-05-09 09:32:08

曠視7.5億美元D輪融資

2019-04-28 15:35:21

Facebook隱私保護信息泄露

2012-04-10 09:18:06

2020-07-07 07:55:53

web app數據科學機器學習

2013-03-14 10:14:17

微軟云計算公有云

2012-05-30 22:33:15

Facebook

2022-12-26 00:28:07

2012-11-05 10:33:24

創業員工程序員

2013-07-25 17:28:02

2021-03-15 09:23:06

讀寫分離MySql數據庫

2012-02-08 11:11:45

Facebook數據中心

2020-04-22 15:10:45

信息泄露暗網網絡攻擊

2019-10-08 11:07:55

Python 開發編程語言

2010-05-28 11:11:45

谷歌廣告商

2023-02-14 16:53:28

吉利汽車極氪

2013-04-22 11:12:35

Facebook美國數據中心

2013-05-09 09:58:08

Facebook思科SDN

2019-07-15 14:52:01

Facebook信息泄露隱私

2011-10-27 15:24:19

Facebook數據中心
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精品国产高清久久久久久久久 | 91原创视频 | 激情六月丁香婷婷 | 91麻豆精品国产91久久久资源速度 | aaa精品 | 蜜桃av鲁一鲁一鲁一鲁 | 一级黄色片在线免费观看 | 亚洲一区二区三区免费在线 | 国产99精品 | 日韩综合一区 | 欧美视频二区 | 丝袜美腿一区 | 成人精品一区二区三区 | 91网站视频在线观看 | www.操.com | 浮生影院免费观看中文版 | 成人精品鲁一区一区二区 | 久热精品在线 | 久久综合影院 | 99久久精品免费看国产四区 | 日本久久精品 | 久久91精品久久久久久9鸭 | 久久精品视频在线免费观看 | 国产在线一区二区三区 | 欧美一区二区三区久久精品视 | 国产999精品久久久久久 | 久久精品这里精品 | 一级黄色影片在线观看 | 九九久久国产 | 一级毛片在线播放 | 本道综合精品 | 成人黄色三级毛片 | 免费一区 | 九九热在线免费视频 | 国产成人精品久久二区二区 | 日本久久综合 | 国产亚洲人成a在线v网站 | 久久一区二区免费视频 | 国产精品国产三级国产aⅴ原创 | 99这里只有精品视频 | 国产精品美女久久久久aⅴ国产馆 |