هي عملية تحويل البيانات الخام إلى ميزات أكثر صلة وإفادة لنماذج التعلم الآلي. تتضمن الخطوات الرئيسية لهندسة المميزات ما يلي:
استخراج المميزات:
- استخراج المميزات ذات الصلة من البيانات الخام.
- يمكن إجراء ذلك باستخدام تقنيات مثل التحليل الإحصائي والتجميع.
اختيار المميزات:
- تحديد المميزات التي لها أكبر تأثير على الهدف.
- يمكن استخدام أساليب مثل اختبار فرضية t واختيار المميزات المتكررة.
تخفيض الأبعاد:
- تقليل عدد المميزات دون فقد الكثير من المعلومات.
- يمكن استخدام تقنيات مثل تحليل المكونات الرئيسية (PCA) والتحليل التمييزي الخطي (LDA).
تحليل المكونات الرئيسية (PCA):
- تقنية تخفيض الأبعاد التي تحدد المميزات المتجهات الذاتية التي تفسر أكبر قدر من التباين في البيانات.
- يحافظ على أقصى قدر من التباين في البيانات مع تقليل عدد المميزات.
الخطوات العملية لهندسة المميزات
- فهم البيانات: تحديد نوع البيانات ومصدرها وهدف نموذج التعلم الآلي.
- استخراج المميزات: استخدام تقنيات مختلفة لاستخراج المميزات ذات الصلة من البيانات.
- اختيار المميزات: تحديد المميزات التي لها أكبر تأثير على الهدف.
- تخفيض الأبعاد: تقليل عدد المميزات إذا لزم الأمر باستخدام تقنيات مثل PCA.
- إنشاء ميزات جديدة: يمكن إنشاء ميزات جديدة عن طريق تحويل أو دمج الميزات الحالية.
مثال باستخدام بايثون:
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
# تحميل البيانات الخام
df = pd.read_csv('raw_data.csv')
# تطبيع البيانات
scaler = StandardScaler()
df_scaled = scaler.fit_transform(df)
# تطبيق PCA
pca = PCA(n_components=2)
df_pca = pca.fit_transform(df_scaled)