Центральное процессорное устройствоCPU), которое часто называют процессором, выступает в качестве основного компонента компьютера, отвечающего за выполнение инструкций. Он выполняет большинство основных арифметических, логических, управляющих операций и операций ввода/вывода (I/O), заданных инструкциями компьютерной программы. В контексте искусственного интеллекта (AI) и машинного обучения (ML), несмотря на то, что для задач с интенсивными вычислениями часто предпочитают использовать специализированное оборудование вроде GPU и TPU, CPU остается основополагающим компонентом.
Роль в искусственном интеллекте и машинном обучении
Центральные процессоры - это процессоры общего назначения, предназначенные для последовательного и быстрого выполнения самых разных задач. Ключевыми характеристиками являются тактовая частота, которая определяет, сколько инструкций он может выполнить в секунду, и количество ядер, которое позволяет параллельно выполнять несколько задач. Хотя современные CPU имеют несколько ядер, они, как правило, не так массивно параллельны, как GPU.
В рабочих процессах AI/ML процессоры необходимы для:
- Системные операции: Запуск операционной системы, управление системными ресурсами и организация общего рабочего процесса.
- Предварительная обработка данных: Такие задачи, как загрузка наборов данных, их очистка, преобразование и увеличение, часто связаны со сложной логикой и файловыми операциями, которые хорошо подходят для центральных процессоров. Многие этапы подготовки данных для таких моделей, как Ultralytics YOLO в значительной степени зависят от CPU обработки. Узнай больше о подготовке данных для проектов по компьютерному зрению.
- Последовательные задачи: Выполнение частей ML-конвейера, которые нелегко распараллелить, например, определенной логики управления или конкретных алгоритмических шагов.
- Выводы на определенных устройствах: Выполнение выводов для небольших моделей или на устройствах без специальных ускорителей ИИ(Edge AI). Многие приложения развертывают модели в таких форматах, как ONNX или используют такие режимы выполнения, как OpenVINO отIntel, для эффективного выполнения выводов на CPU . Модели Ultralytics поддерживают экспорт в различные форматы, подходящие для развертывания на CPU , подробнее об этом читай в нашей документации по экспорту моделей.
- Управление моделями: Задачи, связанные с развертыванием и обслуживанием моделей, часто выполняются в основном на центральных процессорах.
CPU против GPU и TPU
Главное отличие заключается в архитектуре и целях оптимизации.
- Процессоры: Оптимизированы для выполнения разнообразных, часто последовательных задач с низкой задержкой. Они имеют несколько мощных ядер. Думай о них как об универсальных менеджерах, быстро справляющихся с разными видами заданий - одним за другим или несколькими одновременно. Основные производители CPU , такие как Intel и AMD, постоянно улучшают производительность и эффективность ядер.
- Графические процессоры: Оптимизированы для высокопроизводительных, массивно-параллельных вычислений, в частности для матричных и векторных операций, распространенных в Deep Learning. Они имеют тысячи более простых ядер. Идеально подходят для обучения больших моделей и высокопроизводительных выводов.
- TPU: Пользовательское оборудованиеGoogle, специально разработанное для ускорения ML-нагрузок, особенно тех, которые построены с использованием TensorFlow. Они обеспечивают высокую производительность и эффективность для определенных типов вычислений нейронных сетей.
Хотя обучение больших моделей глубокого обучения, таких как YOLOv10, происходит значительно быстрее на GPU или TPU, центральные процессоры незаменимы для работы системы в целом и конкретных задач в рамках жизненного цикла ML. Понимание роли CPU помогает оптимизировать целые системы ИИ, начиная с подготовки данных и заканчивая развертыванием на различных платформах, в том числе на граничных устройствах с ограниченными ресурсами, таких как Raspberry Pi.
Примеры реального мира ИИ/МЛ с использованием CPU
- Предварительная обработка естественного языка (NLP): Токенизация текста, стемминг/лемматизация и создание словарных списков для NLP-моделей - эти задачи часто требуют CPU из-за их последовательной природы и зависимости от сложных операций со строками и поиска. Такие инструменты, как токенизаторыHugging Face, часто используют эффективность CPU на этих этапах.
- Обнаружение аномалий в системных журналах: Анализ последовательностей системных событий или журналов с целью обнаружения необычных закономерностей часто предполагает использование систем, основанных на правилах, или более простых ML-моделей (например, SVM или Random Forest), которые могут эффективно работать на процессорах для мониторинга в реальном времени, не требуя специализированного оборудования. Это очень важно для наблюдаемости системы.