Математика Data Science с нуля: Сингулярное разложение на Python

- Уроков: 65
- Сложность: easy
- Аудитория: Курс рассчитан на тех, кто хочет с полного нуля получить глубокое понимание всей математики для машинного обучения которая используется в реализации классических алгоритмов машинного обучения и в дальнейшем применять эти знания в Python коде и кто хочет понимать, что происходит под капотом библиотек Scikit-learn, PyTorch, TensorFlow.
10 ПРИМЕРОВ СФЕР ПРИМЕНЕНИЯ SVD:
1. Сжатие изображений
- SVD позволяет оставить только самые важные сингулярные значения, уменьшая размер изображения без заметной потери качества.
2. Рекомендательные системы
- SVD используется в методах Latent Semantic Analysis (LSA) и Matrix Factorization — уменьшает размерность и выявляет скрытые связи между пользователями и товарами.
3. Обработка текста (NLP)
- SVD применяется в семантическом анализе текста: выявляет главные смысловые компоненты слов (например, Word2Vec + PCA или LSA).
4. Обработка звука и аудио
- SVD помогает выделить основные частотные компоненты сигнала и подавить шум.
5. Решение переопределённых систем уравнений
- SVD используется для устойчивого решения систем вида Ax=b, даже если A — вырождённая или почти вырождённая.
6. Principal Component Analysis (PCA)
- PCA реализуется через SVD — находит направления максимальной дисперсии данных (главные компоненты).
7. Решение дифференциальных уравнений
- EVD используется при решении систем линейных ОДУ: например, для анализа устойчивости, колебаний, диссипации.
8. Квантовая механика и физика
- EVD позволяет находить собственные значения гамильтонианов — фундаментально важно для определения уровней энергии.
9. Обработка изображений (распознавание лиц)
- Метод Eigenfaces использует EVD или SVD для представления изображений лиц как линейной комбинации базисных образов.
10. Машинное обучение и линейная регрессия
- SVD используется в псевдообращении (Moore-Penrose), если матрица плохо обусловлена.
- EVD применяют в теоретическом анализе моделей, в Regularization (например, Ridge).
ОСОБЕННОСТИ КУРСА:
- Разбор коммерческого кода действующих проектов по Data Science с сайта https://kaggle.com
- Способность понимать раздел "Матричная факторизация" в учебнике от Школы Анализа Данных(ШАД) Яндекс https://education.yandex.ru/handbook/ml/article/matrichnaya-faktorizaciya
- Способность начать понимать научную статью: https://arxiv.org/html/2505.23552
- Применения знаний на новейших моделях машинного обучения и нейросетей на сайте архив: https://arxiv.org/list/stat.ML/recent
- Способность понимать лекции от Воронцова К.В. http://machinelearning.ru/wiki/index.php?title=Участник:Vokov
- Глубокое понимание раздела "Сингулярное разложение": http://www.machinelearning.ru/wiki/index.php?title=Сингулярное_разложение
- Адаптация полученных знаний по математике и программированию под специфику бизнеса вашего работодателя или вашего стартапа.
- Навык выведения математических формул с нуля
- Имплементация математических формул в Python
- Глубокое понимание математики которая используется в Python
- Фундаментальное понимание алгоритма Спектрального и Сингулярного разложения на Python
- Фундаментальные знания для подготовки к собеседованию в Data Science
Этот курс - лучший способ начать с нуля и стать специалистом по Машинному Обучению в Python и МАТЕМАТИКЕ!
Курс разработан с акцентом на простой и понятный вход в машинное обучение — без необходимости сразу углубляться в сложную математику. Теоретическая база вводится постепенно, по мере необходимости, что делает обучение комфортным даже для тех, кто не имеет технического образования. Многие участники с гуманитарным бэкграундом успешно проходят курс и отмечают это в своих отзывах.
Если в процессе обучения у вас возникнут вопросы, вы можете задать их в комментариях к урокам — я, как автор курса, регулярно просматриваю комментарии и с радостью помогу вам разобраться
В этом курсе Вы изучите следующие темы:
- Сравнение метода INV и PINV.Псевдообратная матрица мура-Пенроуза
- Изучаем библиотеку Linear algebra (numpy.linalg)
- Математическое обоснование применения PINV вместо INV.
- Сингулярная и Обратная матрица.Детерминант. Мультиколлинеарность
- Изучаем метод PINV(SVD): псевдообратная матрица Мура-Пенроуза
- Понятие вектора.
- Понятие алгебраической структуры.
- Полугруппа
- Моноид
- Группа. Группа подстановок. Симметрическая группа s3
- Абелева группа. Коммутативная группа
- Кольцо
- Поле
- Векторное пространство
- Евклидово пространство
- Линейный оператор. Линейная трансформация / преобразования
- Базис:Ортонормированный, Ортогональный, Афинный.Коллинеарность
- Гомотетия: частный случай преобразования подобия
- Виды преобразований
- Основные понятия
- Геометрическая интерпретация
- Формальное определение.
- Собственный вектор и значение линейного преобразования
- Алгоритм нахождения собственных чисел и векторов
- Матрица 2х2 алгоритм нахождения eigenvalue&eigenvector
- Матрица 3х3 алгоритм нахождения eigenvalue&eigenvector
- Комплексные числа
- Основные понятия. Eigenvalue decomposition
- Матрица 2х2 алгоритм нахождения Eigenvalue decomposition
- Геометрический смысл Eigenvalue decomposition. Матрица 2х2
- Эрмитова матрица
- Сингулярное разложение матрицы.
- Основные понятия. Singular Value Decomposition
- Алгоритм нахождения singular value decomposition
- Матрица 2х3.Прямоугольная-ШИРОКАЯ.Система уравнений.Метод Гаусса
- Матрица 4х3.Прямоугольная-ВЫСОКАЯ.Система уравнений.Метод Гаусса
- Матрица 3х3.Квадратная. Мультиколлинеарность. Находим SVD
- Резюмируем
- Усечённое(Truncated) SVD
- Сжатие изображения с помощью SVD
- Убираем шум с помощью SVD
- Рекомендательная система SVD
- Норма Фробениуса. След матрицы
- Теорема Эккарта Янга
- Геометрический смысл SVD
- Аналитический смысл SVD
- Сходство EVD и SVD
- Функция PINV. Псевдообратная матрица Мура-Пенроуза
- Выводим с нуля формулу для pinv - Moore-Penrose pseudoinverse
- Матрица 4х2.Прямоугольная-ВЫСОКАЯ.
- Матрица 2х2.Квадратная. Мультиколлинеарность.
- Прообраз и образ. Отображение.
- Геометрический смысл pinv - Moore-Penrose pseudoinverse
- Метод наименьших квадратов:Мура-Пенроуза наилучшая аппроксимация
- Реверс инжиниринг scikit-learn, метод fit
- Функция PINV
- Резюмируем
- Пишем алгоритм PINV с нуля
- Плюсы, Минусы, Где применяется
и много другое!
Курс сопровождается набором Jupyter Notebook — с примерами кода и подробными пояснениями. Для каждой лекции подготовлен отдельный блокнот, структурированный по разделам курса. Это позволяет не только смотреть видео, но и быстро находить нужную информацию в текстовом виде — удобно для повторения и навигации по материалу.
Курс доступен без ограничений по времени: вы можете проходить его в удобном для себя темпе.
Присоединяйтесь к обучению и развивайте свои навыки — добро пожаловать на курс!
- Никаких знаний по математике предварительно не требуется, вся математика будет дана с полного нуля.
- Рекомендуются базовые знания Python (на уровне функций).
-
Либо опыт работы с другими языками программирования и готовность изучать Python в процессе курса.