План на курса
PySpark & машинно обучение
Модул 1: Еднотни данни и основи на Spark
- Преглед на екосистемата за еднотни данни и ролята на Spark в съвременните платформи за данни
- Разбиране на архитектурата на Spark: драйвър, изпълнители, мениджър на клъстера, мързеливо оценяване, DAG и планиране на изпълнението
- Разлики между RDD и DataFrame API и кога да се използва всеки подход
- Създаване и конфигуриране на SparkSession и разбиране на основите на конфигурацията на приложенията
Модул 2: PySpark DataFrame
- Четене и запис на данни от корпоративни източници и формати (CSV, JSON, Parquet, Delta)
- Работа с PySpark DataFrame: трансформации, действия, изрази за колони, филтриране, съединения и агрегации
- Прилагане на напреднали операции, като функции за прозорци, работа с времеви печат и обработване на вложени данни
- Прилагане на проверки за качество на данните и писане на пренасочващ и поддръжен PySpark код
Модул 3: Ефективно обработване на големи набори от данни
- Разбиране на основите на производителността: стратегии за партициониране, поведение при разбъркване, кеш и персистентност
- Използване на техники за оптимизация, включително разпръскващи съединения и анализ на плана за изпълнение
- Ефективно обработване на големи набори от данни и най-добри практики за мащабируеми потоци от данни
- Разбиране на еволюцията на схемата и съвременни формати за съхранение, използвани в корпоративни среди
Модул 4: Инженерство на признаци в мащаб
- Извършване на инженерство на признаци с Spark MLlib: обработване на липсващи стойности, кодиране на категориални променливи и мащабиране на признаците
- Проектиране на пренасочващи стъпки за предварителна обработка и подготвяне на набори от данни за ML процеси
- Въведение в селекцията на признаци и обработване на дисбалансиран набор от данни
Модул 5: Машинно обучение със Spark MLlib
- Разбиране на архитектурата на MLlib и шаблона Estimator/Transformer
- Обучение на модели за регресия и класификация в мащаб (Линейна регресия, Логистична регресия, Дървета на решенията, Случайна гора)
- Сравняване на модели и тълкуване на резултатите в разпределени ML процеси
Модул 6: Крайни ML процеси
- Изграждане на крайни ML процеси, комбинирайки предварителна обработка, инженерство на признаци и моделиране
- Прилагане на стратегии за разделяне на обучаващи/валидационни/тестови набори
- Извършване на кръстосана валидация и настройка на хиперпараметри, използвайки търсене в решетка и случайно търсене
- Структуриране на възпроизводим ML експерименти
Модул 7: Оценка на моделите и практическо вземане на решения в ML
- Прилагане на подходящи метрики за оценка на проблеми с регресия и класификация
- Идентифициране на пренаучаване и недообучаване и вземане на практични решения за избор на модел
- Тълкуване на важността на признаците и разбиране на поведението на модела
Модул 8: Производство и корпоративни практики
- Персистентност и зареждане на модели в Spark
- Прилагане на потоци за пакетно извеждане на данни на големи набори от данни
- Разбиране на жизнения цикъл на машинното обучение в корпоративни среди
- Въведение в концепциите за версиониране, проследяване на експерименти и основни стратегии за тестване
Практически резултат
- Способност за самостоятелна работа с PySpark
- Способност за ефективно обработване на големи набори от данни
- Способност за извършване на инженерство на признаци в мащаб
- Способност за изграждане на мащабируеми ML процеси
Изисквания
Участниците трябва да притежават следната подготовка:
Основни познания по програмиране на Python, включително работа с функции, структури от данни и библиотеки
Фундаментално разбиране на концепциите за анализ на данни, като набори от данни, трансформации и агрегации
Основни познания за SQL и релационни концепции за данни
Въвеждащо разбиране на концепциите за машинно обучение, като обучаващи набори от данни, признаци и метрики за оценка
Препоръчително е запознаване с команди в командния ред и основни практики за разработка на софтуер
Опит с Pandas, NumPy или подобни библиотеки за обработка на данни е полезен, но не е задължителен.
Отзиви от потребители (1)
Ми ми допадна, че беше praktično. Обичах да прилагам теоретичните знания с практически примери.
Aurelia-Adriana - Allianz Services Romania
Курс - Python and Spark for Big Data (PySpark)
Машинен превод