#23 关于计算图的问题

Open
created 1 year ago by jun · 2 comments
jun commented 1 year ago
<!-- 需要按照模板,填写每一项内容,请勿改动 --> ### 问题所属任务编号(Task 02) Task 02 ### 运行环境(操作系统版本、Python 版本)/ 非程序问题 非程序问题 ### 完整的报错信息(截图或复制均可)/ 问题详细描述 想知道下面这个计算图长啥样 ![image](/attachments/b6524d39-3b77-48c4-a503-3cc2a21f3e6b) 我是这样画的,但是这样不就会出现两个x作为叶子结点了吗 ![image](/attachments/c3005636-980c-4510-98b7-34ef8b75c93d) 其实我怀疑底层做了优化,如果操作数还是x就会合并,但是打印了一下type发现好像没有这样优化 ![image](/attachments/6d07c276-cee0-43c0-aced-92a130ed11dd) 如果确实是如上的计算图,反向计算的时候就会出问题,望解惑 ### 描述你期望看到的结果
anine09 added the
Task 02
label 1 year ago
anine09 added this to the 未分配助教 milestone 1 year ago
anine09 added the
程序问题
label 1 year ago
anine09 added the
非程序问题
label 1 year ago
anine09 removed the
程序问题
label 1 year ago
RicardoLu commented 1 year ago
我的理解,计算图是有向无环图,但是图中的一个节点可以有很多条边,所以代码中的x通过多条边指向多个节点,整个图中只要无环即可。 你的截图中的代码的计算图是下面这样的: ![image](/attachments/a9faac02-d864-48e4-9680-ea9b6a81536e) 青色矩形为叶子节点x,会绑定一个AccumulateGrad操作累积梯度。可以看到叶子结点通过多条边和其他节点相连。 假如修改代码中的y = x * x * x,那么计算图会变成下面这样: ![image](/attachments/9423f782-033c-4a68-ba9f-d6e47d09f9ab) 在计算y时产生了一个临时节点存储 x * x。 如果接着修改z = x + y + x,那么计算图会变成这样: ![image](/attachments/153fa1f5-c29c-4ff7-8281-47bb22191898) 我觉得图大概挺直观了。
anine09 modified the milestone from 未分配助教 to 助教解答过 1 year ago
jun commented 1 year ago
Poster
> 我的理解,计算图是有向无环图,但是图中的一个节点可以有很多条边,所以代码中的x通过多条边指向多个节点,整个图中只要无环即可。 > 你的截图中的代码的计算图是下面这样的: > ![image](/attachments/a9faac02-d864-48e4-9680-ea9b6a81536e) > 青色矩形为叶子节点x,会绑定一个AccumulateGrad操作累积梯度。可以看到叶子结点通过多条边和其他节点相连。 > 假如修改代码中的y = x * x * x,那么计算图会变成下面这样: > ![image](/attachments/9423f782-033c-4a68-ba9f-d6e47d09f9ab) > 在计算y时产生了一个临时节点存储 x * x。 > 如果接着修改z = x + y + x,那么计算图会变成这样: > ![image](/attachments/153fa1f5-c29c-4ff7-8281-47bb22191898) > 我觉得图大概挺直观了。 非常感谢! 请问我画的这个计算图是正确的嘛 ![image](/attachments/d5d7bc0c-ae36-4024-9223-83f22ad5a182)
216 KiB
216 KiB
216 KiB
anine09 modified the milestone from 助教解答过 to 学习者追问 1 year ago
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.