2.7Kпросмотров
24 июня 2024 г.
Score: 3.0K
ML system design. При отборе почти во все компании на позицию data scientist от кандидатов просят решить так называемый ML system design. Особенно тщательно к этому надо готовиться ребятам, которые претендуют на позицию middle и выше. Что это такое? Это кейс, в рамках которого тебе надо представить, что завтра тебя попросят обучить какую-то модель для какой-то проблемы. Тебе надо представить, как бы ты подошел к обучению и развертыванию модели в продакшене. Обычно хорошие кандидаты идут по определенной структуре: 1. Problem Navigation
В начале надо разобраться с тем, зачем вообще нужна модель. Надо поспрашивать интервьюера о том, какие есть требования у бизнеса или бизнес метрики. 2. Training Data
Стоит разобраться с тем, на какой таргете ты будешь обучать модель и откуда брать данные для обучения. Особенно сильные кандидаты знают внешние источники для насыщения алгоритма или откуда спарсить данные. 3. Feature Engineering
Ну тут все понятно. Просто надо пофантазировать, какие фичи ты сделаешь из данных и на что обратишь внимание в первую очередь. 4. Modeling
Дальше стоит выбрать алгоритм. Обычно неплохо взять базовый алгоритм, обучить на нем, и потом переходить к более сложным. 5. Model Evaluation
На какие метрики ты будешь опираться при выборе алгоритма? Тут надо посмотреть на пункт 1, вспомнить, зачем оно вообще надо, и подобрать метрики, которые наиболее важны для бизнеса, но с уклоном в метрики качества моделей. 6. Deployment
Как модель будет крутиться в проде? Это API или предварительно рассчитанная таблица? Как часто надо обновлять таблицу? А вычислительных мощностей хватит? 7. Monitoring and Observability
Как ты поймешь, что модель нормально работает в проде и не поехала по своим параметрам через месяц после начала использования?