将我的自定义损失函数添加到火炬中

法瑟

我想向割炬中添加一个损失函数,以计算预测值和目标值之间的编辑距离。有没有简单的方法可以实现这个想法?还是我必须使用后退和前进功能编写自己的类?

亚历山大·卢琴科

如果您的标准可以表示为现有模块和标准的组合,则最好使用容器简单地构建这种组合。唯一的问题是标准容器仅设计用于模块而不是标准。区别在于:forward方法签名:

module:forward(input)
criterion:forward(input, target)

幸运的是,我们可以自由定义自己的容器,该容器也可以使用标准。例如,顺序:

local GeneralizedSequential, _ = torch.class('nn.GeneralizedSequential', 'nn.Sequential')

function GeneralizedSequential:forward(input, target)
    return self:updateOutput(input, target)
end

function GeneralizedSequential:updateOutput(input, target)
    local currentOutput = input
    for i=1,#self.modules do
        currentOutput = self.modules[i]:updateOutput(currentOutput, target)
    end
    self.output = currentOutput
    return currentOutput
end

以下是如何实现nn.CrossEntropyCriterion具有此通用顺序容器的说明:

function MyCrossEntropyCriterion(weights)
    criterion = nn.GeneralizedSequential()
    criterion:add(nn.LogSoftMax())
    criterion:add(nn.ClassNLLCriterion(weights))
    return criterion
end

检查一切是否正确:

output = torch.rand(3,3)
target = torch.Tensor({1, 2, 3})

mycrit = MyCrossEntropyCriterion()
-- print(mycrit)
print(mycrit:forward(output, target))
print(mycrit:backward(output, target))

crit = nn.CrossEntropyCriterion()
-- print(crit)
print(crit:forward(output, target))
print(crit:backward(output, target))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将我自己的自定义键盘添加到特定的编辑文本

来自分类Dev

如何将我自己的自定义 css 和 html 添加到 Prestashop?

来自分类Dev

编译时清除添加到tensorflow 2中的自定义层的损失

来自分类Dev

如何将我的自定义npm软件包添加到TypeScript定义管理器?

来自分类Dev

iOS-以编程方式将我们应用的自定义URI添加到日历中存储的事件中

来自分类Dev

iOS-以编程方式将我们应用的自定义URI添加到日历中存储的事件中

来自分类Dev

将我的“定义”添加到C中的枚举

来自分类Dev

将自定义函数添加到类

来自分类Dev

将自定义函数添加到对象原型

来自分类Dev

如何将自定义Google搜索添加到我的自定义搜索框中?

来自分类Dev

如何将自定义Google搜索添加到我的自定义搜索框中?

来自分类Dev

将自定义函数添加到 Python 中的现有类

来自分类Dev

我可以将Click Listener添加到自定义Toast中吗

来自分类Dev

将 GraphStream 图添加到我的自定义 jPanel 中

来自分类Dev

将项目的依赖添加到我的自定义gradle插件中

来自分类Dev

如何在res / raw文件夹中将我的应用的自定义铃声添加到铃声首选项

来自分类Dev

如何将我的自定义字段添加到 Woocommerce 订单流程(查看表单、订单详细信息和电子邮件流程)

来自分类Dev

将我的函数数据列添加到python中的原始数据中

来自分类Dev

我可以通过wordpress中的某些功能将类别添加到自定义分类中吗?

来自分类Dev

我可以将自己的功能添加到Excel中的自定义状态栏中吗?

来自分类Dev

如何使用辅助函数将自定义类名称添加到Handlebars模板中的元素?

来自分类Dev

将我定义的注释添加到猫头鹰中的个人

来自分类Dev

无法将通过字符串生成的证书添加到我的自定义TrustManager中

来自分类Dev

我创建了一个自定义用户,如何将它们添加到组中?

来自分类Dev

VSTO C#自定义表单(如果我忘记将附件添加到电子邮件中)

来自分类Dev

如何在“查询”构建器中将自定义列添加到我的选择中?

来自分类Dev

是否可以将 sitefinity 小部件添加到我的自定义小部件中?

来自分类Dev

如何在Tensorflow中编写自定义损失函数?

来自分类Dev

Keras,Python中的自定义损失函数?

Related 相关文章

  1. 1

    将我自己的自定义键盘添加到特定的编辑文本

  2. 2

    如何将我自己的自定义 css 和 html 添加到 Prestashop?

  3. 3

    编译时清除添加到tensorflow 2中的自定义层的损失

  4. 4

    如何将我的自定义npm软件包添加到TypeScript定义管理器?

  5. 5

    iOS-以编程方式将我们应用的自定义URI添加到日历中存储的事件中

  6. 6

    iOS-以编程方式将我们应用的自定义URI添加到日历中存储的事件中

  7. 7

    将我的“定义”添加到C中的枚举

  8. 8

    将自定义函数添加到类

  9. 9

    将自定义函数添加到对象原型

  10. 10

    如何将自定义Google搜索添加到我的自定义搜索框中?

  11. 11

    如何将自定义Google搜索添加到我的自定义搜索框中?

  12. 12

    将自定义函数添加到 Python 中的现有类

  13. 13

    我可以将Click Listener添加到自定义Toast中吗

  14. 14

    将 GraphStream 图添加到我的自定义 jPanel 中

  15. 15

    将项目的依赖添加到我的自定义gradle插件中

  16. 16

    如何在res / raw文件夹中将我的应用的自定义铃声添加到铃声首选项

  17. 17

    如何将我的自定义字段添加到 Woocommerce 订单流程(查看表单、订单详细信息和电子邮件流程)

  18. 18

    将我的函数数据列添加到python中的原始数据中

  19. 19

    我可以通过wordpress中的某些功能将类别添加到自定义分类中吗?

  20. 20

    我可以将自己的功能添加到Excel中的自定义状态栏中吗?

  21. 21

    如何使用辅助函数将自定义类名称添加到Handlebars模板中的元素?

  22. 22

    将我定义的注释添加到猫头鹰中的个人

  23. 23

    无法将通过字符串生成的证书添加到我的自定义TrustManager中

  24. 24

    我创建了一个自定义用户,如何将它们添加到组中?

  25. 25

    VSTO C#自定义表单(如果我忘记将附件添加到电子邮件中)

  26. 26

    如何在“查询”构建器中将自定义列添加到我的选择中?

  27. 27

    是否可以将 sitefinity 小部件添加到我的自定义小部件中?

  28. 28

    如何在Tensorflow中编写自定义损失函数?

  29. 29

    Keras,Python中的自定义损失函数?

热门标签

归档