git clone https://github.com/QuentinWach/image-ranker.git
cd image-ranker
python -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`
pip install flask trueskill
python app.py
.http://localhost:5000
. يتم تمثيل كل صورة بقيمتين:
تبدأ العناصر الجديدة بالقيمة الافتراضية μ (غالبًا 25 ولكن 0 هنا) والقيمة العالية σ (غالبًا 8.33). عند مقارنة عنصرين، يتم استخدام قيم μ وσ لحساب النتيجة المتوقعة. تتم مقارنة النتيجة الفعلية بهذا التوقع. تزداد μ للفائز، وتقل للخاسر. وعادةً ما تنخفض σ لكلا العنصرين (وهو ما يمثل زيادة في اليقين). يعتمد حجم التغييرات على:
ويستخدم توزيعات غاوسية لنمذجة مستويات المهارة ويستخدم الرسوم البيانية للعوامل وتمرير الرسائل للحصول على تحديثات فعالة. يتم ترتيب العناصر عادةً حسب μ - 3σ (تقدير متحفظ).
والأهم من ذلك، أن الخوارزمية تقوم بتحديث جميع العناصر التي تم تصنيفها مسبقًا في وقت واحد مع كل مقارنة، بدلاً من تحديث الصور الجديدة فقط. وهذا يعني أن الخوارزمية يمكنها أن تأخذ في الاعتبار جميع المعلومات المتاحة من المقارنات، بدلاً من المقارنات الزوجية فقط.
وبالتالي، بشكل عام، يسمح هذا النظام بالتصنيف الفعال مع بيانات المقارنة غير المكتملة، مما يجعله مناسبًا تمامًا لمجموعات كبيرة من العناصر حيث تكون المقارنات الزوجية الشاملة غير عملية!
لديك خيار تمكين الإزالة التسلسلية للتصنيف
يمكنك خلط أزواج الصور يدويًا في أي وقت عن طريق النقر فوق زر التبديل العشوائي أو التبديل العشوائي تلقائيًا كل ثلاث مقارنات. يعد هذا مفيدًا إذا كنت تريد تقليل عدم اليقين بشأن التصنيف في أسرع وقت ممكن. الصور التي تم تصنيفها عدة مرات فقط والتي تتمتع بدرجة عالية من عدم اليقين σ سيتم منحها الأولوية. بهذه الطريقة، لن تقضي المزيد من الوقت في تصنيف الصور التي أنت متأكد منها بالفعل، ولكن يمكنك الحصول على تصنيف أكثر دقة للصور ذات النتائج المتشابهة بشكل أسرع.
يعد Image Ranker جزءًا من جزء من الجهد الشامل لتمكين أي شخص من إنشاء نماذج الأساس الخاصة به والمصممة خصيصًا لتلبية احتياجاته الخاصة.
النماذج الأساسية لما بعد التدريب هي ما يجعلها مفيدة بالفعل. على سبيل المثال، قد لا تتمكن العارضات ذوات اللغات الكبيرة من الدردشة معك بدون التدريب اللاحق. وينطبق الشيء نفسه على الصور. من أجل القيام بذلك، هناك تقنية شائعة هي RLHF، والتي تستخدم نموذج المكافأة لمكافأة أو معاقبة مخرجات نموذج الأساس التوليدي بناءً على تفضيلات المستخدم. من أجل إنشاء نموذج المكافأة هذا، نحتاج إلى معرفة تفضيلات المستخدم التي تتطلب مجموعة بيانات، هنا الصور. لذا، سواء أكان الأمر يتعلق بإجراء بعض التغييرات الجذرية على نموذج موجود بالفعل مثل Stable Diffusion أو Flux، أو تدريب النموذج الخاص بك، فمن المهم أن تكون قادرًا على ترتيب الصور بطريقة ما لمعرفة الصور الأفضل. هذا هو المكان الذي يأتي فيه هذا التطبيق.
إذا كان لديك أي أسئلة، يرجى فتح مشكلة على GitHub! ولا تتردد في تفرع هذا المشروع لاقتراح ميزات جديدة أو المساهمة فيها. يحتوي الملف OPEN_TODO.md
على قائمة بالميزات المخطط تنفيذها. المساعدة محل تقدير كبير جدا! ومع ذلك، فإن أسهل طريقة لدعم المشروع هي منح هذا الريبو !
شكرًا لك!