بعض الحقائق حول المصنفات المتتالية ، والتي نادرًا ما يتم أخذها في الاعتبار بجدية في المقالات العلمية.


مرحباً هبر! اليوم سنتحدث عن الاعتراف مرة أخرى. أي عن نموذج التعرف البسيط مثل المصنف المتتالي. يستخدم هذا شلال في طريقة شعبية للفيولا وجونز، عن التي قد كتبت بالفعل مرات عديدة على حبري (على سبيل المثال، هنا ، هنا و هنا ). الشيء المحزن هو أنه على الرغم من وفرة المقالات ، لم يدرس أحد بجدية المصنفات المتتالية. وليس فقط على حبري ، ولكن أيضًا على المجتمع العلمي. على الرغم من أن المصنف المتتالي يبدو بسيطًا ، إلا أن هناك الكثير من المزالق والميزات المثيرة للاهتمام. لذلك ، نحن في عجلة من أمرنا لمشاركة معرفتنا معك. لذا ، إذا كنت مهتمًا ، فمرحبًا بالقط.

المصنف المتتالي هو نموذج بسيط للغاية. يتكون من عدة مستويات متتالية ، يمكن تمثيل كل منها كمصنف ثنائي. يتم تغذية السابقة التي تم التحقيق فيها بإدخال المستوى الأول ثم "المستوى" بالسفر حسب المستوى. إذا كان المصنف في المستوى التالي يتعرف على السابقة على أنها سلبية ، فلن يتم تحليلها من قبل المصنفات المتبقية في السلسلة. أصبح هذا النموذج البسيط شائعًا بعد نشر طريقة Viola and Jones [1] ، حيث تم استخدامه ، كما ذكر ، لتوفير أداء عالي. ولكن هل هذا فقط؟ هل هو مجرد مصنف متتالي؟ دعونا نكتشف ذلك!

سنبني مقال اليوم عن حبري بشكل جديد بالنسبة لنا. سنختار العديد من العبارات التي سنكشفها بالتفصيل ، وحتى نفندها في مكان ما. لذلك دعونا نبدأ!

يستخدم المصنف المتتالي في طريقة فيولا وجونز ببساطة لتسريع تشغيل كاشف الأجسام


في المقال الأصلي [1] في الصفحة الأولى توجد مثل هذه العبارة:
تتمثل المساهمة الرئيسية الثالثة لهذه الورقة في طريقة للجمع بين المصنفات الأكثر تعقيدًا على التوالي في هيكل متسلسل يزيد بشكل كبير من سرعة الكاشف من خلال التركيز على المناطق الواعدة بالصورة.

في الواقع ، تم تصميم الطريقة الأصلية للفيولا وجونز للبحث عن الأشياء في الصورة. علاوة على ذلك ، يتم حل مشكلة الكشف عن طريق طريقة النافذة المنزلقة باستخدام مصنف ثنائي ، يتم تطبيقه في كل نقطة من الصورة التي تم فحصها بمقاييس مختلفة. أدى عدم توازن البيانات المدروسة في مرحلة الكشف (المناطق "الفارغة" بدون الكائن المطلوب في كل صورة قيد الدراسة ، أو ملايين أو حتى مليارات المرات من المناطق التي تحتوي على كائنات) إلى استخدام سلسلة متتالية - وهي آلية تسمح لك بقطع المناطق "الفارغة" بسرعة.

ولكن كان الأمر يتعلق باستخدام مصنف مصنف بالفعل. الآن دعونا ننتقل إلى إجراء تدريب المصنف. اتضح أن هناك بالضبط نفس مشكلة عدم توازن العينة: عدد الأمثلة السلبية أكبر بكثير (ملايين بل ومليارات المرات) من عدد الأمثلة الإيجابية. ولكن بفضل هندستها ، يتم تدريب كل مستوى جديد من التعاقب بواسطة طريقة AdaBoost ليس على عينة التدريب السلبية بالكامل ، ولكن فقط على مجموعة محدودة من الأخطاء من المستويات السابقة للتتالي! هذا يسمح لك بتشغيل آلة التدريب AdaBoost على عينة متوازنة ومحدودة!

