自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 Raft协议详解与实战

文章目录一致性一致性算法的特性Raft状态和状态的转化Raft定义Raft状态的转化过程Raft实例初始化Raft的一些规则Leader ElectionCandidate选举过程与相应处理Receiver投票策略Log ReplicationLeader 复制log请求与响应Receiver对AppendEntries的处理复制日志的优化状态持久化一致性分布式系统最核心问题:维持多个节点副本的一致性。一致性协议通常基于replicated state machines,即所有结点都从同一个state出

2020-05-31 09:29:06 1174

转载 深入理解abstract class和interface

转载:https://www.ibm.com/developerworks/cn/java/l-javainterface-abstract/理解抽象类abstract class和interface在Java语言中都是用来进行抽象类(本文中的抽象类并非从abstract class翻译而来,它表示的是一个抽象体,而abstract class为Java语言中用于定义抽象类的一种方法,请读者注...

2019-11-29 20:11:25 248

转载 JVM: String对象内存解析

高质量回答:https://www.zhihu.com/question/29884421/answer/113785601https://www.iteye.com/blog/rednaxelafx-774673http://tangxman.github.io/2015/07/27/the-difference-of-java-string-pool/

2019-11-23 16:09:40 235

原创 Java: HashMap 源码分析(JDK8)

一 简介Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、Hashtable、LinkedHashMap和TreeMap,类继承关系如下图所示:下面针对各个实现类的特点做一些说明:(1) HashMap:HashMap是基于哈希表实现的,每一个元素是一个key-value对,它根据键的hashCode值存储数据,大...

2019-11-13 20:02:57 190

原创 Java: 深入理解HashCode()方法和Hash()方法

