Найти в Дзене
1 год назад

Шикарный вопрос на понимание того, как работает статистический вывод У нас есть черный ящик (мы не знаем как он устроен), в который мы можем подать данные (контрольную и тестовую выборки) и параметр alpha (ошибка первого рода) В ответ мы получаем 0 (статзначимых различий нет) или 1 - различия есть Вопрос - как нам оценить, насколько корректно работает этот черный ящик, если внутреннюю структуру мы узнать не можем? Предлагается подумать самостоятельно - как вот отвечать на такое на интервью?) Ответ (моя версия): Кажется, что это вопрос на порассуждать и строго верного ответа просто нет. Я бы шел примерно по такому пути: - Черный ящик, по сути, это какой-то неизвестный статистический критерий - Я могу туда подать 2 выборки 1. Значит, я могу провести несколько тысяч (пусть будет 10k) искусственных АА-тестов, просто тупо сгенерив из распределения с одинаковыми параметрами кучу выборок (А и Б) либо с помощью бутстрапа Далее, подав все такие пары выборок в наш черный ящик, получаем 10k нулей и единиц -> могу оценить эмпирическую ошибку первого рода просто как долю АА, для которых этот статкритерий выдал 1. Далее, сравнить полученное значение с исходным параметром alpha 2. Аналогично я могу провести АА-тесты, но уже с инъекцией эффекта -> оценить ошибку второго рода 3. Построить распределение p_value не получится, т.к. черный ящик такое нам не выдает (а было бы неплохо) Пункты 1 и 2 можно также прогнать и для какого-нибудь известного критерия (например, ттеста), что позволит оценить, насколько неизвестный критерий вообще хорош Также можно поиграться и с семейством распределений для наших синтетических выборок #interview #ds #statistics

1 год назад

Какое же количество технических интервью оптимально в DS?

Вопрос нетривиальный, т.к. кажется что нужно (а может и нет) делать поправку на уровень DS-а. С опытными все чуть проще, но вот как проверить уровень начинающего? С одной стороны, для начинающего DS и не проведешь полноценный ml system design и про опыт не спросишь (его просто может не быть у человека) С другой стороны, человека без опыта можно спросить про учебный проект и там уже копать в глубину. В любом случае устраивать "общее" интервью, т.е. пихать в одно интервью столько разделов - кажется крайне неудачной идеей и здесь. Сколько же техсобесов должно быть в итоге? Мне кажется, что оптимальным количеством будет 2 технических интервью: 1...

1 год назад

Какой формат собеседования для DS/ML "лучше" всего? Часть 2 Первая часть - t.me/.../22 ML System Design Здесь все просто - вопрос на разработку системы машинного обучения, которая решает конкретную бизнесовую задачу. Очень похоже на то что было в первой части, но кандидату дается задача, которую он/она может видеть впервые и нужно рассуждать и декомпозировать ее. Т.е. на выходе мы получаем ту же беседу/дискуссию двух коллег с теми же плюсами, что и в первом варианте. Дополнительно можно посмотреть: 1. как человек мыслит, столкнувшись с принципиально новой для себя задачей 2. понимает ли какие проблемы есть на каждом этапе и вообще - какие этапы существуют 3. участвовал ли реально в решении вопросов архитектуры, выбора инструментов 4. можно устроить дискуссию на тему выбора того или иного инструмента/технологии/решения (вплоть до библиотек) - это очень близко к реальной работе (мы постоянно выбираем из множества вариантов, как нам решать ту или иную задачу) 5. максимально близко к реальности и к тому, что мы делаем, когда прилетает новая большая задача на разработку ML системы В ML System Design есть таки определенная структура, но даже если кандидат этой темой не интересовался, то, при наличии насмотренности и опыта, все равно сможет набросать верхнеуровнево решение. И в жизни этот навык полезен, т.к. задачи от бизнеса изначально могут быть крайне абстрактными и непонятными (в том числе и для самого бизнеса) с точки зрения их смысла и пользы. Мне кажется что вот умение задавать вопросы "нафига" и, главное, "зачем" мы что-то делаем, проверяется в том числе и на этапе ML System Design. Кстати, на канале будут стримы с разбором различных практических задач (пока был только отток) tg: t.me/...yer

1 год назад

