وحدة 2 / 11

تنظيف البيانات وإعدادها: البيانات المفقودة، والقيم المتطرفة، والترميز

المكاسب:

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

يعرف كل محلل ذي خبرة حقيقة واحدة: في معظم الأوقات، لا يكون المشروع التجريبي عبارة عن نمذجة، بل تنظيف البيانات (عمل تصحيح الأخطاء، والسهو، والتناقضات في البيانات وجعلها جاهزة للتحليل). كقاعدة عامة، يتم إنفاق حوالي 70-80% من الوقت على فهم البيانات وتنظيفها وتحويلها؛ ويتبقى فقط 20-30% للتحليل الفعلي. في هذه الوحدة، سنرى خطوة بخطوة كيف يخفف الذكاء الاصطناعي (AI) هذا العبء الثقيل، ولكن ما هي القرارات التي يجب أن تظل في بالك ولماذا.

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

سير عمل التنظيف خطوة بخطوة

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

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

3. التعامل مع النقص. الخيارات: الحذف على أساس القائمة، والإسناد المتوسط/الوسيط، والإسناد المتعدد القائم على النموذج. يعد الحذف في MCAR آمنًا نسبيًا ولكنه يقلل من حجم العينة. يعتبر التعيين المتعدد أكثر ملاءمة في MAR. لا توجد طريقة بسيطة تضمن عدم التحيز في MNAR؛ يجب تصميم آلية النقص أو على الأقل إجراء تحليل الحساسية. إن ملء المتوسط ​​أمر سهل ولكنه خطير: فهو يقلل من التباين، ويضعف العلاقات، ويخفي عدم اليقين.

4. فحص القيم المتطرفة. الملاحظة الخارجية هي الملاحظة التي تقف بعيدًا جدًا عن الآخرين. افصل بين السؤالين: هل هذا خطأ (تم كتابة العمر 999 في إدخال البيانات) أم أنها قيمة حقيقية ولكنها متطرفة (دخل ملياردير)؟ إصلاح الخلل. لا تحذف القيم المتطرفة الحقيقية لأنها تمثل البيانات. إن حذف القيمة المتطرفة "لأنها تزعج" يؤدي إلى تحريف البيانات نحو النتيجة.

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

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

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

جدول المقارنة: طرق البيانات المفقودة

الطريقة

متى يكون ذلك مناسبا؟

خطر

دور الذكاء الاصطناعي

حذف صف

MCAR، معدل المفقودين المنخفض

تصبح العينة أصغر، مع انحياز في MAR/MNAR

يكتب الكود عليك أن تقرر

يعني/المهمة المتوسطة

تحليل أولي سريع

يقلل التباين، ويخفي العلاقة

إنه أمر سهل ولكنه لا ينصح به؛ يجب أن يحذر

مهمة متعددة (MI)

MAR، متغيرات مهمة

إذا لم يتم تثبيته بشكل صحيح فسيكون مضللاً

يوصي بالكود والحزمة (الفئران)

نمذجة الآلية

منار

معقدة ومكثفة الافتراضات

مسودة فقط؛ مطلوب خبير

أربع مطالبات قابلة للنسخ

1. تحديد البيانات:

دورك: مساعد تنظيف البيانات. أنا لا أشارك البيانات، أريد رمز R. لدي إطار بيانات يسمى "رقم"؛ المتغيرات: الهوية، العمر (رقمي)، الدخل (رقمي)، التعليم (فئوي)، المنطقة (فئوي)، التاريخ (تاريخ). المهمة: كتابة التعليمات البرمجية التي تنتج النوع والرقم المفقود والمعدل لكل متغير، وإحصائيات ملخصة للمتغيرات الرقمية، وجدول تكراري للمتغيرات الفئوية. أضف سطر التعليق.

2. تشخيص البيانات المفقودة:

اكتب رمزًا يفحص النموذج المفقود للبيانات "الرقمية" أعلاه: - المعدل المفقود لكل متغير، - جدول/رسم بياني بسيط يوضح علاقة الفقدان بالمتغيرات الأخرى. سوف ألقي نظرة على مخرجات الكود وأقوم بالتمييز بين MCAR/MAR/MNAR؛ أنت فقط تنتج أداة التشخيص، ولا تقرر طريقة التعيين.

3. التفتيش الخارجي (وليس الحذف):

اكتب رمزًا لـ "الدخل" المتغير الذي يفحص القيم المتطرفة دون الحذف: boxplot، والحدود المستندة إلى IQR، والجدول الذي يسرد الملاحظات الخارجية + القيم. سأرى إذا كانت هذه أخطاء أم حقيقية. إضافة الحذف التلقائي.

4. توحيد الترميز:

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

موجه ضعيف / موجه قوي

حث ضعيف:

قم بتنظيف البيانات، وملء الفجوات، وتجاهل القيم المتطرفة.

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

مطالبة قوية:

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

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

ثلاث حالات صغيرة

