深度学习
Alphapeople
这个作者很懒,什么都没留下…
展开
-
卷积分解的优点
将12x12的卷积分成3个3x3的卷积可以加深网络提高精度、减少计算量。原创 2023-04-01 07:34:41 · 76 阅读 · 0 评论 -
数据集推荐
深度学习公共数据集(四):手部手势、图像视频形状、对象数据库、人与人体姿势 - 知乎原创 2022-02-16 14:34:36 · 319 阅读 · 0 评论 -
pytorch简单的二分类
train.py# from torchvision.models.resnet import resnet34# from dataset import datasest# from torch.optim.lr_scheduler import StepLR# from torch.nn import CrossEntropyLoss# import torch# from torch.utils.tensorboard import SummaryWriter## train_ro原创 2021-12-28 14:07:55 · 1283 阅读 · 0 评论 -
BAM的pytorch实现
class ChannelAttention(nn.Module): def __init__(self, channel, reduction=16): super(ChannelAttention, self).__init__() mid_channel = channel // reduction self.avg_pool = nn.AdaptiveAvgPool2d(1) self.shared_MLP = nn.Seq.原创 2021-02-07 11:21:26 · 1056 阅读 · 0 评论 -
Inverted Residuals 的 attention版本
attention机制:代码:class InvertedResidual_(nn.Module): def __init__(self, inp, oup, stride, expand_ratio): super(InvertedResidual_, self).__init__() self.stride = stride assert stride in [1, 2] norm_layer = nn.BatchN原创 2021-02-05 17:10:00 · 232 阅读 · 0 评论 -
打包onnx
def pth2onnx(arch='mobilenetV2', version='2.2', epoch=20): torch.set_grad_enabled(False) save_prefix = 'checkpoint/onnx/'+version+'/' if not os.path.exists(save_prefix): os.makedirs(save_prefix) checkpoint = torch.load('./checkpoi.原创 2020-12-11 10:14:07 · 295 阅读 · 0 评论 -
各种分类损失的实现
from __future__ import print_functionfrom __future__ import divisionimport torchimport torch.nn as nnimport torch.nn.functional as Ffrom torch.nn import Parameterimport mathclass ArcMarginProduct(nn.Module): r"""Implement of large margin arc .原创 2020-12-10 15:28:31 · 409 阅读 · 0 评论 -
paddleocr的使用
import paddlehub as hub# 加载移动端预训练模型# ocr = hub.Module(name="chinese_ocr_db_crnn_mobile")# 服务端可以加载大模型,效果更好import cv2import osfrom math import *def r(image,degree): height, width = image.shape[:2] # 旋转后的尺寸 heightNew = int(width * fabs(si.原创 2020-11-25 16:44:02 · 2751 阅读 · 1 评论 -
BiLSTM+CRF命名实体识别的pytorch实现
import torchimport torch.nn as nnimport torch.optim as optimtorch.manual_seed(1)# some helper functionsdef argmax(vec): # return the argmax as a python int # 第1维度上最大值的下标 # input: tensor([[2,3,4]]) # output: 2 _, idx = torch.max(.原创 2020-11-25 14:30:34 · 1155 阅读 · 0 评论 -
U2NET的pytorch实现
USR模块网络结构开源github地址:https://github.com/NathanUA/U-2-Net自己的实现:import torchfrom torch import nnfrom torchvision import modelsimport torch.nn.functional as Fclass Convalution(nn.Module): def __init__(self,in_ch=3,out_ch=3,dirate=1):原创 2020-11-24 17:26:43 · 1808 阅读 · 0 评论 -
yolov5目标的生成及损失函数
def build_targets(p, targets, model): """ :param p:torch.Size([2, 3, 19, 19, 85])*3 :param targets: [目标数,6] :param model: :return: """ # Build targets for compute_loss(), input targets(image,class,x,y,w,h) det = model.mo.原创 2020-11-24 10:07:36 · 3858 阅读 · 1 评论 -
CSP结构的pytorch实现
class BottleneckCSP(nn.Module): # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion super(BottleneckCS...原创 2020-11-23 17:51:16 · 5356 阅读 · 0 评论 -
Focus的作用及pytorch实现
用于切片操作,比如4*4*3变成了2*2*12的特征图class Focus(nn.Module): # Focus wh information into c-space def __init__(self, c1, c2, k=1): super(Focus, self).__init__() self.conv = Conv(c1 * 4, c2, k, 1) def forward(self, x): # x(b,c,w,h) -..原创 2020-11-23 17:30:21 · 3527 阅读 · 2 评论 -
ASPP的pytorch实现
from torch import nnimport torchimport torch.nn.functional as Fclass ASPPConv(nn.Sequential): def __init__(self, in_channels, out_channels, dilation): modules = [ nn.Conv2d(in_channels, out_channels, 3, padding=dilation, d...原创 2020-11-23 13:45:19 · 6911 阅读 · 1 评论 -
SPP的pytorch实现
from torch import nnimport torchclass SPP(nn.Module): def __init__(self): super(SPP, self).__init__() self.pool1 = nn.MaxPool2d(kernel_size=5,stride=1,padding=5 // 2) self.pool2 = nn.MaxPool2d(kernel_size=7, stride=1, padd...原创 2020-11-23 11:53:57 · 2864 阅读 · 0 评论 -
FRN的实现TensorFlow and pytorch
import tensorflow as tfdef FRNLayer(x,tua,beta,gamma,eps=1e-6): """ :param x: input tensor:[BHWC] :param tua: [1,1,1,C] :param beta: [1,1,1,C] :param gamma: [1,1,1,C] :param eps: :return: """ nu2 = tf.reduce_mean(tf.s.原创 2020-11-23 10:20:13 · 580 阅读 · 0 评论 -
CBAM的理解pytorch实现和用法
总述:对于卷积神经网络生成的feature map,CBAM从通道和空间两个维度计算feature map的attention map,然后将attention map与输入的feature map相乘来进行特征的自适应学习。CBAM是一个轻量的通用模块,可以将其融入到各种卷积神经网络中进行端到端的训练。也就是说由于CBMA模块输入和输出的featuremap大小是一致的,因此可用于网络的各层。class ChannelAttentionModule(nn.Module): d原创 2020-11-20 16:28:14 · 4375 阅读 · 0 评论 -
transformer目标检测
import torchfrom torch import nnfrom torchvision.models import resnet50class DETR(nn.Module): def __init__(self,num_classes,hidden_dim,nheads,num_encoder_layers,num_decoder_layers): super().__init__() self.backbone = nn.Sequential(.转载 2020-11-12 11:48:41 · 1654 阅读 · 0 评论 -
Lookahead优化器
from collections import defaultdictfrom itertools import chainfrom torch.optim import Optimizerimport torchimport warningsclass Lookahead(Optimizer): def __init__(self, optimizer, k=5, alpha=0.5): self.optimizer = optimizer self..原创 2020-05-28 09:55:16 · 515 阅读 · 0 评论 -
GNN库
https://baijiahao.baidu.com/s?id=1633311544434564762&wfr=spider&for=pc转载 2020-05-08 16:31:55 · 284 阅读 · 0 评论 -
CenterNet测试图片demo
import argparsefrom models.py_utils.data_parallel import DataParallelimport torch.nn as nnfrom models.py_utils import TopPool, BottomPool, LeftPool, RightPoolfrom models.py_utils.utils import co...原创 2019-11-13 14:51:44 · 1188 阅读 · 2 评论 -
一篇很形象解释focalloss的文章
https://www.jianshu.com/p/0ef56b59b9ac转载 2019-11-11 18:07:52 · 215 阅读 · 0 评论 -
MultiPoseNet: Fast Multi-Person Pose Estimation using Pose Residual Network
The backbone of MultiPoseNet serves as a feature extractor for keypoint and person detection subnets. It is actually a ResNet [36] with two Feature Pyramid Networks (FPN)MultiposeNet的主干用作关键点和人员...原创 2019-11-07 16:18:50 · 867 阅读 · 0 评论 -
loss代码
import torchimport torch.nn as nnfrom .utils import _tranpose_and_gather_featdef _sigmoid(x): return torch.clamp(x.sigmoid_(), min=1e-4, max=1-1e-4)def _ae_loss(tag0, tag1, mask): num ...转载 2019-11-05 15:01:09 · 720 阅读 · 0 评论 -
比较好的GitHub链接
人体姿态估计:https://github.com/yuanyuanli85/Fast_Human_Pose_Estimation_Pytorchmaskrcnn:https://github.com/FangYang970206/MaskRCNN-Keypoint-Demohttps://blog.csdn.net/qq_25349629/article/details/89493192...转载 2019-11-05 11:19:43 · 155 阅读 · 0 评论 -
递归神经网络的不合理有效性
递归神经网络(Rnns)有一些神奇之处。我仍然记得当我训练我的第一个递归网络进行图像捕捉时。在训练后的几十分钟内,我的第一个婴儿模型(带有相当随意选择的超参数)开始生成非常好看的图像描述,这些图像处于有意义的边缘。有时,你的模型的简单程度与结果的质量的比率。你的打击超出了你的期望,这也是其中的一次。当时令人震惊的是,人们普遍认为Rnns应该是很难训练的(事实上,我有更多的经验,得出了相反的...转载 2018-12-12 16:39:53 · 869 阅读 · 0 评论 -
基于多任务级联卷积网络的人脸联合检测与对准
摘要无约束环境下的 抽象人脸检测和比对由于其不同的姿态、光照和遮挡而具有挑战性。最近的研究表明,深度学习方法可以在这两个任务上取得显著的性能。本文提出了一种基于深度级联的多任务框架,利用它们之间的内在相关性来提高性能,特别是采用了分三个阶段精心设计的级联结构。在学习过程中,我们提出了一种新的在线硬样本挖掘策略,它可以在不需要人工选择样本的情况下自动提高人脸挖掘的性能,在挑战Fddb和宽人脸检测...翻译 2018-12-12 17:21:50 · 1042 阅读 · 0 评论 -
用于大规模图像识别的深度卷积网络
摘要 本文研究了大规模图像识别中卷积网络深度对其精度的影响。我们的主要贡献是使用一种非常小(3×3)卷积滤波器的结构对增加深度的网络进行了彻底的评估,这表明通过将深度推进到16-19层,可以实现对现有技术配置的显著改进。这些发现是我们的ImageNet 2014年挑战报告的基础,我们的团队分别在本地化和分类轨道上获得了第一名和第二名。我们还表明,我们的表示很好地推广到了其他数据集,...翻译 2018-12-13 17:17:27 · 1947 阅读 · 0 评论 -
Faster R-CNN:用区域提案网络实现实时目标检测
摘要最先进的目标检测网络依赖于区域建议算法来假设物体的位置.像sppnet[1]和快速r-cnn[2]这样的进步减少了这些检测网络的运行时间,将区域提案计算暴露为瓶颈。在本文中,我们引入了一个区域提案网络(RPN),它与检测网络共享全图像卷积特征,从而实现了几乎免费的区域提案。RPN是一个完全卷积的网络,它同时预测每个位置的对象边界和对象性分数。RPN是经过端到端的训练,以产生高质量的区域提案...翻译 2018-12-14 13:20:10 · 3989 阅读 · 1 评论 -
用于视觉识别的深度卷积网络空间金字塔池化方法
摘要现有的深卷积神经网络(CNN)需要一个固定大小的神经网络(例如224x224)的输入图像。这种要求是“人为的”,可能会降低对任意大小/尺度的图像或子图像的识别精度。在这项工作中,我们为网络配备了另一种池化策略,即“空间金字塔池”,以消除上述需求。新的网络结构,称为Spp-Net,可以生成一个固定长度的表示,而不考虑图像大小/比例。金字塔池对于物体的变形也是健壮的。基于这些优点,spp-ne...翻译 2018-12-09 20:20:34 · 2740 阅读 · 0 评论 -
Tensor Flow实战之CNN
import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_data_sets('MNIST_data',one_hot=True)class Net: def __init__(self): self.x = tf...原创 2018-12-26 14:51:31 · 266 阅读 · 0 评论 -
目标检测,从over feat到R-CNN的总结
首先我们看over feat:它的基本思路是通过构建不同大小的建议框,以一种暴力破解的方式滑动候选框,计算当前位置是这个物体的概率,选出概率最大的框。R-CNN如下图所示:首先一张图片输入进来,会用大约2000个候选框,然后为了适应CNN将这些候选框进行变形送进CNN,然后将CNN得到的特征向量送入SVM得到图像的类别,回归得到正确的候选框的位置。 ...原创 2018-12-15 14:34:29 · 205 阅读 · 0 评论 -
SSD:单目多目标检测器
摘要我们提出了一种基于单一深度神经网络的图像目标检测方法。我们的方法名为SSD,将边界框的输出空间离散为一组默认的框,在每个特征映射位置上都有不同的纵横比和尺度。在预测时,网络为每个默认框中的每个对象类别的存在生成分数,并对该框进行调整以更好地匹配对象形状。此外,该网络结合了来自不同分辨率的多个特征映射的预测,从而自然地处理各种大小的对象。相对于需要对象建议的方法,SSD非常简单,因为它完全消...翻译 2018-12-15 16:42:13 · 6823 阅读 · 0 评论 -
R-FCN:基于区域的全卷积网络目标检测
摘要我们提出了一种基于区域的、完全卷积的目标检测方法.与以前的基于区域的检测器,如快速/更快的r-cnn[6,18]使用昂贵的每个区域子网络数百次不同,我们基于区域的检测器是完全卷积的,几乎所有的计算都在整个图像上共享。为了实现这一目标,我们提出了位置敏感的分数映射,以解决图像分类中的平移不变性与目标检测中的平移方差之间的两难困境。因此,我们的方法可以自然地采用完全卷积图像分类器的核心,如最新...翻译 2018-12-16 16:43:14 · 2005 阅读 · 0 评论 -
Seq to Seq识别验证码
import tensorflow as tfimport osimport matplotlib.image as impltimport numpy as npbatch_size = 100H = 60W = 120class Sample: def __init__(self): #定义一个数据集,用于存放训练样本和标签 self...原创 2018-12-27 16:05:29 · 193 阅读 · 0 评论 -
百度云实现语音识别及语音合成
第一步,点击人工智能,语音合成,然后立即使用:然后再应用列表里面创建应用:查看技术文档,下面附上我的语音合成及识别的代码:from aip import AipSpeech""" 你的 APPID AK SK """APP_ID = '15079673'API_KEY = 'mGxvq3Nwr3aVjD4UFIFGsaMD'SECRET_KEY = 'YIN3wx...原创 2018-12-11 08:45:28 · 4162 阅读 · 0 评论 -
卷积神经网络分类mnist手写体数字
import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_data_sets("MNIST_data",one_hot=True)import matplotlib.pyplot as pltclass Net: def __...原创 2018-12-22 16:46:14 · 500 阅读 · 0 评论 -
基于深度卷积神经网络的图像网络分类
摘要 我们训练了一个大型的、深层的卷积神经网络,将ImageNet lsvrc-2010比赛中的120万张高分辨率图像分类为1000个不同的类别。在测试数据上,我们实现了前1位和前5位错误率分别为37.5%和17.0%,这比以前的先进水平要好得多。神经网络,有6000万个参数和65万个神经元,由五个卷积层组成,其中一些是最大池化层,三个完全连接的层,最后是1000路的Softmax...翻译 2018-12-12 09:59:01 · 8577 阅读 · 0 评论 -
Tensor flow实战之LSTM
import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_data_sets('MNIST_data',one_hot=True)import numpy as nptrain_num = 1000batch_num = 150d...原创 2018-12-24 10:54:37 · 241 阅读 · 2 评论 -
GAN实战
import tensorflow as tfimport tensorflow.examples.tutorials.mnist.input_data as input_dataimport numpy as npimport matplotlib.pyplot as pltmnist = input_data.read_data_sets('MNIST_data',one_hot=T...原创 2019-01-04 10:31:41 · 1447 阅读 · 0 评论