اذهب إلى المحتوى
  • 0

ظهور الخطأ التالي ValueError: C <= 0 أثناء استخدام نموذج SVR في مكتبة Sklearn

السؤال

نشر

أحاول تطبيق أداة GridSearchCV لاختيار أفضل قيم المعاملات لل SVR لكن تظهر لي المشكلة التالية، ما الخطأ:

from sklearn.svm import SVR
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.model_selection import GridSearchCV
import pandas as pd
BostonData = load_boston()
X = BostonData.data
y = BostonData.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0, shuffle =True) 
SelectedModel = SVR()
Selected = {'kernel':('linear', 'rbf'),'C': [0, 0.7, 8]}
GridSearchModel = GridSearchCV(SelectedModel,Selected, cv = 2,return_train_score=True)
GridSearchModel.fit(X_train, y_train)
C:\Users\Windows.10\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: 
ValueError: C <= 0

  FitFailedWarning)
C:\Users\Windows.10\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: 
ValueError: C <= 0

  FitFailedWarning)
C:\Users\Windows.10\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: 
ValueError: C <= 0

  FitFailedWarning)
C:\Users\Windows.10\anaconda3\lib\site-packages\sklearn\model_selection\_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: 
ValueError: C <= 0

  FitFailedWarning)

 

Recommended Posts

  • 1
نشر

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

from sklearn.svm import SVR
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.model_selection import GridSearchCV
import pandas as pd
BostonData = load_boston()
X = BostonData.data
y = BostonData.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0, shuffle =True) 
SelectedModel = SVR()
Selected = {'kernel':('linear', 'rbf'),'C': [0.000001, 0.7, 8]}
GridSearchModel = GridSearchCV(SelectedModel,Selected, cv = 2,return_train_score=True)
GridSearchModel.fit(X_train, y_train)

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...