Evalml: فشل تشغيل AutoML على Iris Dataset

تم إنشاؤها على ٢٣ يوليو ٢٠٢٠  ·  3تعليقات  ·  مصدر: alteryx/evalml

تشغيل Evalml 0.11.2. يبدو أن خيار تعيين عمليات التحقق من البيانات على False قد تمت إزالته من AutoMLSearch ، والذي كان بمثابة حل بديل لهذه المشكلة سابقًا.


TypeError Traceback (أحدث مكالمة أخيرة)
في
1 automl = AutoMLSearch (الهدف = "log_loss_multi" ، max_pipelines = 5 ، problem_type = "multiclass")
2
----> 3 البحث الآلي (X، y)

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site -packs \ Evalml \ automl \ automl_search.py ​​في البحث (self، X، y، data_checks، feature_types، lift_errors، show_iteration_plot)
316
317 data_checks = self._validate_data_checks (فحص البيانات)
-> 318 data_check_results = data_checks.validate (X، y)
319
320 if len (data_check_results)> 0:

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ EVALml \ data_checks \ data_checks.py in validate (self، X، y)
33 رسالة = []
34 لفحص البيانات في self.data_checks:
---> 35 messages_new = data_check.validate (X، y)
36 message.extend (messages_new)
37 رسالة عودة

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ Evalml \ data_checks \ label_leakage_data_check.py في التحقق من الصحة (self، X، y)
53 إذا كان len (X.columns) == 0:
54 عودة []
---> 55 corrs = {التسمية: القيمة المطلقة (y.corr (col)) للتسمية ، العمود في X.iteritems () إذا كانت القيمة المطلقة (y.corr (col))> = self.pct_corr_threshold}
56
57 high_corr_cols = {key: value for key، value in corrs.items () if value> = self.pct_corr_threshold}

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ Evalml \ data_checks \ label_leakage_data_check.py in(.0)
53 إذا كان len (X.columns) == 0:
54 عودة []
---> 55 corrs = {التسمية: القيمة المطلقة (y.corr (col)) للتسمية ، العمود في X.iteritems () إذا كانت القيمة المطلقة (y.corr (col))> = self.pct_corr_threshold}
56
57 high_corr_cols = {key: value for key، value in corrs.items () if value> = self.pct_corr_threshold}

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site -pack \ pandas \ core \ series.py in corr (self، other، method، min_periods)
2252 إذا كان الأسلوب في ["بيرسون" ، "سبيرمان" ، "كيندال"] أو قابل للاستدعاء (طريقة):
2253 عودة nanops.nancorr (
-> 2254 this.values، other.values، method = method، min_periods = min_periods
2255)
2256

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ pandas \ core \ nanops.py in _f ( args، * kwargs)
67 حاول:
68 مع np.errstate (غير صالح = "جاهل "):
—-> 69 إرجاع f ( args ، * kwargs)
70 باستثناء ValueError مثل e:
71 # نريد تحويل مصفوفة كائن

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ pandas \ core \ nanops.py in nancorr (a، b، method، min_periods)
1238
1239 f = get_corr_func (طريقة)
-> 1240 إرجاع و (أ ، ب)
1241
1242

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ pandas \ core \ nanops.py in _pearson (a، b)
1254
1255 def _pearson (أ ، ب):
-> 1256 إرجاع np.corrcoef (a، b) [0، 1]
1257
1258 def _kendall (أ ، ب):

<__ array_function__ internals> في corrcoef ( args، * kwargs)

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site -pack \ numpy \ lib \ function_base.py in corrcoef (x، y، rowvar، bias، ddof)
2524 تحذيرًا. تحذير ("التحيز و ddof ليس لهما أي تأثير ويتم إهماله" ،
2525 الإهلاك تحذير ، مستوى المكدس = 3)
-> 2526 ج = كوف (س ، ص ، رووفار)
2527 حاول:
2528 د = دياج (ج)

<__ array_function__ internals> في cov ( args، * kwargs)

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site -pack \ numpy \ lib \ function_base.py in cov (m، y، rowvar، bias، ddof، fweights، aweights)
2429 ث * = الأوزان
2430
-> 2431 متوسط ​​، w_sum = متوسط ​​(X ، المحور = 1 ، الأوزان = w ، المُعاد = صحيح)
2432 w_sum = w_sum [0]
2433

