• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Large-Scale Machine Learning

2019/2020
Academic Year
RUS
Instruction in Russian
4
ECTS credits
Delivered at:
Department of Informatics
Course type:
Elective course
When:
1 year, 3, 4 module

Instructor

Программа дисциплины

Аннотация

Целью освоения дисциплины является формирование у студентов теоретических знаний и практических навыков использования методом машинного обучения и естественной обработки текстов в области работы с кодом и разработки программного обеспечения. В результате изучения этой дисциплины студенты будут понимать основные области применения методов машинного обучения для задач анализа и генерации кода, анализа хода программных проектов, поиска и исправления ошибок, генерации тестов и тестовых данных, реструктуризации кода и других видов деятельности, осуществляемых в проектах по разработке программного обеспечения. В результате освоения дисциплины студент должен: − понимать основные виды деятельности, осуществляемые при разработке программного обеспечения, и то, как в них могли бы быть использованы методы машинного обучения; − уметь выбрать подходящий метод машинного обучения и естественной обработки текстов для создания модели или прототипа инструмента, помогающего в решении задач, возникающих при разработке программного обеспечения; − уметь реализовать сбор и предобработку данных на основе репозитория с исходным кодом; − иметь навыки (приобрести опыт) использования существующих популярных библиотек, реализующих алгоритмы машинного обучения, для решения задач, актуальных в проектах по разработке программного обеспечения.
Цель освоения дисциплины

Цель освоения дисциплины

  • формирование у студентов теоретических знаний и практических навыков использования методом машинного обучения и естественной обработки текстов в области работы с кодом и разработки программного обеспечения.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знает области целесообразного применения методом машинного обучения, в том числе в области разработки программных проектов.
  • Читает свой и чужой код, проводит отладку программы. Определяет целесообразность применения методов машинного обучения для выбранной задачи.
  • Знает области целесообразного применения методом машинного обучения, в том числе в области разработки программных проектов. Читает свой и чужой код, проводит отладку программы. Определяет целесообразность применения методов машинного обучения для выбранной задачи.
  • Формулирует алгоритм решения задачи в виде последовательности действий, основанных на методах машинного обучения. Реализует алгоритмы решения выбранной задачи на подходящих языках программирования и с использованием соответствующих библиотек.
  • Разрабатывает модели и прототипы приложений для выбранной задачи на распространённых языках программирования.
  • Знает основные подходы и методы машинного обучения, понимает их сильные и слабые стороны, границы применимости. Умеет замерять эффективность построенных моделей.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Постановка задачи машинного обучения
  • Использования машинного обучения для предсказания и оценки
  • Использование машинного обучения для задач синтеза кода
  • Использование машинного обучения для оптимизации архитектуры кода
  • Использование машинного обучения для поиска дубликатов
  • Использование техник обработки естественных языков
  • Использование машинного обучения для анализа кода
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание 1
  • неблокирующий Домашнее задание 2
  • неблокирующий Домашнее задание 3
  • блокирующий Экзамен
    Экзамен проводится в письменной форме с использованием синхронного прокторинга и состоит из ответов на несколько теоретических вопросов. Экзамен проводится на платформе Moodle (https://et.hse.ru), прокторинг на платформе Экзамус (https://hse.student.examus.net). К экзамену необходимо подключиться за 15 минут. На платформе Экзамус доступно тестирование системы. Компьютер студента должен удовлетворять следующим требованиям: https://elearning.hse.ru/data/2020/05/07/1544135594/Технические%20требования%20к%20ПК%20студента.pdf) Для участия в экзамене студент обязан: заранее зайти на платформу прокторинга, провести тест системы, включить камеру и микрофон, подтвердить личность. Время выполнения задания один час. Время начала экзамена 11:00, завершение в 12:00. Во время выполнения студент записывает свой ответ на чистом листе бумаги, после фотографирует и высылает решение фотографию на электронную почту преподавателя. На отсылку решения дается 5 минут по завершении экзамена. Во время экзамена студентам запрещено: общаться (в социальных сетях, с людьми в комнате), списывать, использовать любые материалы. Во время экзамена студентам разрешено иметь при себе ручку и чистые листы бумаги, во время отправки решений разрешается использовать мобильный телефон или сканер. Кратковременным нарушением связи во время экзамена считается прерывание связи до 5 минут, если после этого студенту удается вернуться в ту же сессию работы с Экзамус. Долговременным нарушением связи во время экзамена считается прерывание связи 5 минут и более. При долговременном нарушении связи студент не может продолжить участие в экзамене. Процедура пересдачи аналогична процедуре сдачи.
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (4 модуль)
    0.16 * Домашнее задание 1 + 0.16 * Домашнее задание 2 + 0.18 * Домашнее задание 3 + 0.5 * Экзамен
Список литературы

Список литературы

Рекомендуемая основная литература

  • Zimmermann, T., Menzies, T., & Bird, C. (2015). The Art and Science of Analyzing Software Data. Amsterdam: Morgan Kaufmann. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=593414

Рекомендуемая дополнительная литература

  • Kelleher, J. D. (2019). Deep Learning. Cambridge: The MIT Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2234376