Машинное обучение в программной инженерии
Семинар посвящен применению интеллектуальных методов (machine learning) и технологий обработки массивов данных (big data) в информатике (computer science) и программной инженерии (software engineering)
Темы семинара
- Синтез программ по примерам средствами машинного обучения
- Автоматическое обнаружение проблем и анализ программного обеспечения
- Обработка и автоматизация анализа требований к ПО
- Автоматизация тестирования
Темы семинара отражают современные проблемы в сфере применения машинного обучения в программной инженерии.
Альтернативный курс
В весеннем семестре 2018 посещение семинара можно выбрать в качестве альтернативного курса студентам первого года магистратуры ФИВТ МФТИ, или факультативного курса по выбору.
Система оценивания
Для получения оценки по семинару необходимо:
- Выбрать и изучить статьи по темам семинара
- Подготовить систематический обзор по выбранной теме, или
- Изучить и повторить ключевые результатов по теме
- Выступить с докладам по результатам на семинаре
Требования к подготовке систематического обзора
Систематический обзор литературы в определенной области - это метод исследования предметной области с целью получения ответов на интересующие вопросы. Систематический обзор, при должном исполнении, может быть отнесен к методам исследований, которые допускают проверку и повторение результатов.
Порядок выполнения систематического обзора приведен в таблице ниже. Результаты систематического обзора оформляются в виде набора документов
- полный список источников (long list)
- список отобранных источников (short list)
- отчет с результатами
№ | Что делать | В чем результат | Где фиксируется результат |
---|---|---|---|
1. | Сформулиовать цели проведения обзора | Формулировка цели, перечень вопросов (Research Questions, напр. RQ1, RQ2..) | Отдельный раздел в отчете с результатами |
2. | Описать протокол поиска источников | Приведен перечень баз данных, библиографический и реферативных баз, сформулированы критерии поиска в них (поисковые запросы) | Отдельный раздел в отчете с результатами |
3. | Сформулировать критерии выбора источников | Требования, предъявляемые к источникам и их содержанию для включения в обзор (полезна ли информация для ответа на вопросы, качественная ли она и т.д.) | Отдельный раздел в отчете с результатами |
4. | Выполнить поиск источников согласно протоколу | Полный список найденных источников | Таблица с полным списком в отдельном документе |
5. | Отобрать источники из полного списка, при необходимости вернуться к п.4 | Список отобранных источников | Таблица с отобранными источниками в отдельном документе |
6. | По каждому вопросу исследования собрать информацию из отобранных источников | Ответ на вопрос с отсылками к источникам | Для каждого вопроса - отдельный подраздел |
7. | Подготовить заключение: удалось ли ответить на вопросы, сделать выводы | Выводы о достижении цели обзора, рекомедации по использованию результатов обзора | Отдельный раздел отчета с результатами |
Литература:
- Kitchenham, B.A. and S. Charters (2007) Guidelines for performing systematic literature reviews in software engineering, Technical Report EBSE-2007-01, School of Computer Science and Mathematics, Keele University.
- См. также слайды.
Требования к подготовке анализа результатов по теме
Повторение опубликованных ранее результатов другими исследователями - важная процедура в научном исследовании, направленная на выявления неточностей, расхождений, неполноты в опубликованных результатах исследований и методах и достижения.
Порядок повторения результатов по теме приведен в таблице ниже. Результаты фиксируются в следующих документах
- отчет о повторении результатов
- исходный код и данные
Требования к статье для повторения
- должен быть доступен исходный код для основного результата статьи
- доступны данные, использованные в статье
- результат отражает state-of-the-art
# | Что делать | В чем результат | Где фиксируется результат |
---|---|---|---|
1. | Найти и согласовать статью, актуальную для темы | Выбрана статья для повторения результатов. | В электронной почте, в первом разделе отчета |
2. | Получить и сохранить код и данные, проверить возможность использования | Готовый к исполнению код, данные для проведения эксперимента | Исходный код и данные (выложены для доступа) |
3. | Повторить эксперимент по описаннию в статье | Выявлены отклонения и неточности в описании эксперимента, упущения и пропуски | Раздел в отчете о повторении результатов |
4. | Сравнить результаты с полученными в статье | Получены собственные количественные результаты эксперимента, указаны расхождения с результатами в статье | Раздел в отчете о повторении результатов |
5. | Сделать выводы о повторяемости результатов статьи | Выводы о повторяемости результатов статьи и возможности их использования | Раздел в отчете о повторении результатов |
Литература
- Geir Kjetil Sandve, Anton Nekrutenko, James Taylor, Eivind Hovig. Ten Simple Rules for Reproducible Computational Research
- См. также сайт reproducibleresearch.net