• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Машинное обучение

2019/2020
Учебный год
RUS
Обучение ведется на русском языке
5
Кредиты
Статус:
Курс по выбору
Когда читается:
2-й курс, 1, 2 модуль

Преподаватель

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

Аннотация

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

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

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

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

  • Знать: методы обработки, нормализации и векторизации исходных данных, методы агрегирования и анализа данных.
  • Уметь: осуществлять первичный анализ данных для решения прикладных задач.
  • Владеть: навыками применения библиотеки Pandas при решении практических задач.
  • Знать: основные методы отображения числовой информации; методами снижения размерности пространства признаков.
  • Уметь: использовать библиотеки Matplotlib и Seaborn для отображения информации в ходе проведения исследований.
  • Владеть: навыками разработки методов отображения данных.
  • Знать: основные методы классификации данных такие как линейная и логистическая регрессия, метод поддерживающих векторов, метод к ближайших соседей, деревья принятия решений, случайный лес; методы оценки качества классификации.
  • Уметь: обоснованно и корректно выбирать метод для решения задачи классификации; корректно ставить задачу классификации.
  • Владеть: программными библиотеками классификации, входящими в состав библиотеки sklearn.
  • Знать: основные методы кластеризации данных: к-средних, DB-SCAN и ипроизводные от них.
  • Уметь: обоснованно и корректно выбирать метод для решения задачи кластеризации; корректно ставить задачу кластеризации.
  • Владеть: программными библиотеками кластеризации, входящими в состав библиотеки sklearn.
  • Знать: понятия лексического, синтаксического и семантического анализа текстов.
  • Уметь: реализовать систему анализа текстов на естественном языке.
  • Владеть: программными библиотеками для обработки текстов.
  • Знать: основные форматы изображений; методы обработки изображений.
  • Уметь: выделять фрагменты изображений в зависимости от поставленной задачи; преобразовывать изображения в зависимости от поставленной задачи.
  • Владеть: библиотеками обработки изображений на языке Python.
  • Знать: основные структуры нейронных сетей; понятия функции потерь, пороговой функции, их основные виды.
  • Уметь: корректно формировать структуру нейронной сети для решения поставленной прикладной задачи.
  • Владеть: нейросетевым пакетом в составе библиотеки sklearn.
  • Владеть: нейросетевым пакетом в составе библиотеки sklearn и других библиотек.
  • Знать: основные структуры глубинных нейронных сетей: сверточные, рекуррентные, их разновидности.
Содержание учебной дисциплины

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

  • Обработка данных с использованием библиотеки Pandas
    Основные возможности библиотеки Pandas: загрузка и выборка данных, агрегирование данных, нормализация данных.
  • Визуализация данных и их анализ
    Основные виды графиков для отображения данных: диаграммы рассеяния, размаха, гистограммы, эпюры, отображение трехмерных данных, отображение последовательностей. Элементы графика: оси, легенда, надписи. Методы снижения размерности пространства признаков: метод главных компонент, многомерное шкалирование, t-SNE, UMAP.
  • Классификация данных
    Линейные методы классификации данных: линейная и логистическая регрессия, SMV. Методы, основанные на деревьях принятия решения, в том числе, метод случайного леса. Метод k ближайших соседей. Методы бустинга и стеккинга. Методы оценки результатов классификации: точность, полнота, f-мера, ROC-AUC, матрица ошибок.
  • Кластеризация данных
    Метод k-средних, спектральная кластеризация. Методы, основанные на оценке плотности распределения точек в пространстве. Методы оценки точности кластеризации.
  • Обработка текстов на естественном языке
    Лексический и синтаксический анализ текстов. Понятия пространства признаков для текста. Задачи обработки текстов: выделение именованных сущностей, фактов. Классификация и кластеризация текстов. Технологии Word2Vec, Glove.
  • Обработка изображений
    Основные форматы хранения изображений и их отличия: BMP, PNG, JPG, GIF. Методы внесения изменений в изображения. Методы выделения областей изображения при помощи кластеризации точек. Библиотеки Python я работы с изображениями. Библиотека OpenCV и методы обработки изображений в sklearn.
  • «Плотные» нейронные сети
    Бионические и искусственные нейронные сети, нейрон МакКаллока и Питтса, персептрон, сети Кохонена. Понятия порогового элемента и функции. Применение нейронных сетей для решения задач классификации и преобразования данных.
  • Глубинное обучение нейронных сетей
    Понятие свертки в нейронных сетях, сверточные нейронные сети. Введение обратной связи в нейронной сети, рекуррентные сети. Виды сверточных и рекуррентных нейронных сетей. Построение архитектуры нейронной сети для решения прикладных задач.
Элементы контроля

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

  • неблокирующий Практические занятия
  • неблокирующий Проект
  • блокирует часть оценки/расчета Экзамен
Промежуточная аттестация

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

  • Промежуточная аттестация (2 модуль)
    0.25 * Практические занятия + 0.25 * Проект + 0.5 * Экзамен
Список литературы

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

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

  • Bhasin, H. (2019). Python Basics : A Self-Teaching Introduction. Dulles, Virginia: Mercury Learning & Information. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1991381
  • Gries, P., Campbell, J., & Montojo, J. (2017). Practical Programming : An Introduction to Computer Science Using Python 3.6 (Vol. Third edition). [Place of publication not identified]: Pragmatic Bookshelf. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1716748
  • Matthes, E. Python crash course: a hands-on, project-based introduction to programming. – No Starch Press, 2015. – 562 pp.
  • McKinney, W. (2018). Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1605925
  • Джозеф Л. - Изучение робототехники с помощью Python - Издательство "ДМК Пресс" - 2019 - 250с. - ISBN: 978-5-97060-749-7 - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/123716