自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

atarik@163.com

高产似母猪。100% 抄袭 , 欢迎指正

  • 博客(30)
  • 资源 (10)
  • 收藏
  • 关注

原创 矩阵对矩阵求导

zz

2019-07-29 16:32:34 1348

原创 python中的global关键字

摘要 global标志实际上是为了提示 python 解释器,表明被其修饰的变量是全局变量。这样解释器就可以从当前空间 (current scope) 中读写相应变量了。 Python 的全局变量是模块 (module) 级别的 每个 python 函数拥有对应的__globals__字典,该字典与函数所属模块的__dict__字典完全相同。函数的全局变量也会从...

2019-07-26 19:00:28 1233 1

原创 布隆过滤器

问题假设你现在要处理这样一个问题,你有一个网站并且拥有很多访客,每当有用户访问时,你想知道这个ip是不是第一次访问你的网站。这是一个很常见的场景,为了完成这个功能,你很容易就会想到下面这个解决方案:把访客的ip存进一个hash表中,每当有新的访客到来时,先检查哈希表中是否有改访客的ip,如果有则说明该访客在黑名单中。你还知道,hash表的存取时间复杂度都是O(1),效率很高,因此你对你的方案...

2019-07-26 12:05:09 671

原创 tf.train.XXX与train有关的函数

1.tf.trainable_variables()返回所有trainable=True的变量。当我们在声明变量Variable()时传入trainable=True,Variable()构造函数会自动添加新的变量到图中的集合GraphKeys.TRAINABLE_VARIABLES,这个函数实质上就是返回这个集合中的变量2.tf.train.GradientDescentOptimi...

2019-07-26 10:31:41 210

原创 词向量维度和隐层神经元数目的关系

问题一:在NLP任务中,词向量维度(embedding size)是否一定要等于LSTM隐藏层节点数(hidden size)?词向量(Word Embedding)可以说是自然语言处理任务的基石,运用深度学习的自然语言处理任务更是离不开词向量的构造工作。在文本分类,问答系统,机器翻译等任务中,LSTM的展开步数(num_step)为输入语句的长度,而每一个LSTM单元的输入则是语句中对应单词...

2019-07-24 10:04:42 2416 1

原创 tf常用api

