Název: Generování zdrojových kódů na základě popisu v přirozeném jazyce
Další názvy: Source Code Generation from Descriptions in a Natural Language
Autoři: Pašek, Jan
Vedoucí práce/školitel: Konopík Miloslav, Ing. Ph.D.
Oponent: Habernal Ivan, Ing. Ph.D.
Datum vydání: 2022
Nakladatel: Západočeská univerzita v Plzni
Typ dokumentu: diplomová práce
URI: http://hdl.handle.net/11025/49093
Klíčová slova: strojové učení;zpracování přirozeného jazyka;neuronové sítě;generování zdrojového kódu;syntéza kódu
Klíčová slova v dalším jazyce: machine learning;natural language processing;neural networks;source code generation;code synthesis
Abstrakt: Tato diplomová práce představuje CodeFormer, nový model neuronové sítě, schopný na základě popisu úlohy v anglickém jazyce generovat funkce v programovacím jazyce Python. Tento model, založený na architektuře modelu BART, je předtrénovaný na 230 milionech funkcích získaných z veřejných GitHub repozitářů. Po dotrénování na CodeSearchNet datasetu náš model překonává konkurenční modely a nastavuje tak nové state of the art s 46,12 BLEU, což představuje zlepšení o 13,86 BLEU. Vedle CodeFormer modelu tato práce představuje nový Stack Overflow Code Generation Dataset (SOCGD), který je určený k trénování generativních modelů zdrojových kódů. Na tomto datasetu náš model dosahuje výsledku 47,68 BLEU. Výsledný model lze integrovat do vývojových prostředí a umožnit tak programátorům generovat části zdrojových kódů s cílem zvýšit efektivitu jejich práce. V rámci našeho výzkumu jsme také objevili lepší přístup k trénování modelu BART na úloze strojového překladu. Použitelnost tohoto přístupu na jiných doménách je třeba ověřit v navazující práci.
Abstrakt v dalším jazyce: This work introduces CodeFormer, a Python source code generator pre-trained on a massive GitHub crawl consisting of 230M Python functions. The released model, built on BART architecture, generates Python functions based on descriptions in English. On a CodeSearchNet dataset, the CodeFormer sets a new state of the art with 46.12 BLEU, representing an improvement of 13.86 BLEU. We also release a new parallel corpus for code generation called Stack Overflow Code Generation Dataset (SOCGD), on which our model sets a baseline of 47.68 BLEU. The resulting model is ready to be integrated into a source code suggestion system in an IDE, where it can improve software developers' productivity. During our research, we discovered a better way of training the BART for machine translation. However, the applicability of our approach to other domains must be verified in subsequent work.
Práva: Plný text práce je přístupný bez omezení
Vyskytuje se v kolekcích:Diplomové práce / Theses (KIV)

Soubory připojené k záznamu:
Soubor Popis VelikostFormát 
A20N0098P_DP.pdfPlný text práce2,67 MBAdobe PDFZobrazit/otevřít
A20N0098Pposudek-op.pdfPosudek oponenta práce41,27 kBAdobe PDFZobrazit/otevřít
A20N0098Phodnoceni-ved.pdfPosudek vedoucího práce128,43 kBAdobe PDFZobrazit/otevřít
A20N0098Pobhajoba.pdfPrůběh obhajoby práce584,11 kBAdobe PDFZobrazit/otevřít


Použijte tento identifikátor k citaci nebo jako odkaz na tento záznam: http://hdl.handle.net/11025/49093

Všechny záznamy v DSpace jsou chráněny autorskými právy, všechna práva vyhrazena.