Система проектирования данных инженерная система из моделей ML

#architecture #system

Вопрос:

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

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

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

Я буквально представил внутренние компоненты воздушного потока и то, как он работает, как часть моего решения. Есть ли лучший подход / более полный ответ для этого дизайна? Каков был бы наилучший способ создания архитектуры, источником которой являются модели ML?

Ответ №1:

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


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

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

Конечно, интервьюер сказал: «Не беспокойтесь о том, как на самом деле работает система обнаружения мошенничества», что совершенно разумно. Но первое, с чего нужно начать, — это задавать вопросы.

Например, мой первый вопрос был бы примерно таким:

Что вы подразумеваете под «аналитикой»? Анализируя, насколько хорошо работает развернутая система с точки зрения задержки / стабильности? Или понимание фактической «производительности» модели (например, правильное / неправильное обнаружение мошенничества)?

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

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