اكتشف قوة التعلم بلقطة واحدة، وهي تقنية ذكاء اصطناعي ثورية تمكن النماذج من التعميم من الحد الأدنى من البيانات للتطبيقات الواقعية.
التعلّم من لقطة واحدة (OSL) هو نهج متطور داخل التعلم الآلي (ML) حيث يتم تصميم نموذج للتعرف على الكائنات الجديدة وتصنيفها في ضوء مثال واحد فقط. على النقيض من التعلم العميق (DL) التقليدية التي تتطلب مستودعات ضخمة مستودعات ضخمة من بيانات التدريب لتحقيق دقة عالية، تحاكي طريقة التعلّم الآلي العميق القدرة الإدراكية البشرية على استيعاب مفهوم جديد على الفور بعد رؤيته مرة واحدة فقط. هذه القدرة هذه القدرة مهمة بشكل خاص للتطبيقات التي يكون فيها يكون فيها تصنيف البيانات مكلفًا، أو تكون البيانات نادرة، أو تظهر فئات جديدة تظهر بشكل ديناميكي، كما هو الحال في التحقق من الهوية أو تحديد الحالات الشاذة النادرة.
تنطوي الآلية الأساسية وراء OSL على تحويل المشكلة من التصنيف إلى تقييم الاختلافات. بدلاً من تدريب نموذج لحفظ فئات محددة (مثل "قطة" مقابل "كلب")، يتعلم النظام دالة تشابه. وغالبًا ما يتم تحقيق ذلك باستخدام بنية الشبكة العصبية (NN) المعروفة باسم الشبكة السيامية. تستخدم الشبكات السيامية شبكات سيامية تستخدم شبكات فرعية متطابقة تشترك في نفس نفس أوزان النموذج لمعالجة صورتين مختلفتين من المدخلات في وقت واحد.
أثناء هذه العملية، تقوم الشبكة بتحويل المدخلات عالية الأبعاد (مثل الصور) إلى متجهات مضغوطة منخفضة الأبعاد تُعرف بالتضمينات. إذا كانت الصورتان تنتميان إلى إلى نفس الفئة، يتم تدريب الشبكة على وضع تضميناتهما بالقرب من بعضهما البعض في الفضاء المتجه. وعلى العكس، إذا كانت كانت الصورتان مختلفتين، يتم إبعاد الصورتين عن بعضهما البعض. تعتمد هذه العملية بشكل كبير على الفعالة لاستخراج الميزة لالتقاط الجوهر الفريد لجسم ما. في وقت الاستدلال، يتم تصنيف الصورة الجديدة من خلال مقارنة تضمينها مع "اللقطة" الواحدة المخزنة "لقطة" واحدة لكل فئة باستخدام مقياس المسافة، مثل المسافة الإقليدية أو تشابه جيب التمام.
يوضح مقتطف Python التالي كيفية استخراج التضمينات باستخدام YOLO11 وحساب التشابه بين "لقطة" معروفة "لقطة" معروفة وصورة استعلام جديدة.
import numpy as np
from ultralytics import YOLO
# Load a pre-trained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")
# Extract embeddings for a 'shot' (reference) and a 'query' image
# The model returns a list of results; we access the first item
shot_result = model.embed("reference_image.jpg")[0]
query_result = model.embed("test_image.jpg")[0]
# Calculate Cosine Similarity (1.0 = identical, -1.0 = opposite)
# High similarity suggests the images belong to the same class
similarity = np.dot(shot_result, query_result) / (np.linalg.norm(shot_result) * np.linalg.norm(query_result))
print(f"Similarity Score: {similarity:.4f}")
ويتطلب فهم طريقة التعلُّم الآلي التشغيلي المفتوح تمييزها عن غيرها من تقنيات التعلُّم منخفض البيانات. في حين أنها تشترك في هدف الكفاءة، إلا أن قيودها تختلف بشكل كبير:
لقد مكّن التعلّم بلقطة واحدة الذكاء الاصطناعي من العمل في بيئات ديناميكية تكون فيها إعادة تدريب النماذج غير عملية.
على الرغم من فائدته، يواجه التعلم من لقطة واحدة تحديات فيما يتعلق بالتعميم. لأن النموذج يستنتج فئة من مثيل واحد، فهو عرضة للتشويش أو القيم المتطرفة في تلك الصورة المرجعية. غالبًا ما يستخدم الباحثون التعلّم الفوقي، أو "التعلّم من أجل التعلّم" من أجل لتحسين استقرار هذه النماذج. أطر عمل مثل PyTorch و TensorFlow تتطور باستمرار لدعم هذه البنى المتقدمة المتقدمة. بالإضافة إلى ذلك، يمكن أن يساعد دمج البيانات التركيبية يمكن أن يساعد في زيادة اللقطة الواحدة, توفير تمثيل أكثر قوة للنموذج ليتعلم منه النموذج.