پرو ہوسٹر > بلاگ > انٹرنیٹ کی خبریں > GitHub نے کوڈ کی تلاش اور تجزیہ کے لیے مشین لرننگ کے استعمال میں پیش رفت کا آغاز کیا ہے۔
GitHub نے کوڈ کی تلاش اور تجزیہ کے لیے مشین لرننگ کے استعمال میں پیش رفت کا آغاز کیا ہے۔
GitHub کے متعارف کرایا منصوبے کوڈ سرچ نیٹ, в рамках которого подготовлены модели машинного обучения и наборы данных, необходимые для разбора, классификации и анализа кода на различных языках программирования. CodeSearchNet, по аналогии с تصویری نیٹ, включает большую коллекцию отрывков кода, снабжённых аннотациями, формализующими выполняемые кодом действия. Компоненты для обучения моделей и примеры использования CodeSearchNet написаны на языке Python с использованием фреймворка Tensorflow и نے بانٹا MIT لائسنس کے تحت.
При создании CodeSearchNet использованы технологии разбора текста на естественном языке, дающие возможность системам машинного обучения учитывать не только синтаксические особенности, но и смысл выполняемых кодом действий. В GitHub система لاگو в экспериментах по организации семантического поиска кода с использованием запросов на естественном языке (например, при запросе «сортировка списка строк» выводится код с реализацией соответствующих алгоритмов).
Предложенный набор данных включает более 2 млн связок «код-комментарий», подготовленных на основе исходных текстов существующих открытых библиотек. Код охватывает полный исходный текст отдельных функций или методов, а комментарий описывает выполняемые функцией действия (приводится детальная документация). В настоящее время наборы данных подготовлены для языков Python, JavaScript, Ruby, Go, Java и PHP. Предоставлены примеры использования предложенных наборов данных для обучения различных типов нейронных сетей, включая Neural-Bag-Of-Words, آر این این۔, خود توجہ (BERT) и 1D-CNN+Self-Attention Hybrid.
Для развития механизмов поиска на естественном языке дополнительно подготовлен набор CodeSearchNet Challenge, включающий 99 типовых запросов с около 4 тысячами экспертных аннотаций, описывающих наиболее вероятные привязки к коду в наборе данных CodeSearchNet Corpus, охватывающем около 6 млн методов и функций (размер набора около 20 Гб). CodeSearchNet Challenge может выступать как эталон для оценки эффективности тех или иных методов поиска кода на естественном языке. С использованием инструментария کیوب فلو تیار مثال کے طور پر движка для поиска кода.