1.tf.concat()tensorflow中用来拼接张量的函数tf.concat(),用法:tf.concat([tensor1, tensor2, tensor3,...], axis)先给出tf源代码中的解释: t1 = [[1, 2, 3], [4, 5, 6]] t2 = [[7, 8, 9], [10, 11, 12]] tf.concat([t1, t...

2019-07-23 14:53:11 348

原创 从Seq2Seq到Attention

Seq2Seq模型是RNN最重要的一个变种:N vs M(输入与输出序列长度不同)。这种结构又叫Encoder-Decoder模型。原始的N vs N RNN要求序列等长,然而我们遇到的大部分问题序列都是不等长的,如机器翻译中,源语言和目标语言的句子往往并没有相同的长度。为此,Encoder-Decoder结构先将输入数据编码成一个上下文向量c:得到c有多种方式,最简单的方法就...

2019-07-22 14:42:06 304 3

原创 标量对矩阵求导

转自知乎:https://zhuanlan.zhihu.com/p/24709748

2019-07-22 09:03:22 263

原创 守护进程

在Linux/UNIX系统引导的时候会开启很多服务,这些服务称为守护进程(也叫Daemon进程)。守护进程是脱离于控制终端并且在后台周期性地执行某种任务或等待处理某些事件的进程,脱离终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会被任何终端所产生的中断信息所终止。(被终端启动的进程,是会随着终端结束而结束的,详见:https://blog.csdn.net/asdfsadfasd...

2019-07-19 21:00:10 288

原创 cnn之--一维,二维,三维卷积

1. 二维卷积 图中的输入的数据维度为14×14,过滤器大小为5×5,二者做卷积,输出的数据维度为10×10(14−5+1=10)。 没有padding的情况下,经过卷积操作,输出的数据维度会减少。以二维卷积为例,输入大小n×n,过滤器大小f×f,卷积后输出的大小为(n−f+1)×(n−f+1)。为了避免这种情况发生,可以采取padding操作,padding的长度为p​p​,由...

2019-07-18 14:03:24 939

原创 cnn全连接层

1. 定义全连接层(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。如果说卷积层、池化层和激活函数层等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用。在实际使用中,全连接层可由卷积操作实现:对前层是全连接的全连接层可以转化为卷积核为1x1的卷积;而前层是卷积层的全连接层可以转化为卷积核为hxw...

2019-07-17 14:09:50 10027

原创 tf.train.Saver()

1.实例化对象saver=tf.train.Saver(max_to_keep=1)max_to_keep: 表明保存的最大checkpoint 文件数。当一个新文件创建的时候,旧文件就会被删掉。如果值为None或0,表示保存所有的checkpoint 文件。默认值为5(也就是说,保存最近的5个checkpoint 文件)。keep_checkpoint_every_n_hour: 除...

2019-07-16 11:04:04 269

原创 tensorboard

1 . 结构图:with tensorflow .name_scope(layer_name):直接使用以上代码生成一个带可展开符号的一个域,并且支持嵌套操作:with tf.name_scope(layer_name): with tf.name_scope('weights'):节点一般是变量或常量,需要加一个“name=‘’”参数,才会展示和命名,如:wit...

2019-07-16 10:43:09 225

原创 tf.Graph()

1. 它可以通过tensorboard用图形化界面展示出来流程结构2. 它可以整合一段代码为一个整体存在于一个图中声明情况大体有三种1. tensor:通过张量本身直接出graph# -*- coding: utf-8 -*- import tensorflow as tf c = tf.constant(4.0) sess = tf.Session()ses...

2019-07-15 14:50:23 914

原创 matplotlib中文乱码问题

1.下载中文字体simhei.ttf, 网址为http://fontzone.net/download/simhei2. 将字体拷贝到matplotlib/mpl-data/fonts/ttf这个目录(绝对路径通过pip show matplotlib查看)3. 删除当前用户matplotlib 的缓冲文件 cd ~/.cache/matplotlib4. 代码中调整字体 ...

2019-07-14 19:07:19 222

原创 java和c中的static关键字

(一)首先来谈谈在C中的作用,分为修饰变量和修饰函数两种情况:(1)修饰变量,变量分为局部静态变量和全局静态变量,他们都存在内存的静态区,静态全局变量的作用域仅限于变量被定义的文件中,准确的说:是从定义之处开始,到文件结尾处结束。静态局部变量,就是函数体里面定义的,就只能在这个函数里用了,同一个文档中的其他函数都不能用。由于被static修饰的变量总是存在内存的静态区,所以即使这个函数运行结束...

2019-07-13 09:30:03 209

原创 redis--时间事件

Redis的事件分为文件事件(file event)和时间事件(time event), 现在已知的时间事件就是定时任务serverCron()函数, 其每隔100ms执行一次; 该函数实在main方法中初始化时注册到时间事件中// 使用一个宏定义:run_with_period(milliseconds) { .... },实现一部分代码有次数限制的被执行int serverCron(s...

2019-07-11 13:48:45 1058

原创 redis--aof&rdb

RDB持久化机制RDB持久化是把当前进程数据生成时间点快照(point-in-time snapshot)保存到硬盘的过程,避免数据意外丢失1.1 RDB触发机制RDB触发机制分为手动触发和自动触发。手动触发的两条命令:SAVE:阻塞当前Redis服务器,知道RDB过程完成为止。BGSAVE:Redis 进程执行fork()操作创建出一个子进程,在后台完成RDB持久化的过程。...

2019-07-11 13:05:29 271

原创 同步变量

条件变量是线程的另外一种同步机制,这些同步对象为线程提供了会合的场所,理解起来就是两个(或者多个)线程需要碰头(或者说进行交互-一个线程给另外的一个或者多个线程发送消息),我们指定在条件变量这个地方发生,一个线程用于修改这个变量使其满足其它线程继续往下执行的条件,其它线程则接收条件已经发生改变的信号。条件变量同锁一起使用使得线程可以以一种无竞争的方式等待任意条件的发生。所谓无竞争就是,条件改变...

2019-07-11 10:34:05 386

原创 pthread系统调用

1. 创建线程pthread_create(pthread_t *, const pthread_attr_t *, void *(*)(void *), void *)参数说明pthread_t * 表示线程ID,声明方式pthread_t tid;const pthread_attr_t * 表示线程的参数,参考void *(*)(void *)表示线程开始时执行的函数,如v...

2019-07-10 18:34:42 769

原创 netstat命令

查看某个端口是否被占用如果你遇到“Address already in use”的错误,那么你就需要好好看看是不是端口已经被占用了。-a(all)参数用于列出所有监听和非监听状态的连接。$netstat-a|grep6379tcp00*:6379*:*LISTEN...

2019-07-10 13:16:24 249

原创 redis--list阻塞详解

redis中blpop可以实现链表的阻塞操作,客户端连接在list没有数据的情况下会进行阻塞。这让我产生了一个疑问,redis本身是一个单线程服务,如果阻塞客户端一直保持着跟服务器的链接,会不会阻塞其他命令的执行呢?答案显然是不会,这就涉及到redis阻塞命令的实现原理。我们知道,在redis server中有两个循环:IO循环和定时事件。在IO循环中,redis完成客户端连接应答、命令请求处...

2019-07-10 10:51:49 2291

原创 二级指针

void test19() { long **p = NULL; long l[] = {11, 12}; *p = &l;// crash, 因为二级指针汇总不允许直接操作一级指针}/** * 对比test19(),定义的二级指针**p后, 是不能直接操作*p */void test20(){ long **p = NULL; lo...

2019-07-08 22:51:27 165

原创 宏函数

使用宏函数的优点有两个适用于任何实现了operator<的类型,包括自定义类型; 效率最高。虽然使用inline提示符也将函数或模板定义为内联的,但这只是一种提示而已,到底编译器有没有优化还依赖于编译器的实现,而使用宏函数则是完全由代码本身控制。宏函数是包括在do{…}while(0)内的原因考虑下面一个特殊的例子。宏函数的定义如下:#define test(x) \...

2019-07-08 14:34:49 408

原创 realloc

只能重新分配堆内存, 如果是一个栈内存则无法使用该函数, 换言之其只能处理使用malloc或者calloc分配的内存char* p = malloc(1024);char* q = realloc(p,2048);1.如果 当前连续内存块足够 realloc 的话,只是将p所指向的空间扩大,并返回p的指针地址。 这个时候 q 和 p 指向的地址是一样的。2.如果 当前连续内存块不够长...

2019-07-06 14:29:55 772

原创 socket通信中的IO和NIO

在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明:基本概念:阻塞IO:socket 的阻塞模式意味着必须要做完IO 操作(包括错误)才会返回。非阻塞IO:非阻塞模式下无论操作是否完成都会立刻返回,需要通过其他方式来判断具体操作是否成功。IO模式设置:对于一个socket 是阻塞模式还是非阻塞模式有两种方式来处理:方法1、...

2019-07-05 14:04:12 328

原创 数组指针和指针数组

指针数组(数组中的元素是指针变量)定义 int *p[n];[]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型指针数组,它有n个指针类型的数组元素。这里执行p+1时,则p指向下一个数组元素,这样赋值是错误的:p=a;因为p是个不可知的表示,只存在p[0]、p[1]、p[2]...p[n-1],而且它们分别是指针变量可以用来存放变量地址。但可以这样 *p=a; 这里*p表示指针...

2019-07-05 09:55:26 231

原创 函数指针与typedef

通过下面这个例子,我们看看 typedef 是怎么搭配函数指针使用的吧。int add(int a, int b) { return a + b;} typedef int (PTypeFun1)(int, int); // 声明一个函数类型typedef int (*PTypeFun2)(int, int); // 声明一个函数指针类型int (*padd)(int, i...

2019-07-04 16:58:48 316

原创 signal和sigaction

1:signal 函数  原型:sighandler_tsignal(int signum, sighandler_t handler) typedef void (*sighandler_t)(int);  描述:signal函数用来在进程中指定当一个信号到达进程后该做什么处理,主要的两种方式有忽略某些信号,(监听到SIGTERM/SIGINT)退出前的打扫工作。信号处理函...

2019-07-04 12:22:54 1120

原创 Clion开发调试Makefile项目

1. 安装makefile插件, 安装库文件 pip install compiledb2.单机makefile文件,右键run 'makefile', 会编译生成很多相应文件, 控制太没有报错即可3.在项目根目录新建CMakeLists.txt文件,并填写如下内容,点击Load CMake projectcmake_minimum_required(VERSION 3.4.1)...

2019-07-03 11:53:08 4812

Java虚拟机规范.pdf

Java虚拟机规范(Java SE 8版) pdf Java虚拟机规范(Java SE 8版) pdf Java虚拟机规范(Java SE 8版) pdf Java虚拟机规范(Java SE 8版) pdf

2019-10-12

搜狗词典转txt

py3脚本-py3脚本-py3脚本-py3脚本-py3脚本-py3脚本-py3脚本-py3脚本-

2019-04-26

dbeaver-ce_6.0.0_amd64.deb

dbeaver-ce_6.0.0_amd64.deb

2019-03-11

linux 下c实现简单的网络嗅探器

简单的网络嗅探器

2019-02-14

lucene3源码分析

lucene3源码分析

2018-07-12

io文档文档

io说明文档, io说明文档, io说明文档, io说明文档, io说明文档, io说明文档,

2018-05-07

lucene5+zoie实现近实时索引

lucene+zoie近实时索引demo lucene+zoie近实时索引demo

2018-03-07

rabbitmq-server-generic-unix-3.6.13.tar

rabbitmq linux 安装包 rabbitmq linux 安装包 rabbitmq linux 安装包 rabbitmq linux 安装包

2018-01-31

java监听器demo

一个java监听器的实现demo,即观察者设计模式实现

2016-12-27

activemq和spring整合发布消息和订阅消息demo

activemq和spring整合 发布消息和订阅消息demo

2016-11-11

空空如也

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

TA关注的人

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