Почему корреляция не означает причинно-следственную связь
В анализе данных часто встречаются коррелирующие признаки, но это не значит, что один из них вызывает другой.
⚠️ Пример ловушки:
В жаркие дни продажи мороженого и количество утоплений растут одновременно. Их корреляция может быть высокой, но одно не вызывает другое — причиной является погода.
🔍 Как проверить причинность?
✅ Использовать эксперименты (A/B-тестирование).
✅ Применять каузальный анализ (например, метод двойных разностей).
✅ Изучать графовые модели зависимостей.
В анализе данных часто встречаются коррелирующие признаки, но это не значит, что один из них вызывает другой.
⚠️ Пример ловушки:
В жаркие дни продажи мороженого и количество утоплений растут одновременно. Их корреляция может быть высокой, но одно не вызывает другое — причиной является погода.
🔍 Как проверить причинность?
✅ Использовать эксперименты (A/B-тестирование).
✅ Применять каузальный анализ (например, метод двойных разностей).
✅ Изучать графовые модели зависимостей.
🤔 Основы математики в Machine Learning / Deep Learning
🗓 6 марта приглашаем вас на прямой эфир, где мы подробно разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML.
(ссылка)
🌟 Спикер: *Мария Горденко* – Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ, а также преподаватель на курсе Алгоритмы и структуры данных в proglib academy.
Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.
😮 На вебинаре вы узнаете:
🔵 Теорию вероятностей: обсудим случайные величины, вероятность, математическое ожидание и дисперсию.
🔵 Линейную алгебру: изучим векторы, матрицы, собственные векторы и собственные значения.
🔵 Математический анализ: разберем производные и разложение функций в ряд Тейлора.
🔵 Практику: применим полученные знания на реальных кейсах из области Machine Learning и Deep Learning.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
👉 Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/98cb734d
🗓 6 марта приглашаем вас на прямой эфир, где мы подробно разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML.
(ссылка)
🌟 Спикер: *Мария Горденко* – Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ, а также преподаватель на курсе Алгоритмы и структуры данных в proglib academy.
Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.
😮 На вебинаре вы узнаете:
🔵 Теорию вероятностей: обсудим случайные величины, вероятность, математическое ожидание и дисперсию.
🔵 Линейную алгебру: изучим векторы, матрицы, собственные векторы и собственные значения.
🔵 Математический анализ: разберем производные и разложение функций в ряд Тейлора.
🔵 Практику: применим полученные знания на реальных кейсах из области Machine Learning и Deep Learning.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
👉 Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/98cb734d
Почему среднее значение не всегда отражает суть данных
Среднее (mean) — одна из самых распространённых метрик в анализе данных, но его использование может привести к неверным выводам.
⚠️ Когда среднее вводит в заблуждение?
1. Выбросы сильно искажают результат (например, средняя зарплата в компании с одним миллиардером).
2. Смещение распределения — в асимметричных данных среднее может не отражать «типичное» значение.
3. Категориальные данные — нельзя усреднять, например, номера телефонов или географические координаты.
🔍 Что делать?
✅ Использовать медиану для устойчивости к выбросам.
✅ Смотреть на разброс данных (стандартное отклонение, IQR).
✅ Визуализировать распределение, а не полагаться только на одно число.
Среднее (mean) — одна из самых распространённых метрик в анализе данных, но его использование может привести к неверным выводам.
⚠️ Когда среднее вводит в заблуждение?
1. Выбросы сильно искажают результат (например, средняя зарплата в компании с одним миллиардером).
2. Смещение распределения — в асимметричных данных среднее может не отражать «типичное» значение.
3. Категориальные данные — нельзя усреднять, например, номера телефонов или географические координаты.
🔍 Что делать?
✅ Использовать медиану для устойчивости к выбросам.
✅ Смотреть на разброс данных (стандартное отклонение, IQR).
✅ Визуализировать распределение, а не полагаться только на одно число.
Forwarded from Библиотека питониста | Python, Django, Flask
💾 10 способов работы с большими файлами в Python, о которых ты не знал
Годнота для всех, кто работает с данными. Статья раскрывает разные подходы к обработке больших файлов — от простых итераторов до распределенных вычислений.
👍 Сохраняй себе, точно пригодится в работе: https://proglib.io/sh/VOcgo7w0W1
Годнота для всех, кто работает с данными. Статья раскрывает разные подходы к обработке больших файлов — от простых итераторов до распределенных вычислений.
👍 Сохраняй себе, точно пригодится в работе: https://proglib.io/sh/VOcgo7w0W1
Почему перемешивание данных может сломать модель
В машинном обучении перемешивание (shuffling) данных перед обучением модели часто считается хорошей практикой. Но в некоторых случаях это может привести к неожиданным ошибкам и ухудшению качества модели.
❗ Временные ряды → Если модель предсказывает будущее, перемешивание разрушит временную структуру. Решение: использовать time-based split.
❗ Группированные данные → Например, если данные по одному пользователю оказываются в train и test, это приведёт к утечке данных. Решение: делать групповую валидацию.
❗Последовательные зависимости → В задачах NLP или рекомендательных систем порядок данных может быть критичен.
В машинном обучении перемешивание (shuffling) данных перед обучением модели часто считается хорошей практикой. Но в некоторых случаях это может привести к неожиданным ошибкам и ухудшению качества модели.
❗ Временные ряды → Если модель предсказывает будущее, перемешивание разрушит временную структуру. Решение: использовать time-based split.
❗ Группированные данные → Например, если данные по одному пользователю оказываются в train и test, это приведёт к утечке данных. Решение: делать групповую валидацию.
❗Последовательные зависимости → В задачах NLP или рекомендательных систем порядок данных может быть критичен.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Как избежать чрезмерной оптимизации гиперпараметров (hyperparameter tuning)
Часто на этапе настройки гиперпараметров (например, с помощью Grid Search или Random Search) можно столкнуться с перенастройкой модели, что приведет к плохой её обобщающей способности на новых данных.
Как избежать переоптимизации гиперпараметров?
✅ Использовать кросс-валидацию для оценки производительности модели на разных поднаборах данных.
✅ Применять рандомизированный поиск вместо полного перебора всех вариантов гиперпараметров, чтобы ускорить процесс.
✅ Настроить ограничения на количество итераций или время оптимизации.
Часто на этапе настройки гиперпараметров (например, с помощью Grid Search или Random Search) можно столкнуться с перенастройкой модели, что приведет к плохой её обобщающей способности на новых данных.
Как избежать переоптимизации гиперпараметров?
✅ Использовать кросс-валидацию для оценки производительности модели на разных поднаборах данных.
✅ Применять рандомизированный поиск вместо полного перебора всех вариантов гиперпараметров, чтобы ускорить процесс.
✅ Настроить ограничения на количество итераций или время оптимизации.
Как бы вы объяснили байесовский вывод человеку, который не знаком со статистикой
На собеседованиях по машинному обучению важно не только знать алгоритмы, но и уметь объяснять их простым языком.
Ключевые идеи байесовского вывода:
✔️ Мы начинаем с предварительных знаний о каком-то явлении (априорная вероятность).
✔️ Затем получаем новые данные, которые обновляют наше мнение.
✔️ Используем формулу Байеса для пересчёта вероятностей.
Представьте, что у вас есть зонт. Утром вы смотрите в окно: если идёт дождь, вероятность, что он продолжится, высокая. Но если в прогнозе написано, что дождь маловероятен, вы пересматриваете свою уверенность. Вы комбинируете предыдущие знания (погоду в это время года) и новые данные (прогноз, вид за окном), чтобы принять решение.
На собеседованиях по машинному обучению важно не только знать алгоритмы, но и уметь объяснять их простым языком.
Ключевые идеи байесовского вывода:
✔️ Мы начинаем с предварительных знаний о каком-то явлении (априорная вероятность).
✔️ Затем получаем новые данные, которые обновляют наше мнение.
✔️ Используем формулу Байеса для пересчёта вероятностей.
Представьте, что у вас есть зонт. Утром вы смотрите в окно: если идёт дождь, вероятность, что он продолжится, высокая. Но если в прогнозе написано, что дождь маловероятен, вы пересматриваете свою уверенность. Вы комбинируете предыдущие знания (погоду в это время года) и новые данные (прогноз, вид за окном), чтобы принять решение.
Что такое катастрофическое забывание (catastrophic forgetting) в нейронных сетях
Катастрофическое забывание — это явление, при котором нейронная сеть, обучаясь на новых данных, теряет знания, полученные из предыдущих данных. Это особенно критично для задач, где модель должна адаптироваться к изменяющимся условиям, например, в автономных системах, голосовых помощниках или адаптивных рекомендательных системах.
🔍 Причина проблемы:
Когда модель обучается на новых данных, её веса обновляются таким образом, что они начинают лучше соответствовать новым примерам, но при этом могут «перезаписать» ранее полученные знания, если нет механизма их сохранения.
Катастрофическое забывание — это явление, при котором нейронная сеть, обучаясь на новых данных, теряет знания, полученные из предыдущих данных. Это особенно критично для задач, где модель должна адаптироваться к изменяющимся условиям, например, в автономных системах, голосовых помощниках или адаптивных рекомендательных системах.
🔍 Причина проблемы:
Когда модель обучается на новых данных, её веса обновляются таким образом, что они начинают лучше соответствовать новым примерам, но при этом могут «перезаписать» ранее полученные знания, если нет механизма их сохранения.
Чем отличается std::vector::size() от std::vector::capacity()?
Anonymous Quiz
22%
size возвращает размер в байтах, capacity - количество элементов
63%
size возвращает количество элементов, capacity - максимально возможное количество без переаллокации
12%
size возвращает максимально возможное количество элементов, capacity - текущее количество
4%
Это одно и то же, просто разные названия для совместимости
Какие существуют атаки на модели машинного обучения?
🔹 Атаки с изменением входных данных (Adversarial Attacks) — небольшие изменения в данных, которые заставляют модель ошибаться (например, изменение пикселей на изображении может заставить нейросеть принять панду за гиббона).
🔹 Атаки с отравлением данных (Data Poisoning) — внесение вредоносных примеров в обучающий набор, чтобы модель училась неправильно.
🔹 Извлечение модели (Model Extraction) — злоумышленник создаёт копию вашей модели, отправляя ей множество запросов и анализируя ответы.
🔹 Атаки на конфиденциальность (Membership Inference) — попытка определить, использовались ли конкретные данные в обучении модели, что угрожает приватности пользователей.
🔹 Атаки с изменением входных данных (Adversarial Attacks) — небольшие изменения в данных, которые заставляют модель ошибаться (например, изменение пикселей на изображении может заставить нейросеть принять панду за гиббона).
🔹 Атаки с отравлением данных (Data Poisoning) — внесение вредоносных примеров в обучающий набор, чтобы модель училась неправильно.
🔹 Извлечение модели (Model Extraction) — злоумышленник создаёт копию вашей модели, отправляя ей множество запросов и анализируя ответы.
🔹 Атаки на конфиденциальность (Membership Inference) — попытка определить, использовались ли конкретные данные в обучении модели, что угрожает приватности пользователей.
В чем разница между Data Scientist и Machine Learning Engineer?
🔹 Data Scientist в первую очередь фокусируется на преобразовании бизнес-задач в задачи, основанные на данных, предлагает и прототипирует решения.
🔹 Machine Learning Engineer берет эти решения, превращает их в работающие алгоритмы и модели, развертывает и поддерживает их в продакшене.
🔹 Data Scientist в первую очередь фокусируется на преобразовании бизнес-задач в задачи, основанные на данных, предлагает и прототипирует решения.
🔹 Machine Learning Engineer берет эти решения, превращает их в работающие алгоритмы и модели, развертывает и поддерживает их в продакшене.
Forwarded from Proglib.academy | IT-курсы
🧮🔠 Математика в действии: решаем хитрые задачи по прогнозированию, оптимизации и логике
Статья, которая поможет развить навыки решения задач с помощью математики.
➡️ Вот что вас ждет
1️⃣ Прогнозирование численности населения — используем цепи Маркова для предсказания миграций между городом и пригородами.
2️⃣ Минимизация затрат — находим минимальное скалярное произведение векторов для оптимального распределения задач между работниками.
3️⃣ Машина времени — решаем задачу максимального числа пересекающихся временных интервалов с помощью заметающей прямой.
4️⃣ Алгоритм Целлера — вычисляем день недели по дате. Проверка на практике.
🔵 Хочешь прокачаться в математике для ML? Тогда разбирайся с этими задачами и не упусти вебинар: «Математика для ML: от теории к практике».
👉 Читать статью
Статья, которая поможет развить навыки решения задач с помощью математики.
👉 Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Какие технические навыки нужны для перехода от небольшого анализа данных к крупным проектам в Data Science?
🔹 Хранение данных
1. Распределенные системы хранения:Hadoop HDFS, AWS S3, Azure Blob Storage, NoSQL
2.Data Lakes для обработки неструктурированных и сырых данных
🔹 Обработка данных
1. Фреймворки для работы с big data:MapReduce, Apache Spark
2.Методы параллельных вычислений для ускорения анализа
🔹 Реализация системы
1. Построение надежных data pipelines
2. Мониторинг и логирование моделей
3. Контейнеризация (Docker, Kubernetes ) для развертывания и масштабирования
Библиотека собеса по Data Science
🔹 Хранение данных
1. Распределенные системы хранения:
2.
🔹 Обработка данных
1. Фреймворки для работы с big data:
2.
🔹 Реализация системы
1. Построение надежных data pipelines
2. Мониторинг и логирование моделей
3. Контейнеризация (
Библиотека собеса по Data Science
Как защитить модели от атак в машинном обучении?
✅Аугментация данных и робастное обучение — добавление случайных шумов в данные для повышения устойчивости модели.
✅Adversarial Training — специальное обучение модели на данных с атаками, чтобы она их распознавала.
✅Дифференциальная приватность — техники, предотвращающие утечку информации о тренировочных данных.
✅Мониторинг аномалий — выявление подозрительных входных данных и реагирование на них.
Библиотека собеса по Data Science
✅
✅
✅
✅
Библиотека собеса по Data Science
Какова вероятность распределения количества подбрасываний монеты до первого выпадения орла
✅ Ответ:
Количество бросков, необходимых до появления первого орла, подчиняется геометрическому распределению.
Библиотека собеса по Data Science
✅ Ответ:
Библиотека собеса по Data Science
В чем разница между Linear Regression, Random Forest и GBDT? Как их реализовать в распределенных вычислениях
🔹 В чем разница между Linear Regression, Random Forest и GBDT?
Linear Regression (LR) — простой и быстрый, ноработает только с линейными зависимостями .
Random Forest (RF) — устойчив к выбросам и переобучению, номожет быть медленным .
Gradient Boosting Decision Trees (GBDT) — обеспечивает высокую точность, нотребует тонкой настройки и больше времени на обучение .
🔹 Как реализовать эти алгоритмы в распределенных системах?
RF —легко распараллеливается, так как деревья строятся независимо.
GBDT —сложнее, но можно ускорить построение деревьев в каждой итерации.
LR —можно параллелить через parameter server и асинхронные обновления.
Библиотека собеса по Data Science
🔹 В чем разница между Linear Regression, Random Forest и GBDT?
Linear Regression (LR) — простой и быстрый, но
Random Forest (RF) — устойчив к выбросам и переобучению, но
Gradient Boosting Decision Trees (GBDT) — обеспечивает высокую точность, но
🔹 Как реализовать эти алгоритмы в распределенных системах?
RF —
GBDT —
LR —
Библиотека собеса по Data Science
Telegram
Библиотека собеса по Data Science | вопросы с собеседований
Вопросы с собеседований по Data Science и ответы на них.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/7dfb7235
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/7dfb7235
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое функции активации и как они различаются по вычислительной сложности, разреженности и поведению градиента
Функция активации нейрона определяетвыходной сигнал, который определяется входным сигналом или набором входных сигналов.
▪️ Sigmoid
Преобразует входы в диапазон 0-1 (бинарная классификация).
Проблемы:исчезающие градиенты при экстремальных значениях.
Разреженность:низкая.
▪️ Tanh
Преобразует входы в диапазон -1 до 1.
Проблемы:исчезающие градиенты, но менее выраженные, чем у сигмоиды.
Разреженность:средняя.
▪️ ReLU (Rectified Linear Unit)
Устанавливает отрицательные значения в 0, оставляя положительные.
Проблемы:«умирающий ReLU» — нейроны становятся неактивными.
Разреженность:высокая.
▪️ Leaky ReLU
Модификация ReLU с малым наклоном для отрицательных значений.
Проблемы: «умирающий ReLU» минимизируется.
Разреженность:ниже, чем у ReLU.
Библиотека собеса по Data Science
Функция активации нейрона определяет
▪️ Sigmoid
Преобразует входы в диапазон 0-1 (бинарная классификация).
Проблемы:
Разреженность:
▪️ Tanh
Преобразует входы в диапазон -1 до 1.
Проблемы:
Разреженность:
▪️ ReLU (Rectified Linear Unit)
Устанавливает отрицательные значения в 0, оставляя положительные.
Проблемы:
Разреженность:
▪️ Leaky ReLU
Модификация ReLU с малым наклоном для отрицательных значений.
Проблемы:
Разреженность:
Библиотека собеса по Data Science
Отобрали для вас полезные и проверенные каналы для программистов — в них вы найдете все самое интересное, от технических новостей до практических гайдов.
IT Job Hub | Работа и вакансии в IT — избранные IT-вакансии
Библиотека программиста — новости из мира IT и технологий
Книги для программистов — самые годные книги по любым языкам и стекам
IT-мемы — мемы про жизу айтишника
Proglib Academy — обучение и курсы, чтобы стать топовым специалистом
Азбука айтишника — азы из мира разработки
Библиотека нейросетей — лайфхаки и промпты для разных задач, баттлы нейронок и новости из мира ИИ
Библиотека фронтендера — все о JS, React, Angular и не только
Библиотека мобильного разработчика — лайфхаки и новости из мира Swift и Kotlin
Библиотека хакера — уязвимости, атаки, бэкдоры и как от них защититься
Библиотека тестировщика — самое интересное о том, как крашить код
🦫 Go
Библиотека Go-разработчика
Библиотека задач по Go
Библиотека Go для собеса
Вакансии по Go
#️⃣ C#
Библиотека шарписта
Библиотека задач по C#
Библиотека собеса по C#
Вакансии по C#
🔧 DevOps
Библиотека devops’а
Библиотека задач по DevOps
Библиотека собеса по DevOps
Вакансии по DevOps & SRE
🐘 PHP
Библиотека пхпшника
Библиотека задач по PHP
Библиотека PHP для собеса
Вакансии по PHP, Symfony, Laravel
🐍 Python
Библиотека питониста
Библиотека Python для собеса
Библиотека задач по Python
Вакансии по питону, Django, Flask
☕️ Java
Библиотека джависта
Библиотека задач по Java
Библиотека Java для собеса
Вакансии по Java
📊 Data Science
Библиотека дата-сайентиста
Библиотека задач по Data Science
Библиотека Data Science для собеса
Вакансии по Data Science
🎮 C++
Библиотека C/C++ разработчика
Библиотека задач по C++
Библиотека C++ для собеса
Вакансии по C++
Подписывайтесь на интересные вам каналы и сохраняйте пост в закладки, чтобы не потерять 🔑
Please open Telegram to view this post
VIEW IN TELEGRAM
Применение различных конфигураций слоев ввода и вывода в Рекуррентных Нейронных Сетях (RNN)
✔️ One-to-One:
• Описание: один вход — один выход.
• Пример: классификация изображений. В этой задаче, нейронная сеть получает изображение как вход, а затем генерирует один результат (класс изображения) на выходе.
✔️ One-to-Many:
• Описание: один вход — несколько выходов.
• Пример: преобразование изображений в текст (image-to-text). Здесь сеть принимает одно изображение как вход и генерирует последовательность выходных данных, например, описание изображения в виде текста.
✔️ Many-to-Many:
• Описание: несколько входов — несколько выходов.
• Пример: перевод текста (например, машинный перевод). Модель принимает последовательность слов (вход) и генерирует соответствующую последовательность слов на другом языке (выход).
Библиотека собеса по Data Science
✔️ One-to-One:
✔️ One-to-Many:
✔️ Many-to-Many:
Библиотека собеса по Data Science