Машинное обучение для решения исследовательских и инженерных задач в науках о Земле

Кафедра термогидромеханики океана МФТИ

преподаватель: Криницкий Михаил Алексеевич, кандидат технических наук

Цель курса

Сформировать базовые знания о математических основах и общих принципах современных методов машинного обучения в применении к задачам наук о Земле; разобрать общепринятые методики применения методов машинного обучения.

Задачи курса

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

Содержание курса, структурированное по темам (разделам)

  1. Введение
    • Машинное обучение и искусственный интеллект. Исторический обзор, начальные определения, взаимосвязь понятий. Обзор языков программирования и инструментов для проведения исследований с применением методом машинного обучения.
    • Обзор современных приложений в академической науке и в технике.
    • Машинное обучение как способ выявления неявных закономерностей в данных.
    • Машинное обучение как способ решения задач на основе натурных данных.
    • Машинное обучение как способ аппроксимации распределения данных.
  2. Классификация задач и методов машинного обучения
    • Типы задач машинного обучения: «обучение с учителем», «обучение без учителя», «обучение с частичным привлечением учителя» и др. Задачи классификации и регрессии. Примеры в задачах наук о Земле.
    • Краткий обзор методов обучения «с учителем». Линейная регрессия, логистическая регрессия, наивный байесовский классификатор, метод Kближайших соседей, решающие деревья, композиционные методы, метод опорных векторов, искусственные нейронные сети. Примеры в задачах наук о Земле.
    • Краткий обзор методов обучения «без учителя». Метод главных компонент и другие методы сокращения размерности. Методы кластеризации: метод К средних; метод моделирования гауссовой смеси; агломеративная и дивизивная иерархическая кластеризация; DBSCAN и HDBSCAN. Методы обнаружения аномалий. Нейросетевые автокодировщики. Генеративные состязательные сети. Примеры в задачах наук о Земле.
  3. Технические средства анализа данных
    • Python как язык программирования для анализа данных. Динамическая типизация и полная интроспекция. Парадигмы программирования, реализованные в Python. Особенности многопотоковой обработки данных. Библиотеки обработки данных и библиотеки визуализации данных. Специальные библиотеки для задач наук о Земле Basemap и NetCDF4. Библиотека анализа двумерных данных OpenCV.
    • Инструментарий для обработки, визуализации и анализа данных с использованием Python.
    • Интерактивная среда разработки JetBrainsPyCharm. Клиент-серверная интерактивная cреда исполнения кода и визуализации Jupyter. Особенности исполнения программ в среде Jupyter. Построение документов в среде Jupyter с применением разметки и LaTeX.
  4. Линейная регрессия и принципы машинного обучения
    • Вероятностная постановка задачи обучения по прецедентам. Статистические основы модели линейной регрессии. Варианты решения задачи линейной регрессии. Ограничения линейной регрессии. Проблема мультиколлинеарности признаков. Генерация и отбор признаков, спрямляющие пространства. Однослойный перцептрон.
    • Принципы машинного обучения в примерах. Принцип близости похожих событий в пространстве представлений. Принцип оптимизации функционала потерь. Регуляризация моделей. Разделимость и отделимость событий в задачах классификации. Интерпретируемость моделей машинного обучения. Принцип композиции алгоритмов.
  5. Общая схема решения задач машинного обучения
    • Определение типа задачи и постановка задачи. Исследование или/и формирование массива исходных данных, визуализация данных. Адаптация алгоритмов машинного обучения и алгоритмов их настройки под сформулированную задачу. Предобработка данных для выбранных алгоритмов. Оптимизация (обучение) моделей. Оценка качества и оптимизация гиперпараметров. Применение модели и построение выводов по результатам.
  6. Задачи классификации и логистическая регрессия
    • Примеры задач классификации в науках о Земле. Статистические основы модели логистической регрессии. Формулировка модели логистической регрессии и логистическая функция ошибки. Обучение модели логистической регрессии. Ограничения логистической регрессии. Проблема мультиколлинеарности признаков, генерация и отбор признаков, спрямляющие пространства. Однослойный перцептрон с произвольной функцией активации. Виды функции активации.
  7. Оптимизация моделей машинного обучения и настройка гиперпараметров
    • Формулировка задачи оптимизации. Примеры оптимизационных задач. Задача выпуклого программирования. Общая задача нелинейного программирования. Понятие ландшафта функции потерь. Проблемы невыпуклого ландшафта функции потерь и методы оптимизации, решающие эту проблему. Градиентные методы оптимизации первого и второго порядка. Модификации градиентных методов оптимизации первого порядка.
    • Явление переобучения и недообучения моделей. Понятие VC-размерности, сложность модели. Баланс между смещением и разбросом. Настройка гиперпараметров модели. Подход скользящего контроля. Стратегии скользящего контроля.
  8. Метод опорных векторов
    • Линейно разделимая выборка и разделяющая гиперплоскость. Геометрическая интерпретация задачи. Модель линейного метода опорных векторов. Функция потерь метода опорных векторов. Варианты оптимизация моделей в методе опорных векторов. Проблема неразделимости выборки. Ядра и спрямляющие пространства. Примеры ядер. Метод опорных векторов как двуслойный перцептрон.
    • Метод опорных векторов в задачах восстановления регрессии.
  9. Деревья решений.
    • Взаимная информация, информационная энтропия, кросс-энтропия, дивергенция Кульбака-Лейблера и принцип оптимизации правдоподобия. Метод наименьших квадратов в задачах линейной регрессии как частный случай принципа максимизации правдоподобия.
    • Алгоритмы построения решающих деревьев ID3 и С4.5. Решающие деревья в задачах классификации и восстановления регрессии.
  10. Композиции и ансамбли
    • Комитеты и композиции алгоритмов. Бутстрэп и бэггинг. Случайные леса.
    • Градиентные метаалгоритмы. Бустинг над произвольным семейством алгоритмов. AdaBoost. XGBoost, LightGBM и CatBoostв задачах классификации и регрессии.
  11. Искусственные нейронные сети
    • Исторический обзор развития искусственного интеллекта. «Восходящее» и «нисходящее» направления. Коннективизм и принцип ассоциативности.
    • Перцептрон. Варианты однослойного перцептрона. Способы обучения перцептрона. Искусственная нейронная сеть как универсальный аппроксиматор. Многослойный перцептрон.
    • Алгоритмы обучения ИНС. Алгоритм обратного распространения ошибки. Ландшафт функции потерь. Сходимость обучения ИНС. Регуляризации и эвристики оптимизации ИНС. Пакетная нормализация. Прореживание.
    • Переобучение, недообучение и обобщающая способность ИНС.
  12. Технические средства конструирования и обучения ИНС
    • Обзор средств и библиотек для программной реализации искусственных нейронных сетей. Numpy, Keras, Tensorflow, Theano, PyTorch.
    • Реализация многослойного перцептрона и процедуры оптимизации. Особенности вычислений на графических сопроцессорах. Организация порождения обучающих данных и цепи вычислений процесса оптимизации ИНС.
  13. Сверточные нейронные сети
    • Краткий исторический обзор. Когнитрон и неокогнитрон, LeNet и более поздние архитектуры. Характерные задачи, решаемые СНС.
    • Принцип локальности признаков. Принцип оценки корреляции с шаблоном. Принцип общих параметров. Математические основы сверточных нейронных сетей. Обратное распространение градиента функции потерь. Рецептивное поле. Субдискретизация. Соединения быстрого доступа.
    • Свойства СНС.
    • Виды задач, решаемые с применением ИНС и СНС. Современные архитектуры СНС.
  14. Рекуррентные нейронные сети
    • Краткий исторический обзор. Принцип локальности признаков. Кодирование последовательностей. One-hot, Word2Vec, GloVe, fastText.
    • Рекуррентные нейронные сети: основные принципы. LSTM, двунаправленный LSTM, GRU.
    • Типы задач, решаемые РНС. Классификация и регрессия, порождение последовательности на базе последовательности.
  15. Задачи типа «обучение без учителя»
    • Задача сокращения размерности. Метод главных компонент. t-SNE. Самообучающиеся карты Кохонена. Нейросетевой автокодировщик и его разновидности.
    • Задача кластеризации. Постановка задачи. Мера близости событий и проклятие размерности в задачах кластеризации.
    • Виды алгоритмов кластеризации. Графовые и эвристические алгоритмы. DBSCAN и HDBSCAN. Статистические алгоритмы. Метод разделения гауссовой смеси, метод K средних. Иерархические алгоритмы. Метод Ланса-Уильямса. Вариации метода Ланса-Уильямса. Свойства иерархических алгоритмов.
    • Нейросетевые генеративные модели. Принцип и статистические основы генеративных состязательных сетей. DCGAN, LSGAN, WGAN.

  Основная литература

  • Флах П.«Машинное обучение. Наука и искусство построения алгоритмов, которые извлекают знания из данных.» / Флах П. М.: ДМК Пресс, 2015. 400 c.
  • Гудфеллоу Я., Бенджио И., Курвилль А. «Глубокое обучение.» / М.: ДМК Пресс, 2017. 652 c.
  • Николенко С. И., Кадурин А. А., Архангельская Е. О.«Глубокое обучение.» / СПб.: Питер. 2019. 480 с.