<__ array_function__ internals> في المتوسط ​​( args ، * kwargs)

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site -pack \ numpy \ lib \ function_base.py في المتوسط ​​(a ، محور ، أوزان ، مُعاد)
391
392 إذا كانت الأوزان بلا:
-> 393 متوسط ​​= متوسط ​​(المحور)
394 scl = avg.dtype.type (حجم / متوسط ​​الحجم)
395 آخر:

~ .conda \ envs \ Evalml_test_1.0 \ lib \ site-packs \ numpy \ core_methods.py in _mean (a، axis، dtype، out، keepdims)
152 if isinstance (ret، mu.ndarray):
153 ret = um.true_divide (
-> 154 ret، rcount، out = ret، casting = 'غير آمن'، subok = False)
155 إذا كانت النتيجة is_float16_result والخروج لا شيء:
156 ret = arr.dtype.type (ret)

TypeError: نوع (أنواع) المعامل غير المدعوم لـ /: 'str' و 'int'

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

التحسين لفقدان السجل متعدد الطبقات.
النتيجة الأقل أفضل.

البحث حتى 4 خطوط أنابيب.
عائلات النماذج المسموح بها: random_forest، xgboost، linear_model، catboost

(1/4) وضع Baseline Multiclass Classificati ... المنقضي: 00 : 00
بدء التحقق المتبادل
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
تم الانتهاء من التحقق المتقاطع - يعني تسجيل فقدان متعدد الفئات: نان
(2/4) مصنف CatBoost مع جهاز Imputer بسيط المنقضي: 00 : 00
بدء التحقق المتبادل
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
تم الانتهاء من التحقق المتقاطع - يعني تسجيل فقدان متعدد الفئات: نان
(3/4) XGBoost Classifier w / Simple Imputer انقضاء : 00:02
بدء التحقق المتبادل
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
تم الانتهاء من التحقق المتقاطع - يعني تسجيل فقدان متعدد الفئات: نان
(4/4) مصنف الغابة العشوائي مع Im Simple Im ... المنقضي: 00 : 02
بدء التحقق المتبادل
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
خطأ في PipelineBase.score أثناء تسجيل نقاط متعددة لفقدان سجل موضوعي: ufunc 'isnan' غير مدعوم لأنواع الإدخال ، ولا يمكن إجبار المدخلات بأمان على أي أنواع مدعومة وفقًا لقاعدة الصب '' آمن ''
تم الانتهاء من التحقق المتقاطع - يعني تسجيل فقدان متعدد الفئات: نان

انتهى البحث بعد 00:02
أفضل خط أنابيب: خط أنابيب التصنيف متعدد الفئات الأساسي للوضع
أفضل تصنيف متعدد الطبقات لخسارة سجل خط الأنابيب: nan
ToolId 3: تم تنفيذ أداة AutoML
انتهى في 14.397 ثانية

أنواع بيانات الباندا هي نفسها في كلتا البيئتين.

تعويم sepal.length64
sepal.width تعويم 64
عوامة طول البتلة 64
عرض البتلة تعويم 64
كائن فئة
نوع dtype: كائن

يستخدم الكمبيوتر المحمول Jupyter Python 3.7.3 والأداة 3.6.8.

bug

ال 3 كومينتر

SydneyAyx : نعم ، لقد غيرنا آلية تعطيل عمليات التحقق من البيانات في 0.11.2:

automl.search(..., data_checks=None, ...)

تدوين ملاحظة أنه يجب علينا إضافة ذلك إلى قسم دليل المستخدم.

يرجى إعطاء هذه اللقطة وإذا لم يؤد ذلك إلى حل مشكلتك فلنتحدث مرة أخرى.

إذا أدى ذلك إلى حل المشكلة ، أتذكر أنه تم تقديم # 828 مسبقًا لتتبع ذلك. وأغلقنا ذلك لصالح # 645 ، وهو قيد التنفيذ حاليًا. ومع ذلك ، لست متأكدًا من أن # 645 سيصلح المشكلة الأساسية بالفعل. لذلك دعونا نبقيه مفتوحًا.

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

سأبقي هذا مفتوحًا وأغلقه عندما نضع ذلك الإصدار.

ثابت في v0.12.0 الذي خرج للتو!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات