Я дважды проверил self.xTrainTest и self.yTrainTest, оба являются плотными массивами с одним и тем же числом строк.
Если я изменяю require_dense на [False, False], модель возвращает еще одну ошибку, говорянесоответствие между формой self.xTrainTest и self.yTrainTest [317,1]. Похоже, что в модель передается только один ряд self.yTrainTest.
print (type(self.xTrainTest),type(self.yTrainTest))
print (self.xTrainTest.shape,self.yTrainTest.shape)
parameters = {'classifier': [SVC(probability=True)],
'classifier__kernel': ['linear', 'poly', 'rbf'],
'classifier__C': [0.1,1,10],
'classifier__gamma': ['auto'],
'classifier__degree': [1, 5,10,20]}
Random0 = RandomizedSearchCV(BinaryRelevance(require_dense=[False, True]), parameters, scoring='roc_auc', cv=5)
Random0.fit(self.xTrainTest,self.yTrainTest)
<class 'numpy.ndarray'> <class 'numpy.ndarray'>
(397, 74706), (397, 9)
raise TypeError('A sparse matrix was passed, but dense '
TypeError: A sparse matrix was passed, but dense data is required. Use X.toarray() to convert to a dense numpy array.