피처 엔지니어링은 머신 러닝(ML)에서 중요한 프로세스로, 원시 데이터를 ML 모델의 성능을 향상시키는 형식으로 변환하는 작업을 포함합니다. 피처 엔지니어링은 이러한 모델의 입력으로 사용되는 변수를 선택, 생성, 변환하는 예술이자 과학입니다. 목표는 데이터의 필수 정보를 포착하는 피처를 생성하여 모델이 패턴을 더 쉽게 학습하고 정확한 예측을 할 수 있도록 하는 것입니다. 효과적인 피처 엔지니어링은 학습 데이터에서 보이지 않는 데이터로 일반화하는 모델의 능력을 크게 향상시켜 궁극적으로 정확성과 효율성을 향상시킬 수 있습니다.
피처 엔지니어링은 피처의 품질과 관련성이 머신 러닝 모델의 성능에 직접적인 영향을 미치기 때문에 매우 중요합니다. 잘 설계된 피처는 데이터의 기본 구조를 단순화하여 모델이 패턴과 관계를 더 쉽게 식별할 수 있게 해줍니다. 이를 통해 더 정확한 예측, 더 빠른 학습 시간, 모델의 복잡성 감소로 이어질 수 있습니다. 많은 경우, 올바른 기능은 저조한 성능을 보이는 모델과 최첨단 결과를 도출하는 모델의 차이를 만들 수 있습니다. 이는 원시 픽셀 데이터가 직접적인 정보를 제공하지 않을 수 있는 물체 감지와 같은 복잡한 작업에서 특히 중요합니다.
피처 엔지니어링에는 일반적으로 몇 가지 기술이 사용됩니다:
특징 엔지니어링과 특징 추출 모두 특징 작업을 통해 모델 성능을 개선하는 것을 목표로 하지만, 접근 방식은 다릅니다. 특징 추출은 주로 알고리즘을 사용하여 원시 데이터에서 새로운 특징을 자동으로 생성하는 작업을 포함합니다. 예를 들어, 이미지 처리에서 CNN(컨볼루션 신경망) 은 이미지에서 가장자리나 텍스처를 추출하는 방법을 학습할 수 있습니다. 반면 피처 엔지니어링은 일반적으로 도메인 지식과 데이터에 대한 이해를 바탕으로 피처를 수동으로 생성하거나 변형하는 작업을 포함합니다.
다음은 실제 AI/ML 애플리케이션의 기능 엔지니어링에 대한 두 가지 예시입니다:
Ultralytics 는 피처 엔지니어링의 이점을 활용하는 작업을 포함하여 컴퓨터 비전 작업을 위한 강력한 도구와 리소스를 제공합니다. 예를 들어, Ultralytics YOLO 객체 감지 모델은 이미지 데이터의 특징을 세심하게 엔지니어링하여 향상시킬 수 있습니다. 사용자는 상호작용 기능을 만들거나 누락된 값을 처리하는 등의 기술을 사용하여 모델의 정확성과 효율성을 향상시킬 수 있습니다. 또한 Ultralytics 에서는 사용자 친화적인 플랫폼인 Ultralytics HUB를 제공하여 모델을 훈련하고 배포하는 과정을 간소화하여 다양한 피처 엔지니어링 접근 방식을 쉽게 실험할 수 있습니다. 최신 발전된Ultralytics YOLO 모델에서 피처 엔지니어링이 최첨단 컴퓨터 비전 프로젝트에 어떻게 적용될 수 있는지 알아보세요.
피처 엔지니어링 및 관련 개념에 대해 자세히 알아보려면 피처 엔지니어링에 대한 Wikipedia 페이지와 데이터 전처리에 대한 scikit-learn 문서와 같은 리소스를 살펴보세요.