zoukankan      html  css  js  c++  java
  • torch上疑问用法总结

    torch.normal(means, std, out=None)

    means (Tensor) – 均值 
    std (Tensor) – 标准差 
    out (Tensor) – 可选的输出张量

    >>> n_data = torch.ones(5, 2)
    >>> print(n_data)
    tensor([[1., 1.],
            [1., 1.],
            [1., 1.],
            [1., 1.],
            [1., 1.]])
    >>> print(n_data.shape)
    torch.Size([5, 2])
    >>> x0 = torch.normal(2*n_data, 1)
    >>> print(x0)
    tensor([[3.2688, 1.4834],
            [1.8288, 0.7327],   
            [3.2382, 4.0835],
            [2.8337, 2.1901],
            [3.3097, 2.4447]])
    #每个元素是从 均值=2*n_data中对应位置的取值,标准差为1的正态分布中随机生成的
    >>> print(2*n_data)
    tensor([[2., 2.],
            [2., 2.],
            [2., 2.],
            [2., 2.],
            [2., 2.]])
    View Code

    torch.max(参数1, 1)[1]

    torch.max()返回两个结果,第一个是最大值,第二个是对应的索引值;第二个参数 0 代表按列取最大值并返回对应的行索引值,1 代表按行取最大值并返回对应的列索引值。

    torch.max()[0], 只返回最大值的每个数

    troch.max()[1], 只返回最大值的每个索引

    torch.max()[1].data 只返回variable中的数据部分(去掉Variable containing:)

    torch.max()[1].data.numpy() 把数据转化成numpy ndarry

    torch.max()[1].data.numpy().squeeze() 把数据条目中维度为1 的删除掉

    torch.max(tensor1,tensor2) element-wise 比较tensor1 和tensor2 中的元素,返回较大

    优化器

    例:

    torch.optim.Adam(params, lr=0.001, betas=(0.9, 0.999), eps=1e-08, weight_decay=0 )

    params :待优化参数的iterable或定义了参数组的dict,通常为model.parameters()。

    lr:算法学习率,默认为0.001。

    betas:用于计算梯度以及梯度平方的运行平均值的系数,默认为(0.9, 0.999)。

    eps:为了增加数值计算的稳定性而加到分母里面的项,默认为1e-8

    weight_decay:权重衰减(L2惩罚),默认为0.

     视频学习:点击这里

  • 相关阅读:
    索引
    排序---冒泡排序、快速排序、选择排序、插入排序、希尔排序
    设计模式6大原则
    InputStream的read()读取机制
    Java中的关键字---native
    Java中的关键字---static
    Java中的关键字---transient
    负载均理解
    2020-03-29 微服务网关GateWay
    2020-03-28 微服务网关Zuul
  • 原文地址:https://www.cnblogs.com/2020zxc/p/13386594.html
Copyright © 2011-2022 走看看