Учебник для собеседований по проектированию систем машинного обучения

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

Программная инженерия против науки о данных

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

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

Проектирование системы машинного обучения

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

Если эти моменты неясны, задайте интервьюеру уточняющие вопросы об этих моментах и ​​запишите их. Опять же, важно выполнить это упражнение еще до того, как начать задавать другие вопросы, чтобы найти способ решения проблемы. Эти моменты помогают указать направление для стратегического размышления о строительных блоках высокого уровня для решения.

Как только мы получим эти моменты, нам нужно будет сосредоточиться на тактических аспектах нашего решения. Эти аспекты помогают нам решить, какие технологии можно использовать для создания и поддержки решения. Некоторые из этих вопросов необходимо задать себе, чтобы определить путь к решению, в то время как некоторые будут более уточняющими вопросами для интервьюера.

Эти вопросы могут включать в себя следующее:

  • Можно ли решить эту задачу без машинного обучения? ›› Важно посмотреть, есть ли способ решить проблему без машинного обучения. Решения машинного обучения сложны и дороги. Если вы можете найти способ решить эту проблему без машинного обучения, это продемонстрирует вашу способность решать проблему другим способом и поможет интервьюеру собрать данные о вашем критическом мышлении.
  • Каков будет спрос на прогнозы? ›› Ограничения трафика помогают определять, как часто нужно будет генерировать ответы.
  • С каким объемом данных вы имеете дело? ›› Это помогает при оценке внутреннего хранилища и других соображениях производительности.
  • Нужна ли вам возможность предоставлять прогнозы в режиме реального времени? (и если да, то вы имеете в виду, что в течение дюжины миллисекунд или через секунду или две), или будет доставка прогнозов в режиме cron после получения входных данных хватит? ›› Это помогает объяснить ограничения задержки.
  • Как часто вы планируете обновлять свои модели? ›› Это поможет вам решить, какие структуры выпуска моделей и архитектуру развертывать.
  • Какие типы алгоритмов вы планируете использовать? ›› Различные алгоритмы машинного обучения, которые можно использовать для поиска решения.
  • Находитесь ли вы в регулируемой среде, где важна возможность аудита вашей системы? ›› Это необходимо в мире безопасности / здравоохранения / финансовых технологий, где существуют правила, касающиеся систем.
  • Соответствует ли ваша компания рынку? ›› Стартапы и крупные компании имеют разные потребности, чем их системы. Этот вопрос поможет вам ответить на необходимость подготовиться к первоначальной цели системы или создать гибкость для радикальных изменений в будущем. Ответ на этот вопрос доказывает, что вы всесторонне разбираетесь во всех аспектах системы.
  • Насколько велика и опытна ваша команда - включая специалистов по обработке данных, инженеров и DevOps? ›› Этот вопрос свидетельствует о том, что этот человек является хорошим менеджером или более старшим руководителем, который думает о человеческих аспектах проекта. также.

Рекомендации

Стоит отметить, что эти вопросы должны дать интервьюеру очень полное представление о вас как о кандидате. Он должен быть в состоянии предоставить точные данные, если вы можете задать эти вопросы и провести с интервьюером целенаправленный разговор по техническим вопросам и науке о данных по этим темам. Если просто задать эти вопросы и не получить хороших знаний в этих областях, это может нанести больший вред вашему собеседованию, поэтому лучше всего узнать кое-что подробно, прежде чем разговаривать на эти темы с вашим интервьюером. Удачи на собеседовании по проектированию системы машинного обучения!

Подпишитесь на нашу новостную рассылку Acing AI, если вам интересно:



Хотите узнать, как пройти собеседование по машинному обучению?