البيانات الرقمية: التسوية

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

  • تتراوح سمة X بين 154 و24,917,482.
  • تتراوح سمة Y بين 5 و22.

تغطّي هاتان السمتان نطاقات مختلفة جدًا. قد تؤدي عملية التسويف إلى التلاعب بقيمة X وY لكي تتراوح بين قيمتَين مشابهتَين، ربما من 0 إلى 1.

توفّر عملية التسويّة المزايا التالية:

  • تساعد النماذج على التقارب بشكل أسرع أثناء التدريب. عندما يكون لبعض السمات نطاقات مختلفة، يمكن أن يؤدي "التناقص التدرّجي" إلى "الارتداد" وتباطؤ عملية التقارب. ومع ذلك، فإنّ أدوات التحسين الأكثر تقدمًا، مثل Adagrad وAdam، تحمي من هذه المشكلة من خلال تغيير معدّل التعلّم الفعّال بمرور الوقت.
  • تساعد النماذج في استنتاج توقّعات أفضل. عندما يكون للميزات المختلفة نطاقات مختلفة، قد يقدّم النموذج الناتج توقّعات أقل فائدةً إلى حدٍ ما.
  • يساعد في تجنُّب "فخ NaN" عندما تكون قيم السمات مرتفعة جدًا. NaN هو اختصار لعبارة ليس رقمًا. عندما تتجاوز قيمة في أحد النماذج الحدّ الأقصى لدقة النقطة العائمة، يضبط النظام القيمة على NaN بدلاً من عدد. عندما يصبح رقم واحد في النموذج NaN، تصبح الأرقام الأخرى في النموذج أيضًا NaN في نهاية المطاف.
  • تساعد هذه العملية النموذج على تعلم الأوزان المناسبة لكلّ ميزة. بدون تكييف الميزات، يولي النموذج اهتمامًا كبيرًا للميزات ذات النطاقات الواسعة ولا يولي اهتمامًا كافيًا للميزات ذات النطاقات الضيقة.

ننصحك بتسويه الخصائص الرقمية التي تغطي نطاقات مختلفة بشكلٍ واضح (مثل العمر والدخل). ننصحك أيضًا بتسويه خاصية رقمية واحدة تغطي نطاقًا واسعًا، مثل city population..

ننصحك بالانتباه إلى السمتَين التاليتَين:

  • أدنى قيمة للميزة A هي -0.5 وأعلى قيمة هي +0.5.
  • أدنى قيمة للميزة B هي -5.0 وأعلى قيمة هي +5.0.

تمتلك الميزة A والميزة B نطاقًا ضيقًا نسبيًا. ومع ذلك، فإنّ نطاق العنصر B أوسع بعشر مرات من نطاق العنصر A. ولذلك:

  • في بداية التدريب، يفترض النموذج أنّ السمة B "أهم" عشرة أضعاف من السمة A.
  • سيستغرق التدريب وقتًا أطول من المعتاد.
  • وقد يكون النموذج الناتج أقل من المستوى المطلوب.

سيكون الضرر الإجمالي الناتج عن عدم تسويتها صغيرًا نسبيًا، ومع ذلك، ننصحك بتسويتها على المقياس نفسه، ربما من -1.0 إلى +1.0.

لنلقِ الآن نظرة على سمتَين تتباين نطاقاتهما بشكل أكبر:

  • أدنى قيمة للميزة C هي -1 وأعلى قيمة هي +1.
  • أدنى قيمة للميزة D هي 5000 والقيمة الأعلى هي 1,000,000,000.

في حال عدم تسويف السمة C والسمة D، من المرجّح أن يكون نموذجك غير مثالي. بالإضافة إلى ذلك، سيستغرق التدريب وقتًا أطول بكثير لمحاولة التقارب أو قد يتعذّر عليه التقارب تمامًا.

يتناول هذا القسم ثلاث طرق شائعة للتسوية:

  • التكبير/التصغير الخطي
  • تكبير الدرجة المعيارية
  • توسيع نطاق السجلّ

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

التحجيم الخطي

