Logo
TGCATALOG
Catalog Collections Blog
Data Science - interviews

Data Science - interviews

Data Science interviews.

No ratings
608
29.10.2026
608
29.10.2026
No ratings
608
29.10.2026
Safe redirect via bot
О канале

Data Science interviews.

Подписчиков 4,871
Тематика Technology
Язык English
Ссылка t.me/easy_ds

We also recommend

Kekaton AI | Voiceover and voice clone
Kekaton AI | Voiceover and voice clone
Bot

AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.

Description

Interview questions on Data Science.

Latest posts

Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Чем отличаются str и repr? Функции str() и repr() используются для получения строкового представления объектов, но они служат разным целям и работают по-разному. 🚩Функция str() Предназначена для получения "приятного" строкового представления объекта, которое может быть представлено пользователю. Она старается сделать строку более читабельной и понятной. Если метод __str__() не определен в классе объекта, использует метод __repr__() как запасной вариант. class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f"{self.name}, возраст {self.age} лет" person = Person("Иван", 30) print(str(person)) # Вывод: Иван, возраст 30 лет 🚩Функция repr() Предназначена для получения официального строкового представления объекта, которое может быть использовано для воссоздания того же объекта при помощи интерпретатора. repr() должна быть максимально точной и содержать информацию о всех атрибутах объекта. Результат repr() часто используется для отладки и разработки, так как он дает больше деталей о объекте. class Person: def __init__(self, name, age): self.name = name self.age = age def __repr__(self): return f"Person('{self.name}', {self.age})" person = Person("Иван", 30) print(repr(person)) # Вывод: Person('Иван', 30) Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Как градиент бустинг регрессор работает? Это мощный метод машинного обучения, использующийся для построения предсказательных моделей. Основная идея градиентного бустинга заключается в последовательном добавлении простых моделей (например, деревьев решений), так чтобы каждая последующая модель корректировала ошибки предыдущих. 🚩Как это работает 🟠Инициализация Модель начинает с простой начальной предсказательной модели, обычно с использованием среднего значения целевой переменной. 🟠Пошаговое обучение Для каждой модели в ансамбле вычисляется градиент функции потерь по отношению к предсказаниям текущей композитной модели. Градиент показывает направление наибольшего увеличения ошибки и используется для определения того, как должна измениться следующая модель, чтобы уменьшить ошибку. Следующая модель обучается, чтобы предсказывать отрицательный градиент (т.е., ошибку) предыдущих моделей. Эта модель затем добавляется к композитной модели с некоторым коэффициентом обучения (learning rate), который определяет степень влияния новой модели на общую модель. 🟠Повторение Этот процесс повторяется множество раз, и каждая новая модель улучшает предсказательные способности композитной модели, пока не будет достигнут критерий остановки или не будет добавлено заранее определенное количество моделей. from sklearn.ensemble import GradientBoostingRegressor from sklearn.datasets import make_regression from sklearn.model_selection import train_test_split Создание синтетических данных X, y = make_regression(n_samples=100, n_features=4, noise=0.1) Разделение данных на обучающую и тестовую выборки X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) Создание модели градиентного бустинга model = GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, max_depth=3, random_state=42) Обучение модели model.fit(X_train, y_train) Оценка модели print("Точность модели на тестовых данных:", model.score(X_test, y_test)) Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Что знаешь о ML дизайне? Термин "ML дизайн" или "дизайн машинного обучения" может относиться к разным аспектам процесса разработки и внедрения моделей машинного обучения в продукты или системы. Это включает в себя всё от выбора подходящих алгоритмов и предобработки данных до оптимизации архитектуры системы и создания пользовательского интерфейса, который делает результаты машинного обучения доступными и полезными для конечных пользователей. 🟠Понимание проблемы и данных Перед тем, как приступить к техническому проектированию и реализации, важно полностью понять бизнес-цели, задачи и данные. Это включает в себя определение того, какие данные доступны, какие данные могут быть собраны, какие данные релевантны для задачи, и какие проблемы машинного обучения нужно решать. 🟠Выбор подходящих моделей и алгоритмов Выбор модели зависит от множества факторов, включая тип задачи (например, классификация, регрессия, кластеризация), размер и качество данных, требуемую точность и время обучения. Дизайн в этом контексте также включает выбор между использованием готовых решений или разработкой собственных алгоритмов. 🟠Обработка и предобработка данных Эффективное использование данных включает их очистку, нормализацию, аугментацию и инжиниринг признаков. Эти шаги критически важны, так как качество и количество тренировочных данных напрямую влияют на производительность модели машинного обучения. 🟠Валидация и тестирование моделей После выбора и обучения моделей необходимо тщательно оценить их производительность с использованием методов валидации, таких как перекрестная проверка. Тестирование должно проводиться не только для измерения точности, но и для проверки, как модель работает на новых, ранее невиданных данных. 🟠Интеграция в продукты и системы Это включает в себя внедрение модели в существующую инфраструктуру, обеспечение её масштабируемости и управления ресурсами. Важным аспектом является создание эффективных пайплайнов данных, которые могут автоматически обрабатывать входные данные и выводить результаты. 🟠Пользовательский интерфейс и взаимодействие Одним из аспектов ML дизайна является разработка интерфейсов, которые позволяют пользователям легко и эффективно взаимодействовать с машинным обучением. Это может включать в себя визуализацию результатов, настройки уровня доверия модели и интерактивные элементы для обратной связи с пользователем. 🟠Этические и юридические соображения При проектировании систем машинного обучения важно учитывать этические и юридические аспекты, такие как конфиденциальность данных, справедливость и прозрачность решений, сделанных с использованием ИИ. Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Какие есть проблемы с Batch Norm? 1. Зависимость от мини-батчей: небольшие батчи могут приводить к нестабильной оценке среднего и дисперсии. 2. Сложности с применением в рекуррентных сетях: последовательность данных может вызывать проблемы с нормализацией. 3. Увеличение вычислительных затрат: дополнительные параметры и операции замедляют обучение. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Какие лоссы ты знаешь? В машинном обучении (и особенно в глубоких нейронных сетях) лосс-функция (или функция потерь) используется для оценки того, насколько хорошо модель предсказывает результат. Лосс — это численное выражение ошибки, которое модель пытается минимизировать во время обучения. 🚩Лоссы для задач регрессии Эти функции используются, когда нужно предсказать непрерывное значение (например, цену дома). 🟠MSE (Mean Squared Error, Среднеквадратичная ошибка) MSE = \frac{1}{n} \sum_{i=1}^n (y_i - \hat{y}_i)^2 Почему: Она штрафует большие ошибки сильнее (из-за квадрата), поэтому модель пытается минимизировать крупные отклонения. Недостаток: Чувствительна к выбросам, так как большие ошибки сильно влияют на результат. 🟠MAE (Mean Absolute Error, Средняя абсолютная ошибка) MAE = \frac{1}{n} \sum_{i=1}^n |y_i - \hat{y}_i| Почему: Она менее чувствительна к выбросам. Недостаток: Может быть сложнее оптимизировать, поскольку производная модуля недифференцируема в 0. 🟠Huber Loss Комбинация MSE и MAE. Менее чувствительна к выбросам, чем MSE. L_{\delta}(a) = \begin{cases} \frac{1}{2}(y_i - \hat{y}_i)^2 & \text{if } |y_i - \hat{y}_i| \leq \delta, \\ \delta \cdot |y_i - \hat{y}_i| - \frac{1}{2} \delta^2 & \text{otherwise.} \end{cases} 🚩Лоссы для задач классификации Эти функции подходят для задач, где нужно определить категорию (например, "кот" или "собака"). 🟠Binary Cross-Entropy (Логарифмическая потеря) Используется для бинарной классификации. BCE = - \frac{1}{n} \sum_{i=1}^n \big(y_i \log(\hat{y}_i) + (1-y_i) \log(1-\hat{y}_i)\big) Почему: Лосс сильнее штрафует уверенные, но неправильные предсказания. Пример: Вероятность принадлежности классу "1" предсказана как 0.99, но правильный класс — "0". 🟠Categorical Cross-Entropy (Кросс-энтропия) Для многоклассовой классификации: CCE = - \sum_{i=1}^n \sum_{j=1}^k y_{ij} \log(\hat{y}_{ij}) Почему: Учитывает все классы, штрафуя уверенные ошибки сильнее. 🟠Hinge Loss Применяется в задачах с методами опорных векторов (SVM). L = \max(0, 1 - y_i \cdot \hat{y}_i) Почему: Стимулирует модель делать более "уверенные" предсказания. 🚩Лоссы для задач сегментации или генерации 🟠Dice Loss: Используется для задач сегментации изображений. Dice = 1 - \frac{2 |A \cap B|}{|A| + |B|} Почему: Учитывает пересечение предсказанной области и истинной разметки. 🟠Perceptual Loss Используется в задачах генерации изображений, чтобы сравнивать "перцептивное" различие между изображениями, а не просто пиксели. 🚩Специфические лоссы 🟠KL Divergence (Дивергенция Кульбака-Лейблера) Измеряет, насколько распределение предсказаний модели отличается от целевого распределения. D_{KL}(P || Q) = \sum_{x} P(x) \log \frac{P(x)}{Q(x)} 🟠Triplet Loss Для задач, связанных с обучением эмбеддингов (например, в системах рекомендаций или в задачах поиска изображений). 🚩Пример реализации (MSE) import torch import torch.nn as nn # Предсказания модели y_pred = torch.tensor([2.5, 0.0, 2.0, 8.0]) # Истинные значения y_true = torch.tensor([3.0, -0.5, 2.0, 7.0]) # Среднеквадратичная ошибка loss_fn = nn.MSELoss() loss = loss_fn(y_pred, y_true) print(f"MSE Loss: {loss.item()}") Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Как можно сравнивать два ненормальных распределения? 🚩Непараметрические тесты 🟠Тест Манна-Уитни (U-тест Манна-Уитни) Используется для сравнения двух независимых выборок. Тест проверяет, различаются ли распределения значений между двумя группами. from scipy.stats import mannwhitneyu data1 = [1, 2, 3, 4, 5] data2 = [2, 3, 4, 5, 6] stat, p = mannwhitneyu(data1, data2) print(f'U-статистика: {stat}, p-значение: {p}') 🟠Тест Уилкоксона (Wilcoxon signed-rank test) Используется для сравнения двух связанных выборок или парных наблюдений. from scipy.stats import wilcoxon before = [20, 30, 40, 50, 60] after = [21, 29, 39, 51, 59] stat, p = wilcoxon(before, after) print(f'W-статистика: {stat}, p-значение: {p}') 🟠Критерий Колмогорова-Смирнова (Kolmogorov-Smirnov test) Используется для сравнения формы двух распределений. from scipy.stats import ks_2samp data1 = [1, 2, 3, 4, 5] data2 = [2, 3, 4, 5, 6] stat, p = ks_2samp(data1, data2) print(f'KS-статистика: {stat}, p-значение: {p}') 🚩Визуализация 🟠Гистограммы и плотности Построение гистограмм и графиков плотности для визуального сравнения распределений. import matplotlib.pyplot as plt import seaborn as sns data1 = [1, 2, 3, 4, 5] data2 = [2, 3, 4, 5, 6] sns.histplot(data1, kde=True, color='blue', label='Data1', alpha=0.5) sns.histplot(data2, kde=True, color='red', label='Data2', alpha=0.5) plt.legend() plt.show() 🟠Boxplots (ящики с усами) Помогают сравнить распределения и выявить отличия в медиане, квартилях и выбросах. data1 = [1, 2, 3, 4, 5] data2 = [2, 3, 4, 5, 6] plt.boxplot([data1, data2], labels=['Data1', 'Data2']) plt.show() 🚩Другие методы 🟠Коэффициент Спирмена (Spearman's rank correlation) Проверяет монотонную связь между двумя выборками. from scipy.stats import spearmanr data1 = [1, 2, 3, 4, 5] data2 = [2, 3, 4, 5, 6] corr, p = spearmanr(data1, data2) print(f'Корреляция Спирмена: {corr}, p-значение: {p}') Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Почему в картинках используют StandardScaling вместо MinMaxScaling ? Использование методов нормализации данных, таких как StandardScaling и MinMaxScaling, зависит от особенностей данных и задач машинного обучения. В задачах обработки изображений StandardScaling (стандартизация) часто предпочтительнее MinMaxScaling (масштабирование к диапазону), и вот почему: 🚩Standard Scaling (стандартизация) Заключается в преобразовании данных таким образом, чтобы они имели нулевое среднее значение и единичное стандартное отклонение. 🟠Сохранение распределения данных Стандартизация сохраняет распределение данных, но изменяет масштаб. Это особенно важно для алгоритмов, чувствительных к масштабу данных, таких как градиентный спуск. 🟠Гибкость при разных диапазонах Изображения часто содержат пиксели с различными интенсивностями, и стандартизация помогает унифицировать данные, что улучшает сходимость моделей. 🟠Работа с алгоритмами Многие алгоритмы машинного обучения, такие как линейные модели и нейронные сети, лучше работают с данными, у которых нулевое среднее и единичное стандартное отклонение. Это помогает ускорить обучение и улучшить сходимость. from sklearn.preprocessing import StandardScaler import numpy as np # Пример изображения (грейскейл) image = np.array([[0, 50, 100], [150, 200, 255], [30, 70, 120]]) # Преобразование в одномерный массив image_flattened = image.flatten().reshape(-1, 1) # Стандартизация scaler = StandardScaler() image_scaled = scaler.fit_transform(image_flattened) # Возвращение к оригинальной форме image_standardized = image_scaled.reshape(image.shape) print(image_standardized) 🚩Min-Max Scaling (масштабирование к диапазону) Заключается в преобразовании данных таким образом, чтобы они находились в заданном диапазоне, обычно от 0 до 1. 🟠Простота интерпретации Преобразованные данные легко интерпретировать, так как все значения находятся в одном диапазоне. 🟠Подходит для некоторых задач Может быть полезно для алгоритмов, которые не зависят от нормальности данных, таких как методы на основе деревьев решений. 🟠Чувствительность к выбросам Масштабирование к диапазону очень чувствительно к выбросам, что может сильно исказить распределение данных. 🟠Сложность работы с градиентными методами Для методов, использующих градиенты, Min-Max Scaling может привести к неравномерным шагам в оптимизации, особенно если данные имеют различную дисперсию. from sklearn.preprocessing import MinMaxScaler import numpy as np # Пример изображения (грейскейл) image = np.array([[0, 50, 100], [150, 200, 255], [30, 70, 120]]) # Преобразование в одномерный массив image_flattened = image.flatten().reshape(-1, 1) # Масштабирование к диапазону 0-1 scaler = MinMaxScaler() image_scaled = scaler.fit_transform(image_flattened) # Возвращение к оригинальной форме image_minmax_scaled = image_scaled.reshape(image.shape) print(image_minmax_scaled) Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Что такое bootstrap? Bootstrap - это статистический метод, который позволяет оценивать распределение статистики выборки (например, среднего, медианы) путем многократного повторного выборочного отбора с возвращением из исходной выборки. 🚩Почему нужен bootstrap? В реальной жизни часто бывает сложно оценить неопределенность оценок из-за ограниченного объема данных. Bootstrap помогает преодолеть это ограничение, позволяя получить более точные доверительные интервалы и оценки ошибок для статистических параметров. 🚩Как используется bootstrap? 🟠Исходная выборка: Допустим, у вас есть исходная выборка данных объема \( n \). 🟠Повторные выборки: Вы многократно (например, 1000 или 10,000 раз) выбираете случайные подвыборки с возвращением из исходной выборки. Это означает, что каждый элемент может быть выбран несколько раз, а некоторые элементы могут не попасть в конкретную подвыборку. 🟠Вычисление статистики: Для каждой из повторных подвыборок вы вычисляете интересующую вас статистику (например, среднее, медиану). 🟠Оценка распределения: Получив множество значений статистики, вы можете построить эмпирическое распределение этой статистики, оценить доверительные интервалы, среднее значение и другие характеристики. import numpy as np # Исходные данные data = np.array([2.3, 5.1, 7.4, 2.9, 6.5, 4.8, 3.1, 5.7, 8.2, 3.4]) # Параметры bootstrap n_iterations = 1000 n_size = len(data) # Массив для хранения значений средней из каждой подвыборки means = [] # Процесс bootstrap for _ in range(n_iterations): sample = np.random.choice(data, size=n_size, replace=True) sample_mean = np.mean(sample) means.append(sample_mean) # Вычисление доверительного интервала (например, 95%) lower_bound = np.percentile(means, 2.5) upper_bound = np.percentile(means, 97.5) print(f"Среднее значение: {np.mean(means)}") print(f"95% доверительный интервал: [{lower_bound}, {upper_bound}]") Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
Data Science - interviews
🔒Открыть пост
и посмотреть медиа
🤔 Сравни архитектуру RNN, CNN, трансформера Архитектуры RNN, CNN и Transformer используются в глубоком обучении для разных задач. Давайте разберём их принципы работы, различия и области применения. 🚩Рекуррентные нейронные сети (RNN) Используются для работы с последовательными данными (текст, аудио, временные ряды). В RNN выход предыдущего состояния влияет на следующее состояние. Сеть запоминает последовательность, так как передаёт скрытое состояние \( h_t \) на следующий шаг. В классической RNN проблема исчезающего градиента, из-за чего трудно обрабатывать длинные последовательности. 🟠LSTM (Long Short-Term Memory) добавляет механизмы управления памятью (forget, input, output gate). 🟠GRU (Gated Recurrent Unit) упрощённая версия LSTM, но работает быстрее. Машинный перевод (seq2seq) Анализ временных рядов Обнаружение аномалий Плохо работает с длинными зависимостями Не поддерживает параллельные вычисления 🚩Сверточные нейронные сети (CNN) Используются для обработки изображений и данных с пространственными зависимостями. Применяет фильтры (свёртки) к изображению, извлекая признаки. Главные слои: 🟠Слой свёртки (Convolutional Layer) извлекает особенности изображения. 🟠Слой активации (ReLU) добавляет нелинейность. 🟠Слой субдискретизации (Pooling) уменьшает размерность. 🟠Полносвязные слои (FC Layers) делают финальную классификацию. Компьютерное зрение Обнаружение объектов Анализ медицинских снимков Плохо работает с последовательностями и контекстными зависимостями Требует много данных и вычислительных ресурсов 🚩 Трансформеры (Transformers) Используются для работы с последовательностями, заменяя RNN. Основной механизм – Self-Attention, который позволяет учитывать все элементы последовательности одновременно. Encoder-Decoder архитектура: Encoder обрабатывает входные данные. Decoder генерирует выходную последовательность. Для обучения используется механизм внимания (Attention Mechanism). 🟠Self-Attention определяет, какие части входных данных важны. 🟠Position Encoding добавляет информацию о порядке слов. 🟠Feed Forward Layers обрабатывает признаки после self-attention. NLP: GPT, BERT, T5 Машинный перевод (Google Translate) Генерация текста и изображений (ChatGPT, DALL-E) Требуют много вычислительных ресурсов Плохо работают с короткими и табличными данными Ставь 👍 и забирай 📚 Базу знаний
Data Science - interviews
FAQ

Open Data Science - interviews in Telegram and press the Start button. No separate registration is required.

Yes. The service is designed to be straightforward: open the resource, follow the on-screen instructions and start using it.

No. You can use Data Science - interviews directly in Telegram unless the resource description says otherwise.

Access depends on the resource. Check the current information in Telegram after opening Data Science - interviews.

The exact features depend on the resource. Open Data Science - interviews to see its current functions, content and access conditions.
Subscriber dynamics
+-0.7% last 30 days
Current
4,871
Month ago
4,906
Average growth
+-1 / day
Updated
14 hours ago

Reviews for channel Data Science - interviews

Log in to leave a review

Only registered users can share their opinion.

No reviews yet

Be the first to share your impression of this resource!

Similar resources

Loading
Switch to Light Theme
Home Catalog Collections Blog Login