كما ترى ، فإن استخدام المصنف المتسلسل في طريقة Viola and Jones يطلق النار مرتين:

  1. انها تسمح لك بسهولة تدريب المصنف ، وتجنب بطبيعة الحال مشكلة مجموعة تدريب "لانهائية".
  2. يوفر لقطة سريعة للمناطق "الفارغة" أثناء اكتشاف الكائن ، ونتيجة لذلك يتم تحقيق متوسط ​​إنتاجية عالية.

حسنًا ، دعنا نواصل دراسة السلسلة الكلاسيكية وننتقل إلى قضية الأداء.

مع أخذ ذلك في الاعتبار ، يعد المصنف المتتالي أداة تسريع.


دعونا نعود مرة أخرى إلى مسألة الغرض من التسلسل ، ولكن الآن من ناحية أخرى. إذا نظرت إلى المصنف المتسلسل رياضياً ، يمكنك أن ترى أن المتتالي هو شكل مقترن من المصنفات القوية (يمكن تمثيل كل منها كتركيب خطي للسمات):

جأسجأده(س)=أنا=1ن[سأنا(س)>0]،س(س)=[ر=1تαرحر(س)>0]،


أين []- مؤشر وظيفة.

بالنظر إلى العدد المحدود من السمات المتاحة (التي ، في الواقع ، عند ملاحقة الأداء ، تتحول إلى حالة طبيعية) ، فإن الشكل المرتبط للمصنفات القوية لديه قدرة أكثر تعبيرًا من المصنف الخطي الفردي. من السهل فهم هذا إذا كنت تتخيل مثالًا بسيطًا ، حيث تتكون مساحة الميزة من عنصرين ، وتقع الكائنات الإيجابية والسلبية التي يتم التعبير عنها في إحداثيات هذه الخصائص كما هو موضح في الشكل أدناه (الكائنات الخضراء هي العناصر الإيجابية والأحمر هي العناصر السلبية). من الواضح أنه لا يوجد مصنف خطي واحد يمكنه تقسيم هذه العينة بشكل صحيح. لكن سلسلة من أربعة مستويات ستتعامل مع هذه المهمة المضمونة.


وبالتالي ، فإن استخدام المصنف المتسلسل ، بالإضافة إلى زيادة الإنتاجية ، يوفر أيضًا قوة تعبيرية أكبر من المصنف الخطي الفردي ، في ظروف عدد محدود من الميزات.

يوفر المصنف المتتالي أداءً عاليًا باستمرار ويمكن استخدامه بسهولة في أنظمة التعرف في الوقت الفعلي


كما قلنا أعلاه ، يتيح لك مخطط التتالي تحقيق أداء عالي بسبب الفحص السريع للمناطق "الفارغة" ، نظرًا لأن عددها أكبر بعدة مرات من عدد المناطق التي تحتوي على الكائن. يختلف وقت معالجة المنطقة "الفارغة" عن وقت معالجة المنطقة مع الكائن عدة مرات (بما يتناسب مع طول السلسلة - عدد مستويات السلسلة).

نظرًا لأن عدد المناطق التي تحتوي على الكائن يختلف من صورة إلى صورة ، فإن وقت المعالجة لكل إطار يختلف أيضًا. نظرًا لحقيقة وجود عدد أقل بكثير من المناطق التي يوجد بها كائن على الإطار مقارنة بالمناطق التي لا تحتوي على كائن ، فإن الفرق في وقت المعالجة لا يتم قياسه عشرات المرات ، ولكن عشرات بالمائة ، والتي ، مع ذلك ، مهمة في أنظمة التعرف الصناعية.

وبالتالي ، يمكن أن يختلف وقت تشغيل المصنف المتسلسل في الصور المختلفة بشكل كبير. وبالتالي ، عند إجراء قياسات خطيرة لأداء المصنفات ، يجب إجراء قياسات لوقت التشغيل في المتوسط ​​وفي أسوأ الحالات. وكن دائمًا على استعداد لمثل هذه "التناقضات" المؤقتة عند استخدام المصنفات المتتالية.

في ممارستنا ، واجهنا بالفعل مشاكل خطيرة بسبب وجود تباين كبير في وقت تشغيل الشلال في المتوسط ​​وأسوأ الحالات. كجزء من مشروع أتمتة الطرق ، قمنا بحل مشكلة التعرف على نوع السيارة ، حيث كانت إحدى المهام الفرعية الرئيسية هي مشكلة عد العجلات. بالطبع ، استخدمنا طريقة فيولا وجونز لاكتشاف العجلات على الإطارات الفردية. نظرًا للتنوع الكبير في العجلات (انظر الشكل أدناه) ، كانت السلسلة المدربة طويلة جدًا (20 مستوى). شاهدنا مشاكل حية غير سارة مرتبطة بأوقات معالجة مختلفة لكل إطار ، مما منعنا بشكل خطير من بناء نظام التعرف في الوقت الفعلي.


