الفصل 6 - كيفية تعلم الهندسة ميزة؟

سلسلة آلة التعلم!

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

الخطوط العريضة

1.ما هي الهندسة المميزة؟
2. البيانات قبل المعالجة
 2.1 عدم الأبعاد
 2.1.1 التطبيع
 2.1.2 طريقة التحجيم الفاصل
 2.1.3 الفرق بين التطبيع والتطبيع
 2.2 ربط الميزات الكمية
 2.3 زوج من الميزات النوعية مات الترميز
 2.4 حساب القيم المفقودة
 2.5 تحويل البيانات
3 خصائص حدد
 3.1 مرشح
 3.1.1 طريقة اختيار التباين
 3.1.2 طريقة معامل الارتباط
 3.1.3 اختبار مربع كاي
 3.1.4 طريقة المعلومات المتبادلة
 3.2 التفاف
 3.2.1 طريقة إزالة الميزة العودية
 3.3 المضمنة
 3.3.1 طريقة اختيار الميزات المستندة إلى العقوبات
 3.3. 2 طريقة اختيار الميزة المستندة إلى شجرة
4 الحد من الأبعاد
 1.4 تحليل المكون الرئيسي (PCA)
 4.2 تحليل التمييز الخطي (LDA)

1. ما هي الهندسة المميزة؟

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

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

في هذه الورقة ، يتم استخدام مجموعة بيانات IRIS (Iris) في sklearn لتوضيح وظائف معالجة الميزات. تم تجميع مجموعة بيانات IRIS بواسطة Fisher في عام 1936 وهي تحتوي على أربع ميزات (Sepal.Length ، Sepal.Width ، Petal.Length ، Petal.Width) ، القيم المتماثلة eigen ، كلاهما أرقام نقطية عائمة إيجابية بالسنتيمتر. القيمة المستهدفة هي تصنيف Iris (Iris Setosa) ، Iris Versicolour (Iris Virginica) ، Iris Virginica (Virginia Iris). رمز لاستيراد مجموعة بيانات IRIS كالتالي:

2. معالجة البيانات مسبقا

من خلال استخراج الميزات ، يمكننا الحصول على ميزات غير مجهزة ، وقد تواجه الميزات في الوقت الحالي المشكلات التالية:

  • لا ينتمي إلى نفس البعد: أي أن مواصفات الميزات مختلفة ولا يمكن مقارنتها معًا. يمكن عدم الأبعاد حل هذه المشكلة.
  • التكرار في المعلومات: بالنسبة لبعض الميزات الكمية ، فإن المعلومات الفعالة الواردة هي تقسيم الفاصل ، مثل التحصيل الدراسي. إذا كنت تهتم فقط بـ "اجتياز" أو "لا تجتاز" ، فستحتاج إلى تحويل درجة الاختبار الكمي إلى "1" و "0". يشير "" المارة والفشل. Binarization يمكن أن تحل هذه المشكلة.
  • لا يمكن استخدام الميزات النوعية مباشرةً: يمكن لبعض خوارزميات ونماذج التعلم الآلي قبول المدخلات من الميزات الكمية فقط ، لذلك يلزم تحويل الميزات النوعية إلى ميزات كمية. أسهل طريقة هي تحديد قيمة كمية لكل قيمة نوعية ، ولكن هذه الطريقة مرنة للغاية وتزيد من عمل التوليف. عادة ما يتم تحويل الميزة النوعية إلى ميزة كمية عن طريق الترميز وهمية: إذا كانت هناك قيم نوعية N ، ثم يتم تمديد هذه الميزة إلى ميزات N. عندما تكون قيمة الميزة الأصلية هي القيمة النوعية رقم i ، يتم تعيين ميزة رقم i الموسعة. هو 1 ، يتم تعيين ميزات ملحق أخرى بقيمة 0. مقارنة مع الطريقة المحددة مباشرة ، لا تحتاج طريقة الترميز البكم إلى زيادة عمل ضبط المعلمة. بالنسبة للنموذج الخطي ، يمكن أن يحقق استخدام ميزة التشفير الغبي تأثيرًا خطيًا.
  • هناك قيم مفقودة: يجب إضافة القيم المفقودة.
  • استخدام المعلومات المنخفضة: تستخدم خوارزميات ونماذج التعلم الآلي المختلفة معلومات مختلفة في البيانات. كما ذكرنا سابقًا ، في النماذج الخطية ، يمكن أن يحقق استخدام الترميز البكم للميزات النوعية تأثيرات غير خطية. وبالمثل ، فإن تعدد الحدود للمتغيرات الكمية ، أو التحولات الأخرى ، يمكن أن يحقق تأثيرات غير خطية.

