- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 Pytorch 中构建一个用于多标签分类的 CNN(每张图像可以有多个标签)。到目前为止,我已经构建了如下模型:
model.fc = nn.Sequential(nn.Linear(2048, 512),
nn.ReLU(),
nn.Dropout(0.2),
nn.Linear(512, 10),
nn.LogSigmoid())
# nn.LogSoftmax(dim=1))
criterion = nn.NLLLoss()
# criterion = nn.BCELoss()
optimizer = optim.Adam(model.fc.parameters(), lr=0.003)
但我想使用如下例所示的类来构建它:
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
self.conv1 = nn.Conv2d(3, 10, 5)
self.pool = nn.MaxPool2d(2, 2)
self.conv2 = nn.Conv2d(10, 20, 5)
self.fc1 = nn.Linear(20 * 22 * 39, 100)
self.fc2 = nn.Linear(100, 50)
self.fc3 = nn.Linear(50, 10)
self.fc4 = nn.Linear(10, 3)
def forward(self, x):
x = x.view(-1, 3, 100, 170)
x = self.pool(F.relu(self.conv1(x)))
x = self.pool(F.relu(self.conv2(x)))
x = x.view(-1, 20 * 22 * 39)
x = F.relu(self.fc1(x))
x = F.relu(self.fc2(x))
x = F.relu(self.fc3(x))
return self.fc4(x)
鉴于我正在处理多标签分类问题,实现此目的的最佳方法是什么?如果有任何见解,我将不胜感激。
最佳答案
您应该使用 torch.nn.BCEWithLogitsLoss
进行多标签分类(和数值稳定性),而不使用 LogSigmoid
或 NLLLoss
作为输出。
您必须为批处理中的每个元素输出 N
个元素,其中向量中位置 N
上的 1
表示存在图像上的 N
类。
只要您只有 3 个标签可供预测(0
或 1
),您的网络就很好。您可能会考虑它的设计或使用预先训练的东西,但它至少应该运行。
关于python - 将 CNN 模型转化为类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59014699/
目标:我想在设备上安装我的应用程序时从 iTunes 链接中获取我的自定义参数(引荐来源网址)。 iTunes 链接看起来像这样: https://itunes.apple.com/in/app/co
三维数据的获取方式 RGBD相机和深度图 代码展示:在pcl中,把点云转为深度图,并保存和可视化 三维数据的获取方式 在计算机视觉和遥感领域,点云可以通过四种主要的技术获得, (1)根据图像衍生而得,
这是拍摄 out of context所以看起来有点奇怪,但我有以下数据结构: use std::marker::PhantomData; pub struct Map { data: Vec
如何在用户注册时事通讯时运行此跟踪代码? var google_conversion_id = xxxxxx; var google_conversion_language = "e
对于我们的招聘网站,我们为每个与员工编号相关的员工提供了唯一的URL。然后,他们可以将其唯一的URL分配给其个性化页面。想知道是否有一种简单/最佳的方法来跟踪每个员工的表单生成的提交数量。即Todd通
网站 Saritias 情况 我的客户希望跟踪 Google Adwords 转化情况。当客户点击广告、访问网站,然后使用第 3 方预订小部件 ( ResDiary ) 预订餐 table 时,即可实
在我的 react PWA 上,我想在发送表单数据之后跟踪 Google Adwords 中的转化。我已经使用 react-ga 模块来跟踪使用 UA-xxxxxx 编号的页面浏览量。现在我有一个 A
不知道你是否能帮忙。 我们有一个电子商务网站。我们与 PayPal 和 WorldPay 集成进行付款,并将 secure.worldpay.com 和 paypal.com 添加到 Analytic
所以我已经安装了 Google Analytics,现在我想跟踪转化,但我希望转化代码仅在用户来自特定来源/媒介时运行,并忽略其余部分。可能吗? 最佳答案 您可以在分析过程中使用过滤器和/或分段来隔离
我想在同一页面上跟踪 2 个不同的 onclick 转化。 Google 的示例跟踪代码如下所示: /* */ 示例 onclick 代码如下所示: DO
我有一个 VueJS 应用程序,用户在其中提交表单。使用 Vue-resource 将数据发送到服务器。我需要告诉 Google 这是一次转换。 Google 给我的是一个脚本,告诉我放入“thank
我是一名优秀的程序员,十分优秀!