Facebook er að þróa TransCoder til að þýða kóða frá einu forritunarmáli yfir á annað

Verkfræðingar Facebook hafa gefið út transcompiler TransCoder, sem notar vélanámstækni til að umbreyta frumkóða úr einu háu forritunarmáli í annað. Eins og er er veittur stuðningur við að þýða kóða á milli Java, C++ og Python. Til dæmis, TransCoder gerir þér kleift að umbreyta Java frumkóða í Python kóða og Python kóða í Java frumkóða. Verkefnaþróun er í framkvæmd fræðilegar rannsóknir um að búa til taugakerfi fyrir skilvirka sjálfvirka umritun kóða og dreifing leyfi samkvæmt Creative Commons Attribution-NonCommercial 4.0 leyfi eingöngu til notkunar sem ekki er í viðskiptalegum tilgangi.

Innleiðing vélanámskerfisins er byggð á Pytorch. Boðið er upp á tvær tilbúnar gerðir til niðurhals: fyrst fyrir þýðingar á C++ yfir í Java, Java yfir í C++ og Java yfir í Python, og Second til útsendingar
C++ í Python, Python í C++ og Python í Java. Til að þjálfa líkanin notuðum við frumkóða verkefna sem sett voru á GitHub. Ef þess er óskað er hægt að búa til þýðingarlíkön fyrir önnur forritunarmál. Til að kanna gæði útsendingarinnar hefur verið útbúið safn einingaprófa, auk prófunarpakka sem inniheldur 852 samhliða aðgerðir.

Því er haldið fram að hvað varðar nákvæmni umbreytinga sé TransCoder verulega betri en viðskiptaþýðendur sem nota aðferðir sem byggja á umbreytingarreglum og í vinnuferlinu gerir það þér kleift að gera án sérfræðimats sérfræðinga á uppruna- og markmáli. Hægt er að útrýma flestum villunum sem koma upp við notkun líkansins með því að bæta einföldum takmörkunum við afkóðarann ​​til að tryggja að myndaðar aðgerðir séu setningafræðilega réttar.

Facebook er að þróa TransCoder til að þýða kóða frá einu forritunarmáli yfir á annað

Vísindamenn hafa lagt til nýjan taugakerfisarkitektúr „Transformer“ fyrir líkanagerð, þar sem endurtekningu er skipt út fyrir „athygli"(seq2seq líkan með athygli), sem gerir þér kleift að losa þig við sum ósjálfstæði í reiknigrafinu og samhliða því sem áður var ekki hægt að samhliða. Öll studd tungumál nota eitt sameiginlegt líkan, sem er þjálfað með því að nota þrjár meginreglur - frumstillingu, tungumálagerð og bakþýðingu.

Facebook er að þróa TransCoder til að þýða kóða frá einu forritunarmáli yfir á annað

Heimild: opennet.ru

Bæta við athugasemd