recv和recvfrom都是用来接受来自的网络的数据。来看看它们的原型:int recv(SOCKET,char FAR*,int,int);int recvfrom(SOCKET,char FAR*,int,int,struct sockaddr FAR*,int FAR*);这是在windows下面的定义。在linux下面的定义只是将SOCKET改成int,那么在linux下面的原型是这样:
转载 1月前
15阅读
--Write in 2019/5/13 --写多少都不嫌烦写论文的时候,一定要时刻牢记你的contribution,所有的一切,都以contribution为核心,众星捧月。写论文的时候,时刻牢记两个角色,作者和读者。作为作者,完美地表达要表达的;作为读者,要让写出的文章易懂不是能懂(假设读者不愿意多思考)。 写论文的时候,一定要严格要求自己,所有地方都要做到极致,做到自己认为的完美。
pandas中数据的合并方案主要有concat,merge,join等函数。其中concat主要是根据索引进行行或列的拼接,只能取行或列的交集或并集。merge主要是根据共同列或者索引进行合并,可以取内连接,左连接、右连接、外连接等。join的功能跟merge类似,因此不再赘述。import pandas as pd from pandas import Series,DataFrame # 定义
Batch normalization + ReLU 批归一化(BN)可以抑制梯度爆炸/消失并加快训练速度原论文认为批归一化的原理是:通过归一化操作使网络的每层特征的分布尽可能的稳定,从而减少Internal Covariate Shiftrelu是目前应用最为广泛的激活函数,由于其梯度要么是1,要么是0,可以有效抑制梯度爆炸/消失通过BNReLU,目前的网络已经可以达到非常深网络越深,提取的
转载 2019-11-10 19:05:00
466阅读
2评论
relu角度 有点类似传统特征工程中,已有的特征在固定的模型下没有性能提升了,那就用更多的非线性变换对已有的特征去做变换,产生更多的特征的意味; 多出的relu对网络中层进一步压榨提炼特征。结合一开始单张 feature map 的 local 信息更多一些,还没来得及把信息分摊到 channel ...
转载 2021-07-26 16:33:00
295阅读
2评论
CBL(Conv+BN+LeakyRelu)CBL(Conv+BN+LeakyRelu)
原创 2021-08-02 14:21:07
1737阅读
在该文章的两大创新点:一个是PReLU,一个是权值初始化的方法。下面我们分别一一来看。  PReLU(paramter ReLU)所谓的PRelu,即在 ReLU激活函数的基础上加入了一个参数,看一个图就明白了:右边的图上多了一个参数吧,在负半轴上不再为0,而是一个可以学习的斜率。  很容易明白。实验结果显示该方法可以提高识别率。权值初始化的方法: 对于文中
深度学习再次理解一、relu激活函数一言以蔽之,其实,relu函数的作用就是增加了神经网络各层之间的**非线性关系,**否则,如果没有激活函数,层与层之间是简单的线性关系,每层都相当于矩阵相乘,这样怎么能够完成我们需要神经网络完成的复杂任务,我们利用神经网络去解决图像分割,边界探测,超分辨等问题时候,我们的输入(假设为x),与期望的输出(假设为y)之间的关系究竟是什么?也就是y=f(x)中*,f是
使用tensorflow时,会发现tf.nn,tf.layers, tf.contrib模块有很多功能是重复的,尤其是卷积操作,在使用的时候,我们可以根据需要现在不同的模块。但有些时候可以一起混用。 下面是对三个模块的简述: (1)tf.nn :提供神经网络相关操作的支持,包括卷积操作(conv)、
转载 2018-07-07 20:03:00
65阅读
2评论
             Caffe 中 BN(BatchNorm ) 层的参数均值、方差和滑动系数解读Caffe 的 BN(BatchNorm ) 层共有三个参数参数:均值、方差和滑动系数,BN层结构如下:layer { 1. bottom: "res2a_branc
BatchNorm已经作为常用的手段应用在深度学习中,效果显著,加快了训练速度,保证了梯度的流动,防止过拟合,降低网络对初始化权重敏感程度,减少对调参的要求。今天自己就做个总结,记录一下BatchNorm,并从Pytorch源码来看BatchNorm。BN的灵感来源讲解BN之前,我们需要了解BN是怎么被提出的。在机器学习领域,数据分布是很重要的概念。如果训练集和测试集的分布很不相同,那么在训练集上
目录1. BatchNorm 原理2. BatchNorm 的 PyTorch 实现2.1 _NormBase 类2.1.1 初始化2.1.2 模拟 BN forward2.1.3 running_mean、running_var 的更新2.1.4 \gamma, \beta 的更新2.1.5 eval 模式2.2 BatchNormNd 类3. SyncBatchNorm 的 PyTorch 实
前言为何想到这,为何将caffe模型的合并,在这里源于对海思35XX系列开发板前向推理优化的原因。我是用darknet训练的yolo模型,转为caffemodel(darknet转caffemodel,之前我也写的博文代码。讲解以后也会好好补充完,代码先上,便于先用起来再说),然后在用RuyiStudio转为.wk模型,出于这个原因,我就想能不能做到算子融合,提升前向推理的速度,那么就有了这个文章,同时这个思路可以使用到其他的工业应用上。注意python是用的python3.x版本。合并Conv层与
原创 2021-07-11 15:46:18
1397阅读
1.导入包import torch from torch import nn from d2l import torch as d2l2.卷积层的相关运算:跟着沐神手写二维交叉运算。我承认我是一个打字员def corr2d(X, K): '''计算二维互相关运算''' kh, kw = K.shape # 把卷积核的高和宽赋值给kh=K.shape[0],kw=K.shape[1
真机和模拟器多点触摸网络通话摄像WiFi各种网络制式蓝牙模拟器只是实现了真机的大部分功能,任何应用在上线前都应该在实体机上进行验收测试。另外客户端的性能测试也是基于真机的,只有真机才能反应出最真实的情况,比如发热,比如死机,比如耗电量。除去上面的差异:Android 真机和模拟器的区别:Android 模拟器由于都是模拟的硬件,所以在硬件上基本不会出现兼容性问题。但是市场上的真机大多数都是采用不同
  忽然想起先前看过的一个知识点,值传递和引用传递。相信大家对此都不会陌生,当不改变参数的值的时候使用值传递,需要改变参数的值的时候使用引用传递,其实这只是其中的一方面。先看下面一个小程序:template <class T> T Sum(T a, T b, Tc){ return a+b+c; }  当执行sum(x,y,z)时,首先编译器会决定形参的data type,假
文章目录卷积层的数据shape和普通层的数据shape差别:卷积层实现实现池化层实现 CNN 中的特殊层结构实现 LayerFactory网络结构 卷积层的数据shape和普通层的数据shape差别:针对一般图像数据shape: Npq,图像就是二维浮点数据,N为数据个数,p,q为图像的维度。 卷积层的中间层数据shape: Npq*r,r为channels。 数据的shape必须非常清楚,因为
这一部分我们可以通过图形解释两个问题(1)为什么L1正则化后可以产生稀疏模型(L1是怎么让系数等于0的)。(2)为什么L2正则化可以防止过拟合。图(1)说明:蓝色的圆圈表示没有经过限制的损失函数在寻找最小值的过程,显示了W的不断迭代变化情况,用等高线的方式表示W变化,W∗是最小值取到的点。(图(1)来源于参考博客3)(1)为什么L1正则化后可以产生稀疏模型(L1是怎么让系数等于0的)? 
        量化的概念就不必多说。直接看公式1. 量化分为对称量化和非对称量化:        对称量化就是取浮点数的最大绝对值,扩展,比如映射到-127-127,而非对称量化很简单就是最大值对应255,最小值对应0。        这
Dynamic ReLUPDF: https://arxiv.org/pdf/2003.10027.pdfPyTorch代码: https://github.com/shangl
原创 2022-08-06 00:00:47
80阅读
  • 1
  • 2
  • 3
  • 4
  • 5