pytorch每日一学10(torch.set_printoptions())更改打印设置

第10个方法

torch.set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, profile=None, sci_mode=None)

  这个方法就要复杂一些了,这个方法是来修改pytorch中的打印选项的(其实就是和numpy中更改打印方法一样),就是使用print打印tensor时,我们显示的元素精度,最多显示元素个数等一系列的有关操作的选项,接下来分别介绍各个参数的作用。

  • precision=None,此参数的意思是显示浮点tensor中元素的精度(显示到小数点后几位),默认是4
    在这里插入图片描述
    使用此方法使显示位数到小数点后6位
    在这里插入图片描述
  • threshold=None,由于我们的进行训练网络时,tensor都会很大,里面的数据很多,不方便全部显示出来,显示超过一定的个数(注意是个数,是行数 × \times ×列数,而不是行数或者列数)后就会进行折叠。此参数是指定tensor的数目超过多少时开始显示进行折叠。默认为1000
    在这里插入图片描述
    图上显示超过1000,开始折叠,我们设置数目为2000后。
    在这里插入图片描述
  • edgeitems=None此参数也与折叠有关,折叠后只显示前面的数据和后面的数据,此参数设置显示的前面与后面的数据的行数(注意这里是行数而不是个数),默认为3,如上图折叠后头尾各显示3行,更改为5行后如下所示:
    在这里插入图片描述
  • linewidth=None,此参数是指如果一行数据太多会插入换行符,此参数是指定每行的字符数(注意是字符数,不是数据的个数,这个一定要注意)到达多少时插入换行符,此参数对于显示时超过threshold而折叠的tensor并不适用。默认为80
    但是我试过以后,发现这个参数不咋好用。它这个很不好用,说是字符的个数,但是其实每行一定会显示完一个数据,不会出现一个数值分行出现的那种,不论你设为多少(即使为1 )所以其实在一个阈值内它是一样的。而且第一行一定会有tensor这个字符,这个括号也类似于数据,不会分行出现,一定会跟在一个数据的后面而不会单独出现在一行。而且其实我数出来的和它描述的数字其实不太一样,不过大致相等吧,也不知道具体咋用,如果有知道的可以评论区补充一下,我是觉得这个参数不咋好用。
    在这里插入图片描述
    在这里插入图片描述
  • profile=None:其实此方法就是一个比较简便的显示方法,它有三个选项,分别为default、short、full用来满足我们的显示,大家可以看看效果。(这是default和short)
    在这里插入图片描述
    在这里插入图片描述
      很显然,就是short只显示两位,full显示的更长一些,而default就是默认,但是这是在数据长度本身为4位的情况下,如果长度大于4位的话full会不会完全显示呢?
    在这里插入图片描述
      很可惜并不会,还是只显示4位,可能这个full就是显示原来默认4位长度吧,还是上面的几个选项比较好用,这个也感觉不是很好用。
  • sci_mode=None这方法是来指定显示的数字是否使用科学计数法,可以选择指定True或者False,如果选择None,那么是True还是False会由torch._tensor_str._Formatter来定义。值会自动的由框架来选择。一般默认为False。开启科学计数法后如下所示。
    在这里插入图片描述
  • 0
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值