
0608-nn和autograd的区别
发布日期:2021-05-09 05:37:07
浏览次数:10
分类:博客文章
本文共 737 字,大约阅读时间需要 2 分钟。
0608-nn和autograd的区别
目录
pytorch完整教程目录:
一、nn 和 autograd 的区别
Module 利用的是 autograd 的技术,主要是为了实现前向传播。在 forward 函数中,Module 对输入的 Variable 进行的各种操作基本都使用到了 autograd 的技术。
因此在这里主要对比 autograd.Function
和 nn.Module
两者之间的区别。
autograd.Function
利用 Tensor 对 autograd 技术的扩展,为 autograd 实现了新的运算操作符,不仅要实现前向传播还要手动实现反向传播nn.Module
利用了 autograd 技术,对 nn 的功能进行扩展,实现了深度学习中的大部分层,并且只需要实现前向传播,autograd 就会自动实现反向传播nn.functional
是一些 autograd 操作的集合,是经过封装的函数,如果使用它来构建深度神经网络,需要自己编写前向传播和反向传播函数
二、Function 和 Module 在实际中使用的情况
Funciton 和 Module 作为扩充 torch 的两种接口,在实际中
- 如果某一个操作在 autograd 中尚未支持,则可以利用 Function 手动实现对应的前向传播和反向传播
- 如果某些时候利用 autograd 接口比较复杂,也可以利用 Function 将多个操作聚合,实现优化,如第 3 章
扩展 autograd
那一节实现的 Sigimoid 一样,此时将会比直接利用 autograd 低级别的操作要快 - 如果只是想在深度学习中增加某一层,使用 Module 进行封装则会更加简单
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年04月19日 09时49分02秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
.NET Core 基于Websocket的在线聊天室
2021-05-09
使用MySQL Shell创建MGR
2021-05-09
win10新版wsl2使用指南
2021-05-09
spring-boot 使用hibernate validation对参数进行优雅的校验
2021-05-09
关于我
2021-05-09
数据结构实验之栈四:后缀式求值
2021-05-09
sdut 2498【aoe 网上的关键路径】
2021-05-09
【PHP自定义显示系统级别的致命错误和用户级别的错误】
2021-05-09
【JAVA网络流之URL】
2021-05-09
最通俗易懂的囚徒困境
2021-05-09
递推的思维构建与技巧实现
2021-05-09
五道逻辑思维题
2021-05-09
liteide错误: 进程无法启动--解决方法
2021-05-09
Java程序中的代理作用和应用场景及实现
2021-05-09
Java 前台后台数据传递、中文乱码解决方法
2021-05-09
Git报错:Permission denied (publickey)
2021-05-09
常见的图文布局
2021-05-09
Laravel - 上手实现 - 文件上传、保存到 public 目录下
2021-05-09
一次性搞懂 PHP 中面向对象的所有知识点。
2021-05-09