Facebook melancarkan TransCoder: AI yang menukar satu bahasa pengaturcaraan kepada yang lain dengan ketepatan yang tinggi

Facebook melancarkan TransCoder: AI yang menukar satu bahasa pengaturcaraan kepada yang lain dengan ketepatan yang tinggi

Penyelidik Facebook baru sahaja mengumumkan bahawa mereka telah berjaya membangunkan penukar bahasa pengaturcaraan untuk aplikasi kecerdasan buatan . Alat yang dipanggil TransCoder ini boleh menukar kod sumber daripada satu bahasa pengaturcaraan peringkat tinggi kepada yang lain. Contohnya, bertukar daripada C++ kepada Java, Python dan sebaliknya.

Dibina berdasarkan pembelajaran tanpa pengawasan, TransCoder mencari corak yang belum ditemui sebelum ini dalam set data, yang tidak dilabel dan dengan pengawasan manusia yang minimum. Mengikut pengiraan, TransCoder jauh lebih baik daripada alat komersial sedia ada.

Facebook melancarkan TransCoder: AI yang menukar satu bahasa pengaturcaraan kepada yang lain dengan ketepatan yang tinggi

Facebook TransCoder boleh menukar kod sumber daripada satu bahasa pengaturcaraan ke bahasa lain dengan ketepatan yang tinggi

Menukar kod sumber menggunakan bahasa lama kepada bahasa pengaturcaraan yang lebih moden dan berkesan seperti Java dan C++ selalunya memakan masa dan wang. Tambahan pula, mereka yang menjalankan kerja ini perlu mempunyai pengetahuan mendalam tentang kedua-dua bahasa lama dan baharu. Contohnya, Commonwealth Bank Australia mengambil masa 5 tahun dan kos sebanyak 750 juta USD untuk menukar kod sumber keseluruhan sistem mereka daripada COBOL kepada Java.

Secara teorinya, penukar bahasa pengaturcaraan boleh menyokong proses di atas, membantu pengaturcara tidak perlu menulis semula kod sumber dari awal. Walau bagaimanapun, dalam amalan, amat sukar untuk membina dan menyempurnakan penukar kerana bahasa pengaturcaraan boleh menggunakan set sintaks yang berbeza dan bergantung pada platform API, perpustakaan fungsi standard dan jenis. pembolehubah yang berbeza.

Walau bagaimanapun, menggunakan pembelajaran tanpa pengawasan, TransCoder Facebook boleh menukar antara C++, Java dan Python dengan tahap ketepatan yang tinggi. TransCoder dilatih dengan merakam dan memetakan segmen kod serupa yang berkongsi fungsi bahasa pengaturcaraan yang sama. Kod sumber yang digunakan untuk melatih TransCoder malah ditutup dengan coretan kod rawak supaya TransCoder boleh meramalkannya berdasarkan konteks.

Satu lagi proses yang dipanggil penyahkod pengekodan automatik akan melatih TransCoder untuk menjana baris kod yang sah secara automatik apabila disediakan dengan data input yang tidak koheren dan tidak jelas. Akhir sekali, proses penyahkompilasi kod sumber membolehkan TransCoder mencipta sistem data selari yang boleh digunakan untuk latihan masa hadapan.

Sifat berbilang bahasa TransCoder selanjutnya "dipupuk" oleh satu set "sauh" biasa merentas bahasa pengaturcaraan seperti kata kunci biasa "untuk", "semasa", "jika" dan "cuba". , nombor, pengendali matematik dan rentetan bahasa Inggeris. Proses penyahkompilasi juga akan membantu TransCoder meningkatkan kualitinya dari semasa ke semasa.

Penyelidik Facebook melatih TransCoder pada set data awam GitHub, yang mengandungi 2.8 juta repositori sumber terbuka. Matlamat proses latihan ini adalah untuk membantu TransCoder menukar satu bahasa pengaturcaraan kepada yang lain pada tahap fungsi. Selepas TransCoder diamalkan pada semua kod sumber yang tersedia, hanya komponen penyahkod menggunakan pengekodan automatik dan penyahkompilasi dilatih lebih lanjut mengenai fungsi tersebut, diselangi dengan komponen yang berfungsi pada 6,000 token bahasa pengaturcaraan.

