Методы машинного обучения в области программной инженерии
Assessing the Generalizability of Code Embeddings
На этом семинаре будут разобраны две статьи, относящиеся к эмбеддингам для исходного кода.
В первой из них, Assessing the Generalizability of code2vec Token embeddings, исследуется возможность обобщения эмбеддингов токенов исходного кода. В обработке естественного языка эмбеддинги слов, однажды обученные, успешно применяются для решения различных задач. Существует гипотеза, согласно которой сходство языков программирования и естественных языков позволяет применять к первым методы, разработанные для вторых. Авторы статьи применяют эмбеддинги токенов, полученные методом code2vec, в трёх новых задачах и сравнивают их с эмбеддингами GloVe, а также с традиционными подходами.
Вторая статья, Adversarial Examples for Models of Code, связана с adversarial атаками. Многие из существующих adversarial атак предполагают незначительное изменение входа и работают только с непрерывными данными. Существуют работы по созданию adversarial образцов для моделей естественного языка, работающие с текстовыми данными, но и они не применимы в ограничениях, накладываемых языками программирования. В статье предлагается способ создания adversarial образцов, применимый в этих условиях. Также в статье предлагается способ защиты, значительно снижающий эффективность атак за счёт небольшой потери точности.
Ссылки на статьи:
http://www.mysmu.edu/faculty/davidlo/papers/ase19-code2vec.pdf
https://arxiv.org/abs/1910.07517
Докладчик: Андрей Гусев.
Язык доклада: русский.
Дата и время: 4-е декабря, 19:30-21:00.
Место: Таймс, аудитория 404.
Видео с семинаров доступно по ссылке: http://bit.ly/MLJBSeminars