Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Feature Engineering

Tăng độ chính xác của machine learning bằng feature engineering chuyên nghiệp. Tìm hiểu các kỹ thuật tạo, chuyển đổi và chọn các feature (đặc trưng) có tác động.

Kỹ thuật tính năng là nghệ thuật và khoa học tận dụng kiến thức chuyên ngành để chuyển đổi dữ liệu thô thành các thuộc tính thông tin, biểu diễn vấn đề cơ bản một cách hiệu quả hơn cho các mô hình dự đoán. Trong phạm vi rộng hơn của học máy (ML) , dữ liệu thô hiếm khi sẵn sàng để xử lý ngay lập tức; nó thường chứa nhiễu, giá trị bị thiếu hoặc các định dạng mà thuật toán không thể diễn giải trực tiếp. Bằng cách tạo ra các tính năng mới hoặc sửa đổi các tính năng hiện có, các kỹ sư có thể cải thiện đáng kể độ chính xác và hiệu suất của mô hình , thường mang lại kết quả tốt hơn so với việc chỉ chuyển sang một thuật toán phức tạp hơn. Quá trình này thu hẹp khoảng cách giữa thông tin thô được thu thập và biểu diễn toán học cần thiết cho mô hình dự đoán .

Các kỹ thuật cốt lõi trong kỹ thuật tính năng

Quá trình này thường bao gồm một số bước lặp đi lặp lại được thiết kế để phơi bày các tín hiệu có liên quan nhất trong dữ liệu. Trong khi các công cụ như thư viện Pandas trong Python Để tạo điều kiện cho những thao tác này, chiến lược này phụ thuộc rất nhiều vào việc hiểu rõ phạm vi vấn đề cụ thể.

  • Quy nạp và Làm sạch: Trước khi tạo các tính năng mới, dữ liệu phải được ổn định. Điều này bao gồm việc xử lý các giá trị bị thiếu thông qua các kỹ thuật làm sạch dữ liệu , chẳng hạn như lấp đầy khoảng trống bằng giá trị trung bình, trung vị hoặc giá trị dự đoán - một quá trình được gọi là quy nạp .
  • Biến đổi và Điều chỉnh tỷ lệ: Nhiều thuật toán hoạt động kém hiệu quả khi các biến đầu vào có tỷ lệ quá khác biệt. Các kỹ thuật như chuẩn hóa (điều chỉnh dữ liệu trong phạm vi từ 0 đến 1) hoặc chuẩn hóa (tập trung dữ liệu quanh giá trị trung bình) đảm bảo rằng không có đặc điểm nào chi phối quá trình học chỉ vì độ lớn của nó.
  • Mã hóa dữ liệu phân loại: Các mô hình thường yêu cầu dữ liệu đầu vào dạng số. Kỹ thuật đặc trưng liên quan đến việc chuyển đổi nhãn văn bản hoặc dữ liệu phân loại thành số. Các phương pháp phổ biến bao gồm mã hóa nhãn và mã hóa one-hot , tạo ra các cột nhị phân cho mỗi phân loại.
  • Xây dựng Đặc điểm: Đây là khía cạnh sáng tạo, nơi các biến mới được tạo ra. Ví dụ, trong một tập dữ liệu bất động sản, thay vì sử dụng "chiều dài" và "chiều rộng" riêng biệt, một kỹ sư có thể nhân chúng lại để tạo ra một đặc điểm "tính theo diện tích vuông", có mối tương quan chặt chẽ hơn với giá cả.
  • Lựa chọn tính năng: Việc thêm quá nhiều tính năng có thể dẫn đến hiện tượng quá khớp , khi mô hình ghi nhớ nhiễu. Các kỹ thuật như loại bỏ tính năng đệ quy hoặc giảm chiều giúp xác định và chỉ giữ lại các thuộc tính có tác động lớn nhất.

Kỹ thuật tính năng trong thị giác máy tính

