Breaking News

التغلب على تحديات العمل بالبيانات الصغيرة


سجل الآن للحصول على تصريح دخولك الافتراضي المجاني إلى قمة Low-Code / No-Code في 9 نوفمبر. استمع إلى المديرين التنفيذيين من Service Now و Credit score Karma و Sew Repair و Appian والمزيد. يتعلم أكثر.


هل واجهت مشكلة مع مقاعد الطائرة لأنك طويل جدًا؟ أو ربما لم تتمكن من الوصول إلى الرف العلوي في السوبر ماركت لأنك قصير جدًا؟ في كلتا الحالتين ، تم تصميم كل هذه الأشياء تقريبًا مع وضع متوسط ​​طول الشخص في الاعتبار: 170 سم – أو 5 ‘7.

في الواقع ، تم تصميم كل شيء تقريبًا في عالمنا حول المتوسطات.

تعمل معظم الشركات مع المتوسطات فقط لأنها تناسب غالبية الحالات. إنها تسمح للشركات بتقليل تكاليف الإنتاج وتعظيم الأرباح. ومع ذلك ، هناك العديد من السيناريوهات التي لا يكفي فيها تغطية 70-80٪ من الحالات. نحن كصناعة بحاجة إلى فهم كيفية معالجة القضايا المتبقية بشكل فعال.

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

حدث

قمة منخفضة الرمز / بدون رمز

انضم إلى المديرين التنفيذيين الرائدين اليوم في قمة Code-Low / No-Code تقريبًا في 9 نوفمبر. سجل للحصول على تصريح الدخول المجاني اليوم.

سجل هنا

ما هي البيانات الصغيرة؟

من المهم فهم مفهوم البيانات الصغيرة أولاً. البيانات الصغيرة ، على عكس البيانات الكبيرة، هي البيانات التي تأتي بأحجام صغيرة يسهل على البشر فهمها. يمكن أن تكون البيانات الصغيرة أحيانًا مجموعة فرعية من مجموعة بيانات أكبر تصف مجموعة معينة.

ما هي مشاكل البيانات الصغيرة لمهام الحياة الواقعية؟

هناك سيناريوهان شائعان لتحديات البيانات الصغيرة.

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

السيناريو 2: ربما تقوم ببناء نظام ترجمة لإحدى اللغات منخفضة الموارد. على سبيل المثال ، هناك الكثير من البيانات المتاحة باللغة الإيطالية المتاحة عبر الإنترنت ، ولكن مع لغات Rhaeto-Romance ، يكون توفر البيانات القابلة للاستخدام أكثر تعقيدًا.

المشكلة 1: يصبح النموذج عرضة للتركيب الزائد

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

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

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

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

حل آخر ممكن هو استخدام نقل التعلم. يمكن استخدام التعلم عن طريق النقل لبناء الحلول بفعالية ، حتى لو كان لديك مجموعة بيانات صغيرة. ومع ذلك ، لكي تتمكن من إجراء التعلم بالنقل ، يجب أن يكون لديك بيانات كافية من الحقول المجاورة التي يمكن أن يتعلم نموذجك منها.

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

المشكلة الثانية: لعنة الأبعاد

هناك الكثير من الميزات ولكن القليل جدًا من الكائنات ، مما يعني أن النموذج لا يتعلم. ماذا يمكن ان يفعل؟

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

ميزة استخراج

يمكنك استخدام استخراج الميزات لتقليل أبعاد نموذجك وتحسين أدائه عند وجود بيانات صغيرة متضمنة. لذلك ، يمكنك استخدام طرق kernel أو الشبكات العصبية التلافيفية (CNNs) أو حتى بعض طرق التصور والتضمين مثل PCA و t-SNE.

في شبكات CNN ، تعمل الطبقات التلافيفية مثل المرشحات. على سبيل المثال ، بالنسبة للصور ، تقوم الطبقات التلافيفية باستخراج معالم الصورة وتحسب صورة جديدة في طبقة وسيطة جديدة.

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

اختيار ميزة

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

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

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

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

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

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

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

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

ماذا لو كانت بياناتك غير كاملة؟

إذن ، ما الذي يمكن عمله عندما تكون البيانات متحيزة وغير ممثلة للجمهور؟ ماذا لو لم تكتشف المشكلة؟ بصراحة ، من الصعب التنبؤ بموعد حدوث ذلك.

المشكلة 1

أنت تعلم أن هناك شيئًا لم تغطيه ، أو أنه نادر الحدوث. هناك “تل” في توزيع البيانات لديك تعرف الكثير عنه ، لكنك لا تعرف الكثير عن “ذيوله”.

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

المشكلة 2

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

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

مشكلة 3

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

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

حلول

تم تصميم معظم الحلول لتناسب المتوسط. ومع ذلك ، في المواقف الحساسة مثل تلك المتعلقة بالرعاية الصحية والخدمات المصرفية ، فإن ملاءمة الأغلبية لا تكفي. يمكن أن تساعدنا البيانات الصغيرة في مكافحة مشكلة حل “مقاس واحد يناسب الجميع” وإدخال المزيد من التنوع في تصميم منتجاتنا.

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

إيفان سميتانيكوف هو قائد فريق علوم البيانات في Serokell.

صانعي القرار

مرحبًا بك في مجتمع VentureBeat!

DataDecisionMakers هو المكان الذي يمكن للخبراء ، بما في ذلك الأشخاص الفنيون الذين يقومون بعمل البيانات ، مشاركة الأفكار والابتكارات المتعلقة بالبيانات.

إذا كنت تريد أن تقرأ عن الأفكار المتطورة والمعلومات المحدثة ، وأفضل الممارسات ، ومستقبل البيانات وتكنولوجيا البيانات ، انضم إلينا في DataDecisionMakers.

يمكنك حتى التفكير المساهمة بمقال خاص بك!

قراءة المزيد من DataDecisionMakers