التصغير/التكبير الخطي (يُختصر عادةً إلى التصغير/التكبير فقط) يعني تحويل قيم النقطة العائمة من نطاقها الطبيعي إلى نطاق عادي، عادةً من 0 إلى 1 أو -1 إلى +1.

استخدِم الصيغة التالية للتكبير إلى النطاق العادي 0 إلى 1، شاملاً:

x=(xxmin)/(xmaxxmin)

حيث:

  • x هي القيمة التي تمّ توسيعها.
  • x هي القيمة الأصلية.
  • xmin هي أدنى قيمة في مجموعة بيانات هذه الميزة.
  • xmax هي أعلى قيمة في مجموعة بيانات هذه الميزة.

على سبيل المثال، لنفترض أنّ هناك سمة باسم quantity يتراوح قياسها الطبيعي بين 100 و900. لنفترض أنّ القيمة الطبيعية لـ quantity في مثال معيّن هي 300. وبالتالي، يمكنك احتساب القيمة المعدَّلة للقيمة 300 على النحو التالي:

  • x = 300
  • xmin = 100
  • xmax = 900
x' = (300 - 100) / (900 - 100)
x' = 200 / 800
x' = 0.25

يُعدّ التكبير/التصغير الخطي خيارًا جيدًا عند استيفاء جميع الشروط التالية:

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

لنفترض أنّ الشخص age هو ميزة. التكبير/التصغير الخطي هو أسلوب معالجة جيد للبيانات في age لأنّه:

  • تتراوح الحدود الدنيا والعليا التقريبية بين 0 و100.
  • يحتوي age على نسبة صغيرة نسبيًا من القيم الشاذة. لا يتجاوز عدد الأشخاص الذين تزيد أعمارهم عن 100 عام% 0.3 من السكان.
  • على الرغم من أنّ فئات عمرية معيّنة يتم تمثيلها بشكل أفضل من غيرها، يجب أن تحتوي مجموعة البيانات الكبيرة على أمثلة كافية لجميع الفئات العمرية.

تمرين: التحقّق من فهمك

لنفترض أنّ نموذجك يتضمّن سمة باسم net_worth تحتوي على القيمة الصافية لأشخاص مختلفين. هل سيكون التكبير/التصغير الخطي أسلوبًا جيدًا للتسوية في net_worth؟ ما سبب ذلك؟

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


تكبير الدرجة المعيارية

النتيجة المعيارية هي عدد الانحرافات المعيارية التي تبعد بها قيمة عن المتوسط. على سبيل المثال، إذا كانت القيمة أكبر من المتوسط بمقدار انحرافين معياريين، يكون لها مقياس Z‏ +2.0. إذا كانت القيمة أقل من المتوسط بمقدار 1.5 انحرافات معيارية، يكون لها مقياس Z يساوي -1.5.

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

  • على يمين الصفحة، توزيع عادي كلاسيكي.
  • على يسار الصفحة، التوزيع نفسه بعد تسويته باستخدام مقياس النتيجة المعيارية.
الشكل 4.  مدرجَان تكراريان: يعرض كلاهما توزيعات عادية
           بالتوزيع نفسه. الرسم البياني الشريطي الأول الذي يحتوي على بيانات أساسية
           له متوسط 200 وانحراف معياري يبلغ 30. المدرج التكراري
           الثاني الذي يحتوي على نسخة من مقياس Z للتوزيع
           الأول له متوسط 0 وانحراف معيّن يبلغ 1.
الشكل 4. البيانات الأوّلية (على يمين الشاشة) مقارنةً بدرجة Z (على يمين الشاشة) لتوزيع عادي

يُعدّ استخدام مقياس الدرجة القياسية (الدرجة z) خيارًا جيدًا أيضًا للبيانات مثل تلك الموضّحة في الشكل التالي، والتي تتضمّن توزيعًا طبيعيًا بشكل غامض فقط.