Untuk menilai TransCoder, penyelidik mengekstrak 852 fungsi selari daripada C++, Java dan Python daripada GeeksforGeeks, platform dalam talian yang menyusun masalah pengaturcaraan dan menyediakan penyelesaian dalam berbilang bahasa pengaturcaraan. berbeza. Dengan cara ini, mereka membangunkan sistem pengukuran baharu, ketepatan pengiraan, untuk menguji sama ada diberi input yang sama fungsi hipotesis menghasilkan output yang sama sebagai rujukan.

Facebook mengakui bahawa walaupun versi TransCoder terbaik masih belum menghasilkan banyak struktur fungsi yang tepat berbanding dengan input. Walau bagaimanapun, secara amnya, hasil penukaran alat ini mempunyai ketepatan pengiraan yang tinggi. Di bawah ialah statistik ketepatan TransCoder yang dikira oleh Facebook:

  • Apabila menterjemah daripada C++ ke Java, TransCoder mencapai 74.8% daripada hasil yang dijangkakan
  • Apabila menterjemah daripada C++ kepada Python, TransCoder mencapai 67.2% daripada hasil yang dijangkakan
  • Apabila menterjemah dari Java ke C++, TransCoder mencapai 91.6% daripada hasil yang dijangkakan
  • Apabila menterjemah daripada Python ke Java, TransCoder mencapai 56.1% daripada hasil yang dijangkakan
  • Apabila menterjemah daripada Python kepada C++, TransCoder mencapai 57.8% daripada hasil yang dijangkakan
  • Apabila menterjemah dari Java ke Python, TransCoder mencapai 68.7% daripada hasil yang dijangkakan

Menurut penyelidik, TransCoder menunjukkan pemahaman yang jelas tentang sintaks khusus setiap bahasa serta struktur dan kaedah data bahasa tersebut. TransCoder juga boleh menyesuaikan dengan tepat setiap perpustakaan bahasa sambil menyesuaikan diri dengan pengubahsuaian kecil, contohnya pembolehubah input yang dinamakan semula. Walaupun begitu, TransCoder masih belum mengenal pasti pembolehubah tertentu dalam proses penukaran. Walau bagaimanapun, para penyelidik masih menilai TransCoder sebagai lebih baik daripada rangka kerja yang dicipta oleh peraturan penulisan semula secara manual berdasarkan pengetahuan khusus.

Facebook melancarkan TransCoder: AI yang menukar satu bahasa pengaturcaraan kepada yang lain dengan ketepatan yang tinggi

Selain Facebook, banyak syarikat besar juga berminat untuk membangunkan AI yang mampu "menulis kod" bagi pihak manusia.

"TransCoder mudah membuat generalisasi kepada mana-mana bahasa pengaturcaraan, tanpa memerlukan sebarang pengetahuan yang mendalam. Dari segi kecekapan, TransCoder jauh lebih unggul daripada penyelesaian komersial sedia ada" , dakwa penyelidik Facebook. "Hasil percubaan kami menunjukkan bahawa banyak pepijat TransCoder boleh diperbaiki dengan mudah dengan menambahkan kekangan mudah pada penyahkod untuk memastikan fungsi yang dijana adalah betul dari segi sintaksis. Atau Kami boleh mencipta seni bina khusus untuk masalah ini."

Selain Facebook, beberapa gergasi lain juga berminat untuk membangunkan sistem AI yang mampu "menulis kod" dan bukannya manusia. Semasa persidangan Microsoft Build awal tahun ini, OpenAI menunjukkan kecerdasan buatan yang dilatih pada GitHub dengan keupayaan untuk menulis perisian berfungsi sepenuhnya berdasarkan ulasan bahasa Inggeris. Dua tahun lalu, Rice University mencipta sistem yang dipanggil Bayou yang mampu menulis perisiannya sendiri dengan mensintesis "kehendak" dalam baris kod yang dikongsi secara terbuka.

"Sistem AI ini akan membantu menghapuskan perkara kecil dalam proses pembangunan perisian ," kata Justin Gottschlich, pengarah Intel Labs. "Mereka boleh membantu pengaturcara mempercepatkan pembangunan perisian dengan menyelesaikan pepijat. Selain itu, mereka membantu meningkatkan bilangan pekerjaan dalam industri teknologi di mana orang tanpa latar belakang pengaturcaraan juga boleh menyertai. Mereka ini akan mengambil tugas kreatif dan meninggalkan bahagian pengekodan kepada AI."

