Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Разработка признаков

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

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

Основные методы разработки характеристик

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

  • Импутация и очистка: Прежде чем создавать новые признаки, данные необходимо стабилизировать. Это включает обработку отсутствующих значений с помощью методы очистки данных, такие как заполнение пробелов с помощью средним значением, медианой или прогнозируемым значением - процесс, известный как импутация.
  • Трансформация и масштабирование: Многие алгоритмы плохо работают, когда входные переменные имеют сильно разные масштабы. Для этого используются такие методы, как нормализация (масштабирование данных в диапазоне от 0 до 1) или стандартизация (центрирование данных вокруг среднего значения), гарантируют, что ни один признак не будет доминировать в процессе обучения только благодаря своей величине.
  • Кодирование категориальных данных: Модели обычно требуют числовых данных. Разработка характеристик включает в себя преобразование текстовых меток или категориальных данных в числа. Распространенные методы включают кодирование меток и одноточечное кодирование, которое создает двоичные столбцы для каждой категории.
  • Построение характеристик: Это творческий аспект, в ходе которого выводятся новые переменные. Например, в наборе данных по недвижимости, вместо того чтобы использовать отдельно "длину" и "ширину", инженер может перемножить их, чтобы создать характеристику "площадь", которая сильнее коррелирует с ценой.
  • Выбор функций: Добавление слишком большого количества признаков может привести к чрезмерной подгонке, когда модель запоминает шум. Такие методы, как рекурсивное исключение признаков или снижение размерности, помогают определить и сохранить только наиболее значимые признаки.

Инженерия характеристик в компьютерном зрении

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

Следующий фрагмент кода демонстрирует, как применить инженерию признаков на основе дополнения в процессе обучения YOLO11 модель. Настроив такие аргументы, как degrees и shearМы синтезируем новые варианты признаков из исходного набора данных.

from ultralytics import YOLO

# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")

# Train with augmentation hyperparameters acting as on-the-fly feature engineering
# 'degrees' rotates images +/- 10 deg, 'shear' changes perspective
model.train(data="coco8.yaml", epochs=3, degrees=10.0, shear=2.5)

Применение в реальном мире

Ценность функциональной инженерии лучше всего понять через ее практическое применение в различных отраслях.

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

Отличие от смежных терминов

Чтобы избежать путаницы при обсуждении рабочего процесса, полезно отличать разработку функций от схожих понятий.

  • Feature Engineering vs. Feature Extraction: Хотя эти понятия часто используются как взаимозаменяемые, есть один нюанс. Инжиниринг характеристик подразумевает ручной творческий процесс создания новых исходных данных на основе знаний о домене. В отличие от этого, извлечение признаков часто относится к автоматизированным методы или математические проекции (например, PCA), которые преобразуют высокоразмерные данные в плотное представление. В глубоком обучении (ГОО), слои в Конволюционные нейронные сети (КНС) выполняют автоматическое извлечение признаков, обучаясь фильтрам для краев и текстур.
  • Инженерия признаков в сравнении с вкраплениями: В современной обработке естественного языка (NLP) ручное создание признаков (например, подсчет частоты слов) было в значительной степени вытеснено эмбеддинги. Эмбеддинги - это плотные векторные плотные векторные представления, изучаемые самой моделью для передачи семантического значения. Хотя вкрапления - это одна из форм признаков, они изучаются с помощью автоматизированного машинного обучения (AutoML) , а не создаются вручную.

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

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас