问题标签 [one-class-classification]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 结合两个分类模型
我是机器学习的新手,我用 0 表示正常,1 表示攻击,这个想法是这样的:
我想建立一个在第一级应用 DT 的模型。DT 的输出将是 Normal 或 Attack。首先,如果数据被 DT 归类为攻击,我们会发出警报,其次,如果数据归类为正常,我们将正常数据输入第二个模型 (SVM) 以仔细检查是正常还是攻击。
我读过关于集成学习的文章,但是这些方法中的大多数都结合了模型并取平均值或加权,知道我们如何实现这个吗?谢谢
python-3.x - 用于文本分类的一类 SVM 模型(scikit-learn)
我正在尝试对一组文本进行分类,以用于预测测试文本集中的相似文本。我正在使用 one_class_svm 模型。“author_corpus”包含由单个作者撰写的文本列表,“test_corpus”包含由其他作者和原作者撰写的文本列表。我正在尝试使用 one_class_svm 来识别测试文本中的作者。
我收到值错误:
给定训练集中的单一作者,我如何实现这个模型来准确预测测试集中文本的作者身份?任何帮助表示赞赏。
作为参考,这里是 one_class_svm 模型指南的链接:https ://scikit-learn.org/stable/modules/generated/sklearn.svm.OneClassSVM.html#sklearn.svm.OneClassSVM
python-3.x - 如何让 OneClassSVM 模型更准确?(Scikit-学习)
我一直在尝试使用该作者撰写的多个文本对作者进行分类,然后我将使用这些文本在其他文本中找到相似之处,以在测试组中识别该作者。
我已经成功地进行了一些预测,但是我仍然得到了无法预测作者的结果。
我已经预先对文本进行了预处理,包括词干、标记、停用词、删除标点符号等,以使其更准确。
我不熟悉 OneClassSVM 参数的工作原理。我可以使用哪些参数来最适合我的问题,如何让我的模型在预测中更准确?
这是我到目前为止所拥有的:
keras - 我可以在 keras 中构建一个类 cnn 吗?
我可以在只有一个类(类 - 0)的 keras 中构建一个 cnn,以便它可以预测给定日期是否属于这个类?提前致谢
编辑:感谢到目前为止的回答和评论。我的数据是来自健康结构的加速度时间序列,但我无法访问损坏的状态加速度信号,所以我只有 0 类的数据。
python - 如何在 PyTorch 中对我的图层的尺寸进行故障排除
我正在解决我的尺寸不正确的训练循环错误。当然这里和那里还有其他代码,但我认为这是最重要的。我觉得我在网上看到的任何地方都被告知不同的信息或不同的方式,我不知道如何至少让第一层正确,以便我可以从那里进行故障排除。我知道从一层出来的东西进入下一层,这些尺寸必须匹配。查看此链接https://towardsdatascience.com/pytorch-layer-dimensions-what-sizes-should-they-be-and-why-4265a41e01fd
我认为第一层应该是nn.Conv2d([batch_size, channels, height, width])
or nn.Conv2d([62,3,800,600])
。然而,这给出了错误的想法
RuntimeError: Given groups=1, weight of size 3 62 800 600, expected input[62, 3, 800, 600] to have 62 channels, but got 3 channels instead
。所以,我认为通道是第一个数字,特征的数量,然后是(H,W)。所以需要左右切换#s.......但是,得到错误
我如何理解这些需要的维度?
图片信息:
代码:
错误信息:
r - R One-Class SVM - 获得概率输出
在从 R 中的一类 svm 进行预测时,我试图找出概率输出。我知道这不被支持libsvm
,我也知道这个问题已经在几年前被问过,但是包是当时不可用。我希望现在情况有所改变!此外,这个问题仍然有效,因为没有给出在 R 中实现的方法作为解决方案。
我找不到执行此操作的软件包,因此我自己尝试了两种方法来解决此问题:
- 获取决策值并通过使用 sigmoid 激活函数对其进行转换。这在本文中有所描述。请注意以下段落:
此外,SVM 还可以生成类概率作为输出而不是类标签。这可以通过 Platt 的后验概率 (Platt 2000) 的改进实现 (Lin, Lin, and Weng 2001) 来完成,其中将 sigmoid 函数拟合到二元 SVM 分类器的决策值 f,通过最小化来估计 A 和 B负对数似然函数
我的问题是,为了检查我的两个解决方案中的任何一个是否合理,我在一个二类 svm 问题上测试了这两种方法,因为e1071
使用libsvm
给出了二类问题的概率,因此这被视为“真相”。我发现我的两种方法都没有与libsvm
.
这是三个图表,显示了结果概率与已知决策值的关系。 点击查看图片。抱歉,我的声誉似乎太低,无法嵌入令人沮丧的图像!我不确定社区中声誉较高的人是否可以编辑嵌入?
我认为我的 Platt 方法在理论上更合理,但从图中可以看出,逻辑回归似乎在某种程度上太好了,与任一分类相关的概率都非常接近 1(正数)和 0(负数)。
我的 Platt 实现代码是
运行时我收到以下警告
所以我显然做错了什么!我觉得修复这个功能可能是最好的方法,但我看不出我哪里出错了?我正在遵循我之前提到的方法,here
我得到如下决策值的 sigmoid
示例是使用 Iris 数据集完成的,完整代码在这里
r - R语言中的一类分类。生成混淆矩阵时我做错了什么?
我正在尝试理解和实现分类器 R 中的一个类基于多个 UCI 和其中之一(http://archive.ics.uci.edu/ml/datasets/Chronic_Kidney_Disease)。
尝试打印混淆矩阵时,您会给出错误“所有参数必须具有相同的长度”。
我究竟做错了什么?
以下是我正在使用的数据集的一些第一行:
错误日志:
r - 我无法在 R 中使用 One Class 生成分类的混淆矩阵
我正在尝试在 Kaggle(https://www.kaggle.com/uciml/breast-cancer-wisconsin-data)的数据集上理解和实现 R 中的一类分类。
尝试打印混淆矩阵时,您会给出错误:
Error in! All.equal (nrow (data), ncol (data)): invalid type argument
我究竟做错了什么?
tensorflow - 使用 TPU 进行二元与多类分类
我正在使用 EfficientNetB7 和 EfficientNetB0 模型来训练我的数据集,并且正面临一个重大异常。EfficientNetB7 在 40 个 epoch、lr_callback、4 个 nb_classes、imagenet 权重下给出了 96.4% 的准确率。
因此,我尝试通过使用 4 个 EfficientNetB0 模型来独立预测 4 个类别来提高准确度,但准确度停留在 50%。我尝试改变学习率,看看它是否停留在局部最小值,但准确度是一样的。
我还尝试了其他神经网络,例如 ResNet50,但准确率仍然停留在 50%。谁能告诉我我在哪里犯了错误。