حالتنا عبارة عن موقع بث للاعبين والرياضيين الإلكترونيين ومحبي البث المباشر بتنسيق Twitch.tv . يقوم بعض المستخدمين ببث محتوى ترفيهي ، بينما يشاهده الآخرون. يمكن أن يكون المحتوى مختلفًا تمامًا: الألعاب ، والموسيقى الحية ، والتفاعلية ، و mukbang ، و ASMR ، والطبخ ، والبودكاست ، وما إلى ذلك - ومن حيث المبدأ ، لا يقتصر على أي شيء باستثناء خيال المشغل.
وقواعد المنصة التي يتم مراقبتها من قبل الوسطاء.
لماذا الإشراف على المحتوى غير الآمن؟ هناك سببان لهذا. الأول هو التشريع الروسي الحالي ، الذي ينص على أن توزيع المواد الإباحية غير قانوني. السبب الثاني هو تجربة المستخدم . تستهدف المنصة الأشخاص من جميع الأعمار ولا يمكننا تحمل تكلفة محتوى البالغين على الصفحة الرئيسية.
عندما واجهتنا مهمة تتبع المحتوى غير الآمن ، اتضح على الفور أنه لم يكن من السهل التمييز بين المحتوى الآمن وغير الآمن. أول شيء كان من المهم فهمه هو أن الإباحية والعُري ليسا مفاهيم متطابقة.
لا تتعلق المواد الإباحية بالضرورة بالعُري: فالجنس بالملابس محتوى غير آمن ، وغالبًا ما يمكن تمييزه عن المحتوى "الآمن" بمرور الوقت فقط.
العري ليس بالضرورة متعلقًا بـ NSFW: السومو ، المصارعة ، الأشخاص الذين يرتدون اللاتكس - كل هذا محتوى آمن ، حيث غالبًا ما يتم حل الحلول المفتوحة بشكل غير صحيح.
بناءً على هذه الاعتبارات ، بدأنا في النظر في كيفية حل هذه المشكلة. من بين الحلول مفتوحة المصدر المثيرة للاهتمام ، نموذج Open NSFW من Yahoo ، المدرب على البيانات المغلقة ، موجود منذ عدة سنوات ( التنفيذ على TF ). يوجد أيضًا مستودع مفتوح رائع لمكشطة البيانات Alexander Kim nsfw ، حيث يمكنك من خلاله الحصول على مئات الآلاف من الصور من reddit و imgur وبعض المواقع الأخرى على ما يبدو. يتم تقسيم الصور إلى خمس فئات: الإباحية ، والهنتاي ، والشهوة الجنسية ، والحيادية ، والرسومات . على أساس هذه البيانات ، هناك العديد من النماذج ، مثل الوقت، هناك
حلان مفتوحان المصدر يعانيان من عدة مشاكل - بشكل عام ، الجودة المنخفضة لبعض النماذج ، التشغيل غير الصحيح للحالات المعقدة المذكورة أعلاه والصور الآمنة مثل twerking girls and memes with Ricardo Milos ، بالإضافة إلى التحسين الإشكالي ، لأن إما النماذج قديمة ومدربة على البيانات المغلقة ، أو أن البيانات صاخبة للغاية ولها توزيع غير متوقع.
خلصنا إلى أن السياق الزمني مهم لنموذج جيد ، أي السياق الزمني ، وبمساعدته سنتمكن من اكتشاف حالات أكثر تعقيدًا في الديناميات. يصبح بيان المشكلة واضحا.
التعرف على الأفعال
في حالتنا ، لا يزال هذا هو نفس التصنيف الثنائي ، ولكن بدلاً من صورة واحدة ، نقوم بتغذية سلسلة من الإطارات كمدخلات.
كيف تحل هذه المشكلة بشكل عام؟ في العام الثامن عشر ، ظهرت مراجعة ممتازة من qure.ai ، ويبدو أنه منذ ذلك الحين لم يكن هناك تقدم جذري في هذا المجال ، لذلك أوصي به. تحول بحث أكثر تشويقًا حول موضوع الفيديو إلى مهمة أكثر صعوبة لفهم الفيديو وإعادة سرده. هناك شبكات رسوم بيانية وتعلم بإشراف ذاتي - كان اليوم الثاني في آخر ما تستطيع رؤية الآلات مكرسًا لهذا الغرض تمامًا .
إذن ، تصنيف الإجراءات. إن تاريخ التقدم في نماذج الشبكة العصبية هو ما يلي تقريبًا: أولاً ، قاموا بتدريب الشبكات التلافيفية ثلاثية الأبعاد من نقطة الصفر (C3D) ، ثم بدأوا في تجربة التلافيف بنوع من الهندسة المتكررة أو آلية الانتباه ؛ في مرحلة ما ، اقترح Andrey Karpaty دمج مناظر من إطارات مختلفة بطرق مختلفة ، حتى في وقت لاحق أصبح معيارًا لعمل نماذج ثنائية الرأس ، حيث يتم تغذية سلسلة من الإطارات في BGR / RGB بمدخل واحد ، ويتم احتساب تدفق بصري كثيف عليها إلى الآخر . كانت هناك أيضًا بعض النكات باستخدام ميزات إضافية وطبقات خاصة مثل NetVLAD. نتيجة لذلك ، نظرنا إلى النماذج التي حققت أفضل أداء في معيار UCF101.حيث يتم تصنيف مقاطع الفيديو إلى 101 إجراء جماعي. تبين أن هذا النموذج هو بنية I3D من DeepMind ، لقد سار بشكل أفضل معنا ، لذلك سأخبرك المزيد عنه.
DeepMind I3D
كخط أساس ، حاولنا تدريب C3D و CNN-LSTM - يستغرق كلا النموذجين وقتًا طويلاً للتعلم ويتقاربان ببطء. ثم أخذنا I3D وتحسنت الحياة. هاتان شبكتان تلافيفيتان ثلاثيتي الأبعاد لـ BGR والتدفق البصري ، ولكن هناك خصوصية - على عكس النماذج السابقة ، تم اختبار هذه الشبكة مسبقًا على ImageNet ومجموعة البيانات الخاصة بها من Deepmind Kinetics-700 ، حيث يوجد 650 ألف مقطع و 700 فئة. يوفر هذا تقاربًا سريعًا للغاية للنموذج في غضون ساعات قليلة مع الجودة الجيدة.
في الإنتاج ، نستخدم رأس RGB فقط ، نظرًا لأنه أسرع بمرتين ، ولا ينخفض التدفق البصري حقًا في الجودة ، ويمكن أن يكون أسوأ في مكان ما بسبب حقيقة أننا نقوم بشكل أساسي ببث شاشة كمبيوتر وكاميرات ويب ، حيث المحتوى في بعض الأحيان ثابت جدا.
قمنا بإدخال 16 إطارًا في النموذج ، وليس 64. في السابق ، كان لدينا مدخل مربع ، ولكن مع مراعاة تفاصيل النظام الأساسي ، قمنا بتغيير نسبة العرض إلى الارتفاع للمدخل إلى 16: 9. المهمة هي تصنيف ثنائي ، حيث أن الفئة الصفرية ليست إباحية ، لكن الفئة الوحيدة هي الإباحية. تدرب مع SGD بقوة دافعة ، وكان أداؤه أفضل قليلاً من آدم. الحد الأدنى من الزيادة - التقلبات الأفقية وضغط JPEG. لا يوجد شيء مميز هنا.
إكمال موضوع النماذج - بعد I3D ، لا تزال هناك نماذج EVANet - الهندسة المعمارية العصبية بحث عن سلسلة من الإطارات ، SlowFast Networks - شبكة ذات قناتين بمعدلات إطارات مختلفة ، ومقال بواسطة Google AI - تعلم الدورة الزمنية ، لكننا لم نتحرى عنها.
على ماذا تم تدريسه؟
كما كتبت أعلاه ، البيانات ضيقة. لا أحد يريد نشرها ، فالأمر صعب من الناحية القانونية والأخلاقية - من التراخيص إلى موافقة كل شخص مشارك في المحتوى. تعتبر مجموعات البيانات وتراخيصها ونشرها ممتعًا بشكل عام. إذا أراد أي شخص كتابة مقال حول هذا ، فأنا أحب قراءته. من بين مجموعات البيانات الأكاديمية الهامة ، لا يوجد سوى NPDI البرازيلي ، ولسوء الحظ ، فهو صغير الحجم ، وتوزيع بياناته ليس متنوعًا بدرجة كافية ، ويتكون من إطارات مفتاحية ، وإجراءات الحصول عليه ليس أسهل. ونريد أيضًا مجموعة بيانات من الفيديو! كان علي تجميعها بنفسي.
تتكون مجموعة البيانات من مقطع فيديو ، مما يعني أنك بحاجة إلى التقاط مقطع فيديو من مكان ما. هناك خياران لكيفية الحصول عليها: الكشطمن المواقع الإباحية ويوتيوب وجمع مقاطع الفيديو يدويًا . كل نهج له إيجابياته وسلبياته.
من المحتمل أن يوفر لنا القشط تنوعًا أكبر بكثير في البيانات ، ويمكننا الحصول على ترميز بسعر رخيص جدًا بالقول إن جميع إطارات جميع مقاطع الفيديو من pornhub الشرطي غير آمنة ، وجميع إطارات جميع مقاطع الفيديو من YouTube آمنة. هناك عيوب - كل هذا يجب تخزينه في مكان ما ، ويجب جمع مجموعة البيانات بطريقة ما من هذا ، والأهم من ذلك هو وجود ضوضاء في الترميز السذج لمقاطع الفيديو الإباحية. كلاهما خطأ مباشر: المقدمات ، والمشاهد التي يرتدي فيها الجميع ، واللقطات المقربة بدون خصائص الجنس ، وقوائم ألعاب الهنتاي - بالإضافة إلى العناصر التي يمكن للنموذج إعادة التدريب عليها: الشعارات ، والشاشات السوداء ، وتعديل الصور. هذه الضوضاء هي نسبة قليلة ، وفي حالة تيرابايت من الفيديو ، فإن التخلص منها مكلف. سنتحدث عن هذا لاحقا.
الطريقة الثانية هي التجميع اليدوي. وتتمثل مزاياه في أنه يمكننا نمذجة أي توزيع مرغوب للبيانات ، وتكون البيانات أكثر قابلية للتنبؤ ، ومن الأسهل تصنيفها لمجرد وجود عدد أقل منها. ولكن هناك أيضًا عيوب. من الواضح أن هذا النهج ينتج بيانات أقل ، بالإضافة إلى أنه يمكن أن يعاني من تحيز المجمع ، لأنه يمثل التوزيع وقد يفوت شيئًا ما.
اتخذنا النهج الثاني. قمنا بتجميع قائمة بما يمكن أن يكون على منصة البث المباشر: مجموعة متنوعة من الألعاب ، الرسوم المتحركة ، الرسوم المتحركة ، العزف على الآلات الموسيقية ، ردود الفعل ، الميمات ، أبرز الأحداث - وحاولنا تغطية جميع الأنواع الممكنة من المحتوى غير الآمن - من شيء عادي إلى شيء عادي بروح الإباحية مع الزاحف المجنح. ذكرنا أيضًا ألعاب الكمبيوتر ، والتي تُستخدم غالبًا للهنتاي ثلاثي الأبعاد - Overwatch ، على سبيل المثال. وبدأوا في الجمع. نتيجة لذلك ، يمكنني تسليط الضوء على رؤيتين.
الوثنيون هم جامعي بيانات جيدون
هناك الكثير من التجميعات على المواقع الإباحية لكل ذوق ، ويمكن أن يحتوي كل مقطع فيديو على مقتطفات من مئات أو اثنين من مقاطع الفيديو المختلفة تمامًا ، مما يسمح لك بالحصول على مجموعة بيانات مشابهة للقطع من حيث التنوع ، وفي نفس الوقت يكون ترميزها رخيصًا جدًا.
ويوتيوب أيضًا
أمثلة على الأوقات: هناك مجموعات من أبرز اللقطات على YouTube ، وأحيانًا تغطي سنة منفصلة ، وتستمر لساعات وتحتوي على أقل من ألف تعديل ، أي مشاهد. المثال الثاني: قمم الألعاب / الرسوم المتحركة / المسلسلات. لنفترض أنك بحاجة إلى أن تشرح بوضوح للشبكات العصبية ماهية الرسوم المتحركة. في الوقت نفسه ، يوجد عدد كبير من الاستوديوهات في اليابان ، يتطور أسلوبها كل عام. الحل هو تنزيل مقطع فيديو يحتوي على قمم الأنيمي لسنوات معينة من مستخدم YouTube مشهور. أو تحتاج إلى تغطية مجموعة متنوعة من المشاهد من لعبة شائعة. اذهب وقم بتنزيل مقطع فيديو على سبيل المثال videogamedunkey لهذه اللعبة.
تكرار البيانات
كان لدينا العديد من التكرارات للبيانات. في البداية ، كان حوالي مائة مقطع فيديو ، طوله حوالي 70 ساعة مع الترميز الساذج "كل الإطارات من المواقع الإباحية - الإباحية ، كل شيء من YouTube - اللوم" ، والتي قمنا بأخذ عينات منها بشكل متساوٍ إلى حد ما لتسلسلات الإطارات لمجموعة البيانات.
عمل النموذج الذي تم تدريبه بهذه الطريقة جيدًا ، ولكن نظرًا للضوضاء في البيانات ، أعطت النماذج الأولى أخطاء في أنواع مختلفة من الشعارات والشاشات السوداء وفتيات يرتدين ملابس على أريكة جلدية سوداء (͡ ° ͜ʖ ͡ °) . كانت الشاشات السوداء مع 0.817 القادمة مربكة بشكل خاص ، ولكن اتضح أنه كان هناك خطأ في البيانات - في إحدى المجموعات الإباحية ، قام المؤلف بطريق الخطأ بتصوير الفيديو لمدة عشر دقائق أطول من اللازم ، ونتيجة لذلك ، كان القطار يحتوي على الكثير من الشاشات السوداء "الخطرة".
نتيجة لذلك ، قمنا بترميز البيانات بأمانة ، واختفت هذه الأخطاء. في سياق الكشط ، تبرز فكرة أنه إذا تسلل مثل هذا الخطأ أثناء التحديد اليدوي للفيديو ، كما هو الحال مع الشاشات السوداء ، فسيكون من الصعب تعقبه عند حذف آلاف مقاطع الفيديو.
كما لوحظ - بالنسبة لجميع مقاطع الفيديو تقريبًا ، استخدمنا الأداة من OpenCV CVAT.
خمسة سنتات عن CVAT
Computer Vision Annotation Tool. . , -. — , . XML. .
ثم، في سياق عملنا، جمعنا المزيد من أشرطة الفيديو، وتحديث التسويقي من الألعاب، ونتيجة لذلك، الآن لدينا عدة مئات من ساعة من الفيديو في عدة عشرات من فئات مختلفة، ونحن نعرف أنها تتكون من ~ 30000 مشاهد فريدة من نوعها، بالإضافة إلى البيانات مع النجمة حول أي سنتحدث أدناه.
رائع ، لدينا بيانات خام معلمة! كيف نحصل على مجموعة بيانات جيدة منهم؟ يتم تجميع مقاطع فيديو ذات أطوال مختلفة لكل فئة ومقاطع فيديو مختلفة التوقيت ودرجة التنوع - كيف يتم ربطها معًا؟ كم عدد العينات التي يمكننا أخذها من مجموعة البيانات؟ تنوعها محدود بشكل أساسي (مثل الحد الأقصى لعدد إطارات الفيديو) ، كيف يمكننا أن نفهم أننا نأخذ الكثير؟
في بداية العمل ، لم ننزعج كثيرًا بهذه الأسئلة وأخذنا فقط العديد من العينات من كل مقطع فيديو لفصل منفصل بحيث كانت المواد الإباحية وغير الموضعية في مجموعة البيانات متساوية تقريبًا ، وتم تحديد عدد العينات بشكل حدسي ("حسنًا ، يبدو أنه عدة مرات في الدقيقة تقريبًا في جميع مقاطع الفيديو يحدث شيء مختلف جذريًا ، سنأخذ 10000 عينة ") ، ثم باستخدام مقاييس النماذج المدربة بشكل تجريبي.
نتيجة لذلك ، تناولنا هذه الأسئلة ، وانتهى بنا الأمر بأداة معقدة إلى حد ما لتجميع مجموعات البيانات من الفيديو.
بادئ ذي بدء ، أردنا أن نعرف إلى أي مدى يمكننا الضغط على مجموعات الفيديو الخاصة بنا. من المنطقي أن يكون لدينا المزيد من المقاطع المستخدمة لقطع عينات مختلفة في القطع.
لنبحث عن تحرير المواد اللاصقة
كان من الممكن استخدام قمم معيار الفرق بين الإطارات المجاورة فقط ، لكننا استخدمنا شبكة مفتوحة على وجه التحديد للعثور على القواطع - TransNet . أعطانا هذا نتيجتين: أولاً ، تعلمنا عدد المشاهد الموجودة في البيانات من حيث المبدأ ، وثانيًا ، تعلمنا أي فئات من البيانات ذات تنوع أقل. أكملت هنتاي وماين كرافت وأشياء أخرى.
الآن وحدتنا الذرية للتقطيع ليست فيديو كامل ، بل مشهد واحد... يتيح لنا ذلك جمع أكثر مجموعات البيانات تنوعًا ، متوازنة حسب الفئات والفئات ، مع مراعاة المشاهد الآمنة من مقاطع الفيديو الإباحية. يتم تجميع مقاطع الفيديو في مجلدات الفئات ، ويتم أخذ عينات من المشاهد منها بالتساوي لكل فصل دراسي. إذا أضفنا مقاطع فيديو جديدة إلى مجموعة البيانات ، فسيحدث قطع / حذف إضافي للعينات غير الضرورية إلى الحد الأدنى ، ولن يتم إعادة قطع مجموعة البيانات من البداية. مريح جدا.
لقد جمعنا مجموعة بيانات من 20000 عينة في القطار ، و 2000 في التحقق من الصحة و 2000 في الاختبار ، وقمنا بتدريب النموذج ، وأحببنا المقاييس في الاختبار ، وأرسلناها إلى الإنتاج.
دعنا نتحدث قليلاً عن الإنتاج - كل يوم نتحقق من عشرات الآلاف من المقاطع ، لذلك حتى واحد بالمائة من الإيجابيات الخاطئة يمكن أن يقوم المشرفون بإرسال رسائل غير مرغوب فيها ، لذلك لبعض الوقت قمنا بجمع مجموعة متنوعة من الإيجابيات الكاذبة على نموذج مع حد استجابة أقل قليلاً ، ونتيجة لذلك ، حصلنا على الكثير من البيانات الحقيقية. التي استخدمناها للتدريب الإضافي.
هذه هي البيانات ذات النجمة . لقد سمحوا لنا بالتركيز على المحتوى المتنوع للمنصة وتقليل العبء على الوسطاء. الآن ، تحدث معظم الإيجابيات الخاطئة في الألعاب الجديدة - على سبيل المثال ، في وقت من الأوقات كنا أكثر عرضة للإصابة بـ Death Stranding و Valorant.
تتكون مجموعة البيانات الحالية من 30000/5000/3000 عينة قطار / صمام / اختبار.
تطور مقاييسنا في اختبارنا ، مقسمة حسب الفئات ، والمقارنة مع الحلول المفتوحة (قابلة للنقر)
f1- . , precision , f1- .
f1- . , precision , f1- .
بفضل أجهزة الكشف الخاصة بنا ، تم تقليل وقت فحص النظام الأساسي بالكامل بواسطة الوسطاء عدة مرات. بالإضافة إلى المواد الإباحية ، نلتقط العري والشعارات التلفزيونية والبث الرياضي ، لكن هذه قصص لوقت آخر.
زعنفة.
يمكن مشاهدة نسخة فيديو من المادة هنا