الشكل 5.  رسمان بيانيان هرميّان الشكل متطابقان، يعرض كل منهما صعودًا شديدًا
            إلى مستوى ثابت ثم نزولًا سريعًا نسبيًا متبوعًا
            بانخفاض تدريجي يوضّح أحد المدرجَين التكراريَين
            توزيع البيانات الأوّلية، ويوضّح المدرج التكراري الآخر
            توزيع البيانات الأوّلية عند تسويتها من خلال توسيع النتيجة المعيارية.
            القيم على محور X في المدرجَين التكراريَين مختلفة جدًا.
            يتراوح المدرج التكراري للبيانات الأوّلية بين 0 و29,000، في حين يتراوح المدرج التكراري الذي تمّ قياسه حسب مقياس "معدّل Z" بين -1 و4.8 تقريبًا.
الشكل 5. البيانات الأوّلية (على يمين الشاشة) مقارنةً بتوسيع نطاق الدرجة المعيارية (على يمين الشاشة) لتوزيع عادي غير كلاسيكي

استخدِم الصيغة التالية لتسويه قيمة x لتكون قياسًا عاديًا مقارنةً بمتوسط القيمة المعيارية:

x=(xμ)/σ

حيث:

  • x هي درجة "ي" المعيارية.
  • x هي القيمة الأولية، أي أنّ x هي القيمة التي تتم تسويتها.
  • μ هو المتوسط.
  • σ هو الانحراف المعياري.

على سبيل المثال، لنفترض ما يلي:

  • المتوسط = 100
  • الانحراف المعياري = 20
  • القيمة الأصلية = 130

ولذلك:

  Z-score = (130 - 100) / 20
  Z-score = 30 / 20
  Z-score = +1.5

في التوزيع الطبيعي الكلاسيكي:

  • يجب أن يكون لدى% 68.27 على الأقل من البيانات نتيجة اختبار Z بين -1.0 و1.0.
  • يجب أن يكون لدى% 95.45 على الأقل من البيانات مقياس Z-score بين -2.0 و+2.0.
  • تبلغ نسبة% 99.73 على الأقل من البيانات حاصل القيمة Z بين -3.0 و+3.0.
  • تبلغ نسبة ‎99.994% على الأقل من البيانات حاصل القيمة Z بين -4.0 و+4.0.
وبالتالي، تكون نقاط البيانات التي يكون لها مقياس Z أقل من -4.0 أو أكثر من +4.0 نادرًا، ولكن هل هي قيم شاذة حقًا؟ بما أنّ القيم الشاذة هي مفهوم بدون تعريف صارم، لا يمكن لأحد الجزم بذلك. يُرجى العِلم أنّ مجموعة البيانات التي تحتوي على عدد كبير بما يكفي من الأمثلة ستحتوي بالتأكيد على الأقل على بعض هذه الأمثلة "النادرة". على سبيل المثال، يمكن أن تحتوي سمة تتضمّن مليار مثال متوافق مع نظرية قياس الأداء الكلاسيكية على ما يصل إلى 60,000 مثال بنتيجة خارج النطاق من -4.0 إلى +4.0.

يُعدّ "معدّل Z" خيارًا جيدًا عندما تتّبع البيانات توزيعًا طبيعيًا أو توزيعًا يشبه التوزيع الطبيعي إلى حدّ ما.

يُرجى العِلم أنّ بعض التوزيعات قد تكون عادية في معظم نطاقها، ولكنّها لا تزال تحتوي على قيم شاذة متطرفة. على سبيل المثال، قد تتوافق جميع النقاط تقريبًا في ميزة net_worth بشكلٍ جيد مع 3 انحرافات معيارية، ولكن قد تكون بعض الأمثلة على هذه الميزة مئات الانحرافات المعيارية بعيدًا عن المتوسط. في هذه الحالات، يمكنك دمج توسيع نطاق نتيجة الاختبار المعياري Z مع شكل آخر من أشكال التسويف (عادةً ما يكون الاقتصاص) للتعامل مع هذا الموقف.

تمرين: التحقّق من فهمك

لنفترض أنّ النموذج يتدرّب على سمة باسم height تحتوي على قياسات الطول الخاصة بالنساء البالغات في عشرة ملايين امرأة. هل سيكون استخدام مقياس الدرجة المعيارية (Z-score) أسلوبًا جيدًا للتوحيد في height؟ ما سبب ذلك؟

