Ang Facebook nagpalambo sa TransCoder aron mahubad ang code gikan sa usa ka programming language ngadto sa lain

Ang mga inhenyero sa Facebook nagpatik sa usa ka transcompiler TransCoder, nga naggamit sa mga teknik sa pagkat-on sa makina aron mabag-o ang source code gikan sa usa ka high-level nga programming language ngadto sa lain. Sa pagkakaron, ang suporta gihatag alang sa paghubad sa code tali sa Java, C++ ug Python. Pananglitan, ang TransCoder nagtugot kanimo sa pag-convert sa Java source code ngadto sa Python code, ug Python code ngadto sa Java source code. Ang mga kalamboan sa proyekto gipatuman teoretikal nga panukiduki sa paghimo og neural network para sa episyente nga automatic transcompilation sa code ug pagkaylap lisensyado ubos sa Creative Commons Attribution-NonCommercial 4.0 nga lisensya para sa dili pangkomersyal nga paggamit lamang.

Ang pagpatuman sa sistema sa pagkat-on sa makina gibase sa Pytorch. Duha ka andam nga mga modelo ang gitanyag aron ma-download: una alang sa paghubad sa C++ ngadto sa Java, Java ngadto sa C++ ug Java ngadto sa Python, ug ikaduha para sa broadcast
C++ ngadto sa Python, Python ngadto sa C++ ug Python ngadto sa Java. Aron mabansay ang mga modelo, gigamit namo ang mga source code sa mga proyekto nga gi-post sa GitHub. Kung gusto, ang mga modelo sa paghubad mahimong mabuhat alang sa ubang mga programming language. Aron masusi ang kalidad sa sibya, usa ka koleksyon sa mga pagsulay sa yunit ang giandam, ingon man usa ka test suite nga adunay 852 nga parallel function.

Giangkon nga sa mga termino sa katukma sa pagkakabig, ang TransCoder labi ka labaw sa mga komersyal nga maghuhubad nga naggamit mga pamaagi nga gibase sa mga lagda sa pagkakabig, ug sa proseso sa pagtrabaho gitugotan ka nga buhaton nga wala ang eksperto nga pagsusi sa mga eksperto sa gigikanan ug target nga sinultian. Kadaghanan sa mga kasaypanan nga motumaw sa panahon sa operasyon sa modelo mahimong mawagtang pinaagi sa pagdugang sa yano nga mga pagdili sa decoder aron masiguro nga ang mga nahimo nga mga gimbuhaton husto sa syntactically.

Ang Facebook nagpalambo sa TransCoder aron mahubad ang code gikan sa usa ka programming language ngadto sa lain

Gisugyot sa mga tigdukiduki ang usa ka bag-ong arkitektura sa neural network nga "Transformer" alang sa pagmodelo sa mga han-ay, diin ang pagbalik-balik gipulihan sa "pagtagad"(Seq2seq nga modelo nga adunay pagtagad), nga nagtugot kanimo sa pagkuha sa pipila ka mga dependency sa computational graph ug parallelize kung unsa ang kaniadto dili amenable sa parallelization. Ang tanan nga gisuportahan nga mga pinulongan naggamit sa usa ka komon nga modelo, nga gibansay gamit ang tulo ka mga prinsipyo—pagsugod, pagmodelo sa pinulongan, ug back-translation.

Ang Facebook nagpalambo sa TransCoder aron mahubad ang code gikan sa usa ka programming language ngadto sa lain

Source: opennet.ru

Idugang sa usa ka comment