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

السؤال

نشر

أحاول بناء نموذج  باستخدام خوارزمية  LogisticRegression  لكن أواجه الخطأ التالي:

import numpy as np
from sklearn.linear_model           
import LogisticRegression
X_train   = np.array([ [2.3, 4.3, 2.5],  [1.3, 5.2, 5.2],  [3.3, 2.9, 0.8],  [3.1, 4.3, 4.0]  ])
y_train  = np.array( [3.4, 7.5, 4.5, 1.6] )
X_test  = np.array([ [2.5, 2.4, 2.7],  [2.7, 3.2, 1.2] ])
LR = LogisticRegression()
LR.fit(X_train,y_train)
print(clf.predict(X_test))
##################################
ValueError                                Traceback (most recent call last)
<ipython-input-23-8aa4b13afdb8> in <module>
      7 
      8 LR = LogisticRegression()
----> 9 LR.fit(X_train,y_train)
     10 print(clf.predict(X_test))
     11 

~\anaconda3\lib\site-packages\sklearn\linear_model\_logistic.py in fit(self, X, y, sample_weight)
   1526         X, y = check_X_y(X, y, accept_sparse='csr', dtype=_dtype, order="C",
   1527                          accept_large_sparse=solver != 'liblinear')
-> 1528         check_classification_targets(y)
   1529         self.classes_ = np.unique(y)
   1530         n_samples, n_features = X.shape

~\anaconda3\lib\site-packages\sklearn\utils\multiclass.py in check_classification_targets(y)
    167     if y_type not in ['binary', 'multiclass', 'multiclass-multioutput',
    168                       'multilabel-indicator', 'multilabel-sequences']:
--> 169         raise ValueError("Unknown label type: %r" % y_type)
    170 
    171 

ValueError: Unknown label type: 'continuous'

 

Recommended Posts

  • 0
نشر

الخطأ هو أنك تقوم بإعطاء الموديل الخرج كقيمة حقيقة وهذا لا يجوز في التصنيف الذي يعمل مع القيم المتقطعة يمكن حل المشكلة بتحويل y_train إلى عدد صحيح int أو استخدام labelEncoder  

  • طريقة1:
    #استدعاء المكتبات
    import numpy as np
    from sklearn.linear_model import LogisticRegression
    from sklearn import preprocessing
    
    #داتا التدريب والاختبار 
    X_train   = np.array([ [2.3, 4.3, 2.5],  [1.3, 5.2, 5.2],  [3.3, 2.9, 0.8],  [3.1, 4.3, 4.0]  ])
    y_train  = np.array( [3.4, 7.5, 4.5, 1.6] )
    X_test  = np.array([ [2.5, 2.4, 2.7],  [2.7, 3.2, 1.2] ])
    
    #LabelEncoder  تطبيق  
    enc = preprocessing.LabelEncoder()
    y_new = enc.fit_transform(y_train)
    LR = LogisticRegression()
    LR.fit(X_train,y_new)
    print(LR.predict(X_test))
    #طريقة 2
    #استدعاء المكتبات
    import numpy as np
    from sklearn.linear_model import LogisticRegression
    from sklearn import preprocessing
    
    #داتا التدريب والاختبار 
    X_train   = np.array([ [2.3, 4.3, 2.5],  [1.3, 5.2, 5.2],  [3.3, 2.9, 0.8],  [3.1, 4.3, 4.0]  ])
    y_train  = np.array( [3.4, 7.5, 4.5, 1.6] )
    X_test  = np.array([ [2.5, 2.4, 2.7],  [2.7, 3.2, 1.2] ])
    
    #تحويل الخرج إلى عدد صحيح
    y_train=y_train.astype("int64")
    LR = LogisticRegression()
    LR.fit(X_train,y_train)
    print(LR.predict(X_test))

     

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...