الإجابة: سيكون استخدام مقياس "معدّل Z" أسلوبًا جيدًا للتسوية لـ height لأنّ هذه الميزة تتوافق مع التوزيع الطبيعي. تشير عشرة ملايين مثال إلى وجود الكثير من القيم الشاذة، والتي قد تكون كافية لشدّة تعرّف النموذج على أنماط في نتائج "مقياس Z" العالية جدًا أو المنخفضة جدًا.


تكبير السجلّ

تُستخدَم طريقة "تكبير/تصغير اللوغاريتم" لاحتساب اللوغاريتم للقيمة الأولية. من الناحية النظرية، يمكن أن يكون للوغاريتم أي أساس، ولكن من الناحية العملية، يحسب عادةً توسيع اللوغاريتم اللوغاريتم الطبيعي (ln).

استخدِم الصيغة التالية لتسويه قيمة x ل سجلّها:

x=ln(x)

حيث:

  • x هو اللوغاريتم الطبيعي لـ x.
  • القيمة الأصلية = 54.598

وبالتالي، فإنّ سجلّ القيمة الأصلية هو 4.0 تقريبًا:

  4.0 = ln(54.598)

يكون التكبير اللوغاريتمي مفيدًا عندما تكون البيانات متوافقة مع توزيع قانون القوة. بشكل عام، يبدو توزيع قانون الطاقة على النحو التالي:

  • تكون القيم المنخفضة X لها قيم Y مرتفعة جدًا.
  • مع زيادة قيم X، تنخفض قيم Y بسرعة. ونتيجةً لذلك، تكون القيم العالية لسمة X مرتبطة بقيم منخفضة جدًا لسمة Y.

تشكّل تقييمات الأفلام مثالاً جيدًا على توزيع قانون الطاقة. في الشكل التالي، يُرجى ملاحظة ما يلي:

  • تقييمات كثيرة من المستخدمين لعدد قليل من الأفلام (ترتبط القيم المنخفضة لسمة X بقيَم Y مرتفعة).
  • لا تتلقّى معظم الأفلام سوى عدد قليل جدًا من تقييمات المستخدمين. (ترتبط القيم العالية لـ X بقيم Y المنخفضة.)

يؤدي تغيير مقياس اللوغاريتم إلى تغيير التوزيع، ما يساعد في تدريب نموذج سيؤدي بدوره إلى إجراء توقّعات أفضل.

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

في المثال الثاني، تتوافق مبيعات الكتب مع توزيع قانون الطاقة لأنّه:

  • يبيع معظم الكتب المنشورة عددًا صغيرًا من النُسخ، ربما مائة نسخة أو اثنتان.
  • تبيع بعض الكتب عددًا معتدلاً من النُسخ، بالآلاف.
  • ولن تبيع سوى بعض الكتب الأكثر مبيعًا أكثر من مليون نسخة.

لنفترض أنّك تدرِّب نموذجًا خطيًا للعثور على العلاقة بين أغلفة الكتب ومبيعاتها مثلاً. إنّ تدريب نموذج خطي على القيم الأولية يجب أن يجد شيئًا عن أغلفة الكتب التي تبيع مليون نسخة يكون أكثر فعالية بمقدار 10,000 مرة من أغلفة الكتب التي تبيع 100 نسخة فقط. ومع ذلك، فإنّ تكبير جميع أرقام المبيعات على شكل لوغاريتمي يجعل المهمة أكثر جدوى. على سبيل المثال، اللوغاريتم لـ 100 هو:

  ~4.6 = ln(100)

في حين أنّ اللوغاريتم لـ 1,000,000 هو:

  ~13.8 = ln(1,000,000)

وبالتالي، فإنّ اللوغاريتم لـ 1,000,000 أكبر بثلاث مرات تقريبًا من اللوغاريتم لـ 100. يمكنك تخيل أنّ غلاف الكتاب الأكثر مبيعًا يكون أقوى (بطريقة ما) ثلاث مرات من غلاف الكتاب الذي يُباع بكميات قليلة.

الاقتصاص

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

