Курс: Специалист по Data Science
Продолжительность курса: 268 ак. ч.
Описание курса:
Data Science — это область, где пересекаются статистика, программирование и бизнес. Специалисты этого направления умеют извлекать ценную информацию из данных, строить модели прогнозирования, оптимизировать процессы и принимать решения на основе фактов, а не интуиции.
Курс рассчитан как на новичков, так и на тех, кто уже имеет опыт в IT или аналитике. Обучение построено вокруг практики: вы будете работать с реальными наборами данных, строить модели машинного обучения, визуализировать данные и представлять результаты.
Аудитория:
• Менеджеры;
• Разработчики;
• Аналитики;
• Маркетологи.
Необходимая подготовка:
Знание Microsoft Excel.
Программа курса:
Основы работы с большими данными (Data Science)
Модуль 1. Область применения больших данных. Типовые задачи:
• Определение основных понятий;
• История науки о данных;
• Выгоды от работы с большими данными;
• Типовые задачи: прогноз продаж, производства, спроса. Анализ поведения. Распознавание образов. Экспертные системы.
Модуль 2. Сбор и подготовка исходных данных. Методика CRISP-DM:
• С чего начать. Межотраслевая стандартная методика работы с данными CRISP-DM;
• Описательное и ассоциативное исследование исходных данных;
• Сегментирование и очистка данных (slice and dice);
• «Озера данных» (Data lakes);
• Отличия озер данных от структурированных хранилищ;
• Обзор инструментария.
Модуль 3. Задачи численного прогнозирования. Понятие машинного обучения. Корреляция. Регрессионный анализ:
• Виды распределений;
• Постановка задачи оценки взаимосвязи между различными факторами и построение прогноза;
• Корреляция. Коэффициент Пирсона;
• Критерий Стьюдента (T-анализ);
• Основы машинного обучения;
• Регрессионный анализ;
• Обзор прикладных средств работы с данными.
Модуль 4. Задачи классификации и распознавания образов, видео, речи, текста. Понятие нейронных сетей. Примеры применения:
• Задача сегментации дискретных данных на примере задач распознавания (графика, речь, текст);
• Нейронные сети как инструмент решения задач классификации;
• Разбиение на выборки (обучающую, тестовую, проверочную);
• Анализ ошибок обучения. Базис и отклонения. Ручная корректировка;
• Демонстрация источников библиотек и no-code;
• Опциональная практика. Работа с nocode приложением.
Модуль 5. GPT нейросети. глубокое машинное обучение, искусственный интеллект. Помощники и агенты:
• Понятие Deep Machine Learning;
• Генеративные сети. Конкурентное обучение;
• Понятия больших, малых и микро-моделей;
• ИИ помощники – общего назначения и специализированные;
• ИИ помощники (ассистенты) и ИИ агенты;
• Фокусированный промптинг. Диалог с ИИ помощником (ассистентом).
• Практическая работа. Взаимодействие с ИИ помощником.
Модуль 6. Задачи построения маршрутов (логистика, соцсети, телеком). Задача прогнозирования поведения пользователя. Понятие графов:
• Задачи классификации данных в социальных сетях и поиска оптимального решения (маршрута);
• Графы как инструмент решения задач на социальных, логистических, телекоммуникационных графах и прогнозирования поведения;
• Дерево решений.
Модуль 7. Обработка естественного языка. Нечеткие множества:
• Понятия естественного языка и нечетких логик;
• Многофакторный бизнес-анализ на примере нечетких логик.
Модуль 8. Профориентация по специальностям и в Data Science:
• Роли специалистов по DS: аналитик данных, ученый по данным, программист, цифровой директор;
• Требования к компетенциям;
• Состав и требования к проектной команде для DS.
Введение в статистику
Модуль 1. Предмет и метод статистики:
• Основные понятия, используемые в статистике;
• Формы представления статистических данных;
• Нахождение доверительного интервала;
• Статистические показатели: абсолютные, относительные и средние;
• Построение ряда вариационного распределения; Анализ его свойств;
• Проверка гипотезы о соответствии теоретическому распределению;
• Выборочный метод;
• Способы формирования выборки.
Модуль 2. Анализ временных рядов:
• Показатели изменения уровней ряда динамики;
• Средние показатели ряда динамики;
• Методы выявления основной тенденции (тренда) в рядах динамики;
• Оценка адекватности (надежности) тренда;
• Анализ сезонных колебаний.
Модуль 3. Статистический анализ взаимосвязей:
• Корреляционная связь – частный случай стохастической связи;
• Методы оценки корреляционной связи;
• Корреляционно-регрессионный анализ – исследование корреляционных связей;
• Коэффициенты измерения тесноты связи между показателями;
• Метод нахождения параметров уравнения регрессии.
Основы программирования и баз данных
Модуль 1. Устройство компьютера:
• История развития компьютера. Обзор эволюции компьютерной техники от первых ЭВМ до современных компьютеров;
• Материнская плата. Функции и компоненты материнской платы;
• Центральный процессор (CPU). Основные функции и виды процессоров;
• Оперативная память (RAM). Функции и типы оперативной памяти. Влияние оперативной памяти на производительность ПК;
• Постоянная память (ROM/HDD/SDD). Постоянная память и ее виды. Влияние постоянной памяти на производительность ПК;
• Графический процессор (GPU). Определение и функции GPU. Влияние GPU на производительность;
• Устройства ввода-вывода. Виды устройств. Интерфейсы подключения периферийных устройств: USB, Bluetooth, HDMI;
• Блок питания и охлаждения;
• Сетевые компоненты (Ethernet, Wi-Fi);
• Роль операционной системы в управлении аппаратной частью. BIOS/UEFI;
• Практическая работа «Сборка ПК».
Модуль 2. Введение в основы цифровой логики и устройства микросхем:
• Определение микросхемы: Введение в микросхемы; История создания и развития микросхем; Основные функции и типы микросхем;
• Логические элементы: Основные логические элементы (AND, OR, NOT); Составные логические элементы (NAND, NOR, XOR, XNOR);
• Сумматор: определение сумматора; принцип работы неполного сумматора; Принцип работы полного сумматора. Различия между полусумматором и полным сумматором;
• Структура памяти:
• Ячейки памяти;
• Распределение адресов.
Модуль 3. Основы вычислительной техники и программирования:
• Архитектура ЭВМ. Принцип Фон Неймана;
• Задача. Виды задач. Основные этапы решения задач (постановка задачи, математическое моделирование, алгоритмизация, кодинг, отладка, тестирование);
• Программа. Программирование. Критерии программирования. Код;
• Языки программирования (классификация). Методологии программирования;
• Выбор языков программирования для решения различных задач: критерии и рекомендации;
• Компиляция/интерпретация.
• Лабораторная работа 1. «Работа с компилятором»;
• Установка и настройка среды программирования;
• Написание простой программы «Hello World»;
• Знакомство с этапами препроцессинга, компиляции, компоновки (запуск процессов через терминал среды, знакомство с выходными файлами);
• Изменение программы, и анализ .exe файла;
• Лабораторная работа 2. «Работа с интерпретатором»;
• Запуск программы «Hello World» через командную строку;
• Изменение программы, повторный запуск;
• Анализ различия работы с компиляционным и интерпретационным языками программирования.
Модуль 4. Представление информации в ЭВМ:
• Представление чисел;
• Единицы измерения (бит, байт, КБ, и т.д.);
• Двоичный код;
• Представление целых чисел в ЭВМ (прямой, обратный, дополнительный код);
• Нормализованная запись числа;
• Представление вещественных чисел в ЭВМ (знаковый разряд, знак порядка, порядок, мантисса);
• Диапазоны преставления целых и вещественных чисел в памяти ЭВМ;
• Представление символьной информации (ASCII, Unicode);
• Лабораторная работа 3. «Преобразование документа из одной кодировки в другую»;
• Понятия: Выражение, операнд, оператор;
• Понятие переменной, имена переменных;
• Виды операторов (арифметические операторы, присваивания, сравнения, логические);
• Законы арифметики (коммутативности, ассоциативности, дистрибутивности);
• Приоритетность операторов.
Модуль 5. Алгебра логики и арифметика двоичных чисел:
• Основы алгебры логики;
• Основные операции (конъюнкция, дизъюнкция, эквиваленция, импликация, инверсия);
• Таблицы истинности;
• Практическая работа 1 «Решение логических задач»;
• Системы счисления (dec, hex, oct, bin). Перевод из систем в системы. Арифметика двоичных чисел;
• Практическая работа 2. «Преобразование систем счисления»;
• Практическая работа 3. «Арифметика двоичных чисел».
Модуль 6. Введение в искусственный интеллект: основы и возможности:
• Искусственный интеллект. История развития ИИ. Различие между ИИ, машинным обучением и нейросетью;
• Виды искусственного интеллекта;
• Задачи, решаемые искусственным интеллектом (обработка естественного языка, компьютерное зрение);
• Возможности и применение ИИ.
Модуль 7. Основы алгоритмизации:
• Алгоритм. Свойства алгоритмов;
• Виды алгоритмов (линейный, разветвляющихся, циклический);
• Формы представления алгоритмов;
• Практическая работа 4. «Анализ блок схем»;
• Практическая работа 5. «Составление блок схем в редакторе».
Модуль 8. Теория баз данных:
• Базовые структуры данных;
• Основные типы данных;
• Динамические структуры данных;
• Деревья;
• Графы;
• Стеки;
• Очереди;
• Списки (односвязный, двусвязный);
• Базы данных;
• Информационная система;
• Требования к базам данных;
• Этапы проектирования БД (концептуальное, даталогическое проектирование);
• Концептуальное: определение сущностей, связей, ограничений, операций;
• Даталогическое: описание таблиц, описание связей между таблицами;
• Иерархическая, сетевая, реляционная модель. Применение;
• Преимущества и недостатки разных моделей;
• Нормализация БД;
• Понятие СУБД. Задачи решаемые СУБД;
• Языки запросов.
Модуль 9. Лабораторная работа. «Основы программирования»:
• Выполнение простейших программ на компиляционном и интерпретационном языках;
• Форматированный ввод/вывод;
• Знакомство с отладкой.
Модуль 10. Лабораторная работа. «Управляющие структуры»:
• Следование;
• Условный оператор;
• Циклы.
Модуль 11. Лабораторная работа. «Работа с блок-схемами»:
• Составление кода по блок-схемам;
• Закрепление материала.
Модуль 12. Лабораторная работа. «Проектирование баз данных»:
• Концептуальное и даталогическое проектирование;
• Анализ предметной области и определение связей;
• Реализация базы данных.
• Модуль 13. Лабораторная работа. «Знакомство с SQL»:
• Установка и знакомство с СУБД;
• Использование языка SQL для работы с базой данных.
Программирование на Python. Уровень 1. Базовый курс
Модуль 1. Установка Python, IDE, простые типы данных:
• Установка интерпретатора Python и IDE;
• Неизменяемые типы данных: int, float, str, bool;
• Математические операции. Понятие syntax sugar;
• Форматирование данных: %, str;format(), f-strings;
• Приоритеты операций;
• Ссылочная модель в Python, функция id(), оператор is;
• Импорт дополнительных модулей, модуль math.
Модуль 2. Условный оператор if:
• Условный оператор if, тернарный оператор;
• Truthy(истинные) и falsy(ложные) значение;
• Логические операторы not, and, or, in, not in.
Модуль 3. Последовательности и циклы:
• Строка как последовательность. Индексы, срезы(slice);
• Цикл while и for. Тип данных range;
• Вложенные циклы;
• Оператор break и continue. Блок else у циклов while и for;
• Тип данных None.
Модуль 4. Список как изменяемая последовательность:
• Список(list) как изменяемая последовательность;
• Методы списков;
• Вложенные списки;
• List comprehensions.
Модуль 5. Кортежи, словари и множества:
• Кортеж(tuple) как тип данных. Методы кортежей;
• Словарь(dict) как hash таблица. Методы словарей;
• Множество(set). Методы множеств;
• Генераторы словарей;
• Генераторы множеств.
Модуль 6. Функции:
• Понятие функции;
• Аргументы функции;
• Hinting и doc strings.
Модуль 7. Создание модулей. Проверка идиоматичности кода:
• Аргументы командной строки. Работа с модулем sys;
• Создание модулей, sys.path;
• pip – пакетный менеджер Python
• pylint и mypy – линтер и проверка типов.
Модуль 8. Файлы, работа с файловой системой:
• Работы с модулем os;
• Файлы и работа с файловой системой в Python.
Модуль 9. Обработка исключений:
• Исключения, конструкция try ... except, оператор raise;
• Оператор assert.
Модуль 10. Регулярные выражения:
• Регулярные выражения. Синтаксис, основы написания regex;
• Работа с модулем re.
Модуль 11. Получение данных из разных источников:
• Получение и обработка данных из разных источников. Модули csv, json;
• Работа с БД на примере модуля sqlite3;
• Работа с файлами Excel. Модуль openpyxl.
Модуль 12. Работа с датами:
• Работа с датами на примере работы модуля datetime.
Анализ данных на языке SQL
Модуль 1. Реляционные базы данных:
• СУБД SQL Server;
• Язык запросов SQL;
• Программа Management Studio;
• Базы данных и таблицы;
• Написание и исполнение запросов;
• Доступ к данным из Excel;
• Извлечение данных из различных источников;
• Практическая работа: Доступ к БД из Excel.
Модуль 2. Простые операции с одной таблицей:
• Инструкция SELECT;
• Фильтрация таблицы по столбцам;
• Фильтрация таблицы по строкам;
• Использование функций;
• Типы данных;
• Обработка неизвестных значений;
• Сортировка;
• Операция TOP;
• Устранение дубликатов;
• Порядок операций в запросе;
• Практическая работа:
• Выполнение фильтрации по строкам и столбцам;
• Фильтрация пустых значений (NULL);
• Выборка с сортировкой;
• Устранение дубликатов.
Модуль 3. Трансформация таблицы:
• Агрегация;
• Группировка;
• Фильтрация групп;
• Практическая работа:
• Применение агрегатных функций;
• Задача на группировку и фильтрацию групп.
Модуль 4. Модификация данных:
• Добавление строк;
• Модификация строк;
• Удаление строк;
• Практическая работа: Добавление, изменение и удаление строк.
Модуль 5. Операции с несколькими таблицами:
• Использование нескольких таблиц в запросе;
• Объединение, пересечение и разность множеств;
• Подзапросы;
• Использование подзапросов в инструкции SELECT;
• Соединение таблиц;
• Использование соединений;
• Внешние соединения;
• Коррелированные соединения;
• Практическая работа: Простой подзапрос. Коррелированный подзапрос. Внутренние и внешние соединения.
Модуль 6. Построение отчётов:
• Сводные таблицы;
• Вычисление подытогов;
• Ранжирование;
• Постраничный вывод;
• Агрегация со скользящим окном;
• Функции смещения;
• Практическая работа: Построение сводных отчетов. Построение отчетов с подытогами.
Модуль 7. Работа с хранилищами и витринами данных:
• Операционные базы данных;
• Хранилища и витрины данных;
• Структура хранилища;
• Работа с хранилищем;
• Аналитическая обработка больших объёмов данных;
• Статистический анализ данных;
• Инструменты анализа данных.
Математика для Data Science.1 часть. Математический анализ и линейная алгебра
Модуль 1. Знакомство с Jupiter Notebook(Python).
Модуль 2. Введение в математический анализ:
• Основные понятия математического анализа. Предмет;
• Теория множеств (Вероятностные пространства. Дискретное пространство элементарных исходов. Вероятность на числовой прямой и плоскости. Правило сложения и умножения);
• Метрические пространства (Понятие метрического пространства. Определение нормированного пространства, понятие нормы, отличие от метрики, примеры нормированных пространств. Норма в оптимизации);
• Последовательности. Теория пределов (Определение Коши. Определение Пеано. Вычисление пределов функций. Асимптотические функции. Эквивалентные функции. Оценка сложности функции);
• Дифференцирование (Дифференцируемость функции в точке. Частные производные и дифференциалы высших порядков. Градиент. Матрица Гессе. Производная функции одной переменной. Производная функции нескольких переменных);
• Экстремумы функций многих переменных (Определения точек локального и глобального минимума. Необходимое и достаточное условие экстремума для выпуклых функций. Понятие стационарных точек и отличие в их определении от точек экстремума);
• Интеграл (Неопределенный интеграл. Определенный интеграл. Приложения определенного интеграла и приближенные методы его вычисления Несобственные интегралы. Двойные интегралы. Приближенные методы интегрирования);
• Ряды (Понятия ряда. Сходимость рядов);
• Применение изученных разделов математического анализа на общем примере (Jupiter notebook). Проект.
Модуль 3. Линейная алгебра:
• Линейное пространство;
• Матрицы и матричные операции;
• Линейные преобразования;
• Системы линейных уравнений;
• Сингулярное разложение матриц;
• Применение изученных разделов линейной алгебры на общем примере (Jupiter notebook). Проект.
Математика для Data Science. 2 часть. Теория вероятностей и математическая статистика
Модуль 1. Основные понятия теории вероятностей. Примеры.
Модуль 2. Случайные события. Условная вероятность. Формула Байеса. Независимые испытания.
Модуль 3. Дискретные случайные величины. Закон распределения вероятностей. Биномиальный закон распределения. Распределение Пуассона.
Модуль 4. Описательная статистика. Качественные и количественные характеристики популяции. Графическое представление данных.
Модуль 5. Непрерывные случайные величины. Функция распределения и плотность распределения вероятностей. Равномерное и нормальное распределение. Центральная предельная теорема.
Модуль 6. Проверка статистических гипотез. P-значения. Доверительные интервалы.
Модуль 7. Взаимосвязь величин. Параметрические и непараметрические показатели корреляции. Корреляционный анализ.
Модуль 8. Многомерный статистический анализ. Линейная регрессия.
Модуль 9. Дисперсионный анализ. Логистическая регрессия.
Модуль 10. Применение изученных разделов теории вероятности и математической статистики на общем примере (Jupiter notebook). Проект.
Математика для Data Science. 3 часть. Методы оптимизации и алгоритмы анализа данных
Модуль 1. Методы оптимизации:
• Основные понятия, определения, предмет;
• Непрерывность, гладкость и сходимость ЦФ. Дискретные ЦФ;
• Условная и безусловная оптимизация;
• Методы однокритериальной оптимизации;
• Постановка задачи многокритериальной оптимизации;
• Методы многокритериальной оптимизации;
• Градиентный спуск;
• Стохастические методы оптимизации.
Модуль 2. Алгоритмы анализа данных:
• Алгоритм линейной регрессии. Градиентный спуск;
• Масштабирование признаков. L1- и L2-регуляризация. Стохастический градиентный спуск;
• Логистическая регрессия;
• Алгоритм построения дерева решений. Случайный лес;
• Градиентный бустинг;
• Разбор алгоритма обратного распространения ошибки.
Окончательная цена указывается в договоре на обучение.