Библиотека собеса по Data Science | вопросы с собеседований
4.32K subscribers
422 photos
10 videos
1 file
405 links
Вопросы с собеседований по Data Science и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/7dfb7235

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://t.me/proglibrary/9197
Download Telegram
Объясните разницу между эпохой и итерацией в машинном обучении

Здесь также стоит ввести понятие «батч». Батч — это партия данных, величину которой вы определяете сами.

✔️Эпоха — это полный проход модели через весь обучающий набор данных, то есть через все батчи.
✔️ Итерация — это количество обновлений параметров модели. Это обычно происходит после обработки каждого батча.


Пример: можно разделить датасет из 2000 объектов на батчи размером 500 объектов. Тогда для завершения одной эпохи потребуется четыре итерации.

#junior
#middle
Что такое стемминг и лемматизация?

Это методики, которые используются при обработке текста в задачах NLP (обработки естественного языка).

Как правило, тексты содержат разные грамматические формы одного и того же слова. Для модели же важно рассматривать их как одно и то же слово. Для приведения словоформ к единой форме применяются стемминг и лемматизация.

▪️Стемминг — грубый процесс «обрезания» слов. Выполняется на основе эвристик, без учёта контекста, словарей и морфологии. Его проще внедрить и он работает быстрее.
▪️Лемматизация — более сложный и тонкий метод. Приводит слово к его начальной форме (лемме), используя морфологический анализ и знания об особенностях конкретного языка.

#junior
#middle
В чём разница между CHAR и VARCHAR в SQL?

CHAR и VARCHAR — это типы данных для хранения символьных строк.

✔️CHAR: предназначен для хранения строк фиксированной длины. Если помещаемая в него строка короче заявленной длины, то она дополняется пробелами. Например, если был определён столбец с типом CHAR(5), то при внесении в него строки «cat», она дополнится двумя пробелами в конце.
✔️VARCHAR предназначен для хранения строк переменной длины. Никакие пробелы не добавляются.

CHAR более эффективен для хранения и обработки строк, длина которых всегда одинакова. Он всегда использует столько памяти, сколько выделено для него.

#junior
#middle
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
В каких ситуациях лучше не применять обобщённые линейные модели (generalized linear models, GLM)?

К ним относятся, в частности, линейная и логистическая регрессии.

1️⃣ Если отношения между переменными сильно нелинейные. В таких случаях лучше рассмотреть другие модели, которые могут это учесть.
2️⃣ Обобщённые линейные модели в идеале предполагают соблюдение некоторых условий: нормальность остатков, гомоскедастичность и отсутствие мультиколлинеарности. В противном случае, результаты модели могут быть ненадёжными.
3️⃣ GLM могут быть чувствительны к выбросам или экстремальным значениям.

#junior
#middle
Что такое метрика BLEU?

Метрика BLEU (Bilingual Evaluation Understudy) — это один из методов оценки качества машинного перевода. Основная идея BLEU заключается в сравнении переведённого моделью текста с эталонными переводами, выполненными человеком.

Оценки вычисляются для отдельных переведённых сегментов текста, чаще всего предложений. Затем эти оценки усредняются по всему тексту, чтобы получить оценку общего качества перевода.

Алгоритм, если коротко, такой: для каждой длины n-граммы (от 1 до 4) подсчитывается точность. Точность — это отношение количества совпавших с эталонными n-грамм в машинном переводе к общему количеству n-грамм в этом переводе. Затем эти точности комбинируются. Есть также штраф за краткость. Более подробно можно прочесть здесь.

#middle
-35% на самый хардкорный курс по вышмату

🎄 Новый год начинается с подарков, а хороший подарок для себя — новые знания со скидкой 35%!

🌟«Математика для Data Science» — 19 490 ₽ (вместо 29 990 ₽)

Полугодовая программа от преподавателей МГУ, которая включает в себя все необходимые знания по математике для работы в Data Science.

Вас ждет развернутая обратная связь по всем домашним заданиям, а также ссылки на полезные дополнительные материалы.

У вас не будет шансов не усвоить какие-то темы курса👌

🔥 Переходите и активируйте вводные занятия курсаhttps://proglib.io/w/4468ec03
Какие проблемы есть у рекуррентных нейронных сетей (RNN)?

RNN — это нейронные сети для работы с последовательностями (текстами, временными рядами). Они имеют механизм для запоминания предыдущих входных данных. Тем не менее они подвержены некоторым проблемам:

