Data Science | Вопросы собесов
4.93K subscribers
38 photos
2 videos
1.37K links
Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy

Контакт для рекламы: @easyoffer_adv
Download Telegram
🤔 Что знаешь про early stopping?

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

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
👍1🔥1
🤔 Чем отличается having от where?

Ключевые отличия между операторами HAVING и WHERE заключаются в их использовании и моменте применения при обработке запроса:

🟠Момент применения
WHERE: Фильтрует строки до того, как будут выполнены группировка или агрегирование. Это означает, что WHERE ограничивает записи, которые войдут в последующий процесс агрегации или будут доступны для дальнейших операций в запросе.
HAVING: Применяется после выполнения группировки и агрегации. HAVING используется для фильтрации агрегированных результатов, которые возвращаются оператором GROUP BY. Таким образом, HAVING может использовать результаты агрегатных функций для фильтрации групп данных.

🟠Типы данных для фильтрации
WHERE: Может использовать только те колонки, которые физически присутствуют в таблице. WHERE не может фильтровать результаты агрегатных функций, так как он действует до их применения.
HAVING: Может использовать агрегатные функции, такие как SUM(), AVG(), MAX(), COUNT() и т.д., что позволяет фильтровать данные на основе результатов этих функций после группировки.

🟠Возможности использования
WHERE: Обычно используется в большинстве SQL запросов для фильтрации записей перед выполнением операций, таких как выборка, агрегирование или группировка. Это основной инструмент для уменьшения набора данных до агрегации.
HAVING: Основное использование HAVING — это уточнение результатов, полученных с помощью агрегации в комбинации с GROUP BY. Это более специализированный инструмент, который полезен в отчетах и анализе данных, где нужно работать с агрегированными суммами, средними значениями или другими агрегатами.

Представим, что у нас есть таблица orders с полями customer_id, order_date, и amount. Мы хотим выбрать клиентов, которые совершили заказы на общую сумму более 500 долларов, но только те заказы, которые были сделаны в 2021 году.
SELECT customer_id, SUM(amount) AS total_amount
FROM orders
WHERE order_date BETWEEN '2021-01-01' AND '2021-12-31'
GROUP BY customer_id
HAVING SUM(amount) > 500;


Ставь 👍 и забирай 📚 Базу знаний
👍1
🤔 Какие подходы понижения размерности известны?

Основные подходы понижения размерности включают метод главных компонент (PCA), сингулярное разложение (SVD), t-SNE и UMAP. PCA снижает размерность данных, находя новые оси, которые объясняют наибольшую дисперсию данных. t-SNE и UMAP используются для визуализации данных в пространстве низкой размерности, сохраняя их топологическую структуру. Эти методы позволяют уменьшить количество признаков при сохранении важной информации.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 В чем отличия между чар и варчар?

Типы данных CHAR и VARCHAR используются для хранения символьных (текстовых) данных, но они работают по-разному и предназначены для разных сценариев использования.

🚩Основные отличия

🟠Хранение
CHAR: Это фиксированный тип размера, что означает, что выделяемое пространство для каждой строки одинаково, независимо от фактической длины хранимой строки. Если строка короче заявленной длины, оставшееся пространство заполняется специальными символами (обычно пробелами). Например, если вы определяете столбец как CHAR(10) и сохраняете строку "abc", она будет храниться как "abc " (с добавлением семи пробелов).
VARCHAR: Это переменный тип размера. VARCHAR требует только столько места, сколько необходимо для хранения символов, плюс дополнительное место для хранения информации о длине строки. Если столбец определён как VARCHAR(10) и вы сохраняете строку "abc", она будет занимать только место, необходимое для хранения трёх символов и длины.

🟠Производительность
CHAR: Быстрее при выполнении операций, потому что все значения фиксированной длины, что упрощает вычисление позиций данных в памяти. Хорошо подходит для данных, размер которых известен и стабилен, например, некоторые идентификаторы, коды стран, коды состояний.
VARCHAR: Может быть медленнее CHAR из-за дополнительных затрат на обработку переменной длины, но это зависит от сценария и системы управления базой данных. Лучше подходит для текстовых данных, длина которых может сильно варьироваться, например, имена, адреса электронной почты.

🟠Использование памяти
CHAR: Может неэффективно использовать пространство, если данные значительно короче максимальной длины.
VARCHAR: Эффективнее использует память, когда данные значительно короче максимально допустимой длины.

🟠Советы по использованию
Используйте CHAR, если длина данных всегда одинакова.
Используйте VARCHAR, если длина данных может значительно отличаться.

CREATE TABLE example (
fixed_char CHAR(10),
variable_char VARCHAR(10)
);

INSERT INTO example (fixed_char, variable_char) VALUES ('text', 'text');

SELECT LENGTH(fixed_char), LENGTH(variable_char) FROM example;


