Cosine Similarity
تعلم كيف يقيس تشابه جيب التمام (cosine similarity) تشابه المتجهات في الذكاء الاصطناعي. احسب التضمينات البصرية مع Ultralytics YOLO26 ووسع نطاقها مع منصة Ultralytics.
تشابه جيب التمام هو مقياس رياضي أساسي يُستخدم في تعلم الآلة (ML) والذكاء الاصطناعي (AI) لقياس مدى تشابه مصفوفات متعددة الأبعاد أو متجهين، بغض النظر عن حجمهما أو مقدارهما. من خلال حساب الزاوية بين نقطتين في فضاء المتجهات، فإنه يحدد ما إذا كانت تشير تقريباً في نفس الاتجاه. يُعد هذا النهج الزاوي حاسماً لمعالجة البيانات حيث يكون الاتجاه أكثر أهمية من الطول الإجمالي، مما يجعله فعالاً للغاية لمقارنة تمثيلات البيانات المجردة مثل التضمينات.
Link to this sectionفهم الرياضيات الكامنة وراء هذا المقياس#
لحساب هذا المقياس، تقوم بحساب الضرب النقطي لمتجهين وقسمته على حاصل ضرب مقاديرهما (أطوالهما) الفردية. تقع النتيجة دائماً ضمن نطاق ثابت من -1 إلى 1:
- درجة 1 تعني أن المتجهات تشير في نفس الاتجاه تماماً، مما يشير إلى أقصى درجات التشابه.
- درجة 0 تعني أن المتجهات متعامدة تماماً (بزاوية 90 درجة)، مما يعني عدم وجود تشابه اتجاهي.
- درجة -1 تعني أنها تشير في اتجاهات متقابلة تماماً.
في العديد من أطر التعلم العميق الحديثة المصممة لـ رؤية الحاسوب (CV)، يمكنك الوصول بسهولة إلى وظائف محسّنة لهذه العملية الرياضية، مثل وحدة PyTorch الوظيفية أو مقاييس TensorFlow.
Link to this sectionالتمييز بين المفاهيم ذات الصلة#
من المفيد التمييز بين تشابه جيب التمام ومقاييس تحليل البيانات الأخرى المستخدمة بكثرة لفهم متى يجب استخدامه:
- مسافة جيب التمام: على الرغم من ارتباطها الوثيق، فإن هذه المصطلحات تتناسب عكسياً. تُحسب مسافة جيب التمام ببساطة على أنها 1 ناقص تشابه جيب التمام. ولذلك، تشير المسافة الأصغر إلى تشابه أعلى بين المتجهات.
- المسافة الإقليدية: يقيس هذا المقياس المسافة المادية في خط مستقيم بين نقطتين، مما يجعله حساساً للغاية للحجم الإجمالي أو مقدار المتجهات. في المقابل، يهتم تشابه جيب التمام بالزاوية فقط. على سبيل المثال، في تحليل النصوص، قد يكون لمستند طويل وجملة قصيرة مسافة إقليدية كبيرة، ولكن إذا كانا يتناولان نفس الموضوع، فسيظل تشابه جيب التمام بينهما مرتفعاً.
Link to this sectionتطبيقات العالم الحقيقي في الذكاء الاصطناعي#
يعمل تشابه جيب التمام كمحرك أساسي للعديد من البرمجيات الحديثة، مما يسد الفجوة بين البيانات الخام والمقصد البشري.
- البحث بالمتجهات وRAG: في تطبيقات معالجة اللغات الطبيعية (NLP) مثل روبوتات الدردشة، يتم تحويل استعلامات المستخدم والمستندات الداخلية إلى تضمينات كثيفة. يقوم النظام بحساب تشابه جيب التمام بسرعة لاسترداد المستندات الأكثر صلة بالسياق من قاعدة بيانات المتجهات، وهي خطوة حاسمة في التوليد المعزز بالاسترجاع (RAG).
- أنظمة التوصية: تستخدم خدمات التجارة الإلكترونية والبث أدوات مثل Scikit-learn وSciPy لتمثيل تفضيلات المستخدم وعناصر الكتالوج كمتجهات. من خلال قياس درجة التشابه بين ملف تعريف المتسوق والمنتجات المختلفة، يمكن للأنظمة التوصية بدقة بعناصر ذات صلة بصرياً أو موضوعياً.
Link to this sectionقياس التشابه البصري باستخدام Ultralytics#
يمكنك استخراج متجهات ميزات عالية الأبعاد مباشرة من البيانات البصرية باستخدام أحدث نماذج الرؤية. يوضح كود Python التالي كيفية تحميل نموذج Ultralytics YOLO26 لـ تصنيف الصور، وإنشاء تضمينات لصورتين، وإجراء حساب تشابه جيب التمام لقياس التشابه البصري بينهما.
import torch
import torch.nn.functional as F
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embedding vectors for two separate images
results = model.embed(["bus.jpg", "car.jpg"])
# Calculate the cosine similarity between the two visual embeddings
similarity = F.cosine_similarity(torch.tensor(results[0]), torch.tensor(results[1]), dim=0)
print(f"Visual Similarity Score: {similarity.item():.4f}")بالنسبة للمطورين الذين يهدفون إلى توسيع نطاق قدرات البحث الدلالي هذه، فإن تدريب نماذج أساسية عالية الدقة يعد أمراً بالغ الأهمية. تعمل منصة Ultralytics على تبسيط هذا المسار من خلال تقديم أدوات قوية لـ توسيم البيانات، والتدريب السحابي القابل للتطوير، ونشر النماذج السلس، مما يضمن أن تكون التضمينات الأساسية دقيقة وذات مغزى قدر الإمكان.






