#21 Task 03 关于detach()的问题

Open
created 1 year ago by Yanger · 1 comments
Yanger commented 1 year ago
### 问题所属任务编号(Task 01-05) Task 03 ### 运行环境(操作系统版本、Python 版本)/ 非程序问题 ### 完整的报错信息(截图或复制均可)/ 问题详细描述 我们输出有噪声的scatter图时,【问题】这个detach().是不是没必要,去掉也行?还是有额外的好处? d2l.plt.scatter(features[:, 1].detach().numpy(), labels.detach().numpy(), 1); ### 描述你期望看到的结果
anine09 added the
Task 03
label 1 year ago
anine09 added this to the 未分配助教 milestone 1 year ago
anine09 added the
非程序问题
label 1 year ago
jiafu commented 1 year ago
  detach是为了切断一些分支的反向传播。   detach返回一个新的tensor,和原始的tensor共同一个内存,仍指向原变量的存放位置,新的tensor不计算梯度。   现在看没有区别,但加了以后优势在于:①当我们只想要调整部分网络参数或②只训练部分分支网络,并不让其梯度对主网络的梯度造成影响时。。。使用这个新的tensor进行计算反向传播时,运行到这个调用了deach的tensor就会停止,不再继续向前进行传播。
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.