GitHub публікує проєкт для зручного пошуку й аналізу коду

2 хв. читання

GitHub випустив проєкт CodeSearchNet — опубліковані моделі машинного навчання і набори даних для розбору, аналізу й класифікації коду.

CodeSearchNet містить колекцію фрагментів коду й анотації щодо їх дії. Сенс в тому, щоб системи машинного навчання враховували не лише синтаксичні особливості запиту, а й призначення коду. Компоненти для навчання моделей і приклади використання CodeSearchNet написані мовою Python з використанням Tensorflow. Усі напрацювання поширюються під ліцензією MIT.

Повний набір даних CodeSearchNet Corpus доступний на Amazon S3 і містить:

  • 6 млн методів і функцій (приблизно 20 Гб);
  • з них 2 млн мають супровідну документацію (код + коментарі, створені на базі текстів з відкритих бібліотек);
  • метадані, які вказують на джерело (наприклад, сховище чи номер рядка), де були взяті дані.

Зараз є підготовлені набори даних для мов Python, JavaScript, Ruby, Go, Java і PHP. Також є приклади використання цих наборів для навчання різних нейронних мереж, зокрема Neural-Bag-Of-Words, RNN, 1D-CNN, Self-Attention (BERT) і 1D-CNN+Self-Attention Hybrid.

Пошукові системи для коду часто не розуміють, чого ми хочемо, на відміну від звичайних пошуковиків в інтернеті. Ми використали сучасні методи машинного навчання, аби покращити пошук коду, однак швидко зрозуміли, що не можемо оцінити наш прогрес. Не існує стандартного набору даних, який би підходив для оцінювання якості пошуку коду.

Тому компанія разом з Weights & Biases окремо розробила CodeSearchNet Challenge. У ньому зібрані 99 типових запитів (з Bing і StaQC) + 4 тисячі анотацій від експертів (програмістів та дослідників машинного навчання). Тож CodeSearchNet Challenge може слугувати еталоном для оцінки ефективності методів пошуку коду звичайною мовою. Також є опублікований приклад рушія для пошуку коду, створений за допомогою інструментарію Kubeflow.

Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Codeguida 5.2K
Приєднався: 9 місяців тому
Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.

Вхід / Реєстрація