Facebook uruchamia TransCoder: sztuczną inteligencję, która z dużą dokładnością konwertuje jeden język programowania na inny

Facebook uruchamia TransCoder: sztuczną inteligencję, która z dużą dokładnością konwertuje jeden język programowania na inny

Badacze Facebooka właśnie ogłosili, że z sukcesem opracowali konwerter języka programowania dla aplikacji sztucznej inteligencji . To narzędzie o nazwie TransCoder może konwertować kod źródłowy z jednego języka programowania wysokiego poziomu na inny. Na przykład przejście z C++ na Javę, Python i odwrotnie.

Opierając się na uczeniu bez nadzoru, TransCoder wyszukuje wcześniej nieodkryte wzorce w zbiorach danych, które nie są oznakowane i przy minimalnym nadzorze człowieka. Z obliczeń wynika, że ​​TransCoder znacznie przewyższa istniejące narzędzia komercyjne.

Facebook uruchamia TransCoder: sztuczną inteligencję, która z dużą dokładnością konwertuje jeden język programowania na inny

Facebook TransCoder może konwertować kod źródłowy z jednego języka programowania na inny z dużą dokładnością

Konwersja kodu źródłowego wykorzystującego stare języki na bardziej nowoczesne i efektywne języki programowania, takie jak Java i C++, jest często kosztowna zarówno pod względem czasu, jak i pieniędzy. Ponadto osoby podejmujące się tej pracy muszą posiadać dogłębną znajomość zarówno starych, jak i nowych języków. Na przykład australijskiemu bankowi Commonwealth Bank konwersja kodu źródłowego całego systemu z języka COBOL na język Java zajęła 5 lat i kosztowała 750 milionów dolarów.

Teoretycznie konwertery języków programowania mogą znacznie wesprzeć powyższy proces, pomagając programistom uniknąć konieczności przepisywania kodu źródłowego od zera. Jednak w praktyce zbudowanie i udoskonalenie konwertera jest bardzo trudne, ponieważ języki programowania mogą korzystać z różnych zestawów składni i opierać się na platformach API, standardowych bibliotekach funkcji i typach różnych zmiennych.

Jednakże, korzystając z uczenia się bez nadzoru, TransCoder Facebooka może konwertować między C++, Java i Python z dużą dokładnością. TransCoder jest szkolony poprzez nagrywanie i mapowanie podobnych segmentów kodu, które mają te same funkcje języków programowania. Kod źródłowy używany do uczenia TransCodera jest nawet maskowany losowymi fragmentami kodu, dzięki czemu TransCoder może je przewidzieć na podstawie kontekstu.

Inny proces zwany automatycznym odszumianiem kodowania nauczy TransCodera automatycznego generowania prawidłowych linii kodu w przypadku otrzymania niespójnych, niejasnych danych wejściowych. Wreszcie proces dekompilacji kodu źródłowego pozwala TransCoderowi stworzyć równoległy system danych, który można wykorzystać do przyszłych szkoleń.

Wielojęzyczny charakter TransCodera jest dodatkowo „odżywiany” przez zestaw wspólnych „kotwic” w językach programowania , takich jak popularne słowa kluczowe „for”, „while”, „if” i „spróbuj”, liczby, operatory matematyczne i Stringi angielskie. Proces dekompilacji pomoże również TransCoderowi z czasem poprawić jego jakość.

Badacze z Facebooka przeszkolili TransCoder na publicznym zbiorze danych GitHub, który zawiera 2,8 miliona repozytoriów open source. Celem tego procesu szkoleniowego jest pomoc TransCoderowi w konwersji jednego języka programowania na inny na poziomie funkcji. Po przećwiczeniu TransCodera na całym dostępnym kodzie źródłowym, jedynie komponenty odszumiające wykorzystujące automatyczne kodowanie i dekompilację zostały dalej przeszkolone w zakresie funkcji, przeplatane komponentami działającymi na 6000 tokenach języków programowania.

