Embeddings
اكتشف كيف تسد التمثيلات المتجهية (embeddings) الفجوة بين بيانات الإنسان ومنطق الآلة. تعلم إنشاء تمثيلات متجهية لمهام الذكاء الاصطناعي باستخدام Ultralytics YOLO26 واستكشف منصة Ultralytics.
التضمينات (Embeddings) هي تمثيلات متجهة كثيفة ومنخفضة الأبعاد ومستمرة للمتغيرات المنفصلة، وتعمل كمترجم أساسي بين البيانات البشرية ومنطق الآلة. في مجال Artificial Intelligence (AI)، لا تستطيع الحواسيب فهم unstructured data العشوائية وغير المستنبطة مثل النصوص أو الصور أو الصوت بشكل بديهي. تحل التضمينات هذه المشكلة عن طريق تحويل هذه المدخلات إلى قوائم من الأعداد الحقيقية، والمعروفة باسم المتجهات، والتي توجد في مساحة رياضية عالية الأبعاد. على عكس الترميزات التقليدية التي قد تخصص عشوائياً معرفاً (ID) لكائن ما، يتم تعلم التضمينات من خلال التدريب، مما يضمن تقارب العناصر المتشابهة دلالياً - مثل كلمتي "king" و"queen"، أو صور قطتين مختلفتين - بشكل وثيق داخل vector space.
كيف تعمل التضمينات#
يتضمن إنشاء التضمين إدخال بيانات خام في neural network مصممة لـ feature extraction. وأثناء التدريب، يتعلم النموذج ضغط الخصائص الأساسية للمدخلات في شكل عددي مدمج. على سبيل المثال، نموذج Computer Vision (CV) الذي يقوم بتحليل صورة فوتوغرافية لا يرى البكسلات فحسب؛ بل يعين الأشكال والقوام والألوان في إحداثي معين داخل رسم بياني متعدد الأبعاد. عند قياس التشابه، تحسب الأنظمة المسافة بين هذه الإحداثيات باستخدام مقاييس مثل cosine similarity أو Euclidean distance. يتيح هذا التقارب الرياضي للخوارزميات أداء مهام معقدة مثل التصنيف والتجميع بكفاءة عالية.
تطبيقات العالم الحقيقي#
تعمل التضمينات كمحرك للعديد من الميزات الذكية المستخدمة في منتجات البرمجيات الحديثة.
- Semantic Search: غالباً ما تعتمد محركات البحث التقليدية على keyword matching الدقيق، وهو ما يفشل إذا قام المستخدم بالبحث بكلمة "auto" بينما يحتوي المستند على كلمة "car". تلتقط التضمينات المعنى الكامن وراء الكلمات. من خلال تمثيل استعلام البحث ومستندات قاعدة البيانات كمتجهات، يمكن للنظام استرجاع النتائج التي تتوافق مع نية المستخدم، حتى لو كانت الكلمات المحددة مختلفة.
- Recommendation Systems: تستخدم خدمات البث ومواقع التجارة الإلكترونية التضمينات لتخصيص تجارب المستخدمين. إذا شاهد المستخدم فيلماً خيالياً علمياً، يحدد النظام متجه تضمين هذا الفيلم ويبحث عن أفلام أخرى ذات متجهات قريبة في قاعدة البيانات. يتيح ذلك تقديم اقتراحات دقيقة بناءً على تشابه المحتوى بدلاً من الاعتماد فقط على العلامات أو الفئات اليدوية.
- Zero-Shot Learning: تستخدم النماذج المتقدمة التضمينات المشتركة لربط الوسائط المختلفة، مثل النصوص والصور. يتيح ذلك للنظام التعرف على كائنات لم يسبق له رؤيتها بشكل صريح أثناء التدريب من خلال ربط تضمين الصورة بتضمين النص الخاص باسم الكائن.
إنشاء التضمينات باستخدام Python#
State-of-the-art models like YOLO26 can be used to generate robust image embeddings efficiently. The following example demonstrates how to extract a feature vector from an image using the ultralytics Python package.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embeddings for an image
# The embed() method returns the feature vector representing the image content
embedding_vector = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the embedding (e.g., a vector of length 1280)
print(f"Embedding shape: {embedding_vector[0].shape}")التضمينات مقابل المفاهيم ذات الصلة#
لتنفيذ حلول الذكاء الاصطناعي بفعالية، من المفيد التمييز بين التضمينات والمصطلحات التقنية ذات الصلة الوثيقة.
- Embeddings vs. Vector Search: التضمين هو تمثيل البيانات بحد ذاته (قائمة الأعداد). أما البحث المتجه (Vector Search) فهو العملية اللاحقة للاستعلام عن قاعدة بيانات للعثور على أقرب الجيران لذلك التضمين. غالباً ما تُستخدم أدوات متخصصة تُعرف باسم vector database لتخزين هذه التضمينات والبحث فيها على نطاق واسع.
- Embeddings vs. Tokenization: في Natural Language Processing (NLP)، يعد الترميز (Tokenization) الخطوة الأولية لتقسيم النص إلى أجزاء أصغر (رموز أو tokens). يتم بعد ذلك تعيين هذه الرموز إلى تضمينات. لذلك، يُعد الترميز تجهيزاً للبيانات، بينما تمثل التضمينات معنى البيانات.
- Embeddings vs. Deep Learning: التعلم العميق هو المجال الأوسع للتعلم الآلي القائم على الشبكات العصبية. أما التضمينات فهي مخرجات أو طبقة محددة داخل هيكل التعلم العميق، وغالباً ما تعمل كجسور بين المدخلات الخام وطبقات اتخاذ القرار في النموذج.
Developers looking to manage the lifecycle of their datasets, including annotation and model training for generating custom embeddings, can utilize the Ultralytics Platform. This comprehensive tool simplifies the workflow from data management to deployment, ensuring that the embeddings powering your applications are derived from high-quality, well-curated data. Whether using frameworks like PyTorch or TensorFlow, mastering embeddings is a crucial step in building sophisticated pattern recognition systems.






