Анализ данных на Python в примерах и задачах, часть 2
Санкт-Петербург, осень 2018
Описание
Продолжение курса Анализ данных с помощью языка Python, часть 1
Нейронные сети
Теоретические основания
Работа с Keras и TensorFlow
Нейронные сети в задачах аппроксимации
Нейронные сети в регрессионных задачах
Нейронные сети для прогнозирования
Нейронные сети в задачах распознавания образов
Введение в DeepLearning
Регуляризация
Работа с разреженными данными и SVD разложение
XGBoost
Калибровка моделей
Факторный анализ
Преподаватели
Список лекций
Модель нейрона. Активационная функция. Сети прямого распространения (FeedForward Neural Network). Архитектура нейронной сети. Коннективизм (connectionism).
Обучение нейронной сети. Обратное распространение ошибки. Метод скорейшего спуска (Gradient descent) и его обобщения. Эпохи и batch'и. Введение в Keras и TensorFlow. Инициализация весов нейронной сети. Стандартизация данных предотвращает насыщение. Обучение нейронной сети прямого распространения. Оптимизация (optimizers)в Keras. Формулы для поправок весов при обучении нейронной сети. Пример обучения нейронной сети.
Пример обучения нейронной сети. Критерии качества в Keras. Инициализация весов нейронной сети в Keras.
Нейронные сети для прогнозирования. Сведение задачи прогнозирования к регрессионной задаче. Прогнозирование рядов с сезонной составляющей.
Распознавание изображений. Каскад Хаара для выделения лица на картинке. Свертки. Сверточные слои (convolution layer). Padding. Stride. Pooling. Dropout и декорреляция. Дообучение нейронных сетей. Пример: распознавание рукописных цифр, 1-е решение.
Пример: распознавание рукописных цифр, 2-е решение. Augmentaiton. VGG-16 архитектура нейронной сети. Регуляризация, ее назначение. Регуляризация в линейном регрессионном анализе. Нормальные уравнения линейного регрессионного анализа. Добавление регуляризационного слагаемого в нормальные уравнения. Особая роль свободного члена. Пример: аппроксимация точек многочленом. Выборка валидации. Варианты регуляризационного слагаемого (ridge regression, lasso, elastic net). Почему Lasso позволяет сократить число предикторов.
Теоретическое обоснование метода. Пример решения задачи в Python с использованием XGboost. Несбалансированные выборки. Precision, Recall, F1. Информативность переменных (Importance). Подбор параметров в XGboost.
Подбор параметров в XGboost. GridSearch для подбора параметров. Факторный анализ. Задачи, решаемые с помощью факторного анализа.
Математические модели анализа главных компонент и факторного анализа. Интерпретация факторов. Пример проведения факторного анализа в Python. Факторные нагрузки, факторные метки, их интерпретация. Вращения факторов.
Пример проведения факторного анализа в Python. Математические модель SVD разложения. SVD разложение и анализ главных компонент. SVD разложение как основа латентно - семантического анализа (LSA). SVD разложение матрицы данных, содержащей пропуски. Метод Simon'a Funk'a Регуляризация в методе Simon'a Funk'a. SVD разложение при построении рекомендательной системы.
Особенности применения SVD разложения (Singular Value Decomposition) для данных с большим числом пропусков. Калибровка классификаторов. Изотоническая регрессия (isotonic regression). Калибровка Платта (Platt calibration).
Анализ несбалансированных выборок. Accuracy, precision, recall, F1. ROC кривая (ROC curve) для определения порогового значения. ROC кривая (ROC curve) для сравнения классификаторов. Area under curve (AUC). Логистическая регрессия (Logistic regression)