▪️Взрывающийся градиент.
Это ситуация, при которой градиент экспоненциально растёт вплоть до полной потери стабильности RNN. Если градиент становится бесконечно большим, нейросеть проявляет проблемы с производительностью.
▪️Исчезающий градиент.
Это ситуация, обратная предыдущей. В этом состоянии градиент приближается к нулю, что приводит к потере RNN способности эффективно обучаться по предложенным данным. Для рекуррентных нейронных сетей характерен высокий риск исчезающего или взрывающегося градиента при обработке длинных последовательностей данных.
▪️Медленное обучение.
В целом, для RNN требуются огромные вычислительные мощности, большой объём памяти и много времени, если речь идёт о значительном количестве текстов.

#junior
#middle
В чём разница между косинусным сходством и косинусным расстоянием?

▫️Косинусное сходство (или близость)
Измеряет косинус угла между двумя векторами в пространстве. Это мера того, насколько вектора «похожи» друг на друга. Значение косинусного сходства варьируется от -1 до 1, где -1 означает, что вектора абсолютно непохожи, 0 — что нет корреляции, 1 — что похожи.
▫️Косинусное расстояние
Измеряет степень различия между двумя векторами. Рассчитывается по формуле едицина минус косинусное сходство. Значение варьируется от 0 до 2. 0 означает полное сходство, а 2 — полную противоположность.

#middle
Как предотвратить застревание градиентного спуска в локальных минимумах?

✔️Использование техник инициализации (например, Xavier / Glorot). Помогает установить подходящие начальные веса для процесса оптимизации.
✔️Использование оптимизаторов типа Adam или RMSProp, которые адаптируют скорость обучения для отдельных параметров.
✔️Введение случайности в процесс оптимизации, благодаря применению мини-батчей. Это помогает алгоритму выйти из локальных минимумов, добавляя шум к оценкам градиента.
✔️Добавление большего количества слоёв или нейронов.
✔️Подбор гиперпараметров с использованием методов случайного поиска и grid search.

#junior
#middle
В чём заключается разница между генеративными и дискриминативными моделями?

Генеративные модели фокусируются на создании новых образцов данных, а дискриминативные модели — на задачах классификации и прогнозирования на базе входных данных.


❤️ Генеративные модели

Их цель — моделировать совместное распределение вероятностей P(X, Y) входных данных X и целевой переменной Y. Они часто используется для задач, связанных с генерацией изображений и текста. Примеры: вариационные автоэнкодеры (VAE), генеративно-состязательные сети (GAN).

❤️ Дискриминативные модели

Их цель — моделировать условное распределение вероятностей P(Y | X) целевой переменной Y при заданном входе X. Используются для классификации или прогнозирования на основе входных данных. Примеры: логистическая регрессия, свёрточные нейронные сети (CNN) для классификации изображений.


#junior
#middle
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.

В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги

👉Подписаться👈
Что вы знаете про использование марковских цепей в анализе последовательностей?

Марковские цепи используются в анализе последовательностей данных, таких как временные ряды и текст. Основная идея марковских цепей заключается в предположении, что будущее состояние системы зависит только от её текущего состояния, а не от всей истории предыдущих состояний. Это известно как свойство Маркова или отсутствие памяти. В контексте последовательностей это означает, что следующий элемент в последовательности зависит только от текущего элемента.

Также применяются скрытые Марковские модели. Они представляют из себя марковские цепи, для которых нам известны начальная вероятность и матрица вероятностей переходов. Скрытыми модели называется потому, что мы не имеем информации о текущем состоянии в них.

✔️Скрытые Марковские модели используются, например, для моделирования фонем и слов в системах распознавания речи. Также Марковские модели применимы в моделировании временных рядов финансовых данных, таких как цены на акции.

#middle
Что за алгоритм DBSCAN и как его использовать?

Density-Based Spatial Clustering of Applications with Noise (DBSCAN) — это алгоритм кластеризации данных. В его основе лежит понятие плотности; кластеры определяются как области высокой плотности, разделённые областями низкой плотности.

✔️Для использования DBSCAN нужно определить два ключевых параметра: eps (радиус поиска соседей для каждой точки) и min_samples (минимальное количество точек, необходимое для формирования плотного региона). Алгоритм находит некоторую центральную точку кластера. Таковой она считается, если содержит более min_samples в радиусе eps. После того как центральная точка кластера определена, алгоритм включает в список обхода все доступные для неё точки в пределах eps. Процесс повторяется. По сути, алгоритм пытается расширить кластер. Если точка не достигает порога min_samples, она помечается как шум.

DBSCAN эффективен для данных с кластерами неправильной формы и хорошо справляется с выбросами.

