pytorch学习的一些tips(4)

view():重新定义矩阵的形状

view中一个参数定为-1,代表动态调整这个维度上的元素个数,以保证元素的总数不变。


//:地板除,先除再向下取整


高维矩阵的乘法

(m, k, d)*(m, k, d)=(m, k, d),后两维矩阵相乘,第一维不变

p * z不是高位矩阵的乘法,是Hadamard product积,即对应元素相乘。

index_add_:

Tensor.index_add_(dimindexsource*alpha=1

按照index给的索引,将source中的值按照dim加到tensor上


tqdm的使用:

tqdm是 python的一个关于进度条的扩展包,在深度学习进程中可以将训练过程用进度条的形式展现出来,会让训练界面更加的美观。

1.各个参数

  • iterable : iterable, optional
  • Iterable to decorate with a progressbar. Leave blank to manually manage the updates.
  • leave:默认是true,在迭代运行结束后是否继续保留进度条显示
  • desc('str'): 传入进度条的前缀
  • position(int):设置打印进度条的位置,可以设置多个bar
  • disable:是否禁用整个进度条,默认是false
  • colour(str):进度条的颜色
  • set_postfix : 设置信息

2.tqdm.write() 方法提供了一种在不破坏显示进度条的情况下将消息写入控制台的方法。 因此,这个片段提供了正确的输出:

由于在控制台中显示进度条时直击使用print写入控制台会造成显示混乱,使用tqdm.write()将在不破坏进度条的情况下显示

from tqdm import tqdm
import time

pbar = tqdm(total=200) # 设置总长度
for i in range(100):
    time.sleep(0.05)
    # 每次更新进度条的长度
    pbar.write(f'{i}')
    pbar.update(1) # 相当于在当前长度的基础上 +1 的操作

pbar.close()

有一个问题:我发现即使使用了pbar.write,依旧会出现打印混乱的情况,另一个问题,真的有必要使用进度条吗?显示也不好看啊


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值