نحن نستخدم مكتبة preproccessing في sklearn للمعالجة المسبقة للبيانات لتغطية حل المشكلة أعلاه.

2.1 بلا أبعاد

يحول Dimensionless بيانات المواصفات المختلفة إلى نفس المواصفات. الطرق غير الأبعاد الشائعة هي التقييس وتوسيع الفاصل الزمني. فرضية التقييس هي أن القيم الذاتية تتبع التوزيع الطبيعي ، وبعد التطبيع ، يتم تحويلها إلى توزيع عادي قياسي. تستخدم طريقة تحجيم الفاصل معلومات القيمة الحدية لتوسيع نطاق الميزات إلى مجموعة من الميزات ، مثل [0 ، 1].

2.1.1 التقييس

يتطلب التقييس حساب المتوسط ​​والانحراف المعياري للميزة ، معبراً عنه على النحو التالي:

التعليمة البرمجية التي تطبيع البيانات باستخدام فئة StandardScaler من مكتبة preproccessing كما يلي:

2.1.2 طريقة التحجيم الفاصل

هناك العديد من الأفكار للتحجيم الفاصل. واحد مشترك هو استخدام اثنين من القيم القصوى للقياس. يتم التعبير عن الصيغة كـ:

رمز لتغيير الفاصل الزمني للبيانات باستخدام فئة MinMaxScaler من مكتبة preproccessing كما يلي:

2.1.3 الفرق بين التقييس والتطبيع

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

التعليمة البرمجية التي تطبيع البيانات باستخدام فئة Normalizer في مكتبة preproccessing كما يلي:

2.2 الميزات الكمية الثنائية

جوهر الترميز الثنائي للميزات هو تحديد عتبة. القيمة أكبر من العتبة هي 1 والقيمة أقل من أو تساوي العتبة هي 0. الصيغة كما يلي:

رمز binarizing البيانات باستخدام فئة Binarizer من مكتبة preproccessing كما يلي:

2.3 للحصول على ميزات نوعية الترميز البكم

نظرًا لأن ميزات مجموعة بيانات IRIS هي جميعها ميزات كمية ، يتم استخدام قيمها المستهدفة للترميز الوهمي (غير مطلوبة فعليًا). يكون رمز ترميز البيانات الغبية باستخدام فئة OneHotEncoder في مكتبة ما قبل الوصول كما يلي:

2.4 حساب القيمة المفقودة

نظرًا لأن مجموعة بيانات IRIS لا تحتوي على قيم مفقودة ، تتم إضافة عينة جديدة إلى مجموعة البيانات ، ويتم تعيين قيمة NaN لكل الميزات الأربعة ، مما يشير إلى أن البيانات مفقودة. يكون رمز عمليات حساب البيانات المفقودة باستخدام فئة Imputer في مكتبة preproccessing كما يلي:

2.5 تحويل البيانات

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

رمز التحويل متعدد الحدود للبيانات باستخدام فئة PolynomialFeatures لمكتبة ما قبل الوصول كما يلي:

يمكن إجراء تحويل البيانات استنادًا إلى دالة وسيطة واحدة بطريقة موحدة. رمز لتحويل دالة لوغاريتمية البيانات باستخدام FunctionTransformer من مكتبة preproccessing كما يلي:

3. اختيار الميزة

عند اكتمال معالجة البيانات المسبقة ، نحتاج إلى تحديد خوارزميات ذات معنى ونماذج الآلات لتعلم الآلة للتدريب. بشكل عام ، اختر الميزات من منظورين:

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

