gpt4 book ai didi

python - 使用 scikit 进行 SVM 训练时出现错误的输入形状错误

转载 作者:太空宇宙 更新时间:2023-11-03 12:48:31 24 4
gpt4 key购买 nike

我对 scikit 和 ML 有点陌生。我正在尝试训练 SVM 分类器以进行单一分类与所有分类。我正在使用以下代码。

g=list()
for i in range(0,120):
g.append(1)
for i in range(120,240):
g.append(2)

u=set(g)
numclasses=len(u)

lin_clf = svm.LinearSVC()
lin_clf.fit(features,u)

Features是一个72900*120的数组。我从不同的 python 代码获取功能并在此处调用它。它会抛出以下警告和错误。

/usr/lib/python2.7/dist-packages/scipy/misc/pilutil.py:279: 
DeprecationWarning: fromstring() is deprecated. Please call frombytes() instead.
image = Image.fromstring(mode, shape, strdata)

错误

ValueError: bad input shape ()

如果需要特征提取的代码,请评论。提前谢谢你。

最佳答案

哪一行代码抛出了错误?是 lin_clf.fit(features,u) 吗?

根据documentation对于 LinearSVC,fit(X,y) 的参数是

X : {array-like, sparse matrix}, shape = [n_samples, n_features]

Training vector, where n_samples in the number of samples and n_features is the number of features.

y : array-like, shape = [n_samples]

Target vector relative to X

但是,您代码中的u 是一个python set。它应该是一个长度为 72900 的 numpy 数组。

关于python - 使用 scikit 进行 SVM 训练时出现错误的输入形状错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21362489/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com