记录一下tricks:
20200106 添加
- 为了避免出现unreachable类似的错误,最好不要使用a= 算式中有a的运算,尤其是直接更改赋值的,尽量使用mask来变化a,a = a * mask,而不是a = a[~(mask!=0)]
- model.to(device),对于model中嵌套的模型model_2,在初始化的时候,或者其它的时候,需要执行model_2.to(device),不然会出现two devices的错误。
- 当数据很大,append操作很多时,np.append消耗内存又耗时,最好转化为list,使用extend,然后再转成array,(不过当list很大时,转化array超级慢,需要验证原因并解决)
这篇博客分享了三个编程优化技巧。首先,为防止出现`unreachable`错误,建议使用mask更新变量,而非直接赋值。其次,当模型在设备间移动时,确保所有嵌套模型也移到相应设备,以避免`two devices`错误。最后,当处理大量数据时,用extend代替np.append以减少内存消耗和提高速度。这些技巧有助于提升代码的稳定性和性能。
328

被折叠的 条评论
为什么被折叠?