Какой формат собеседования для DS/ML "лучше" всего? Часть 1 Был период в пару лет, когда я прошел в сумме более 50 интервью в разные компании (в какой-то момент это был прям спорт для меня - сколько смогу офферов получить и на сколько больше денег получится выбить - растил конверсию, так сказать), а также провел около 20 в качестве интервьюера и большинство из них (интервью) напоминали экзамен, когда тебя сходу начинают грузить вопросами формата "чем лес от бэггинга отличается" и "какие виды регуляризации знаешь". В начале стрессуешь, но потом (с 10 интервью за две недели) уже пофиг и вопросы начинают реально повторяться - от компании к компании. И уже не страшно, а тупо скучно) Верю, что такой формат изживает себя и рано или поздно исчезнет. Остается вопрос - что же можно предложить на замену? Вариант 1 - "Расскажи подробно про свою самую интересную задачу/проект, которую делал и помнишь?" Лично я на собесах в роли интервьюера всегда сначала прошу кандидата выбрать какую-то задачу из своего опыта и подробно рассказать о ней. Здесь появляется возможность уйти от формата зачета/экзамена и перейти к формату диалога двух потенциальных коллег. Вот как на работе мы обсуждаем, какой подход использовать, какие признаки и лоссы использовать и как хранить фичи и т.д. - вот тоже самое мы начинаем обсуждать на интервью. Из очевидных плюсов вижу: 1. возможность поговорить так, как будто бы мы уже в одной команде - сразу становится понятно, комфортно или нет 2. можно понять как человек видит проблему целиком - есть ли насмотренность и опыт 3. также можно копнуть в глубину и задать в том числе и вопросы про "градиент в градиентном бустинге" - проверить "технику" 4. снижение стресса для кандидата, потому что я не злой препод и нет цели никого "завалить" идиотскими вопросами 5. очень хорошо (как правило) видно, когда кандидат реально задачу не делал сам и просто сыпет базвордами, слыша простые вопросы вида "почему выбрали X, а не Y?" 6. возможность самому что-то узнать новое от кандидатов) Я так много про разведку нефтяных месторождений узнал от одного DS-а на собесе, например - даже не думал что там такой Data Science серьезный и исследования) tg: t.me/...yer

1 год назад

Почему стоит учиться всегда, а не только когда нужно найти срочно работу? Есть такая простая аксиома Знания для интервью != Знания для работы Множество знаний, навыков и компетенций, требуемых для прохождения всех этапов трудоустройства (знакомство с HR, техсобесы, включая алго/system design/ML/python/etc) в лучшем случае пересекается с тем, что потребуется после выхода на работу, чтобы таски в жире закрывать успешно выполнять свою работу) Простой пример — мне на интервью в секции SQL почти всегда давали задачи, в которых предполагается применение оконных функций. Это безусловно не rocket science (вообще ничто в ИТ не rocket science, мягко говоря) и можно вспомнить за полчасика (вот шикарный видос Карпова, кстати, hyoutu.be/...xj)Однако, если вспомнить, сколько раз оконные функции применялись мной в работе, то таких случаев будет меньше 5 за ВСЮ жизнь. И даже в этих случаях я не вытаскивал из головы знания, а просто вбивал в поисковик и смотрел примеры, далее адаптируя под свою задачу. А сейчас вообще есть chatGPT и прочее, которые тебе код сразу напишут какой надо (и это прекрасно). Приходится тратить время (от недель до месяцев, в зависимости от начального уровня), чтобы подготовиться к собеседованиям. При этом все (ну почти) приобретенные знания никак не пригодятся уже в работе рядового работника) Это конечно проклятие профессии, но таковы правила игры и их придется принять. Однако есть и хорошие новости. Если ты однажды освоил какой-то навык, то его будет проще и быстрее восстановить, нежели приобретать с нуля. Т.е. когда ты уже ранее прокачался в тех же алгоритмах (как пример), то тебе потребуется условно пара недель, чтобы все вспомнить и набить руку, в случае необходимости. В противном случае, если ты вдруг резко увольняешься и оказываешься на рынке труда и у тебя ситуация, когда нужно найти работу (приличную) вот прям щас, то за условные 2 недели ты уже ничего не сделаешь и не изучишь толком. Так что вкладываться в знания свои и компетенции нужно тогда, когда все спокойно и стабильно, есть для этого время — для погружения, осмысления. При этом без вреда для своей жизни и дополнительного стресса. И когда наступит полный пэ (а он наступит, не сомневайся), ты будешь готов) А еще такое вложение позволяет бороться с ощущением что ты деградируешь (потому что пока ты учишься — ты не деградируешь, по определению), когда работа становится адской рутиной (любая работа становится со временем такой). Если у тебя выработана привычка учиться, то ты всегда силен/сильна, готов/а к изменениям и уверен/а в себе и будущем. tg: t.me/...yer

Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала
Покупайте СтеллыИ дарите их за контент