Apa pendapat anda tentang AI baharu ini daripada Facebook? Sila tinggalkan komen anda di bahagian komen di bawah artikel!


Pasukan petugas ChatGPT akan ditubuhkan oleh Eropah

Pasukan petugas ChatGPT akan ditubuhkan oleh Eropah

Badan yang menyatukan pemerhati privasi negara Eropah berkata pada hari Khamis ia telah menubuhkan pasukan petugas khusus untuk ChatGPT

AI meramalkan masa kematian manusia dengan ketepatan 78%.

AI meramalkan masa kematian manusia dengan ketepatan 78%.

Para saintis Denmark dan Amerika telah bekerjasama untuk membangunkan sistem AI yang dipanggil life2vec, yang mampu meramalkan masa kematian manusia dengan ketepatan yang tinggi.

AI meramalkan penyakit kencing hanya dengan bunyi air kencing

AI meramalkan penyakit kencing hanya dengan bunyi air kencing

Algoritma AI yang dipanggil Audioflow boleh mendengar bunyi kencing untuk mengenal pasti aliran tidak normal dan masalah kesihatan pesakit yang sepadan dengan berkesan dan berjaya.

Pelayan bar, berhati-hati: Robot ini boleh mencampurkan koktel dalam masa 1 minit sahaja

Pelayan bar, berhati-hati: Robot ini boleh mencampurkan koktel dalam masa 1 minit sahaja

Penduduk Jepun yang semakin tua dan semakin berkurangan menyebabkan negara itu kekurangan sejumlah besar pekerja muda, terutamanya dalam sektor perkhidmatan.

Beratus-ratus orang kecewa apabila mereka mengetahui bahawa gadis yang mereka cintai adalah produk AI

Beratus-ratus orang kecewa apabila mereka mengetahui bahawa gadis yang mereka cintai adalah produk AI

Pengguna Reddit bernama u/LegalBeagle1966 ialah salah satu daripada ramai pengguna yang terpikat dengan Claudia, seorang gadis seperti bintang filem yang sering berkongsi swafoto yang menggoda, malah bogel. di platform ini.

12 lagi syarikat berpotensi menyertai AI alliance Microsoft.

12 lagi syarikat berpotensi menyertai AI alliance Microsoft.

Microsoft baru sahaja mengumumkan bahawa 12 lagi syarikat teknologi akan mengambil bahagian dalam program AI for Goodnya.

AI mencipta semula watak Dragon Ball dalam daging dan darah

AI mencipta semula watak Dragon Ball dalam daging dan darah

Pengguna @mortecouille92 telah meletakkan kuasa alat reka bentuk grafik Midjourney untuk berfungsi dan mencipta versi unik realistik watak Dragon Ball yang terkenal seperti Goku, Vegeta, Bulma dan Kame yang lebih tua. .

7 teknik untuk meningkatkan respons ChatGPT

7 teknik untuk meningkatkan respons ChatGPT

Hanya dengan menambah beberapa syarat atau menyediakan beberapa senario, ChatGPT boleh memberikan jawapan yang lebih berkaitan kepada pertanyaan anda. Mari lihat beberapa cara anda boleh meningkatkan kualiti respons ChatGPT anda.

Kagum dengan lukisan cantik yang dilukis oleh kecerdasan buatan

Kagum dengan lukisan cantik yang dilukis oleh kecerdasan buatan

Midjourney ialah sistem kecerdasan buatan yang baru-baru ini menyebabkan "demam" dalam komuniti dalam talian dan dunia artis kerana lukisannya yang sangat cantik yang tidak kalah dengan lukisan artis sebenar.

Model AI ini adalah salah seorang pakar pertama yang menemui berita tentang wabak pneumonia Wuhan.

Model AI ini adalah salah seorang pakar pertama yang menemui berita tentang wabak pneumonia Wuhan.

Beberapa hari selepas China mengumumkan wabak itu, dengan akses kepada data jualan tiket penerbangan global, sistem AI BlueDot terus meramalkan dengan tepat penyebaran virus Wuhan Corona ke Bangkok, Seoul, Taipei dan Tokyo.