使用stratifiedKFold進行分層交叉驗證時候報錯:ValueError: Supported target types are: ('binary', 'multiclass'). Got

ValueError                                Traceback (most recent call last)
<ipython-input-42-2ab744268d80> in <module>()
     20 print('---------分割線--------------')
     21 sfolder = StratifiedKFold(n_splits=4,random_state=0,shuffle=False)
---> 22 for train, test in sfolder.split(X,y):
     23     print('Train: %s | test: %s' % (train, test))
     24     print(" ")

C:\ProgramData\Anaconda3\lib\site-packages\sklearn\model_selection\_split.py in split(self, X, y, groups)
    330                                                              n_samples))
    331 
--> 332         for train, test in super(_BaseKFold, self).split(X, y, groups):
    333             yield train, test
    334 

C:\ProgramData\Anaconda3\lib\site-packages\sklearn\model_selection\_split.py in split(self, X, y, groups)
     93         X, y, groups = indexable(X, y, groups)
     94         indices = np.arange(_num_samples(X))
---> 95         for test_index in self._iter_test_masks(X, y, groups):
     96             train_index = indices[np.logical_not(test_index)]
     97             test_index = indices[test_index]

C:\ProgramData\Anaconda3\lib\site-packages\sklearn\model_selection\_split.py in _iter_test_masks(self, X, y, groups)
    632 
    633     def _iter_test_masks(self, X, y=None, groups=None):
--> 634         test_folds = self._make_test_folds(X, y)
    635         for i in range(self.n_splits):
    636             yield test_folds == i

C:\ProgramData\Anaconda3\lib\site-packages\sklearn\model_selection\_split.py in _make_test_folds(self, X, y)
    587             raise ValueError(
    588                 'Supported target types are: {}. Got {!r} instead.'.format(
--> 589                     allowed_target_types, type_of_target_y))
    590 
    591         y = column_or_1d(y)

ValueError: Supported target types are: ('binary', 'multiclass'). Got 'continuous' instead.


  • 問題描述使用stratifiedKFold進行分層交叉驗證時候報錯:ValueError: Supported target types are: (‘binary’, ‘multiclass’). Got ‘continuous’ instead.

  • 問題解決方法,這種分層抽樣要求target必須是整型的,所以我們需要檢查我們的target

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章