gpt4 book ai didi

machine-learning - 用于检测异常值的一类 SVM

转载 作者:行者123 更新时间:2023-11-30 09:26:19 24 4
gpt4 key购买 nike

我的问题是

I want to build a one class SVM classifier to identify the nouns/aspects from test file. The training file has list of nouns. The test has list of words.

这就是我所做的:

我正在使用 Weka GUI,并且我已经训练了一个单类 SVM(libSVM)来获取模型。

Now the model classifies those words in test file that the classifier identified as nouns in the generated model. Others are classified as outliers. ( So it is just working like a look up. If it is identified as noun in trained model, then 'yes' else 'no')

那么如何构建一个合适的分类器呢? (我的意思是输入的格式以及它应该包含哪些信息?)

注意:

  • 我不会在训练文件中给出反例,因为它是一类。
  • 我的输入格式是arff
  • 训练文件的格式是一组单词,yes
  • 测试文件的格式是一组单词,?

编辑我的测试文件将包含名词短语。所以我的分类器的工作是从测试文件中的候选者那里获取名词单词。

最佳答案

您的数据格式不适合此问题。

如果你放

word,class

将数据对放入 SVM,您真正放入 SVM 的是由单个向量组成的稀疏向量,对应于您的单词,即

0,0,0,0,0,...,0,0,1,0,0,0,...,0,0,0,0,yes

分类器对此类数据所做的任何操作都是过度拟合和内存的。对于未知的生词,结果将毫无用处。

<小时/>

如果您希望分类器能够抽象泛化,那么您需要仔细从单词中提取特征

可能的特征是 n 元语法。所以“example”这个词可以表示为

exa:1, xam:1, amp:1, mpl:1, ple:1

现在您的分类器/SVM 可以了解到 n 元语法“ple”对于名词来说是典型的。如果添加“词开头”和“词结尾”符号,结果可能会更好,

^ex:1, exa:1, xam:1, amp:1, mpl:1, ple:1, le$:1

也可能使用多个 n 元语法长度,例如

^ex:1, ^exa:1, exa:1, exam: 1, xam:1, xamp:1, amp:1, ampl:1, mpl:1, mple1:1, ple:1, ple$.1, le$:1

但是,当然,添加的数据越多,数据集就越大,搜索空间就会增大,这可能会再次导致过度拟合。

关于machine-learning - 用于检测异常值的一类 SVM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27732503/

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