План на курса

Въведение в приложното машинно обучение

  • Статистично обучение vs. Машинно обучение
  • Итерации и оценка
  • Търгуване между смещението и вариацията (Bias-Variance trade-off)
  • Ръководено vs. Неръководено обучение
  • Проблеми, решавани с машинно обучение
  • Обучаване, валидация и тест – ML workflow за избягване на переподбора (overfitting)
  • Workflow на машинното обучение
  • Алгоритми за машинно обучение
  • Избор на подходящ алгоритъм за проблема

Оценка на алгоритми

  • Оценка на числовите прогнози
    • Мерки за точност: ME, MSE, RMSE, MAPE
    • Устойчивост на параметри и прогнози
  • Оценка на алгоритми за класификация
    • Точност и нейните проблеми
    • Матрица на заблуда (confusion matrix)
    • Проблемът с несъответствията в класовете (unbalanced classes problem)
  • Визуализация на производителността на модела
    • Крива на печалба (profit curve)
    • Крива ROC
    • Крива lift
  • Избор на модел
  • Настройка на модела – стратегии с решетки (grid search strategies)

Подготовка на данни за моделиране

  • Импорт и съхранение на данни
  • Разбиране на данните – основни изследвания
  • Манипулации с данни с библиотеката pandas
  • Преобразуване на данни – подготвка на данни (data wrangling)
  • Разбиране и анализ на данни
  • Липсващи наблюдения – детекция и решения
  • Аномалии (outliers) – детекция и стратегии
  • Стандартизация, нормализация, бинаризация
  • Преобразуване на качествени данни

Алгоритми за машинно обучение за детекция на аномалии (outliers)

  • Ръководени алгоритми
    • KNN
    • Енсемблно градиентно повдигане (Ensemble Gradient Boosting)
    • SVM
  • Неръководени алгоритми
    • Базирани на разстояния (distance-based)
    • Методи, базирани на плътност (density based methods)
    • Вероятностни методи (probabilistic methods)
    • Моделни методи (model based methods)

Разбиране на дълбокото обучение

  • Общ преглед на основните концепции на дълбокото обучение
  • Различаване между машинно и дълбоко обучение
  • Общ преглед на приложенията на дълбокото обучение

Общ преглед на невронните мрежи

  • Какво са невронните мрежи
  • Невронни мрежи vs. Регресионни модели (regression models)
  • Разбиране на математическите основи и механизми за обучение
  • Създаване на изкуствена невронна мрежа (artificial neural network)
  • Разбиране на невронните възли и свързаността им
  • Работа с неврони, слоеве и входни/изходни данни
  • Разбиране на еднослойните перцептрони (single layer perceptrons)
  • Различия между ръководено и неръководено обучение
  • Обучаване на feedforward и feedback невронни мрежи
  • Разбиране на форвард пропагация (forward propagation) и бекворд пропагация (back propagation)

Създаване на простите модели за дълбоко обучение с Keras

  • Създаване на модел в Keras
  • Разбиране на данните
  • Указване на дълбокия модел за обучение (specifying your deep learning model)
  • Компилиране на модела
  • Подготвяне и прилагане на модела (fitting your model)
  • Работа с данни за класификация
  • Работа с модели за класификация
  • Използване на моделите

Работа с TensorFlow за дълбоко обучение

  • Подготвяне на данните
    • Изтегляне на данни (downloading the data)
    • Подготовка на обучаващите данни (preparing training data)
    • Подготовка на тестовите данни (preparing test data)
    • Масштабиране на входящите данни (scaling inputs)
    • Използване на placeholder и променливи (variables)
  • Указване на архитектурата на мрежата (specifying the network architecture)
  • Използване на функцията за разходи (cost function)
  • Използване на оптимизатора (optimizer)
  • Инициализация (initializers)
  • Обучаване на невронната мрежа
  • Създаване на графика (building the graph)
    • Инференция (inference)
    • Загуба (loss)
    • Обучаване (training)
  • Обучение на модела
    • Графика (the graph)
    • Сесия (session)
    • Обучаващ цикъл (train loop)
  • Оценка на модела
    • Създаване на графика за оценка (building the eval graph)
    • Оценка с изход от оценка (evaluating with eval output)
  • Обучение на модели в мащаб (training models at scale)
  • Визуализация и оценка на моделите с TensorBoard

Приложение на дълбокото обучение за детекция на аномалии (anomaly detection)

  • Autoencoder
    • Архитектура Encoder - Decoder
    • Губителна функция за реконструкция (reconstruction loss)
  • Variational Autoencoder
    • Вариационно извличане (variational inference)
  • Generative Adversarial Network
    • Архитектура Generator – Discriminator
    • Подходи за детекция на аномалии с GAN (approaches to AN using GAN)

Енсемблни рамки

  • Комбиниране на резултати от различни методи (combining results from different methods)
  • Bootstrap агрегиране (bootstrap aggregating)
  • Средно аритметично на оценките за аномалии (averaging outlier score)

Изисквания

  • Опит с програмирането на Python
  • Основно запознаване със статистика и математически концепции

Целева група

  • Разработчици
  • Датасайентисти
 28 часове

Брой участници


Цена за участник

Отзиви от потребители (5)

Предстоящи Курсове

Свързани Kатегории