一、HashCode()方法中为什么用31?String 类型是如何重写 hashCode 方法的呢?public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value; for (int i = 0; i < va...

2019-11-12 10:05:15 667

转载 Java: Arrays.copyOf() 与 System.arraycopy()的区别与联系

转载:https://www.cnblogs.com/CherishFX/p/4730796.html

2019-11-09 19:07:54 140

转载 Java:clone()方法 浅拷贝与深拷贝

转载:https://blog.csdn.net/qq_33314107/article/details/80271963

2019-11-09 11:02:59 97

原创 JVM: GC过程总结(minor GC 和 Full GC)

一 minorGC 和 Full GC区别新生代 GC(Minor GC):指发生新生代的的垃圾收集动作,Minor GC 非常频繁,回收速度一般也比较快。老年代 GC(Major GC/Full GC):指发生在老年代的 GC,出现了 Major GC 经常会伴随至少一次的 Minor GC(并非绝对),Major GC 的速度一般会比 Minor GC 的慢 10 倍以上。二...

2019-10-30 10:58:00 29699 10

转载 Java: T extends Comparable

<? super T>表名类型参数需要是T或T的父类。对T的约束是Comparable的子类,对Comparable中泛型的约束是,?至少是T的父类,那么就意味着T是?的子类。一言以蔽之:元素必须是实现了Comparable接口的类或者其子类,可以使用父类方法比较子类型。[https://www.cnblogs.com/cherryljr/p/6880657.html](https...

2019-10-29 09:29:47 121

转载 Java四种引用介绍

转载: https://www.cnblogs.com/fengbs/p/7019687.html

2019-10-27 21:03:52 114

原创 Java基础练习:字符串

1、字符串反转将一个字符串进行反转。将字符串中指定部分进行反转。比如“abcdefg”反转为”abfedcg”public String reverseString1(String str, int start, int end) { if(str != null) { char[] arr = str.toCharArray(); ...

2019-10-09 20:58:28 181

原创 Java基础练习:容易忽略的点

1、println的重载char[] ch=new char[] {'a','b','c'}; System.out.println(ch); // abcchar[] ch1=new char[] {'a','b','c'}; System.out.println("ch1="+ch1); // ch1=[C@449b2d27int[] arr = new int[...

2019-10-03 21:46:16 201

原创 Java基础练习:数组

1、 100以内的质数质数:“除了1和它本身外,没有其他约数” 的数【即,数字 n 只能被 1 和 自身n 整除,此外不能被 2 ~ (n-1) 整除】;基础版public class PrimeNumber { public static void main(String[] args) { boolean isFlag = true; for(int i = 2; i <...

2019-10-03 11:19:32 275

原创 深度学习经典网络:ShuffleNet 系列网络(ShuffleNet v1)

ShuffleNet v1:http://openaccess.thecvf.com/content_cvpr_2018/html/Zhang_ShuffleNet_An_Extremely_CVPR_2018_paper.htmltensorflow代码:https://github.com/MG2033/ShuffleNetpytorch代码:https://github.com/jaxo...

2019-08-12 19:37:30 980

原创 深度学习经典网络:ShuffleNet系列网络(ShuffleNet v2)

ShuffleNet v2:https://link.springer.com/chapter/10.1007/978-3-030-01264-9_8pytorch代码:https://github.com/Randl/ShuffleNetV2-pytorch/blob/master/model.pykeras代码:https://github.com/opconty/keras-shuffl...

2019-08-10 11:39:31 2143

原创 CNN中参数量和FLOPs计算

对于一个卷积层,假设其大小为h×w×cin×couth×w×c_{in}×c_{out}h×w×cin​×cout​(其中cinc_{in}cin​为input channel, coutc_{out}cout​为output channel),输出的feature map尺寸为 H′×W′H^{&#x27;}×W^{&#x27;}H′×W′,则该卷积层的paras=h×w×ci...

2019-08-07 17:02:01 784

原创 深度学习经典网络: MobileNet系列网络(MobileNet v2)

MobileNet v2:https://arxiv.org/abs/1801.04381概述MobileNetV2 以 MobileNetV1 的理念为基础,使用深度可分离卷积作为高效构建块。此外,V2 在架构中引入了两项新功能:Depth-wise convolution之前多了一个1*1的“扩张”层,目的是为了提升通道数,获得更多特征;在pointwise convolution不...

2019-08-03 22:42:41 709

原创 深度学习经典网络: MobileNet系列网络(MobileNet v1)

MobileNet v1:https://arxiv.org/abs/1704.04861References1、轻量级神经网络MobileNet,从V1到V3 2、《Computer vision》笔记-MobileNet(7)

2019-08-02 21:06:20 842

转载 深度学习经典网络: SENet

SENet:https://arxiv.org/pdf/1709.01507.pdfpytorch 代码:https://github.com/pytorch/vision/blob/master/torchvision/models/squeezenet.py转载:http://www.sohu.com/a/161633191_4659750. 前言我们从最基本的卷积操作开始说起。近些年...

2019-08-01 19:05:45 578

原创 深度学习经典网络: Inception系列网络(Inception v4 和Inception-ResNet)

Inception v4 & Inception-ResNet:https://arxiv.org/abs/1602.07261前言  主要受ResNet 网络的启发,他们基于inception v3的基础上,引入了残差结构,提出了inception-resnet-v1和inception-resnet-v2,并修改inception模块提出了inception v4结构。基于ince...

2019-07-31 16:43:22 1155

原创 深度学习经典网络: Inception 系列网络(Inception v3)

Inception v2、v3:https://arxiv.org/abs/1512.00567前言:  Google家的Inception系列模型提出的初衷主要为了解决CNN分类模型的两个问题,其一是如何使得网络深度增加的同时能使得模型的分类性能随着增加,而非像简单的VGG网络那样达到一定深度后就陷入了性能饱和的困境(Resnet针对的也是此一问题);其二则是如何在保证分类网络分类准确率提升...

2019-07-30 22:10:06 1076

原创 Batch Normalization 详解及其各种变体

一、Batch Normalization的前向与反向传播前向传播:图 1 Batch Normalization 前向传播反向传播:根据前向传播过程,可以获得如下计算图,均值和方差都省略了下标B。假定损失函数为LLL,已知LLL相对于yiy_{i}yi​ 的偏导 ∂L∂yi\frac{\partial L}{\partial y_{i}}∂yi​∂L​, 求∂L∂γ\frac{\pa...

2019-07-29 21:42:35 489 1

原创 深度学习经典网络:Inception系列网络(Inception v1 & Inception v2(BN))

Inception v1(GoogleNet): https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43022.pdfInception v2: https://arxiv.org/pdf/1502.03167.pdf一、Inception v1Motivation:  2014年...

2019-07-28 12:28:08 1055

原创 深度学习经典网络:ResNet及其变体(ResNeXt)

ResNeXt:https://arxiv.org/pdf/1611.05431.pdfReferences1、Group Convolution分组卷积,以及Depthwise Convolution和Global Depthwise Convolution2、ResNeXt算法详解https://zhuanlan.zhihu.com/p/51075096https://zhuanla...

2019-07-25 17:09:59 1177

原创 深度学习经典网络:ResNet及其变体(ResNet v2)

ResNet v2:Identity Mappings in Deep Residual Networks1 简介  ResNet v1和ResNet v2的区别主要在于残差单元设计的差异,作者在对ResNet v1残差单元的分析及反向传播的推导中,当使用恒等映射(identity mappings)作为跳跃连接(skip connections)及信号pre-activation时,前向、反...

2019-07-25 11:34:42 668

原创 深度学习经典网络:ResNet及其变体(ResNet v1)

经典ResNet网络结构ResNetv1:https://arxiv.org/abs/1512.033851 ResNet要解决的问题  深度神经网络朝着网络层数越来越深的方向发展。直觉上我们不难得出结论:增加网络深度后,网络可以进行更加复杂的特征提取,因此更深的模型可以取得更好的结果。但事实并非如此,人们发现随着网络深度的增加,模型精度并不总是提升,并且这个问题显然不是由过拟合(overf...

2019-07-23 17:11:30 1366

原创 tensorflow: keras 高层接口

常用的keras接口有:datasets layers losses metrics optimizers1 keras 高层接口 metrics#步骤:Metrics < update_state < result().numpy() < reset_states#第一步,新建一个meteracc_meter = metrics.Accuracy()loss_mete...

2019-07-20 21:07:50 180

原创 Tensorflow:高阶操作

1 合并与分割#concata=tf.ones([4, 35, 8])b=tf.ones([2, 35, 8])c=tf.concat([a, b], axis=0)#stack:create new dimd=tf.ones([4, 35, 8])e=tf.stack([a, d], axis=0) # [2, 4, 35, 8]), 两者维度必须相等#unstack:在指定...

2019-07-18 11:44:02 164

原创 Tensorflow:基础操作

Tensor数据类型1 Tensor类型with tf.divice("gpu"): a=tf.constanct([1])

2019-07-16 11:35:22 121

原创 CTC loss的几种解码方法:贪心搜索 (greedy search)、束搜索(Beam Search)、前缀束搜索(Prefix Beam Search)

CTC loss的几种解码方法:贪心搜索 (greedy search)、束搜索(Beam Search)、前缀束搜索(Prefix Beam Search)前言:预测新的样本输入对应的输出字符串,这涉及到解码。按照最大似然准则,最优的解码结果为:然而,上式不存在已知的高效解法。下面介绍几种实用的近似破解码方法。1 贪心搜索 (greedy search)原理:虽然 p(l|x) 难...

2019-06-26 21:13:17 16536 10

原创 最小编辑距离算法

最小编辑距离算法简介:通俗地来讲,编辑距离指的是在两个单词<w_1,w_2>之间,由其中一个单词w_1转换为另一个单词w_2所需要的最少单字符编辑操作次数。定义的单字符编辑操作有三种, 每种操作的权重为1:插入(Insertion)删除(Deletion)替换(Substitution)假设求取字符串A和B 的 edit distance, 上述操作可理解...

2019-06-23 11:37:45 2593 2

原创 python:异常

python:异常异常:异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,在Python无法正常处理程序时就会发生一个异常。异常是Python对象,表示一个错误。当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。常见异常类:我们可以看到python的异常有个大基类。然后继承的是Exception。所以我们自定义类也必须继承Excep...

2019-06-11 16:20:47 113

转载 python : print 和sys.stdout.write

python : print 和sys.stdout.write:等价部分:使用print(obj)在console上打印对象的时候,实质上调用的是sys.stdout.write(obj+'\n'),print在打印时会自动加个换行符,以下两行等价:sys.stdout.write('hello'+'\n')print 'hello'控制台重定向到文件:原始的 sys.stdout...

2019-06-10 16:56:19 283

转载 Mix-in技术介绍

Mix-in技术介绍:转载: https://blog.csdn.net/piaoyidage/article/details/41985061

2019-05-30 11:16:00 1319

原创 python 白鹅类型和鸭子类型

python 白鹅类型和鸭子类型白鹅类型:白鹅类型对接口有明确定义,比如不可变序列(Sequence),需要实现__contains__,__iter__,__len__,__getitem__,__reversed__,index,count对于其中的抽象方法,子类在继承时必须具体化,其余非抽象方法在继承时可以自动获得,Sequence序列必须具体化的抽象方法是__len__和__geti...

2019-05-29 11:01:21 1200

原创 python: extend 和 append的区别

python: extend 和 append的区别简介:list.append(object)向列表中添加一个对象objectlist.extend(sequence) 把一个序列seq的内容添加到列表中示例:music_media = ['compact disc', '8-track tape', 'long playing record']new_media = ['DVD A...

2019-05-28 09:11:06 111

原创 pytorch: autograd中backward

pytorch: autograd中backward输出值是标量:import torchx = torch.ones(2, 2, requires_grad=True) y = x + 2 z = y * y * 3 out = z.mean() out.backward()#这里是默认情况,相当于out.backward(torch.Tensor([1.0])) print(x...

2019-05-09 14:45:43 145

原创 python代码规范(序)

Python Style RulesLine length:每行的最大长度为80字符,下面特殊情况除外:长 的import声明URLs, pathnames, or long flags in comments.因包含空格而不便划分的URLs, pathnamesPylint disable comments. (e.g.: # pylint: disable=invalid-nam...

2019-05-06 16:24:13 156

原创 python代码规范

python代码规范Imports:在使用import时应该只针对包和模块, 这样可以区分x.Obj 中, x是模块而Obj是对象。Use import x for importing packages and modules.Use from x import y where x is the package prefix and y is the module name with n...

2019-05-05 11:19:50 165

转载 python: __dict__和 dir()的区别

python: __dict__和 dir()的区别转载:https://www.jb51.net/article/127063.htmPython下一切皆对象,每个对象都有多个属性(attribute),Python对属性有一套统一的管理方案。__dict__与dir()的区别:dir()是一个函数,返回的是list;__dict__是一个字典,键为属性名,值为属性值;dir()用来...

2019-04-17 15:47:33 220

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除