- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将深度学习应用于目标类(500k,31K)之间高度不平衡的二元分类问题。我想编写一个自定义损失函数,应该是这样的:最小化(100-((预测的小类)/(总的小类))* 100)
感谢有关我如何构建此逻辑的任何指示。
最佳答案
您可以通过乘以 logits 将类别权重添加到损失函数中。常规的交叉熵损失是这样的:
loss(x, class) = -log(exp(x[class]) / (\sum_j exp(x[j])))
= -x[class] + log(\sum_j exp(x[j]))
在加权情况下:
loss(x, class) = weights[class] * -x[class] + log(\sum_j exp(weights[class] * x[j]))
因此,通过乘以 logits,您可以根据类别权重重新调整每个类别的预测。
例如:
ratio = 31.0 / (500.0 + 31.0)
class_weight = tf.constant([ratio, 1.0 - ratio])
logits = ... # shape [batch_size, 2]
weighted_logits = tf.mul(logits, class_weight) # shape [batch_size, 2]
xent = tf.nn.softmax_cross_entropy_with_logits(
weighted_logits, labels, name="xent_raw")
现在有一个标准损失函数支持每批处理的权重:
tf.losses.sparse_softmax_cross_entropy(labels=label, logits=logits, weights=weights)
权重应从类权重转换为每个示例的权重(形状为[batch_size])。请参阅documentation here .
关于classification - Tensorflow 中类不平衡二元分类器的损失函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35155655/
我对处理多标签分类问题的方法有疑问。 根据文献综述,我发现一种最常用的方法是问题转化方法。它将多标签问题转化为多个单标签问题,分类结果只是每个单标签分类器的简单并集,采用二元相关方法。 由于单标签问题
我正在编写一个 Spark 应用程序,并且希望使用 MLlib 中的算法。在 API 文档中,我发现同一算法有两个不同的类。 例如,org.apache.spark.ml.classification
假设我们有一个经过训练的卷积神经网络,可以在 Tensor-Flow 中对(w.l.o.g. 灰度)图像进行分类。 给定经过训练的网络和测试图像,我们可以追踪其中哪些像素是显着的,或者“等效地”哪些像
如果您有一个为一组类训练的贝叶斯分类器,如何检测输出是否足够重要以选择一个类?这对于检测无法分配给类的样本很有用。我曾尝试测试类概率是否高于所有类的概率的均值+2*stddev,但我认为它不会很健壮。
我目前正在寻找一种可以将多个模型的输出组合成一个模型的方法,我需要创建一个进行分类的 CNN 网络。 图像被分成多个部分(如颜色所见),每个部分作为输入给某个模型(1,2,3,4)每个模型的结构是相同
我目前正在处理 convolutional neural network用于病理变化检测 x-ray images .这是一个简单的binary classification任务。在项目开始时,我们聚
你知道我在哪里可以找到这个算法的一些信息,研究它吗??。是否已经有其实现的示例,或者只有 Quinlan知道它的实现吗?? 最佳答案 他的公司 rulequest 拥有:http://ruleques
我有7个类别需要分类,并且有10个功能。在这种情况下,我是否需要使用k的最佳值,还是我必须针对1到10(大约10)之间的k值运行KNN,并借助算法本身确定最佳值? 最佳答案 除了我在评论中发布的the
我正在使用 Orange 进行数据挖掘 ( http://orange.biolab.si/ ) 1 尤其是 LinearSVM。有没有办法保存学习到的模型并将其与看不见的测试集一起使用?我需要查看预
我有一个用例,其中要对聊天文本进行分类。我想在 Apache OpenNLP 中使用 DocumentCategorizer 对聊天进行分类。但为此,我必须拥有已经对聊天进行分类的训练数据。我是否必须
我正在尝试使用Mahout对用户进行聚类和分类。目前,我正处于计划阶段,我的想法与想法完全融合在一起,并且由于我是该领域的新手,所以我一直坚持进行数据格式化。 假设我们有两个数据表(足够大)。在第一个
当训练集中的示例太少时,如何使用 ID3 修剪决策树构建。 我不能把它分成训练集、验证集和测试集,所以这是不可能的。 是否有任何可以使用的统计方法或类似方法? 最佳答案 是的,当您的数据量较少时,可以
抱歉,我是WEKA的新手,正在学习。 在我的决策树(J48)分类器输出中,有一个混淆矩阵: a b <----- classified as 130 8 a = functiona
我正在尝试训练一个 CNN 模型,根据它们的美学分数对图像进行分类。有 2,00,000 张图像,每张图像都由 100 多个对象评分。计算平均分数并且将分数归一化。 分数的分布近似高斯分布。所以我决定
考虑具有以下混淆矩阵的三类分类问题。 cm_matrix = predict_class1 predict_class2 predict_class3
考虑具有以下混淆矩阵的三类分类问题。 cm_matrix = predict_class1 predict_class2 predict_class3
我们如何使用朴素贝叶斯解释 weka 中的分类结果? 平均值、标准偏差、权重总和和精度是如何计算的? kappa 统计量、平均绝对误差、均方根误差等如何计算? 混淆矩阵的解释是什么? 最佳答案 下面是
我得到了混淆矩阵,但由于我的实际数据集有很多分类类别,因此很难理解。 例子 - >>> from sklearn.metrics import confusion_matrix >>> y_test
我需要对来自由 8 个加速度计组成的传感器网络的数据流进行分类。每个加速度计给我一个 X Y 和 Z 值。因此,在每个样本中,我有 8 x 3 = 24 个加速度值。我以大约 30 Hz 的频率进行采
我正在寻找完全免费的免费分类法。在我的研究中,杜威有法律问题。美国国会图书馆分类受版权保护,但在美国除外。 DMOZ 需要用户更新。如果我错了,请纠正我。 那么,是否有任何完全免费的商业用途分类法?
我是一名优秀的程序员,十分优秀!