وفقًا لشكل اختيار الميزة ، يمكن تقسيم طريقة اختيار الميزة إلى ثلاثة أنواع:

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

نحن نستخدم مكتبة feature_selection في sklearn لاختيار الميزة.

3.1 مرشح
3.1.1 طريقة اختيار التباين

باستخدام طريقة اختيار التباين ، يتم حساب التباين لكل ميزة أولاً ، ثم يتم تحديد الميزة التي يزيد تباينها عن العتبة وفقًا للعتبة. رمز تحديد الميزات باستخدام فئة Variance Threshold لمكتبة feature_selection هو كما يلي:

3.1.2 طريقة معامل الارتباط

باستخدام طريقة معامل الارتباط ، يتم أولاً حساب معامل الارتباط لكل ميزة بالقيمة الهدف وقيمة P لمعامل الارتباط. استخدم فئة SelectKBest لمكتبة feature_selection لدمج معاملات الارتباط لتحديد رمز الميزة كما يلي:

3.1.3 اختبار مربع كاي

يتمثل اختبار chi-square الكلاسيكي في اختبار ارتباط المتغيرات المستقلة النوعية بالمتغيرات النوعية التابعة. افترض أن المتغير المستقل له أنواع من القيم ، وأن المتغير التابع له أنواع من القيم. ضع في اعتبارك الفرق بين القيمة المرصودة والقيمة المتوقعة لتردد العينة الذي يكون المتغير المستقل مساوًا له i والمتغير التابع مساويًا j ، وبناء الإحصاء:

ليس من الصعب العثور على أن معنى هذه الإحصائية هو ببساطة علاقة المتغير المستقل بالمتغير التابع. استخدم فئة SelectKBest لمكتبة feature_selection بالاقتران مع اختبار chi-square لتحديد رمز الميزة كما يلي:

3.1.4 طريقة المعلومات المتبادلة

تُستخدم المعلومات المتبادلة الكلاسيكية أيضًا لتقييم ارتباط المتغيرات المستقلة النوعية بالمتغيرات التابعة النوعية. صيغة حساب المعلومات المتبادلة هي كما يلي:

من أجل معالجة البيانات الكمية ، يتم اقتراح الحد الأقصى لطريقة معامل المعلومات. التعليمة البرمجية التي تستخدم الفئة SelectKBest لمكتبة feature_selection مقترنة مع الحد الأقصى لطريقة معامل المعلومات لتحديد الميزات هي كما يلي:

3.2 التفاف
3.2.1 العودية ميزة القضاء

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

3.3 المضمنة
3.3.1 اختيار الميزة المستندة إلى العقوبات

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

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

استخدم فئة SelectFromModel لمكتبة feature_selection بالاقتران مع نموذج الانحدار اللوجستي مع شروط عقوبة L1 و L2 لتحديد رمز الميزة كما يلي:

3.3.2 اختيار الميزة على أساس نموذج الشجرة

في نموذج الشجرة ، يمكن أيضًا استخدام GBDT كنموذج أساسي لاختيار الميزة. يتم تحديد رمز الميزة باستخدام فئة SelectFromModel في مكتبة feature_selection بالاقتران مع نموذج GBDT.

4. تخفيض الأبعاد

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

4.1 تحليل المكونات الرئيسية (PCA)

رمز تحديد الميزات باستخدام فئة PCA في مكتبة التحلل هو كما يلي:

4.2 تحليل التمييز الخطي (LDA)

رمز تحديد الميزات باستخدام فئة LDA لمكتبة lda كما يلي:

المراجع:

  1. https://www.quora.com/topic/Data-Cleansing
  2. https://www.quora.com/What-is-the-real-meaning-of-data-cleaning-for-a-Data-Scientist
  3. https://www.quora.com/What-is-your-best-description-of-data-cleaning-in-data-analysis-and-machine-learninghttps://www.quora.com/What-is- الخاص بك أفضل وصف لبيانات التنظيف في وتحليل البيانات وآلة التعلم