Программы
Подготовка к собеседованиямA/B-тесты для аналитиковML и Causal InferenceA/B-тесты для менеджеровОбучение для команд
Бесплатные материалы
База знаний165+ тестовых заданийRoadmap по A/BЧеклист A/B-тестаШаблон дизайна экспериментаОтзывыО проектеОставить заявку
01 / тестовое задание

karpov.courses:
тестовое задание для аналитика

Реальное тестовое с собеседования на Analyst.

karpov.courses · Аналитик · 7 заданий · данные есть
02 / оригинальный текст

Текст тестового задания

Ниже — исходный текст задания без редактуры.

Данные к заданиюОткрыть данные →

Ссылка на тестовый Jupiter Notebook

Задание #1

Дано:

В базе данных имеется три таблицы:

1. Таблица с данными о пользователях (user):

id - уникальный идентификатор пользователя (primary key)gender - полage - возрастcountry - странаcity - городexp_group - экспериментальная группаos - операционная системаsource - источник трафика

2. Таблица с данными о постах (post):

id - уникальный идентификатор поста (primary key)text - текст постаtopic - тема поста

3. Таблица с данными о действиях пользователей (feed_action):

user_id (——>) user (id) - идентификатор пользователяpost_id (——>) post (id) - идентификатор постаaction - совершенное в сети действиеtime - время действия

Задание:

Найдите город, пользователи которого в возрасте 36 лет 2021-12-01 числа просмотрели запись на тему `covid` меньше всего раз относительно других городов.

Задание #2

Дано:

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

Это задача предсказания средней цены в области на дом. Давайте оценим 95-процентный доверительный интервал на MSE Ridge-регрессии для этой выборки. Будем использовать бутстрэп для этого.

Для этого в цикле будем генерировать бутстрэп-выборки для обучения модели (то есть брать объекты из выборки с возвращением). В качестве тестовых объектов будем брать оставшиеся объекты. Каждый раз будем обучать модель и оценивать качество.

Задание:

Реализуйте такой код для 95-процентного доверительного интервала на MSE.

Используйте 1000 итераций генераций выборки и обучения модели. Данные не обрабатывайте. Полезными методами будут np.random.choice для генерации индексов бутстрэп-выборок (не забудьте про «генерацию с возвращением»), np.setdiff1d для получения остатка выборки.

Задание #3

Чему равно значение метрики AUC ROC у классификатора, который для любого объекта возвращает значение 0.97, если доля положительного класса в выборке составляет 4%?

Опишите свои рассуждения как можно точнее, с расчетами, если они потребуются.

Задание #4

Напишите функцию get_pretrained_model, которая принимает в качестве аргументов название архитектуры, количество классов для задачи классификации и стоит ли инициализировать модель с помощью полученных в ходе обучения на датасете ImageNet.

Она должна иметь следующую сигнатуру: def get_pretrained_model(model_name: str, num_classes: int, pretrained: bool=True):

Будем считать, что на вход могут прийти четыре различных model_name: alexnet, vgg11, googlenet и resnet18. Для каждого из них нужно вернуть соответствующую модель из зоопарка моделей torchvision.

Чтобы понять, как именно модифицировать созданные объекты, посмотрите на исходный код для моделей:

https://pytorch.org/hub/pytorch_vision_resnet/

https://pytorch.org/hub/pytorch_vision_alexnet/

https://pytorch.org/hub/pytorch_vision_vgg/

https://pytorch.org/hub/pytorch_vision_googlenet/

03 / как решать

Как подойти к решению

Сначала выпишите, что именно просят посчитать и в каких разрезах. Затем сверьтесь с данными: какие листы/таблицы есть, какой период, какие фильтры. Решайте по шагам и фиксируйте допущения — на собеседовании ценят ход мысли, а не только финальную цифру.

04 / частые ошибки

На что обратить внимание

  • Неверный период или единицы измерения.
  • Не учтены фильтры/сегменты из условия.
  • Нет выводов и рекомендаций — только числа.
05 / следующий шаг

Хочешь разбирать такие задания увереннее?

На интенсиве разбираем реальные кейсы, A/B-секции, метрики, SQL и типовые ошибки кандидатов.

Смотреть интенсив →
06 / похожие задания

Похожие задания