跟着沐神学AI的时候,发现pycharm里面默认的是不带下划线的,而沐神中的代码是带下划线的,寻找良久终于找到区别:
答案链接:
https://stackoverflow.com/questions/55665363/pytorch-why-to-use-tensor-requires-grad-true-instead-of-tensor-requires-grad
原文:
Both are equally preferable.tensor.requires_grad_()has the default boolean argument set toTruewhereas withtensor.requires_grad = Trueone has to explicitly set the value. So, the former might be convenient over the latter, sometimes. Also, the trailing_(underscore) means that the operation is in-place.
中文翻译:
这两个参数都是相同的,tensor.requires_grad_()是默认的布尔参数设置为 True; 而对于 tensor.requires_grad = True,则必须显式地设置该值。因此,有时候前者可能比后者更方便。而且,拖尾 _ (下划线)意味着操作已经就位。
简而言之,使用
x.requires_grad=True
或
x.requires_grad_(True)