#junior
#middle
В чём разница между ошибкой первого рода и ошибкой второго рода?

Это два основных типа ошибок в статистических тестах, и они связаны с процессом проверки гипотез.

▪️Ошибка первого рода (α или ошибка типа I). Эта ошибка происходит, когда нулевая гипотеза отвергается, хотя на самом деле она верна. Например, когда медицинский тест ошибочно показывает наличие заболевания у здорового человека. Уровень значимости (α) — это вероятность совершения ошибки первого рода.

▪️Ошибка второго рода (β или ошибка типа II). Эта ошибка возникает, когда нулевая гипотеза принимается, хотя на самом деле она неверна. Например, когда медицинский тест не обнаруживает заболевание, которое на самом деле присутствует у пациента. Статистическая мощность (1-β) — это вероятность правильно отвергнуть неверную нулевую гипотезу.

Так, ошибка первого рода представляет собой ложноположительный результат, а ошибка второго рода — ложноотрицательный результат.


#статистика
Объясните разницу между AdaBoost и XGBoost

Оба метода объединяют слабые модели в одну сильную модель. И AdaBoost, и XGBoost в процессе обучения будут увеличивать ансамбль, добавляя в него новые слабые модели на каждой итерации. Разница между методами заключается в том, как расширяется ансамбль.


▪️AdaBoost изначально присваивает одинаковый вес каждому набору данных. Затем он корректирует веса точек выборки после каждого шага. Элементы, которые были классифицированы неверно, приобретают больший вес в следующей итерации.
▪️XGBoost использует градиентный бустинг, который оптимизирует произвольную дифференцируемую функцию потерь. То есть алгоритм строит первое дерево с некоторой ошибкой прогнозирования. Затем добавляются последующие деревья для исправления ошибок предыдущих. XGBoost имеет встроенные механизмы для регуляризации.

Иными словами, разница между алгоритмами в том, что XGBoost не присваивает неправильно классифицированным элементам больший вес.

#машинное_обучение
Как на коэффициенты логистической регрессии повлияет тот факт, что два предиктора сильно коррелируют?

Когда два или более предикторов в модели логистической регрессии сильно коррелируют между собой, это явление называется мультиколлинеарностью. Наличие мультиколлинеарности может приводит к нескольким потенциальным проблемам:

▫️Нестабильность коэффициентов регрессии. Это означает, что небольшие изменения в данных могут привести к значительным изменениям в оценках.
▫️Коэффициенты становятся менее надёжными для интерпретации и предсказания.

Например, если обучить модель, используя сильно коррелированные признаки, не все знаки коэффициентов будут соответствовать бизнес-логике. Так, уменьшение значения признака «остаток долга / сумма выдачи» должно приводить к уменьшению вероятности дефолта. Но из-за мультиколлинеарности коэффициент сменил знак на противоположный, и признак стал говорить об обратном: чем меньше остаётся платить, тем больше вероятность дефолта.

#машинное_обучение
Как сделать модель более устойчивой к выбросам?

Здесь можно подойти с двух сторон: преобразовать данные или особым образом построить модель.

Выбросы обычно определяются по отношению к распределению данных. Их можно удалить на этапе предварительной обработки, используя статистические методы. Самый простой подход — считать аномальными значения, которые находятся слишком далеко от среднего выборки. Иногда может помочь преобразование данных (например, логарифмическое преобразование).

Ещё один способ уменьшения влияния выбросов — использование средней абсолютной ошибки вместо среднеквадратичной ошибки. Что касается моделей, то устойчивыми к выбросам можно считать деревья решений.

#машинное_обучение
#статистика
Что такое ковариация и как она связана с корреляцией?

Ковариация — это мера того, насколько две переменные изменяются вместе. Если они обе увеличиваются или уменьшаются, ковариация положительная. Если одна увеличивается, когда другая уменьшается, ковариация отрицательная.

Корреляция тесно связана с ковариацией, но в отличие от ковариации, показывает не только направление связи между переменными, но и её силу. Корреляция варьируется от -1 до 1, где значения близкие к 1 или -1 указывают на сильную взаимосвязь.

#статистика
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

#️⃣C#

Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
Что вы знаете про наивный байесовский классификатор?

Наивный байесовский классификатор использует теорему Байеса для вычисления вероятности того, что какой-то элемент принадлежит определённому классу, исходя из вероятностей его признаков. Алгоритм называют «наивным», потому что он строится на предположении, что все признаки объектов каждого класса — независимые случайные величины.

Преимущества наивного байесовского классификатора включают простоту реализации и высокую скорость обучения.

#машинное_обучение