Инженеры все чаще стремятся интегрировать ИИ в свои проекты, чтобы улучшить свои результаты и опередить цифровую кривую своей профессии. Чтобы успешно интегрировать ИИ, инженеры должны убедиться, что они понимают, что такое ИИ в первую очередь и как он может вписаться в их текущий рабочий процесс. Это может быть не так просто, как они думают сначала. В этом разделе вопросов и ответов старший редактор Electronic Design Билл Вонг рассказывает с Йоханной Пингел, менеджером по маркетингу продуктов в MathWorks , о том, как инженеры могут интегрировать ИИ в свои проекты и как его можно в конечном итоге использовать для оптимизации всего рабочего процесса.

Как вы определяете ИИ с инженерной точки зрения?

Когда инженеры обсуждают ИИ, они обычно сосредотачиваются на моделях ИИ , но ИИ - это гораздо больше. Это часто расплывчатый термин, описывающий операционную стратегию, поддерживаемую машинным обучением. С инженерной точки зрения понятие «ИИ» фактически охватывает четыре этапа рабочего процесса: подготовку данных, моделирование, моделирование и тестирование, а также развертывание. Какой шаг или шаги наиболее важны при включении ИИ в рабочий процесс?

Каждый шаг важен. Инженеры должны помнить об этом, потому что они часто рассчитывают потратить большую часть своего времени на второй шаг - разработку и точную настройку моделей искусственного интеллекта.


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

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

Что еще следует учесть инженерам, прежде чем включать ИИ в свой рабочий процесс?

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

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

Расскажите о четырех шагах, которые помогут разработать полный рабочий процесс, основанный на искусственном интеллекте. Какую роль играет каждый шаг в успешном внедрении ИИ в проект?

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

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

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

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

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

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


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

Теперь, когда мы подготовили наши данные и настроили модель, где же тогда моделирование и тестирование?

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

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

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

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


Итак, мы наконец готовы развернуть нашу модель. Какую роль играет ИИ на этом последнем этапе?

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

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

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