Scikit learn 哪种算法用于一类分类?

Scikit learn 哪种算法用于一类分类?,scikit-learn,text-classification,Scikit Learn,Text Classification,我有超过15000个特定主题的文本文档。我想在前者的基础上建立一个语言模型,这样我就可以向这个模型展示不同主题的新的随机文本文档,并且算法告诉我们新文档是否属于同一主题 我尝试了sklearn.naive_bayes.MultinomialNB,sklearn.svm.classes.LinearSVC和其他方法,但是我有以下问题: 这些算法需要具有多个标签或类别的训练数据,我只有覆盖特定主题的网页。其他文档没有标记,并且包含许多不同的主题 如果您能提供关于如何培训只有一个标签的模型或如何进行总

我有超过15000个特定主题的文本文档。我想在前者的基础上建立一个语言模型,这样我就可以向这个模型展示不同主题的新的随机文本文档,并且算法告诉我们新文档是否属于同一主题

我尝试了
sklearn.naive_bayes.MultinomialNB
sklearn.svm.classes.LinearSVC
和其他方法,但是我有以下问题:

这些算法需要具有多个标签或类别的训练数据,我只有覆盖特定主题的网页。其他文档没有标记,并且包含许多不同的主题

如果您能提供关于如何培训只有一个标签的模型或如何进行总体培训的指导,我将不胜感激。到目前为止,我得到的是:

c = MultinomialNB()
c.fit(X_train, y_train)
c.predict(X_test)

非常感谢。

您要找的是。有关更多信息,您可能需要查看相应的文档。

模块中还有另一个名为PositiveNaviesClassifier的分类器。引用他们的文件:

朴素贝叶斯分类器的一种变体,使用部分标记的训练集执行二元分类,即仅标记一个类而另一个未标记。假设两个标签上的先验分布,使用未标记集估计特征的频率

代码用法:

>>> from text.classifiers import PositiveNaiveBayesClassifier
>>> sports_sentences = ['The team dominated the game',
                        'They lost the ball',
                        'The game was intense',
                        'The goalkeeper catched the ball',
                        'The other team controlled the ball']
>>> various_sentences = ['The President did not comment',
                         'I lost the keys',
                         'The team won the game',
                         'Sara has two kids',
                         'The ball went off the court',
                         'They had the ball for the whole game',
                         'The show is over']
>>> classifier = PositiveNaiveBayesClassifier(positive_set=sports_sentences,
                                unlabeled_set=various_sentences)
>>> classifier.classify("My team lost the game")
True
>>> classifier.classify("And now for something completely different.")
False

OCC问题与异常检测/新检测密切相关。在这些问题中,我们只有正类,它们通常是非高斯的

OCC的主要动机是缺少可用于将其定义为另一个类的数据集。通常,对于这些任务,使用任何区分模型都会改进一个与其他指标的比较

常用的方法是基于支持向量机的,例如通常具有非柔性几何边界(订阅超球)和柔性几何边界(无平移不变核)的支持向量机(SVDD)[WIP]

因此,一类SVM是SVDD的一个特例,K(x,x)=常数

有关更多详细信息,请查看