Feature Engineering
استكشف هندسة السمات لتعزيز أداء النموذج. تعرّف على تقنيات مثل التحجيم وزيادة البيانات لتحسين Ultralytics YOLO26 وتحقيق دقة أعلى.
هندسة السمات هي عملية تحويل البيانات الخام إلى مدخلات ذات معنى تحسّن أداء نماذج تعلّم الآلة. وتتضمن الاستفادة من المعرفة بالمجال لاختيار متغيرات جديدة أو تعديلها أو إنشائها—تُعرف باسم السمات—لمساعدة الخوارزميات على فهم الأنماط الموجودة في البيانات بصورة أفضل. وعلى الرغم من قدرة بنى التعلّم العميق الحديثة، مثل الشبكات العصبية الالتفافية (CNNs)، على تعلّم السمات تلقائيًا، تظل هندسة السمات الصريحة خطوة بالغة الأهمية في العديد من سير العمل، لا سيما عند التعامل مع البيانات المهيكلة أو محاولة تحسين كفاءة النماذج على الأجهزة الطرفية. ومن خلال تحسين بيانات الإدخال، يستطيع المطورون غالبًا تحقيق دقة أعلى باستخدام نماذج أبسط، مما يقلل الحاجة إلى موارد حوسبة ضخمة.
دور هندسة السمات في الذكاء الاصطناعي#
في سياق الذكاء الاصطناعي (AI)، نادرًا ما تكون البيانات الخام جاهزة للمعالجة الفورية. فقد تحتاج الصور إلى تغيير الحجم، وقد يتطلب النص تقسيمه إلى رموز، وغالبًا ما تحتوي البيانات الجدولية على قيم مفقودة أو أعمدة غير ذات صلة. وتسُدّ هندسة السمات الفجوة بين المعلومات الخام والتمثيلات الرياضية التي تتطلبها الخوارزميات. ويمكن للهندسة الفعّالة إبراز العلاقات المهمة التي قد يفوتها النموذج بخلاف ذلك، مثل الجمع بين «المسافة» و«الوقت» لإنشاء سمة «السرعة». وترتبط هذه العملية ارتباطًا وثيقًا بـالمعالجة المسبقة للبيانات، إلا أن المعالجة المسبقة تركز على التنظيف والتنسيق، بينما تدور هندسة السمات حول التحسين الإبداعي لتعزيز القدرة التنبؤية.
تطورت هندسة السمات بصورة كبيرة في مهام الرؤية الحاسوبية. فقد تضمنت الأساليب التقليدية إنشاء واصفات يدويًا، مثل تحويل السمات الثابتة بالنسبة إلى المقياس (SIFT)، لتحديد الحواف والزوايا. أما اليوم، فتُجري نماذج التعلّم العميق، مثل YOLO26، استخراجًا آليًا للسمات داخل طبقاتها المخفية. ومع ذلك، لا تزال الهندسة تؤدي دورًا حيويًا في إعداد مجموعات البيانات، مثل إنشاء البيانات الاصطناعية أو تطبيق تقنيات زيادة البيانات، مثل الفسيفساء والخلط، لتعريض النماذج لتنوعات أكثر متانة من السمات أثناء التدريب.
التقنيات والتطبيقات الشائعة#
تشمل هندسة السمات مجموعة واسعة من الاستراتيجيات المصممة خصيصًا للمشكلة ونوع البيانات المحددين.
- تقليل الأبعاد: تقلل تقنيات مثل تحليل المكونات الرئيسية (PCA) عدد المتغيرات مع الاحتفاظ بالمعلومات الأساسية، مما يمنع فرط التكيّف في مجموعات البيانات عالية الأبعاد.
- ترميز المتغيرات الفئوية: تتطلب الخوارزميات عادةً مدخلات رقمية. وتحول أساليب مثل الترميز أحادي التفعيل التسميات الفئوية، مثل «أحمر» و«أزرق»، إلى متجهات ثنائية يمكن للنماذج معالجتها.
- التطبيع والتحجيم: يضمن تحجيم السمات إلى نطاق قياسي ألا تهيمن المتغيرات ذات القيم الأكبر، مثل أسعار المنازل، على المتغيرات ذات النطاقات الأصغر، مثل عدد الغرف، وهو أمر بالغ الأهمية للتحسين القائم على التدرج في الشبكات العصبية.
- التجميع والتقطيع إلى فئات: يمكن أن يساعد تجميع القيم المستمرة في فئات، مثل الفئات العمرية، النماذجَ على التعامل مع القيم الشاذة بفاعلية أكبر والتقاط العلاقات غير الخطية.
أمثلة من العالم الواقعي#
تُطبَّق هندسة السمات في مختلف الصناعات لحل المشكلات المعقدة.
-
الصيانة التنبؤية في التصنيع: في التصنيع الذكي، تجمع المستشعرات بيانات الاهتزاز ودرجة الحرارة الخام من الآلات. وقد ينشئ المهندسون سمات تمثل «معدل التغير» في درجة الحرارة أو «المتوسط المتحرك» لشدة الاهتزاز. وتتيح هذه السمات المُهندسة لنماذج اكتشاف الحالات الشاذة التنبؤ بتعطل المعدات قبل حدوثه بأيام، بدلًا من مجرد الاستجابة لقراءات المستشعرات الحالية.
-
تقييم مخاطر الائتمان: تستخدم المؤسسات المالية هندسة السمات لتقييم أهلية الحصول على القروض. فبدلًا من النظر فقط إلى قيمة «الدخل» الخام، قد تنشئ سمة «نسبة الدين إلى الدخل» أو «نسبة استخدام الائتمان». وتوفر هذه السمات المشتقة رؤية أكثر دقة للوضع المالي للمقترض، مما يتيح إجراء تصنيف المخاطر بصورة أكثر دقة.
مثال على التعليمات البرمجية: زيادة مخصصة للسمات#
في الرؤية الحاسوبية، يمكننا «هندسة» السمات من خلال زيادة الصور لمحاكاة ظروف بيئية مختلفة. ويساعد ذلك نماذج مثل YOLO26 على التعميم بصورة أفضل. يوضح المثال التالي كيفية تطبيق تحويل بسيط إلى التدرج الرمادي باستخدام أدوات ultralytics، مما يجبر النموذج على تعلّم السمات البنيوية بدلًا من الاعتماد على الألوان وحدها.
import cv2
from ultralytics.data.augment import Albumentations
# Load an example image using OpenCV
img = cv2.imread("path/to/image.jpg")
# Define a transformation pipeline to engineer new visual features
# Here, we convert images to grayscale with a 50% probability
transform = Albumentations(p=1.0)
transform.transform = A.Compose([A.ToGray(p=0.5)])
# Apply the transformation to create a new input variation
augmented_img = transform(img)
# This process helps models focus on edges and shapes, improving robustnessالتمييز عن المصطلحات ذات الصلة#
من المفيد التمييز بين هندسة السمات والمفاهيم المشابهة لتجنب الالتباس في مناقشات سير العمل.
- هندسة السمات مقابل استخراج السمات: على الرغم من استخدام المصطلحين غالبًا بالتبادل، توجد بينهما دلالة دقيقة. تشير هندسة السمات إلى عملية يدوية وإبداعية لإنشاء مدخلات جديدة استنادًا إلى المعرفة بالمجال. وفي المقابل، يشير استخراج السمات غالبًا إلى أساليب آلية أو إسقاطات رياضية، مثل PCA، تختزل البيانات عالية الأبعاد إلى تمثيل كثيف. وفي التعلّم العميق (DL)، تُجري طبقات الشبكات العصبية الالتفافية (CNNs) استخراجًا آليًا للسمات من خلال تعلّم مرشحات للحواف والأنسجة.
- هندسة السمات مقابل التضمينات: في معالجة اللغة الطبيعية (NLP) الحديثة، استُبدل إنشاء السمات يدويًا، مثل حساب تكرار الكلمات، إلى حد كبير بـالتضمينات. والتضمينات هي تمثيلات متجهية كثيفة يتعلمها النموذج نفسه لالتقاط المعنى الدلالي. وعلى الرغم من أن التضمينات تُعد شكلًا من أشكال السمات، فإنها تُتعلَّم من خلال عمليات تعلّم الآلة الآلي (AutoML)، بدلًا من «هندستها» يدويًا بصورة صريحة.
من خلال إتقان هندسة السمات، يستطيع المطورون بناء نماذج ليست أدق فحسب، بل أكثر كفاءة أيضًا، إذ تتطلب قدرة حوسبية أقل لتحقيق أداء عالٍ. وتسهّل أدوات مثل منصة Ultralytics ذلك من خلال توفير واجهات استخدام بديهية لإدارة مجموعات البيانات وتدريب النماذج، مما يتيح للمستخدمين تكرار استراتيجيات السمات وتحسينها بسرعة.









