![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pytorch
JL_Jessie
这个作者很懒,什么都没留下…
展开
-
损失函数
RankCrossEntropyLoss: 排序交叉熵损失class RankCrossEntropyLoss(nn.Module): """Creates a criterion that measures rank cross entropy loss.""" __constants__ = ['num_neg'] def __init__(self, num_neg: int = 1): """ :class:`RankCrossEnt.原创 2020-12-11 11:40:14 · 430 阅读 · 0 评论 -
FocalLoss 带mask的多分类 代码实现
关于介绍FocalLoss的博客很多,这里做一个简单的总结,并且实现了一个多分类的数据不均衡的FocalLoss。FocalLoss用来解决的问题FocalLoss这个损失函数是在目标检测领域(由Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, Piotr Dollár提出) 针对one-stage的目标检测框架(例如SSD, YOLO)中正(前景)负(背景)样本极度不平均,负样本loss值主导整个梯度下降, 正样本占比小, 导致模型只专注学习负原创 2020-08-06 11:45:46 · 2500 阅读 · 1 评论 -
pytorch LearningRate 的调整方法总结
优化器中 最重要的一个参数是学习率,合理的学习率可以使优化器快速收敛。一般在训练初期设定较大的学习率,随着训练的进行,学习率逐渐减小,学习率什么时候减小,减小多少,这就涉及到 学习率调整方法。pytorch V1.60 提供了 10种 learning rate 调整方法,这里做一个简单的总结。所有的学习率调整方法可以分3大类,分别是 有序调整,自适应调整,自定义调整。第一类:有序调整,依据一定的规律有序进行调整,这一类是最常用的,分别是等间隔下降(step), 按需设定下降间隔(MultiStep原创 2020-08-05 11:18:36 · 4906 阅读 · 0 评论 -
权重衰减 vs L2正则
避免过拟合的方法有很多:early stopping、数据集扩增(Data augmentation)、正则化(Regularization)包括L1、L2(L2 regularization也叫weight decay),dropout。这里重点讲解 L2正则 和weight decay 的区别:在训练神经网络的时候,由于Adam有着收敛快的特点被广泛使用。但是在很多数据集上的最好效果还是用SGD with Momentum细调出来的。可见Adam的泛化性并不如SGD with Momentum。在这原创 2020-08-04 16:46:48 · 2019 阅读 · 1 评论 -
向量矩阵运算
import numpy as np向量运算a = np.array([1,2])b = np.array([2,1])# 向量相乘dot = sum([i*j for i,j in zip(a,b)])print('非numpy 计算 向量相乘结果: ',dot) ## 向量相乘numpy 用法dot1 = np.sum(a*b)dot2 = (a*b).sum()dot3 = np.dot(a,b)dot4 = a.dot(b)dot5 = b.dot(a)print('原创 2020-07-24 11:41:53 · 1041 阅读 · 0 评论 -
pytorch训练模型注意事项
用torch tensor在GPU上运算来生成数据集,加速数据生成如果数据集需要在线生成(即在dataloader 里面 计算生成 feature 和label), 如果数据量比较大,并且涉及到矩阵运算,可以用torch tensor来计算。把矩阵放到GPU上计算的快。如果构造dataset 时 是通过cuda tensor计算得到的,那么在创造dataloader 通过多线程加载数据时,请注意加上 import multiprocessing as mp,mp.set_start_method(.原创 2020-07-29 15:58:08 · 2210 阅读 · 0 评论 -
pytorch 合集: pytorch的函数之torch
Torch:torch这个包里面 定义了 多维张量的数据结构以及他们的数学运算,还提供了许多有效序列化张量和任意类型的实用工具,以及其他有用的实用工具。张量Tensoris_tensor 判断是否是一个张量,返回True or False.里面的函数就是简单地 return isinstance(obj, torch.Tensor)is_storage 判断是否为存储类型,返回True or False.里面的函数就是一行: return type(obj) in _storag原创 2020-07-27 16:52:49 · 244 阅读 · 0 评论