الحالة 1 - فخ التعيين المتوسط. كانت بيانات دخل أحد المحللين لـ 5000 شخص مفقودة بنسبة 18٪. وطلب من منظمة العفو الدولية "سد الثغرات". لقد قام الذكاء الاصطناعي بحساب متوسطهم جميعًا. النتيجة: انخفاض تباين الدخل بنسبة 22%، وتبين أن معامل العلاقة بين التعليم والدخل أضعف مما كان عليه. الطريقة الصحيحة: كان النقص MAR (بسبب التعليم)، وكان لا بد من سده عن طريق مهمة متعددة (الفئران). الدرس المستفاد: طريقة التعبئة تعتمد على الآلية.

الحالة 2 - التنظيف الخارجي يعكس النتيجة. كانت هناك 3 شركات كبيرة جدًا (0.6% من إجمالي الملاحظة) في بيانات شركة واحدة. تم حذفها من خلال اقتراح "التنظيف" الذي قدمه الذكاء الاصطناعي؛ وتحول معامل اقتصاديات الحجم من الموجب إلى السالب. ومع ذلك، كانت تلك الشركات الثلاث حقيقية وجزءًا مهمًا من الصناعة. وكانت الطريقة الصحيحة هي الإبلاغ بتقدير كامل وقوي بدلاً من الحذف. الدرس المستفاد: القيم المتطرفة الحقيقية هي البيانات، وليس الضوضاء.

الحالة 3 - خطأ ترميز صامت. في إحدى اللوحات، جاء متغير التاريخ بتنسيقين مختلفين ("2020-03-01" و"01/03/2020"). وعندما أخطأ الكود البرمجي الذي أنتجه الذكاء الاصطناعي في اعتبارها قيمًا مختلفة، أصبحت 1400 ملاحظة غير متطابقة وأصبحت معدلات النمو سخيفة. لا يهم إذا لم يتحقق المحلل من عدد الصفوف. الدرس المستفاد: تعد عمليات المراقبة والتحقق من السلامة بعد كل خطوة أمرًا ضروريًا.

الأخطاء الشائعة

  • ملء الفجوة بشكل أعمى بالمتوسط. فهو يقلل من التباين، ويخفي عدم اليقين، ويخلق التحيز في MAR/MNAR. أولا تصنيف الآلية.
  • حذف القيمة المتطرفة "لأنها تزعج". تمثل القيم المتطرفة الحقيقية البيانات؛ الحذف هو ثني النتيجة. صحح ما هو خطأ، واحتفظ بما هو حقيقي.
  • التنصت على البيانات الخام. لا تقم أبدًا بتعديل البيانات الأولية؛ قم بإجراء جميع عمليات التنظيف باستخدام الكود في نسخة منفصلة حتى يمكن الرجوع إليه.
  • عدم قياس تأثير الخطوات. إذا لم يتم التحقق من عدد الصفوف وإحصائيات الملخص بعد كل خطوة، فسوف تتراكم الأخطاء الصامتة.
  • تنظيف نتيجة لذلك. منطق "عندما تضيف هذا السطر تصبح النتيجة أفضل" هو p-hacking؛ يجب التخطيط للتنظيف قبل نتيجة التحليل وبشكل مستقل عنها.
نصيحة: احتفظ بجدول "قبل/بعد" الذي يضع نفس الإحصائيات الأساسية (المتوسط، والوسيط، وعدد الملاحظات، وبعض الارتباطات) جنبًا إلى جنب قبل وبعد عملية التنظيف. القفزة غير المتوقعة هي أفضل نذير لخطأ مخفي.

باختصار

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

مهمة التطبيق

حدد متغيرين على الأقل يحتويان على قيم متطرفة ومفقودة في مجموعة بيانات (بياناتك الخاصة أو مجموعة نماذج). اطلب رمزًا تشخيصيًا من الذكاء الاصطناعي عبر المطالبة "خطوة بخطوة، لا تحذف/تملأ" أعلاه وقم بتشغيله. صنف النقص إلى MCAR/MAR/MNAR واكتب مبررك في جملة واحدة. افحص المرشحين المتناقضين واحدًا تلو الآخر وحدد أيهما خطأ وأيهما حقيقي. أخيرًا، قم بإعداد جدول "قبل-بعد" قبل/بعد التنظيف وأبلغ إذا كانت هناك أي تغييرات غير متوقعة.

قائمة مرجعية

  • [ ] قمت بتنظيف البيانات الأولية في نسخة منفصلة دون تغييرها.
  • [ ] قمت بتصنيف النقص إلى MCAR/MAR/MNAR واخترت الطريقة وفقًا لذلك.
  • [ ] قمت بفحص القيم المتطرفة واحدًا تلو الآخر سواء كانت أخطاء أم حقيقية؛ لم أحذفه بشكل أعمى.
  • [ ] لقد قمت بفحص عدد الملاحظات والإحصائيات الموجزة بعد كل خطوة تنظيف.
  • [ ] لقد قمت بتوثيق جميع الخطوات بالكود وسطر التعليق؛ عكسها.
  • [ ] لقد اعتمدت في عملية التنظيف على معرفة العملية التي تنتج البيانات، وليس على نتيجة التحليل.