- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
免责声明:我对 AI、Python、NLTK 和 scikit-learn 还很陌生。
我正在尝试训练分类器将一组文档分类为一组标签。
我正在使用 NLTK 包装器与 scikit-learn 的 OneVsRestClassifier 对话。
training_set = [
[{"car": True, ...}, "Label 1"],
[{"car": False, ...}, "Label 2"],
...
[{"car": False, ...}, "Label 1"],
]
ovr = SklearnClassifier(OneVsRestClassifier(MultinomialNB()))
ovr.train(training_set)
这适用于多类分类,其中分类器尝试仅将文档分类为标签。准确性很好,但我希望分类器为文档分配 0、1 或更多标签。我怎样才能做到这一点?
遗憾的是,我不能只初始化分类器,告诉它是一个多标签分类器,documentation说:
此策略也可用于多标签学习,其中分类器 用于预测多个标签,例如,通过拟合二维矩阵 如果样本 i 具有标签 j,则单元格 [i, j] 为 1,否则为 0。
这对我来说不是很清楚,因为我不熟悉这种语言。我觉得我必须以分类器理解我希望它对我的数据进行多标签分类的方式来塑造我的训练集?如果是,如何?
我尝试在数组中提供标签,如下所示:
training_set = [
[{"car": True, ...}, ["Label 1"]],
[{"car": False, ...}, ["Label 2"]],
...
[{"car": False, ...}, ["Label 1"]],
]
这没有按预期工作并引发:
DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().
y = column_or_1d(y, warn=True)
One-vs-rest accuracy percent: 0.0
最佳答案
文档试图说明的是,使用二维矩阵作为目标。所以基本上,你的训练集可以是,
training_set = [
[{"car": True, ...}, [is_label_1, is_label_2, is_label_3]],
[{"car": False, ...}, [is_label_1, is_label_2, is_label_3]],
...
[{"car": False, ...}, [is_label_1, is_label_2, is_label_3]],
]
对于特定样本,使用多个标签对其进行训练,例如对于第一个样本,如果存在标签 1 和标签 3,则将其作为 [1, 0, 1] 传递。
希望,答案对您来说很清楚。
关于python - 使用 NLTK、scikit-learn 和 OneVsRestClassifier 打开多标签分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36202522/
我正在尝试重现示例 here但使用 RandomForestClassifer。 我看不到如何转换这部分代码 # Learn to predict each class against the oth
我正在尝试在我的数据集上使用 OneCsRestClassifier。我提取了将要训练的模型的特征,并在其上安装了线性 SVC。模型拟合后,当我尝试预测模型拟合的相同数据时,我得到的全是零。是因为一些
我有一个已经过训练的 OneVsRestClassifier (scikit-learn)。 clf = OneVsRestClassifier(LogisticRegression(C=1.2, p
我有一个多标签问题。我将 OneVsRestClassifier 与 SVM 一起使用。现在我想通过 GridSearchCV 调整参数。我试过了 GridSearchCV(estimator=One
我正在对多标签数据进行网格搜索,如下所示: #imports from sklearn.svm import SVC as classifier from sklearn.pipeline impor
我想在 SVC 模型中执行 GridSearchCV,但它使用一对多策略。对于后一部分,我可以这样做: model_to_set = OneVsRestClassifier(SVC(kernel="p
我正在使用 OneVsRestClassifier 进行多标签分类。它适用于 LinearSVC,但是当我将它应用于 SVC 时,出现以下错误: classifier = OneVsRestClass
我正在尝试使用 OneVsRestClassifier 对一组评论进行多标签分类。我的目标是将每条评论标记为可能的主题列表。我的自定义分类器使用手动整理的单词列表及其在 csv 中的相应标签来标记每个
我正在使用 OneVsRestClassifier 解决多标签分类问题。我将 RandomForestClassifier 传递给它。 from sklearn.multiclass import O
我正在尝试将 OneVsRestClassifier 与 SVC 一起用于图像的多分类问题 - 我从 CellProfiler 获得了图像的数值特征。我想使用 GridSearchCV 查找要使用的超
我尝试在数据集上使用 y_scores=OneVsRestClassifier(svm.SVC()).predict()就像 iris 和 titanic 一样。问题是我得到的 y_scores 是连
我正在研究多标签分类问题 import pandas as pd import pickle from sklearn.feature_extraction.text import TfidfVect
我需要一个 SVM 作为多标签分类器,所以我决定使用 OneVsRestClassifier 包装器。然而,问题出现了,训练集变得高度不平衡:对于给定的类,负例比正例多得多。这可以通过 class_w
我有二元分类方法名称FMclassifier我需要将其应用于多类分类问题,到目前为止我知道可以使用一些估计器将二元分类器或回归器变成多类分类器。我想知道在 sklearn 中使用 OneVsRestC
免责声明:我对 AI、Python、NLTK 和 scikit-learn 还很陌生。 我正在尝试训练分类器将一组文档分类为一组标签。 我正在使用 NLTK 包装器与 scikit-learn 的 O
我正在使用 OneVsRestClassifier 和 SVC 处理多标签分类, from sklearn.datasets import make_multilabel_classification
我正在阅读 Scikit-learn 的 OneVsRestClassifier() 文档,link .在我看来,OneVsRestClassifier 首先将多个类二值化为二进制类,然后训练模型,并
我正在尝试设置一个 神经轴管道 使用 sklearns OneVsRestClassifier (OVR)。 Neuraxle 管道中的每个有效步骤都必须实现 fit()和 transform()方法
据我所知,多标签问题可以用一对多的方案来解决,Scikit-learn 实现了 OneVsRestClassifier作为分类器的包装器,例如 svm.SVC .我想知道如果我真的训练会有什么不同,比
我正在做多标签分类,我试图预测问题的正确标签: (X = 问题,y = X 中每个问题的标签列表)。 我想知道 sklearn.svm.SVC 的 decision_function_shape应与
我是一名优秀的程序员,十分优秀!