Trong lĩnh vực thị giác máy tính (CV) , kỹ thuật đặc trưng thường được thực hiện dưới dạng tăng cường dữ liệu . Trong khi các mô hình học sâu hiện đại tự động học phân cấp và mẫu, chúng ta có thể "thiết kế" dữ liệu huấn luyện để mạnh mẽ hơn bằng cách mô phỏng các điều kiện môi trường khác nhau. Việc điều chỉnh cấu hình điều chỉnh siêu tham số để bao gồm các phép biến đổi hình học cho phép mô hình học các đặc trưng bất biến theo hướng hoặc góc nhìn.

Đoạn mã sau đây minh họa cách áp dụng kỹ thuật tính năng dựa trên tăng cường trong quá trình đào tạo YOLO11 mô hình. Bằng cách điều chỉnh các đối số như degreesshear, chúng tôi tổng hợp các biến thể tính năng mới từ tập dữ liệu gốc.

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)

Các Ứng dụng Thực tế

Giá trị của kỹ thuật tính năng được hiểu rõ nhất thông qua ứng dụng thực tế của nó trong nhiều ngành công nghiệp khác nhau.

  1. Đánh giá Rủi ro Tài chính: Trong lĩnh vực tài chính, nhật ký giao dịch thô không đủ để đánh giá khả năng tín dụng. Các chuyên gia sử dụng AI trong tài chính để xây dựng các tỷ lệ như "nợ trên thu nhập" hoặc "tỷ lệ sử dụng tín dụng". Các tính năng được thiết kế này cung cấp tín hiệu trực tiếp về sức khỏe tài chính, cho phép mô hình hóa rủi ro tín dụng chính xác hơn so với việc chỉ sử dụng số liệu lương thô hoặc số liệu nợ riêng lẻ.
  2. Bảo trì Dự đoán trong Sản xuất: Trong AI trong sản xuất , các cảm biến thu thập dữ liệu tần số cao về độ rung và nhiệt độ. Việc đưa dữ liệu cảm biến thô trực tiếp vào mô hình thường gây nhiễu và không hiệu quả. Thay vào đó, các kỹ sư sử dụng phân tích chuỗi thời gian để tạo ra các tính năng như "nhiệt độ trung bình dao động trong giờ qua" hoặc "độ lệch chuẩn độ rung". Các tính năng tổng hợp này nắm bắt xu hướng và các bất thường biểu thị độ mòn máy tốt hơn nhiều so với các giá trị tức thời.

Phân biệt với các thuật ngữ liên quan

Việc phân biệt kỹ thuật tính năng với các khái niệm tương tự sẽ rất hữu ích để tránh nhầm lẫn trong các cuộc thảo luận về quy trình làm việc.

  • Kỹ thuật tính năng so với Trích xuất tính năng: Mặc dù thường được sử dụng thay thế cho nhau, nhưng vẫn có một sắc thái riêng. Kỹ thuật tính năng ngụ ý một quy trình thủ công, sáng tạo để xây dựng các đầu vào mới dựa trên kiến thức chuyên môn . Ngược lại, trích xuất tính năng thường đề cập đến các phương pháp tự động hoặc phép chiếu toán học (như PCA) để chắt lọc dữ liệu đa chiều thành một biểu diễn dày đặc. Trong học sâu (DL) , các lớp trong Mạng nơ-ron tích chập (CNN) thực hiện trích xuất tính năng tự động bằng cách học các bộ lọc cho các cạnh và kết cấu.
  • Kỹ thuật tính năng so với nhúng: Trong xử lý ngôn ngữ tự nhiên (NLP) hiện đại, việc tạo tính năng thủ công (như đếm tần suất từ) phần lớn đã được thay thế bằng nhúng . Nhúng là các biểu diễn vector dày đặc được chính mô hình học để nắm bắt ý nghĩa ngữ nghĩa. Mặc dù nhúng là một dạng tính năng, nhưng chúng được học thông qua các quy trình học máy tự động (AutoML) thay vì được "thiết kế" thủ công một cách rõ ràng.

Bằng cách nắm vững kỹ thuật thiết kế tính năng, các nhà phát triển có thể xây dựng các mô hình không chỉ chính xác hơn mà còn hiệu quả hơn, đòi hỏi ít sức mạnh tính toán hơn để đạt được hiệu suất cao.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay