Основы педагогического дизайна
1. Введение в педагогический дизайн.
Система образования адаптируется к массовому переходу от традиционных практик к новым образовательным форматам, и нужны квалифицированные люди, способные эту трансформацию обеспечить. Именно в этот момент возникает необходимость в педагогическом дизайне образовательной деятельности, когда привычное содержание обретает новую структуру и наполняется свежими смыслами. Какие шаги должен сделать педагогический дизайнер, и как спроектировать систему естественного научения?
2. Педагогический дизайн: онлайн-инструменты и геймификация процессов.
Человек обучается, чтобы перейти в новом качестве в новую деятельность и это возможно лишь тогда, когда в образовательном процессе спроектирована различная деятельность. Существует огромное количество деятельностных практик и способов их реализовать при помощи онлайн-инструментов.
3. Педагогический дизайн онлайн-мероприятий.
В чем разница между офлайн и онлайн-обучением? С какими трудностями сталкиваются преподаватель и участник образовательного процесса? Всегда ли обучение с помощью сервиса Zoom равно онлайн-обучению? Как спроектировать онлайн-обучение от идеи до продакшена?
4. Генерация идей.
Как педагогический дизайн приземлить на реальные проекты? Зачем педагогический дизайн нужен в вашем конкретном случае, и какие проблемы позволяет решить?
5. Педагогический дизайн крупных образовательных мероприятий (хакатон/интенсив) и работа с данными.
Какие среды и инструменты лучше использовать для организации крупных образовательных мероприятий в онлайн? Как подготовиться к проведению крупного образовательного онлайн-мероприятия с точки зрения сбора и анализа цифрового следа?
6. Педагогический дизайн и индивидуальные образовательные траектории.
Что такое индивидуальная образовательная траектория? Как педагогический дизайн и сбор цифрового следа позволяет спроектировать индивидуальную образовательную траекторию учащегося?
7. Проектная предзащита.
Как спроектировать качественное образовательное мероприятие? Как структурировать свои идеи и представить их потенциальному заказчику образовательного мероприятия? Разбор кейсов и популярных ошибок на примере реальных проектов.
8. Защита проектов.
Аттестационное мероприятие для участников образовательного модуля.
Введение в образовательный дата-инжиниринг
1. Введение в образовательный дата-инжиниринг.
Правильно запроектированное с точки зрения педагогического дизайна мероприятие позволяет собирать огромное количество различных цифровых следов, отражающих реальную деятельность участников образовательной активности. Как и для чего структурировать и визуализировать эти данные?
2. Типы цифрового следа: диагностика и анкетирование.
Для чего мы собираем данные диагностики? Как правильно подобрать диагностический инструментарий? Как обрабатывать данные?
3. Виды анализа данных. Развитие культуры управления набором данных.
Подробный разбор видов анализа данных, какой вид может использоваться для тех или иных целей. Как правильно подготавливать систему сбора данных.
4. Об инструментах сбора цифрового следа, какие типы данных они собирают и как организовать их сбор.
Каждый инструмент имеет особенности, которые следует учитывать при проектировании процесса сбора данных. Рассмотрим наиболее популярные примеры.
5. Генерация идей.
Как работу с цифровым следом приземлить на реальные проекты? Зачем он нужен в вашем конкретном случае, и какие проблемы позволяет решить?
6. Построение непрерывной и отказоустойчивой системы сбора данных.
Как автоматизировать процесс сбора данных и наладить устойчивую систему.
7. Управление проектной деятельностью на данных.
Разбор кейсов Университета 20.35 на примере проектных интенсивов.
8. Защита проектов.
Итоговая аттестация
Обработка и аггрегация данных. Визуализация и основы статистического анализа данных
1. Процесс интеллектуального анализа данных.
Основные определения и термины, подходы в машинном обучении. Роль машинного обучения в современных прикладных задачах. Основные этапы работы аналитика с методами машинного обучения. Data-driven подход. Основы работы с инструментальными средствами машинного обучения. Понятие интеллектуального рабочего процесса-«пайплайна» обработки данных
2. Извлечение данных.
Основные задачи извлечения данных. Работа со структурированными файлами, подключение к реляционным БД, написание SQL-запросов. Извлечение данных из текстовых файлов. Группировка данных.
3. Трансформация данных.
Обогащение данных. Очистка, восстановление пропущенных значений, обработка аномалий. Создание новых переменных. Кодирование и биннинг. Понятие качества данных и методы его проверки. Техническое и бизнес-качество данных.
4. Визуализация данных.
Работа с простыми визуализациями. Столбиковые диаграммы, круговые диаграммы, диаграммы рассеяния, тепловые карты, «ящик с усами»
Методы машинного обучения с учителем и без учителя
1. Сокращение размерности.
Методы факторного анализа. Метод главных компонент. Метод сингулярного разложения. Методы определения оптимального числа факторов. Вращение факторов. Сокращение размерности переменных для визуализации многомерных данных.
2. Кластеризация.
Методы классификации без учителя. Метод k-средних, иерархическая агломерация. Метрики расстояния между объектами. Метрики расстояния между кластерами. Понятие нечеткой кластеризации. Кластеризация документов.
3. Классификация.
Методы классификации с учителем и без учителя.Понятие обучающей выборки. Метод ближайших соседей. Наивный байесовский подход. Деревья решений. Обучение и использование моделей. Распознавание спама.
4. Прогнозирование.
Методы прогнозирования временных рядов. Регрессионные модели. Линейная и логистическая регрессия. Проблема мультиколлинеарности. Предсказание курса акций.
5. Качество моделей машинного обучения.
Основные метрики качества моделей машинного обучения. Матрица запутанности (ошибок). Точность, полнота, MSE, MAE и др. метрики. Оценка качества моделей. Выбор наилучшей модели.
Анализ изображений
1. Методы улучшения контраста изображений.
Понятие цифрового изображения. Пространственное и яркостное разрешение изображения. Статистические характеристики изображения. Понятия динамического диапазона и контраста изображения. Количественные меры контраста. Локальный контраст. Гистограмма яркости. Использование матрицы Харалика для оценивания контраста. Отношение сигнал-шум. Методы улучшения контраста изображений. Масштабирование яркости. Понятие передаточной функции. Гамма-коррекция изображения. Выравнивание гистограммы яркостей. Адаптивное выравнивание гистограмм. Адаптивное выравнивание с ограничением контраста. Выравнивания яркости по заданной гистограмме.
2. Методы выделения и улучшения границ.
Понятие границы. Градиент яркости. Использование линейных фильтров для оценки градиента. Операция свертки. Ядро линейного оператора. Градиентные операторы. Операторы Робертса, Собеля, Превитта. Особенности градиентных операторов. Сглаживание изображений. Фильтр Гаусса. Использование фильтра Лапласа для детекции границ. Фильтр лапласиана гауссианы (LoG). Метод Марра-Хилдрета. Фильтр разности гауссиан (DoG). Детектор границ Кэнни. Улучшение резкости изображения. Нерезкое маскирование.
3. Методы устранения шумов.
Источники шума на изображениях. Методы устранения шума. Устранение шума линейными фильтрами. Фильтр простого скользящего среднего. Свойство сепарабельности линейного фильтра. Биномиальный фильтр. Методы сглаживания с сохранением границ. Медианная фильтрация. Шум «соли и перца». Модификации медианного фильтра. Диффузионные фильтры. Анизотропный диффузионный фильтр. Артефакт ступенчатых перепадов яркости. Билатеральный фильтр. Влияние параметров фильтра на результат. Управляемые фильтры. Понятие управляющего изображения. Эффект переноса структуры. Совместный билатеральный фильтр. Фильтр Хе. Использование гребневой регрессионной модели в управляемой фильтрации.
4. Выделение и анализ объектов.
Задачи высокоуровневого анализа изображений. Требования к моделям и алгоритмам. Пороговое выделение объектов. Метод Отсу. Преобразование Хафа. Использование преобразования Хафа для выделения линий и эллипсов на изображении. Понятия точек интереса и углов на изображении. Методы выделения углов. Детектор Харриса. Алгоритм FAST. Выделение объектов путем сопоставления с образцом (template matching). Понятие блоба. Выделение блобов. Использование фильтров Log и DoG для выделения блобов. Понятия ключевых точек и дескрипторов. Виды дескрипторов. Использование дескрипторов для выделения объектов. Дескрипторы SIFT, SUFR, MSER. Бинарный дескриптор BRIEF. Задача сопоставления дескрипторов. Оценка качества выделения объектов на изображении.
5. Нейронные сети для анализа изображений.
Математическая модель искусственного нейрона. Архитектуры нейронных сетей. Постановка задачи обучения нейронных сетей. Методы обучения. Организация процесса обучения. Оценка точности обученной модели. Валидация и тестирование. Обобщающая способность и переобучение. Архитектуры нейронных сетей, используемые для обработки и анализа изображений. Сверточные нейронные сети. Перенос знаний в сверточных нейронных сетях. Сегментация и классификация изображений с помощью нейронных сетей. Сеть U-Net. Сети AlexNet, VGG, ResNet. Выделение объектов на изображениях с помощью нейронных сетей. Алгоритм R-CNN и сеть YOLO.
Технологии хранения и обработки больших данных
1. Современные BigData-решения и архитектуры.
Определение понятия Большие Данные. Специфика проектирования и создания систем работы с большими данными. Виды задач, решаемых BigData-системами. Зависимость способа решения задачи от ее разновидности. Составные части BigData-систем. Проблема оценки качества BigData-систем. Функциональные и нефункциональные требования. Понятия времени отклика и пропускной способности. Методы и средства оценки производительности и утилизации в системах обработки больших объемов данных. Виды обработки: синхронная и асинхронная, пакетная и поточная. Преимущества и недостатки. Соотношение видов обработки с пользовательским опытом. Системы оперативного и долгосрочного хранения данных.
2. Системы разработки, сборки и доставки кода.
Качества языка программирования, влияющие на производительность. Параллелизм, удобство использования (синтаксис), обработка ошибок, безопасность. Сравнение языков программирования на примере реализации однотипной BigData-задачи
Способы обеспечения одновременной разработки проекта несколькими людьми. Системы контроля версий. Git, SVN. Отличия. Типовые операции.
Проблема управления версиями программных модулей и публикации артефактов. Системы сборки Maven и Gradle. Репозиторий артефактов программного кода.
Специфика развертывания распределенных высокопроизводительных приложений. Введение в облачные сервисы (IaaS, PaaS, SaaS). Философия DevOps, непрерывная интеграция и доставка кода.
3. Технология обработки и хранения данных Hadoop.
Появление и развитие технологии Hadoop. Спектр решаемых задач. Примеры использования в крупных копаниях. Составные части Hadoop-кластера. Экосистема Hadoop-проектов.
Распределенное выполнение программ. Операции отображения и свертки. Примеры. Возможность переопределять части MapReduce программы в каркасе Hadoop.
Особенности реализации функций отображения и свертки в Java. Работа с консолью Hadoop-кластера. Спецификация параметров запуска MapReduce Java-приложения.
Возможности Hadoop Streaming API. Примеры реализации MapReduce-программ на языке python и запуска из консоли bash.
4. Организация хранения данных в BigData-системах.
Определение Базы Данных и Системы Управления Базами Данных. Организация хранения информации в классических СУБД на примере PostgreSQL. Вопросы обеспечения целостности данных. Требования ACID.
Подходы к хранению данных. Специфика хранения файлов. Архитектура популярных распределенных файловых систем на примере HDFS, NFS v4.1, Lustre. Использование распределенных файловых систем в задачах обработки больших объемов данных.
Специфика хранения данных по записям. Проблематика обеспечения согласованности данных. Теорема CAP. Архитектура NoSQL (not only SQL) на примере Apache Cassandra и их отличие от классических СУБД.
5. Системы пакетной обработки данных
Состав и назначение Spark-кластера. Спектр решаемых задач. Примеры работы с источниками данных. План выполнения вычислений. Работа с основной и внешней памятью. Использование программного интерфейса Spark RDD. Состав и назначение кластера Hive. Связь с технологией Hadoop. Синтаксис запросов HiveQL. Возможность создания пользовательских функций. Предпосылки появления программного интерфейса Spark SQL. Использование HiveContext. Умные источники данных для Spark. Проблема импорта данных в системы пакетной обработки. Импорт данных в HDFS при помощи Sqoop. Настройка количества операций отображения. Передача пароля через командную строку.
6. Системы поточной обработки данных.
Архитектура событийно-ориентированных BigData-систем. Задача брокера сообщений. Типовые архитектуры систем передачи сообщений. Достоинства и недостатки. Семантики доставки (точно один раз, как минимум один раз, максимум один раз).
Брокер сообщений Apache Kafka. Архитектура. Производители, потребители, брокеры. Вопросы масштабирования. Принципы организации долговременного хранения сообщений. Настройка дедупликации сообщений.
Архитектура Flume. Агент, канал передачи, селектор, слив. Варианты конфигурирования.
Apache Spark Streaming. Принцип микропакетной обработки. Плавающее окно. Спектр решаемых задач. Работа с программным интерфейсом DStream.
7. Архитектура облачных BigData-приложений.
Технология Docker. Разграничение пространств процессов в операционной системе при помощи cgroups. Состав технологии: файлы докер, реестр образов, контейнеры, демон Docker. Слои доступа к файлам. Кластер Docker-хостов. Создание кластера. Масштабирование контейнеров. Маршрутизация входящих соединений. Конфигурирование развертывания в yml-файлах. Оркестрация сервисов масштабных приложений. Проблемы и вызовы. Состав кластера Kubernetes. Основные элементы развертывания (Pod, Service, Route).
Создание динамических сетей маршрутизации данных между сервисами. Отделение слоя доставки данных и авторизации от бизнес-логики.
8. Способы повышения производительности BigData-систем.
Понятие и назначение кеша данных. Ограничения. Стратегии замещения данных в кеш, стратегии предвыборки. Популярные системы кеширования для BigData-задач.
Технологии вычислений в памяти и хранения данных в памяти. Кластер Ignite. Возможности Ignite для организации кеширования, вычислений, передачи сообщений и машинного обучения на основе больших данных.
Адаптация ресурсов приложения в зависимости от нагрузки. Способы мониторинга нагрузки. Встроенная поддержка правил автоматического масштабирования в Kubernetes.