Aby ocenić TransCoder, badacze wyodrębnili 852 równoległe funkcje z języków C++, Java i Python z GeeksforGeeks, platformy internetowej, która kompiluje problemy programistyczne i zapewnia rozwiązania w wielu językach programowania. W ten sposób opracowali nowy system pomiarowy, dokładność obliczeniową, w celu sprawdzenia, czy przy tych samych danych wejściowych hipotetyczna funkcja daje taki sam wynik jak odniesienie.

Facebook przyznaje, że nawet najlepsza wersja TransCodera nie generuje jeszcze wielu dokładnych struktur funkcyjnych w stosunku do danych wejściowych. Jednak ogólnie wyniki konwersji tego narzędzia mają wysoką dokładność obliczeń. Poniżej znajdują się statystyki dokładności TransCodera obliczone przez Facebooka:

  • Przy tłumaczeniu z C++ na Javę TransCoder osiągnął 74,8% oczekiwanych wyników
  • Tłumacząc z C++ na Pythona, TransCoder osiągnął 67,2% oczekiwanych wyników
  • Podczas tłumaczenia z Java na C++ TransCoder osiągnął 91,6% oczekiwanych wyników
  • Tłumacząc z Pythona na Javę, TransCoder osiągnął 56,1% oczekiwanych wyników
  • Przy tłumaczeniu z Pythona na C++ TransCoder osiągnął 57,8% oczekiwanych wyników
  • Przy tłumaczeniu z Javy na Pythona TransCoder osiągnął 68,7% oczekiwanych wyników

Według naukowców TransCoder wykazał się pełnym zrozumieniem specyficznej składni każdego języka, a także struktur danych i metod języka. TransCoder może również precyzyjnie dostosować biblioteki każdego języka, dostosowując się do drobnych modyfikacji, na przykład zmiany nazwy zmiennej wejściowej. Mimo to TransCoder nie zidentyfikował jeszcze pewnych zmiennych w procesie konwersji. Jednak badacze nadal oceniają TransCoder jako lepszy od frameworków tworzonych poprzez ręczne przepisywanie reguł w oparciu o specjalistyczną wiedzę.

Facebook uruchamia TransCoder: sztuczną inteligencję, która z dużą dokładnością konwertuje jeden język programowania na inny

Oprócz Facebooka wiele dużych firm jest również zainteresowanych rozwojem sztucznej inteligencji zdolnej do „pisania kodu” w imieniu ludzi.

„TransCoder z łatwością uogólnia na dowolny język programowania, nie wymagając żadnej dogłębnej wiedzy. Pod względem wydajności TransCoder znacznie przewyższa istniejące rozwiązania komercyjne” – twierdzą badacze Facebooka. „Wyniki naszych eksperymentów pokazują, że wiele błędów TransCodera można łatwo naprawić, dodając proste ograniczenia do dekodera, aby zapewnić poprawność składniową generowanych funkcji. Możemy też stworzyć wyspecjalizowane architektury rozwiązujące ten problem”.

Oprócz Facebooka opracowaniem systemów sztucznej inteligencji zdolnych do „pisania kodu” zamiast ludzi jest zainteresowanych także wielu innych gigantów. Podczas konferencji Microsoft Build na początku tego roku OpenAI zademonstrowało sztuczną inteligencję wyszkoloną na GitHubie z możliwością pisania w pełni funkcjonalnego oprogramowania w oparciu o angielskie komentarze. Dwa lata temu Uniwersytet Rice stworzył system o nazwie Bayou, który potrafi pisać własne oprogramowanie poprzez syntezę „woly” w publicznie udostępnianych liniach kodu.

„Te systemy sztucznej inteligencji pomogą wyeliminować najdrobniejsze szczegóły w procesie tworzenia oprogramowania ” – powiedział Justin Gottschlich, dyrektor Intel Labs. „Mogą pomóc programistom przyspieszyć tworzenie oprogramowania poprzez rozwiązywanie błędów. Ponadto pomagają zwiększyć liczbę stanowisk pracy w branży technologicznej, do których mogą dołączyć również osoby bez doświadczenia programistycznego. Osoby te podejmą się kreatywnych zadań i opuszczą część kodowania do AI.”

Co sądzisz o tej nowej sztucznej inteligencji od Facebooka? Prosimy o pozostawienie komentarza w sekcji komentarzy pod artykułem!


Europa utworzy grupę zadaniową ChatGPT