Учебно-методические материалы для самостоятельной работы

  • Воронцов К.В.«Математические методы обучения по прецедентам. Теория обучения машин.» (курс лекций).
  • Местецкий Л.М.«Математические методы распознавания образов. Курс лекций».

Дополнительная литература

  • Hastie T., Tibshirani R., Friedman J.«The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition» / T. Hastie, R. Tibshirani, J. Friedman, 2-е изд., New York: Springer-Verlag, 2009.
  • Bishop C. «Pattern Recognition and Machine Learning» / C. Bishop, New York: Springer-Verlag, 2006.

Перечень ресурсов, необходимых для освоения дисциплины

  • http://lib.mipt.ru/ – электронная библиотека Физтеха
  • http://benran.ru – библиотека по естественным наукам Российской академии наук
  • http://ml4es.ru - веб-сайт автора курса, посвященный этому курсу

Необходимое программное обеспечение

  • Интерактивная среда разработки программ PyCharm(производитель JetBrains, версия classroom)
  • Язык программирования Python 3, клиент-серверная среда исполнения кода Jupyter

 

 

 

 

 

Вы находитесь здесь:Главная/Аспитантура и учеба/Базовые кафедры/Кафедра термогидромеханики океана Московского физико-технического института/Дисциплины/Машинное обучение для решения исследовательских и инженерных задач в науках о Земле
Top

 

TPL_A4JOOMLA-WINTERLAKE-FREE_FOOTER_LINK_TEXT