Ставь 👍 и забирай 📚 Базу знаний
🤔 Как обучаются линейные модели?

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

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Сколько слоёв многослойного перцептрона с линейной функцией активации понадобится для приближения полинома третьей степени?

Многослойный перцептрон (MLP) с линейными функциями активации, независимо от числа слоев, не способен аппроксимировать полином третьей степени или любую другую нелинейную функцию.

🚩Линейные функции активации

Имеет вид
 f(x) = x


Когда используется линейная функция активации в многослойном перцептроне, каждая следующая линейная комбинация входных данных остается линейной. Независимо от количества слоев, итоговая функция будет просто линейной комбинацией входных данных. Если рассматривать MLP с линейной активацией, то каждый слой \( l \) вычисляется как
\mathbf{z}^{(l)} = \mathbf{W}^{(l)} \mathbf{a}^{(l-1)} + \mathbf{b}^{(l)}


🚩Полиномиальные функции

Полином третьей степени имеет вид
f(x) = a_3 x^3 + a_2 x^2 + a_1 x + a_0


🚩Необходимость нелинейной активации

Для аппроксимации полинома третьей степени необходимо использовать нелинейные функции активации, такие как:
Сигмоида (\(\sigma(x) = \frac{1}{1 + e^{-x}}\))
ReLU (Rectified Linear Unit, \( \text{ReLU}(x) = \max(0, x) \))
Тангенс гиперболический (\(\tanh(x)\))
Использование нелинейных функций активации позволяет многослойному перцептрону моделировать сложные функции, включая полиномы более высокой степени.
import numpy as np
import matplotlib.pyplot as plt
from sklearn.neural_network import MLPRegressor

# Генерация данных
np.random.seed(42)
X = np.linspace(-2, 2, 100).reshape(-1, 1)
y = 3*X**3 - 2*X**2 + X + 1 + np.random.normal(0, 0.2, X.shape)

# Обучение MLP
mlp = MLPRegressor(hidden_layer_sizes=(100, 100), activation='relu', max_iter=10000, random_state=42)
mlp.fit(X, y.ravel())

# Предсказания
y_pred = mlp.predict(X)

# Визуализация
plt.scatter(X, y, color='blue', label='Original data')
plt.plot(X, y_pred, color='red', label='MLP prediction')
plt.legend()
plt.show()


Ставь 👍 и забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Что такое map оценка?

MAP (Mean Average Precision) — это метрика, используемая для оценки качества ранжирования в задачах, где важен порядок релевантных результатов. Она вычисляется как среднее значение Average Precision (AP) для нескольких запросов, где AP измеряет точность на каждой позиции релевантного элемента. MAP часто применяется в системах поиска и рекомендаций для оценки точности ранжированных ответов.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
АЙТИШНИКИ, ХВАТИТ сливать время на прилизанные новости и бесполезные курсы

Проект «ИИнтеллигенция» стал главным каналом для тех, кто использует нейросети на уровне разработки, автоматизации и опенсорса, а не просто балуется в чатах. Здесь собирают только то, что реально экономит человеко-часы и работает в проде.

🎓 Готовые ИИ-сервисы, промпты и ИИ-агенты для автоматизации рутины

📚 Разборы полезных ИИ-инструментов, локальных LLM и опенсорс-репозиториев

🛠 Практические кейсы, гайды по деплою моделей и интеграции ИИ в пайплайны

⚡️ Технические ИТ-новости без маркетинговой воды и душных отчетов

Обучение и прокачка в реальном времени: работа с API (Claude, GPT), локалки (Ollama, vLLM), автоматизация кода, опенсорс-утилиты, AI-агенты и др.

Ценишь время и работаешь с ИИ, подпишись: @clucai
🤔 Что пытается сделать рекомендательная модель?

Рекомендательная модель стремится предоставить персонализированные рекомендации пользователям на основе их предыдущих интересов, взаимодействий и предпочтений. Цель этих моделей — улучшить пользовательский опыт, предлагая контент или товары, которые максимально соответствуют индивидуальным запросам и вкусам каждого пользователя.

🚩Как это работает и для чего это нужно?

🟠Повышение удовлетворенности пользователя
Рекомендательные системы помогают пользователям находить интересующие их продукты или услуги без долгих поисков, что повышает их удовлетворенность и вероятность дополнительных покупок.

🟠Увеличение продаж
Предоставление релевантных рекомендаций может стимулировать дополнительные покупки или просмотры, так как пользователи могут узнать о товарах или услугах, которые они могли не рассмотреть самостоятельно.

🟠Эффективное управление ассортиментом
Рекомендательные системы могут анализировать большие объемы данных для выявления тенденций и предпочтений, что помогает компаниям оптимизировать свой ассортимент и управлять запасами.

🟠Персонализация
В эпоху цифровизации персонализация становится ключевым фактором в привлечении и удержании клиентов. Рекомендательные системы предоставляют уникальные предложения и контент, который отвечает личным интересам каждого пользователя.

Ставь 👍 и забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM