GridSearchCV 拟合
GridSearchCV fitting
我在使用二值化标签拟合我的分类器时遇到问题。
clf_linear = GridSearchCV(SVC(kernel='linear', class_weight='balanced'),
param_grid, cv=5)
clf_linear = clf_linear.fit(X_train_pca, y_train)
y_train 通过以下方法二值化:
y_train = label_binarize(y_train, classes=[1, 2, 3])
我收到以下错误:
文件 "C:\Python\lib\site-packages\sklearn\utils\validation.py",第 788 行,在 column_or_1d
提高 ValueError("bad input shape {0}".format(shape))
ValueError:错误的输入形状 (545, 3)
输入标签形状是 (682, 3) 而不是 (545, 3)。
我的教授告诉我在 gridSearchCV 中使用二值化标签,但阅读 scikit-learn 文档我认为我不能这样做。
无论是 682,3 还是 545,3。为什么目标有 3 列?您的 y(目标)应该是 SVC 的一维数组。您不需要执行 label_binarize
操作。保持 y_train
不变。
这样做:
y_train = label_binarize(y_train, classes=[1, 2, 3])
将 y_train 转换为 label-indicator
矩阵。这用于多标签 class 化问题(样本一次可以有多个 class)。它不用于多 class 问题。
保持 y_train
作为一维数组,SVC
将处理其余部分。
我在使用二值化标签拟合我的分类器时遇到问题。
clf_linear = GridSearchCV(SVC(kernel='linear', class_weight='balanced'),
param_grid, cv=5)
clf_linear = clf_linear.fit(X_train_pca, y_train)
y_train 通过以下方法二值化:
y_train = label_binarize(y_train, classes=[1, 2, 3])
我收到以下错误:
文件 "C:\Python\lib\site-packages\sklearn\utils\validation.py",第 788 行,在 column_or_1d 提高 ValueError("bad input shape {0}".format(shape)) ValueError:错误的输入形状 (545, 3)
输入标签形状是 (682, 3) 而不是 (545, 3)。
我的教授告诉我在 gridSearchCV 中使用二值化标签,但阅读 scikit-learn 文档我认为我不能这样做。
无论是 682,3 还是 545,3。为什么目标有 3 列?您的 y(目标)应该是 SVC 的一维数组。您不需要执行 label_binarize
操作。保持 y_train
不变。
这样做:
y_train = label_binarize(y_train, classes=[1, 2, 3])
将 y_train 转换为 label-indicator
矩阵。这用于多标签 class 化问题(样本一次可以有多个 class)。它不用于多 class 问题。
保持 y_train
作为一维数组,SVC
将处理其余部分。