එක් ක්‍රමලේඛන භාෂාවකින් තවත් ක්‍රමලේඛන භාෂාවකට කේත පරිවර්තනය කිරීමට Facebook TransCoder සංවර්ධනය කරයි

Facebook ඉංජිනේරුවන් විසින් transcompiler එකක් ප්‍රකාශයට පත් කර ඇත ට්‍රාන්ස්කෝඩර්, එය එක් ඉහළ මට්ටමේ ක්‍රමලේඛන භාෂාවකින් තවත් මූල කේතයකට පරිවර්තනය කිරීමට යන්ත්‍ර ඉගෙනීමේ ක්‍රම භාවිතා කරයි. දැනට, Java, C++ සහ Python අතර කේතය පරිවර්තනය කිරීම සඳහා සහය ලබා දේ. උදාහරණයක් ලෙස, TransCoder ඔබට Java මූල කේතය Python කේතය බවටත්, Python කේතය Java මූල කේතය බවටත් පරිවර්තනය කිරීමට ඉඩ සලසයි. ව්‍යාපෘති සංවර්ධන කටයුතු ප්‍රායෝගිකව ක්‍රියාත්මක වෙමින් පවතී න්යායික පර්යේෂණ කේත කාර්යක්ෂම ස්වයංක්‍රීය සම්ප්‍රේෂණය සඳහා ස්නායුක ජාලයක් නිර්මාණය කිරීම සහ බෝ වීම වාණිජ නොවන භාවිතය සඳහා පමණක් Creative Commons Attribution-Commercial නොවන 4.0 බලපත්‍රයක් යටතේ බලපත්‍ර ලබා ඇත.

යන්ත්‍ර ඉගෙනීමේ ක්‍රමය ක්‍රියාත්මක කිරීම Pytorch මත පදනම් වේ. බාගත කිරීම සඳහා සූදානම් කළ ආකෘති දෙකක් ඉදිරිපත් කෙරේ: පළමුව C++ ජාවා බවටත්, Java C++ බවටත් Java Python බවටත් පරිවර්තනය කිරීම සඳහා, සහ දෙවැන්න විකාශනය සඳහා
C++ සිට Python, Python to C++ සහ Python to Java. ආකෘති පුහුණු කිරීම සඳහා, අපි GitHub හි පළ කර ඇති ව්‍යාපෘතිවල මූල කේත භාවිතා කළෙමු. අවශ්ය නම්, වෙනත් ක්රමලේඛන භාෂා සඳහා පරිවර්තන ආකෘති නිර්මාණය කළ හැකිය. විකාශනයේ ගුණාත්මකභාවය පරීක්ෂා කිරීම සඳහා, ඒකක පරීක්ෂණ එකතුවක් මෙන්ම සමාන්තර ශ්‍රිත 852 ක් ඇතුළත් පරීක්ෂණ කට්ටලයක් ද සකස් කර ඇත.

පරිවර්තන නිරවද්‍යතාවය අනුව, පරිවර්තන රීති මත පදනම් වූ ක්‍රම භාවිතා කරන වාණිජ පරිවර්තකයන්ට වඩා TransCoder සැලකිය යුතු ලෙස උසස් බව කියනු ලැබේ, සහ වැඩ කිරීමේ ක්‍රියාවලියේදී එය මූලාශ්‍ර සහ ඉලක්ක භාෂාවේ ප්‍රවීණයන්ගේ විශේෂඥ තක්සේරුවකින් තොරව කිරීමට ඔබට ඉඩ සලසයි. ආකෘතියේ ක්‍රියාකාරිත්වය අතරතුර පැන නගින බොහෝ දෝෂ, උත්පාදනය කරන ලද කාර්යයන් වාක්‍යානුකූලව නිවැරදි බව සහතික කිරීම සඳහා විකේතකයට සරල සීමා කිරීම් එකතු කිරීමෙන් ඉවත් කළ හැකිය.

එක් ක්‍රමලේඛන භාෂාවකින් තවත් ක්‍රමලේඛන භාෂාවකට කේත පරිවර්තනය කිරීමට Facebook TransCoder සංවර්ධනය කරයි

පර්යේෂකයන් විසින් ආකෘතිකරණ අනුපිළිවෙල සඳහා නව ස්නායුක ජාල ගෘහ නිර්මාණ ශිල්පය "ට්‍රාන්ස්ෆෝමර්" යෝජනා කර ඇති අතර, පුනරාවර්තනය වෙනුවට "අවධානය"(අවධානය සහිත seq2seq ආකෘතිය), එය ඔබට ගණනය කිරීමේ ප්‍රස්ථාරයේ සමහර පරායත්තතා ඉවත් කිරීමට සහ සමාන්තරකරණයට පෙර නොතිබූ දේ සමාන්තර කිරීමට ඉඩ සලසයි. සියලුම සහාය දක්වන භාෂා තනි පොදු ආකෘතියක් භාවිතා කරයි, එය මූලධර්ම තුනක් භාවිතා කරමින් පුහුණු කරනු ලැබේ - ආරම්භ කිරීම, භාෂා ආකෘති නිර්මාණය සහ පසු පරිවර්තනය.

එක් ක්‍රමලේඛන භාෂාවකින් තවත් ක්‍රමලේඛන භාෂාවකට කේත පරිවර්තනය කිරීමට Facebook TransCoder සංවර්ධනය කරයි

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න