问题标签 [multiclass-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.
matlab - 当模型不预测一个类时,多类分类中的未定义 F1 分数
我正在尝试在多类分类中使用 F1 分数进行模型选择。
我正在按类别计算它们并对其进行平均:(F1(class1)+F1(class1)+F1(class1))/3 = F1(total)
但是,在某些情况下,我会得到 F1 分数的 NaN 值。这是一个示例:设 true_label = [1 1 1 2 2 2 3 3 3] 和 pred_label = [2 2 2 2 2 2 3 3 3]。
那么混淆矩阵看起来像: C =[0 3 0; 0 3 0; 0 0 3]
这意味着当我计算第一类的精度(计算 F1 分数)时,我得到:0/(0+0+0),这是未定义的或 NaN。
首先,我在这里计算 F1 分数或精度是否有误?其次,在模型选择中我应该如何对待这些情况?忽略它们,或者我应该将此类的 F1 分数设置为 0(减少此模型的总 F1 分数)。
任何帮助将不胜感激!
tensorflow - 多标签、多类分类的输出层?
我正在寻找一种方法来实现输入的多个分类。指定了输出的数量,并且输出的类集可能相同也可能不同。样本属于每个类集的一个类。
我的问题是,目标数据和输出层应该是什么样子?可以使用哪些激活、损失和训练函数,该层应该如何连接到隐藏层?我不一定要寻找最佳解决方案,而只是寻找可行的解决方案。
我目前对可行的猜测是使目标数据成为多个连接的 one-hot 向量,并且输出层具有与向量数量一样多的 softmax 单元。我不知道这些层将如何与该解决方案连接,以及网络如何计算类集的大小。我认为标签 powerset 不能满足我的需要。
我认为 matlab patternnet 函数可以创建一个这样做的网络,但我不知道生成的网络是如何工作的。TensorFlow 或 Keras 的代码将非常受欢迎。
python - 用于多类分类的 ROC
我正在做不同的文本分类实验。现在我需要计算每个任务的 AUC-ROC。对于二进制分类,我已经使用以下代码使其工作:
但现在我需要为多类分类任务做这件事。我在某处读到需要对标签进行二值化处理,但我真的不知道如何计算多类分类的 ROC。尖端?
machine-learning - 选择哪个分类?
我有大量的 yelp 数据,我必须将评论分为 8 个不同的类别。
类别
评论包含多个类别,所以我使用了 multilable 分类。但我很困惑如何处理正/负。示例评论可能对食品质量有利,但对客户服务不利。Ex-food taste was very good but staff behaviour was very bad. so review contains positive food quality but negative Customer service
我该如何处理这种情况?我应该在分类之前进行情感分析吗?请帮我
pandas - 如何对多类数据进行交叉验证?
我能够使用以下方法对二进制数据进行交叉验证,但它似乎不适用于多类数据:
我也尝试更改roc_auc
为f1
但仍然有错误:
有什么方法可以用来对此类数据进行交叉验证吗?
deep-learning - Keras 中的多分类预测不止一个?
我正在学习如何使用 Keras 设计卷积神经网络。我开发了一个使用 VGG16 作为基础的简单模型。我在数据集中有大约 6 类图像。这是我的模型的代码和描述。
下面是编译和拟合模型的代码:
这是预测新图像的代码
通常 model.predict() 方法预测不止一个类。
我有一些问题
- 多类分类模型预测多个输出是否正常?
- 如果预测不止一个类,如何在训练期间测量准确性?
- 如何修改神经网络以便只预测一个类?
任何帮助表示赞赏。太感谢了!
python - 多类分类器的网格搜索 cv
我将 ANN 用于多类分类器,以解决目标变量可以取 3 个值的问题:-1,0,1。
我曾经使用OneHotEncoder
以下代码转换我的输出变量-
它现在采用以下格式-
预测看起来像 -
我想使用网格搜索 cv 来提高我的准确性,但我很难做到这一点。我总是得到一个错误。这是我正在使用的代码-
我收到以下错误-
我知道问题出在GridSearchCV(...)
. 我找不到合适的参数。我尝试使用以下方法制作自己的损失函数:
但我再次得到一个错误:
知道我应该如何进行吗?
xgboost - 如何在 xgboost 中为不平衡数据设置多类分类的权重?
我知道您可以为不平衡的数据集设置 scale_pos_weight 。但是,如何处理不平衡数据集中的多分类问题。我已经浏览了https://datascience.stackexchange.com/questions/16342/unbalanced-multiclass-data-with-xgboost/18823但不太了解如何在 Dmatrix 中设置权重参数。
谁能详细解释一下?
python - 在 Python 中使用逻辑回归的预测向量的准确度得分
我正在使用逻辑回归方法进行多类分类。基本上我知道,如果我使用 accuracy_score () 函数(例如,来自 sklearn 库),它将计算出不同值到不同值的准确性,如下所示:
但是我想为每个标签(来自predict_proba)的顶级逻辑回归预测向量获取accuracy_score_new()函数,并计算真实标签是否在这个区间内,如下所示:
此示例中的 accuracy_score_new 将等于 1,因为分类器预测标签在区间内。这个功能怎么实现?