ČVUT DSpace
  • Prohledat DSpace
  • English
  • Přihlásit se
  • English
  • English
Zobrazit záznam 
  •   ČVUT DSpace
  • České vysoké učení technické v Praze
  • Fakulta informačních technologií
  • katedry
  • katedra aplikované matematiky
  • Bakalářské práce - 18105
  • Zobrazit záznam
  • České vysoké učení technické v Praze
  • Fakulta informačních technologií
  • katedry
  • katedra aplikované matematiky
  • Bakalářské práce - 18105
  • Zobrazit záznam
JavaScript is disabled for your browser. Some features of this site may not work without it.

Techniky strojového učení pro rozpoznávání vzorů zdrojového kódu

Machine Learning Techniques for Source Code Pattern Recognition

Typ dokumentu
bakalářská práce
bachelor thesis
Autor
Rudolf Raevskiy
Vedoucí práce
Kovalenko Alexander
Oponent práce
Donat-Bouillud Pierre
Studijní obor
Znalostní inženýrství
Studijní program
Informatika 2009
Instituce přidělující hodnost
katedra aplikované matematiky



Práva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.html
Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznam
Abstrakt
Automatizované porozumění sémantice kódu je klíčové pro vývojáře při psaní spolehlivého a optimalizovaného kódu. V posledních letech roste zájem o aplikaci strojového učení ve zdrojovém kódu s cílem automaticky odhalovat chyby, komentovat kód nebo jej pochopit a vylepšit. Tato práce uvádí techniky hlubokého učení aplikované na různé úrovně abstrakce zdrojového kódu. Experimentujeme se souborem dat, který se skládá ze zdrojového kódu jazyka R. Jazyk R má velkou komunitu převážně statistiků. Knihovny jazyka R však mají tendenci obsahovat neoptimální kód. Hlavním přínosem této práce je model natrénovaný na velkém souboru dat R, který je prvním krokem k automatizovanému nástroji pro psaní lepšího kódu R. Zaměřujeme se především na abstraktní syntaktické stromy (Abstract Syntax Trees, AST), ale uvažujeme i o jiných formách reprezentace. Různé abstrakce přidávají vstupním datům strukturu, a pomáhají tak lépe zobecňovat soubory dat. Trénujeme a vyhodnocujeme několik modelů založených na různých reprezentacích kódu. Jako hlavní model pro tuto úlohu byla vybrána architektura založená na transformerech, protože v této oblasti dosahuje lepších výsledků než jiné modely. Trénování modelu na velkém souboru dat R je prvním krokem k automatizovanému nástroji pro psaní lepšího kódu R. Výsledkem je RASTaBERTa, který je podle nás, nejmodernějším modelem založeným na transformátorech pro jazyk R a může být použit k dalšímu trénování pro specifické úlohy, jako je klasifikace, detekce chyb a anomálií, oprava chyb atd.
 
The automated understanding of code semantics is crucial for helping developers write reliable and optimized code. In recent years, there has been a growing interest in applying machine learning to source code, with the aim of automatically discovering bugs, commenting or understanding and improving the code. This work reports deep learning techniques applied to various levels of abstraction of the source code. We experiment with a dataset consisting of R language source code. R language has a large community of mostly statisticians. However, R libraries are prone to have suboptimal code. The main contribution of this work is a model trained on a large R dataset, which is the first step toward an automated tool to write a better R code. We primarily focus on Abstract Syntax Trees (AST), considering other representations forms just as well. Different abstractions add a structure to the input and therefore help to better generalize across the dataset. We train and evaluate several models based on various code representations. The transformer-based architecture was chosen as a backbone model for the current task, as it outperforms its counterparts in this domain. Training a model on a large R dataset is the first step toward automatized tool to write a better R code. As a result of RASTaBERTa, which is, to the best of our knowledge, the state-of-the-art transformer-based model for the R language and can be used for further training for specific tasks such as classification, bugs, and anomalies detection, bug-fix, etc.
 
URI
http://hdl.handle.net/10467/101935
Zobrazit/otevřít
PLNY_TEXT (25.90Mb)
POSUDEK (50.13Kb)
POSUDEK (45.48Kb)
Kolekce
  • Bakalářské práce - 18105 [369]

České vysoké učení technické v Praze copyright © 2016 

DSpace software copyright © 2002-2016  Duraspace

Kontaktujte nás | Vyjádření názoru
Theme by 
@mire NV
 

 

Užitečné odkazy

ČVUT v PrazeÚstřední knihovna ČVUTO digitální knihovně ČVUTInformační zdrojePodpora studiaPodpora publikování

Procházet

Vše v DSpaceKomunity a kolekceDle data publikováníAutořiNázvyKlíčová slovaTato kolekceDle data publikováníAutořiNázvyKlíčová slova

Můj účet

Přihlásit se

České vysoké učení technické v Praze copyright © 2016 

DSpace software copyright © 2002-2016  Duraspace

Kontaktujte nás | Vyjádření názoru
Theme by 
@mire NV