这个警告表示在PyTorch中floordiv(地板除法)的行为将在将来的版本中发生变化,并且已经被弃用。为了解决这个问题,你可以考虑使用// 运算符来执行地板除法,而不是直接使用floordiv 函数。

例如,如果你有类似于以下代码的地方:

 

pythonCopy code

result = torch.floordiv(x, y)

你可以修改为:

 

pythonCopy code

result = x // y

这样可以避免使用被弃用的floordiv函数而不引发警告。确保在你的代码中搜索并替换所有使用floordiv的地方。

UserWarning: floordiv is deprecated, and its behavior will change in a future version of pytorch. It currently rounds toward 0

原因:

torch.floor_divide() 已弃用,将在未来的 PyTorch 版本中删除。它的名字用词不当,因为它实际上将商四舍五入为零而不是取其底数。要保持当前行为,请使用 torch.div() 和 rounding_mode='trunc' 。要实际执行楼层划分,请使用 torch.div() 和 rounding_mode='floor' 。

解决办法:torch.floor_divide — PyTorch 1.12 documentation

        ​​​​​​Python torch.floor_divide用法及代码示例 - 纯净天空 (vimsky.com)d​​​​​​​d

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