gpt4 book ai didi

Python:关于 SVM 编码格式的问题

转载 作者:行者123 更新时间:2023-11-30 09:38:03 25 4
gpt4 key购买 nike

我想用svm来做监督机器学习。我的项目是:给定奥巴马的几次演讲和罗姆尼的几次演讲,当我们输入一个未知的演讲时,分类器可以确定哪个演讲者讲了这个演讲。

网站上的代码是这样写的:SVC、NuSVC 和 LinearSVC 将两个数组作为输入:一个大小为 [n_samples, n_features] 的数组 X,保存训练数据样本,以及整数值的数组Y大小为[n_samples],保存训练样本的类标签:

>>> from sklearn import svm
>>> X = [[0, 0], [1, 1]]
>>> y = [0, 1]
>>> clf = svm.SVC()
>>> clf.fit(X, y)
SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0, degree=3,
gamma=0.0, kernel='rbf', max_iter=-1, probability=False, random_state=None,
shrinking=True, tol=0.001, verbose=False)

拟合后,模型可用于预测新值:

>>> clf.predict([[2., 2.]])
array([1])

我的问题:1.在我的项目中

X = [[0, 0], [1, 1]]

我应该用标签“Obama”或“Romeny”替换每个方括号中的第一个数字吗?

2.怎么样

y = [0, 1]

该组件应该替换为“奥巴马”或“罗姆尼”吗?但根据上面的代码注释,它应该是整数。

3.关于clf.predict()中的内容

clf.predict([[2., 2.]])

不应该只是您从输入中提取的特征,然后分类器决定它属于哪个类别(奥巴马或罗姆尼)。为什么有两个组件?

最佳答案

问题#1:不。您的 X 应包含您想要用来预测谁发表演讲的信息。想必这可以从演讲的文本中得出。看看the text feature extraction一些想法。

问题#2:是的,因为 y 是你想要预测的,你想要预测是奥巴马还是罗姆尼。

问题#3:有两个组件,因为在该示例中输入有两个特征。您的数据可能具有任意数量的特征。如果您使用文本数据来预测某些内容,则通常会有很多特征(在最简单的情况下,文本中每个不同单词都有一个特征,尽管您可以通过消除一些单词来修剪它,例如频繁的功能词,例如作为“该”)。

关于Python:关于 SVM 编码格式的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24638410/

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