على سبيل المثال، تخيل مجموعة بيانات تحتوي على سمة باسم roomsPerPerson، التي تمثّل عدد الغرف (إجمالي الغرف مقسومًا على عدد المقيمين) في منازل مختلفة. يوضّح الرسم البياني التالي أنّ أكثر من% 99 من قيم السمات تتوافق مع توزيع طبيعي (متوسط تقريبي هو 1.8 وانحراف معياري هو 0.7). ومع ذلك، تحتوي الميزة على بعض القيم الشاذة، وبعضها شديد الشذوذ:

الشكل 7 رسم بياني لعدد الغرف لكل شخص يضمّ جميع القيم تقريبًا
            التي تتراوح بين 0 و4، ولكن هناك ذيل طويل جدًا
            يصل إلى 17 غرفة لكل شخص
الشكل 7. طبيعية بشكل أساسي، ولكن ليس تمامًا

كيف يمكنك تقليل تأثير القيم الشاذة القصوى؟ حسنًا، ينطبق ذلك لأنّ )"مخطّط الشرائح)" ليس توزيعًا متساويًا أو توزيعًا طبيعيًا أو توزيعًا وفقًا لقانون القوة. ماذا لو حدّدت أو قطعت الحد الأقصى لقيمة roomsPerPerson عند قيمة عشوائية، مثل 4.0؟

رسم بياني لعدد الغرف لكل شخص تكون فيه جميع القيم بين 0 و
            4.0 شكل الرسم البياني على شكل جرس، ولكن هناك تلة شاذة عند 4.0
الشكل 8. اقتصاص قيم العناصر عند 4.0

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

يُرجى الانتظار. هل يمكنك فعلاً تقليل كل قيمة شاذة إلى حدّ صعِب تحديده؟ نعم، عند تدريب نموذج.

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

  • اقتطع نتائج "مقياس ز" التي تزيد عن 3 لتصبح 3 بالضبط.
  • اقتطع نتائج "مقياس ز" التي تقل عن -3 لتصبح -3 بالضبط.

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

ملخّص لتقنيات التسويّة

أسلوب التسويةالصيغةحالات الاستخدام
التحجيم الخطي
x=xxminxmaxxmin
عندما تكون الميزة موزّعة بشكلٍ موحّد على سطح نطاق ثابت
تكبير الدرجة المعيارية
x=xμσ
عندما لا يحتوي توزيع العناصر على قيم شاذة متطرفة
تكبير السجلّ
x=log(x)
عندما تكون الميزة متوافقة مع قانون الطاقة
الاقتصاص إذا كان x>max، اضبط x=max
إذا كان x<min، اضبط x=min
عندما تحتوي الميزة على قيم شاذة للغاية

تمرين: اختبار معلوماتك

ما هي التقنية الأنسب لتسويه سمة ذات التوزيع التالي؟

مخطّط بياني هرمي يعرض مجموعة من البيانات التي تتضمّن قيمًا تتراوح بين 0 و
          200,000 يزداد عدد نقاط البيانات تدريجيًا في النطاق
          من 0 إلى 100,000 ثم ينخفض تدريجيًا من 100,000 إلى
          200,000.

التحجيم الخطي
تكبير الدرجة المعيارية
تكبير السجلّ
الاقتصاص

لنفترض أنّك تعمل على تطوير نموذج يتنبّأ بإنتاجية مركز البيانات استنادًا إلى درجة الحرارة المقاسة داخل مركز البيانات. تقع جميع قيم temperature تقريبًا في مجموعة البيانات بين 15 و30 (درجة مئوية)، باستثناء الحالات التالية:

  • مرة أو مرتَين في السنة، في الأيام الحارة جدًا، يتم تسجيل بعض القيم التي تتراوح بين 31 و45 في temperature.
  • يتم ضبط كل نقطة في temperature على 1,000 بدلاً من درجة الحرارة الفعلية.

ما هي تقنية التسويف المعقولة لقياس temperature؟

احذف قيم القيم الشاذة بين 31 و45، ولكن اقطع القيم الشاذة التي تبلغ قيمتها 1,000.
اقتصاص جميع القيم الشاذة
حذف جميع القيم الشاذة
اقتطع قيم القيم الشاذة بين 31 و45، ولكن احذف القيم الشاذة التي تبلغ قيمتها 1,000.