ثم طورنا فكرة المصنف المتتالي الكلاسيكي إلى شجرة قرارات كاملة ، وتطوير تقنية تعلم فريدة لشجرة القرار هذه (تذكر أنه كان من الضروري اقتراح خوارزمية تسمح لنا بتجنب المشاكل المرتبطة بمجموعة التدريب "اللانهائية"). يمكن العثور على تفاصيل هذه الخوارزمية في عملنا العلمي [3]. نقدم هنا بعض الحقائق فقط:

  1. يتكون المسار الأطول في شجرة مدربة من 6 مصنفات قوية (يظهر مخطط مصنف شجرة مدرب في الشكل أدناه).
  2. وفر مصنف شجرة مدرب جودة عمل أفضل مقارنة بشلال تم تدريبه سابقًا. هذا منطقي ويترتب على حقيقة أن القوة التعبيرية للشلال المتسلسل الشبيه بالشكل (وهو شكل اقتران متصل) هي أعلى من القوة التعبيرية للشلال المتسلسل (الشكل المتصل).
  3. قام مصنّف أشجار مدرّب بالتحايل على الشلال بشكل خطير في أسوأ الحالات ، تقريبًا دون أن يخسر في المتوسط.




يقدم الجدول أدناه مقارنات عددية لمصنفات الشلال والمتسلسلة.

حساسيةالنوعيةالوقت في المتوسط ​​، μsالوقت في أسوأ الأحوال ، مللي
المصنف المتتالي93.55٪99.98٪5815967432
مصنف الشجرة94.02٪99.99٪5871763552

وبالتالي ، إذا كنت تريد حقًا استخدام المصنفات المتتالية في أنظمة التعرف في الوقت الفعلي ، فتذكر دائمًا الميزات المرتبطة بسرعة العمل في المتوسط ​​وأسوأ الحالات.

إن تقنيات تدريب المصنف المتتالية واضحة للغاية بحيث لا يوجد شيء يزعجك بجدية.


أوه ، ربما يكون هذا أحد أصعب المواضيع المتعلقة بالتصنيفات المتتالية. خلاصة القول هي أنه في جميع المقالات التي التقينا بها ، يتم وصف عملية التعلم التعاقبي بشكل سيء وسطحيًا ودون مبرر مناسب لفعالية خوارزمية التعلم التعاقبي. عادة ، تبدو خوارزمية التعلم المتتالية شيئًا مثل هذا:

  1. البت في قيم حصة الاعتراف الكاذب (F) لشلال كامل.
  2. البت في قيم حصة الاعتراف الحقيقي (د) وجزء من الاعتراف الكاذب (F<F) لكل مستوى التعرف.
  3. حدد عينة التحقق لتقييم مؤشرات الجودة في المصنف النهائي بصدق.
  4. قم بتدريب كل مستوى جديد من التعاقب (والذي نتذكر أنه تم تدريبه على جميع الأمثلة الإيجابية المتاحة ، وكذلك على الأخطاء الإيجابية الكاذبة في التعاقب الحالي) بحيث يكون أدائه دأناو Fأنالم تكن أسوأ من تلك المعطاة دأنا>دو Fأنا<F. بالمناسبة ، عملية ضمان هذه المؤشرات في حد ذاتها هي أيضا ذات أهمية كبيرة.
  5. أضف المستوى المدرب حديثًا إلى التعاقب وتقييم مؤشرات الجودة الخاصة به في عينة التحقق. إذا كان معدل التعرف الزائف أقل من الهدفFثم أكمل التدريب. خلاف ذلك ، انتقل إلى الخطوة 4 لتعلم مستوى جديد من التعاقب.


إذا كنت تدرب نتيجة الخوارزمية المذكورة أعلاه كمستويات التتالي ، ثم يمكنك تقدير متوسط ​​تعقيد حصة التعرف الصحيح على التتالي كما يلي:

