GitHub hat Fortschritte bei der Anwendung von maschinellem Lernen zur Suche und Analyse von Code veröffentlicht.

GitHub den Projekt CodeSearchNet, in dessen Rahmen Modelle für maschinelles Lernen sowie Datensätze erstellt wurden, die für das Parsen, Klassifizieren und Analysieren von Code in verschiedenen Programmiersprachen erforderlich sind. CodeSearchNet ähnelt ImageNet, enthält eine umfangreiche Sammlung von Codeausschnitten, die mit Annotationsinformationen versehen sind, die die auszuführenden Aktionen des Codes formalisieren. Die Komponenten zum Training der Modelle und die Anwendungsbeispiele von CodeSearchNet sind in Python unter Verwendung des TensorFlow-Frameworks geschrieben, und wird unter der GPLv3-Lizenz bereitgestellt. unter der MIT-Lizenz.

bei der Erstellung von CodeSearchNet wurden Technologien für die Verarbeitung natürlicher Sprache verwendet, die es den maschinellen Lernsystemen ermöglichen, nicht nur syntaktische Merkmale, sondern auch die Bedeutung der auszuführenden Codeaktionen zu berücksichtigen. Auf GitHub wird das System verwendet in Experimenten zur semantischen Code-Suche mit Anfragen in natürlicher Sprache (zum Beispiel wird bei der Anfrage "Sortierung einer Liste von Zeichenfolgen" der Code ausgegeben, der die entsprechenden Algorithmen implementiert).

Das bereitgestellte Datenset umfasst über 2 Millionen Paare aus„Code und Kommentar“, die auf den Quelltexten bestehender öffentlicher Bibliotheken basieren. Der Code enthält den vollständigen Quelltext einzelner Funktionen oder Methoden, während der Kommentar die von der Funktion ausgeführten Aktionen erläutert (detaillierte Dokumentation ist verfügbar). Derzeit sind Datensets für die Sprachen Python, JavaScript, Ruby, Go, Java und PHP vorbereitet. Beispiele für die Verwendung der bereitgestellten Datensets zum Training verschiedener Typen von neuronalen Netzwerken sind enthalten, einschließlich Neural-Bag-Of-Words, RNN, Self-Attention (BERT) und 1D-CNN+Self-Attention Hybrid.

Um die Suchmechanismen für natürliche Sprache weiterzuentwickeln, wurde zusätzlich das Set "CodeSearchNet Challenge" erstellt, das
99 typische Abfragen mit etwa 4.000 Expertenanmerkungen umfasst, die die wahrscheinlichsten Zuordnungen zum Code im Datensatz CodeSearchNet Corpus beschreiben, der etwa 6 Millionen Methoden und Funktionen umfasst (Größe des Sets ca. 20 GB). Die CodeSearchNet Challenge kann als Referenz zur Bewertung der Effektivität von Methoden zur Suche von Code in natürlicher Sprache dienen. Mit Hilfe des Tools Kubeflow ist bereitgestellt
Nummer 00 oder wurde eine Engine zur Codesuche entwickelt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster