![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习
文章平均质量分 67
cv_我emo了
这个作者很懒,什么都没留下…
展开
-
mmaction-slowfast loss结果
sigmoid loss:1-190epoch loss: 0.68———0.1epoch10epoch40epoch190可以看到明显的梯度下降,sleep和playphone是数据集的问题。focal loss:正在训练myloss:训练不拟合 0-35epoch loss:0.2---0.15左右然后不拟合了看看测试loss有没有拟合:epoch5ep...原创 2021-11-26 20:28:13 · 416 阅读 · 2 评论 -
基于mmaction2的slowfast源码
backbone源码在mmaction2/mmaction/models/backbones/resnet3d_slowfast.py中import warningsimport torchimport torch.nn as nnfrom mmcv.cnn import ConvModule, kaiming_initfrom mmcv.runner import _load_checkpoint, load_checkpointfrom mmcv.utils import print_原创 2021-10-07 16:25:41 · 525 阅读 · 1 评论 -
【深度学习 十】swin transformer:屠榜各大cv比赛
概要Swin transformer: Hierarchical Vision Transformer using Shifted Windows,是微软2021.03.25公布的一篇利用transformer架构处理计算机视觉任务的论文。在图像分割,目标检测各个领域已经霸榜,让很多人看到了transformer完全替代卷积的可能。而且它的设计思想吸取了resnet的精华,从局部到全局,将transformer设计成逐步扩大感受野的工具。论文链接https://arxiv.org/abs/2103.原创 2021-09-24 09:55:53 · 618 阅读 · 1 评论 -
【深度学习 九】transformer
1transformer的encoder-decoder结构:结构内部:2encoder:2.1 输入部分embedding和postitional encoding(位置编码)为什么需要位置编码:如RNN每一time steps共享一套参数,串行输入输出,而transformer采用可以并行出入几个单词或者一串句子,优点是处理效率高,缺点是无法表示时序关系,所以要对输入的embedding加上postitional encoding。最终输入的...原创 2021-09-22 20:44:27 · 434 阅读 · 0 评论 -
【深度学习 八】cv中的attention:SENet
通过全局池化将一个通道的特征池化为一个特征,于是池化后的输出为1x1xc。 通过输入的1x1xc的参数生成一个权重向量1x1xc。所以重点就是如何生成和更新这个权重向量。 将这个权重向量和原特征图HxWxC相乘,完成通道维度的attention机制。通过两个全连接一个降维一个升维,和一个RELU,最后接sigmoid生成分配的权重。Resnet和Resnext加上SENet后精度都提高了...原创 2021-09-21 10:35:43 · 149 阅读 · 0 评论 -
【深度学习 七】NLP & Word Embeddings
1. one-hot和Word Embeddings表征单词的方式是首先建立一个较大的词汇表(例如10000),然后使用one-hot的方式对每个单词进行编码。例如单词Man,Woman,King,Queen,Apple,Orange分别出现在词汇表的第5391,9853,4914,7157,456,6257的位置,则它们分别用O5391,O9853,O4914,O7157,O456,O6257表示。one-hot表征单词的方法最大的缺点就是每个单词都是独立的、正交的,无法知道不同单词之间的相似程.原创 2021-09-18 09:57:18 · 201 阅读 · 0 评论 -
【深度学习 六】GRU和LSTM
GRU(simplified)引入c=memory cell记忆细胞,这里c(t)=a(t),引入c是为了后面的LSTM。引入如上图是一个sigmord函数,大部分状态是接近0或1,类似于一个门,如上图如果这个更新值=1,也就是说把这个新值,即c(t)设为候选值,然后往前再更新这个值。对于所有在这中间的值,你应该把门的值设为0,即=0,意思就是说不更新它,就用旧的值。因为如果=0,则c(t)=c(t-1)等于旧的值。这样上图中的cat对应的c(t)会一直等c(t-1)的出现,于是它仍然记得猫是单数...原创 2021-09-17 11:00:44 · 859 阅读 · 0 评论 -
【深度学习 五】循环神经网络 (Recurrent Neural Network Model)
shuju1原创 2021-09-16 16:17:35 · 230 阅读 · 0 评论 -
【深度学习 四】为什么使用卷积神经网络?
与全连接层相比,卷积层的两个主要优势在于参数共享和稀疏连接假设有一张32×32×3维度的图片,用了6个大小为5×5的过滤器,输出维度为28×28×6。32×32×3=3072,28×28×6=4704,神经网络,其中一层含有3072个单元,下一层含有4074个单元,两层中的每个神经元全连接,计算权重矩阵等于4074×3072≈1400万,所以要训练的参数很多。卷积层的参数数量,每个过滤器都是5×5,再加上偏差参数,那么每个过滤器就有26个参数,一共有6个过滤器,所以参数共计156个,参数数量还.原创 2021-09-16 16:04:28 · 832 阅读 · 0 评论 -
【深度学习 三】防止过拟合
L2正则化为什么正则化可以防止过拟合?加入正则化后,w减小了,相当于减小对各方向梯度的影响,也就是减小了对数据集的依赖性,所以会导致欠拟合。过拟合的话就会往right的方向靠拢。λ↑ w↓ z=wa+b↓激活函数g(z)就越接近0,越接近一个线性回归函数,所以可以对抗过拟合现象。dropout正则化超参数keep.prop=cv里用的比较多,因为缺数据需要随机舍弃一些特征。数据增广early stopping梯度消失和梯度爆炸训练神经网络...原创 2021-09-15 21:03:12 · 314 阅读 · 0 评论 -
【深度学习 二】偏差、方差
偏差、方差一、概念定义偏差(bias):偏差衡量了模型的预测值与实际值之间的偏离关系。通常在深度学习中,我们每一次训练迭代出来的新模型,都会拿训练数据进行预测,偏差就反应在预测值与实际值匹配度上,比如通常在keras运行中看到的准确度为96%,则说明是低偏差;反之,如果准确度只有70%,则说明是高偏差。 方差(variance):方差描述的是训练数据在不同迭代阶段的训练模型中,预测值的变化波动情况(或称之为离散情况)。从数学角度看,可以理解为每个预测值与预测均值差的平方和的再求平均数。通常在深度学转载 2021-09-15 14:54:24 · 1039 阅读 · 0 评论 -
【深度学习 一】activation function以及loss function理解
一 首先线性回归模型:可以看成是单层神经网络二 引入非线性元素,使神经网络可以完成非线性映射,就引入了sigmoid,ReLU,softmax等激活函数Sigmoid函数Sigmoid =多标签分类问题=多个正确答案=非独占输出(例如胸部X光检查、住院)。构建分类器,解决有多个正确答案的问题时,用Sigmoid函数分别处理各个原始输出值。Sigmoid函数是一种logistic函数,它将任意的值转换到[0,1]之间,如图1所示,函数表达式为:这里的x可以为向量y:...原创 2021-09-14 21:39:10 · 434 阅读 · 0 评论