ن=ن1+أنا=2ك(نأناي=2أناصي)،د=أنا=1كدأنا،


أين نأنا- تعقيد أنامستوى شلال صأنا- احتمالية الحساب أناتتالي المستوى ، و دأنا- نصيب الاعترافات الصحيحة أناشلال مستوى.

كما ترون ، فإن تعقيد التسلسل لا يشارك في خوارزمية التدريب المقدمة ، وبالتالي ، بالطبع ، لا يمكن وصفه بالفعالية في الأداء. في الوقت نفسه ، نحن على يقين من أن العلماء في جميع أنحاء العالم مقتنعون تمامًا بأهمية خوارزميات التعلم للتسلسل الفعال. كتأكيد ، هنا اقتباس من مقالة بول فيولا ومايكل جونز [4]:
The overall training process involves two types of tradeoffs. In most cases classifiers with more features will achieve higher detection rates and lower false positive rates. At the same time classifiers with more features require more time to compute. In principle one could define an optimization framework in which
– the number of classifier stages,
– the number of features, نأنا, of each stage,
– the threshold of each stage
are traded off in order to minimize the expected number of features نgiven a target for Fand د. Unfortunately finding this optimum is a tremendously difficult problem.

من المثير للاهتمام أن مراجعتنا للأدبيات ذات الصلة ، التي تم إجراؤها في عام 2016 ، أظهرت أنه في ذلك الوقت لم تكن هناك خوارزميات تدريب فعالة للمصنفات المتتالية. بالمناسبة ، حينها قمنا في Smart Engines بحل هذه المشكلة. درسنا الوظائف التالية ، والتي تعتمد على أخطاء الكشف من النوع الأول (هـ1) ، أخطاء الكشف من النوع الثاني (هـ2) وصعوبة متوسطة (ن):

F(هـ1،  هـ2، ن)=  β1 هـ1+ β2هـ2+  β3ن.


اختيار المعلمات β1، β2و β3، تعيين التكلفة النسبية للأخطاء من النوع الأول والثاني ، بالإضافة إلى تعقيد الكاشف الناتج. علاوة على ذلك ، في عملية تدريب المصنف المتسلسل ، استخدمنا خوارزمية الجشع لتعداد المعلمات في كل مستوى من أجل الحصول على الشلالات التي تزيد من الوظائف الوظيفية المحددة. الوصف التفصيلي للخوارزمية المطورة يتجاوز نطاق هذه المقالة ، لكننا دائمًا على استعداد لمشاركتها معك ، قارئنا ، من خلال توفير ارتباط ببليوغرافي [5].

استنتاج


لتلخيص كل ما قيل من جانبنا ، باستخدام نموذج المصنف المتتالي كمثال ، نريد استخلاص الاستنتاجات التالية:

  1. نادرًا ما يكون من الممكن مقابلة عمل علمي يتم فيه وصف جميع التفاصيل الضرورية بدقة.
  2. من المفيد جدًا إعادة قراءة المقالات العلمية ، والتفكير بجدية في خصائص وقيود النماذج المعروضة فيها ، حتى إذا بدا للوهلة الأولى أن كل شيء "يمضغ" في المقالة.
  3. سيكون هناك دائمًا مكان للبحث العلمي الجدير ، حتى لو تم اقتراح النموذج المدروس قبل 20 عامًا.

نحن سعداء للغاية إذا كانت المواد المقدمة في هذه المقالة مفيدة ، وبطبيعة الحال ، جاهزة دائمًا لمناقشة مثمرة في التعليقات.

شكرا.

قائمة المصادر المستخدمة
  1. Paul Viola Michael J. Jones. Robust real-time object detection // International journal of computer vision. – 2001.
  2. Bourdev L., Brandt J. Robust object detection via soft cascade //2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05). – IEEE, 2005. – . 2. – . 236-243.
  3. Minkina A. et al. Generalization of the Viola-Jones method as a decision tree of strong classifiers for real-time object recognition in video stream //Seventh International Conference on Machine Vision (ICMV 2014). – International Society for Optics and Photonics, 2015. – Vol. 9445. – P. 944517.
  4. Paul Viola Michael J. Jones. Robust real-time face detection // International journal of computer vision. – 2004. – Vol. 57. – No. 2. – P. 137-154.
  5. . . . - «» // . – 2016. – . 30. – №. 3. – . 241-248.


All Articles