Europa utworzy grupę zadaniową ChatGPT

Organ zrzeszający krajowe organy nadzorujące prywatność w Europie poinformował w czwartek, że powołał grupę zadaniową zajmującą się ChatGPT

AI przewiduje czas śmierci człowieka z 78% dokładnością

AI przewiduje czas śmierci człowieka z 78% dokładnością

Duńscy i amerykańscy naukowcy współpracowali nad opracowaniem systemu sztucznej inteligencji o nazwie life2vec, zdolnego do przewidywania czasu śmierci człowieka z dużą dokładnością.

Sztuczna inteligencja przewiduje choroby układu moczowego na podstawie dźwięku moczu

Sztuczna inteligencja przewiduje choroby układu moczowego na podstawie dźwięku moczu

Algorytm sztucznej inteligencji o nazwie Audioflow może nasłuchiwać dźwięku oddawania moczu, aby skutecznie i skutecznie identyfikować nieprawidłowe wypływy moczu i powiązane z nimi problemy zdrowotne pacjenta.

Barmani, uważajcie: ten robot może przygotować koktajl w zaledwie 1 minutę

Barmani, uważajcie: ten robot może przygotować koktajl w zaledwie 1 minutę

Starzenie się i spadek liczby ludności Japonii spowodował, że w kraju brakuje znacznej liczby młodych pracowników, szczególnie w sektorze usług.

Setki ludzi rozczarowało się, gdy dowiedziały się, że dziewczyna, którą kochają, jest wytworem sztucznej inteligencji

Setki ludzi rozczarowało się, gdy dowiedziały się, że dziewczyna, którą kochają, jest wytworem sztucznej inteligencji

Użytkownik Reddita o imieniu u/LegalBeagle1966 jest jednym z wielu użytkowników zakochanych w Claudii, dziewczynie przypominającej gwiazdę filmową, która często udostępnia na tej platformie uwodzicielskie selfie, nawet nagie.

12 kolejnych potencjalnych firm dołącza do „sojuszu AI” Microsoftu.

12 kolejnych potencjalnych firm dołącza do „sojuszu AI” Microsoftu.

Microsoft właśnie ogłosił, że w jego programie AI for Good weźmie udział 12 kolejnych firm technologicznych.

Sztuczna inteligencja odtwarza postacie Dragon Ball z krwi i kości

Sztuczna inteligencja odtwarza postacie Dragon Ball z krwi i kości

Użytkownik @mortecouille92 wykorzystał moc narzędzia do projektowania graficznego Midjourney i stworzył wyjątkowo realistyczne wersje słynnych postaci Dragon Ball, takich jak Goku, Vegeta, Bulma i starszy Kame. .

7 technik poprawy odpowiedzi ChatGPT

7 technik poprawy odpowiedzi ChatGPT

Po prostu dodając pewne warunki lub konfigurując pewne scenariusze, ChatGPT może udzielić bardziej trafnych odpowiedzi na Twoje zapytania. Przyjrzyjmy się sposobom poprawy jakości odpowiedzi ChatGPT.

Podziwiaj piękne obrazy narysowane przez sztuczną inteligencję

Podziwiaj piękne obrazy narysowane przez sztuczną inteligencję

Midjourney to system sztucznej inteligencji, który wywołał ostatnio „gorączkę” w społeczności internetowej i świecie artystów ze względu na niezwykle piękne obrazy, które nie ustępują tym, które tworzą prawdziwi artyści.

Ten model sztucznej inteligencji był jednym z pierwszych „ekspertów”, którzy odkryli wiadomości o wybuchu zapalenia płuc w Wuhan.

Ten model sztucznej inteligencji był jednym z pierwszych „ekspertów”, którzy odkryli wiadomości o wybuchu zapalenia płuc w Wuhan.

Kilka dni po ogłoszeniu przez Chiny wybuchu epidemii, mając dostęp do danych dotyczących globalnej sprzedaży biletów lotniczych, system sztucznej inteligencji BlueDot w dalszym ciągu dokładnie przewidywał rozprzestrzenianie się wirusa korona z Wuhan do Bangkoku, Seulu, Tajpej i Tokio.