权重

元学习系列(六):神经图灵机详细分析

女生的网名这么多〃 提交于 2020-01-25 02:08:57
神经图灵机是LSTM、GRU的改进版本,本质上依然包含一个外部记忆结构、可对记忆进行读写操作,主要针对读写操作进行了改进,或者说提出了一种新的读写操作思路。 神经图灵机之所以叫这个名字是因为它通过深度学习模型模拟了图灵机,但是我觉得如果先去介绍图灵机的概念,就会搞得很混乱,所以这里主要从神经图灵机改进了LSTM的哪些方面入手进行讲解,同时,由于模型的结构比较复杂,为了让思路更清晰,这次也会分开几个部分进行讲解。 概述 首先我们来看一下神经图灵机是怎么运作的: 神经图灵机和LSTM一样,在每个时刻接受输入并返回输出,输入首先会通过controller处理,controller把处理过的输入以及一系列参数传给读写头,读写头会根据这些东西,计算权重,并对记忆矩阵memory进行消除、写入、读取操作,最后读头返回读取的记忆给controller,controller就可以根据这个记忆计算该时刻的输出,然后就可以等待下一时刻的输入了。 记忆权重 个人觉得神经图灵机主要改进了LSTM的门结构,以前,我们通过对上一时刻的输出和当前时刻的输入分别进行线性变换并相加,再用sigmoid函数进行处理,得到一个用于记忆或者遗忘的权重向量,再和长期记忆按位相乘。这种权重的计算机制是通过神经网络基于数据进行学习,当然可行。而神经图灵机则从注意力的角度,用更接近人的思维,提出分别从content

【DUBBO】dubbo的LoadBalance接口

谁说我不能喝 提交于 2020-01-24 08:57:38
LoadBalance负载均衡, 负责从多个 Invokers中选出具体的一个Invoker用于本次调用,调用过程中包含了负载均衡的算法,调用失败后需要重新选择 --->类注解@SPI说明可以基于Dubbo的扩展机制进行自定义的负责均衡算法实现,默认是随机算法方法注解@Adaptive说明能够生成设配方法Select方法设配类通过url的参数选择具体的算法, 在从invokers集合中根据具体的算法选择一个invoker --->方法注解@Adaptive说明能够生成设配方法 Select方法设配类通过url的参数选择具体的算法, 在从invokers集合中根据具体的算法选择一个invoker 1. RandomLoadBalance: 随机访问策略,按权重设置随机概率,是默认策略 1)获取所有invokers的个数 2)遍历所有Invokers, 获取计算每个invokers的权重,并把权重累计加起来每相邻的两个invoker比较他们的权重是否一样,有一个不一样说明权重不均等 3)总权重大于零且权重不均等的情况下,按总权重获取随机数offset = random.netx(totalWeight);遍历invokers确定随机数offset落在哪个片段(invoker上) 4)权重相同或者总权重为0, 根据invokers个数均等选择invokers.get(random

论文解读之MemNet: A Persistent Memory Network for Image Restoration

我与影子孤独终老i 提交于 2020-01-24 04:22:19
论文名称:MemNet: A Persistent Memory Network for Image Restoration 作用领域:图像修复(去噪,超分辨率) code:https://github.com/tyshiwo/MemNet 概述:这是一篇ICCV2017的文章,作者是DRRN(CVPR2017)的那一帮人,该篇论文中提出一个延长记忆的模型, 传统的神经网络基本上都是单向传播,那么在靠后的层,接收到的信号十分的微弱,这种单向传播的网络,诸如VDSR,DRCN等,被称为短期记忆网络,而对于RED,ResNET这种,网络中的神经元不仅受直接前驱的影响,另外还受到额外指定的前驱神经元的英雄,这种被称为限制的长期记忆网络,如下图所示。 那么,所谓的长期记忆模型是怎么样的,作者举例了什么大脑皮层之类的相关文献,指出自己的长期记忆模型是模拟了人类大脑皮层的工作等等,此等废话只能用以装点门面,跳过。。。。 长期记忆模型有以下3点特殊之处: 1.记忆单元利用门控机制(gate unit)建立长期记忆,在每个记忆单元,门控单元自适应的控制不同的模块(block)在最终输出中所占的权重(weight),控制保留哪些单元,存储哪些信息。 2.很深的网络(80层),密集的连接结构(由上图可见一斑),信号补偿机制(靠后的神经元被靠前的神经元直接连接),最大限度的让信息在不同的记忆单元之间流动

动手实践用LDA模型计算两篇英文文档相似度

五迷三道 提交于 2020-01-22 14:43:12
知道原理的同学这部分可以略过直接看实践部分 什么是TD-IDF? 构造文档模型 我们这里使用 空间向量模型 来 数据化 文档内容:向量空间模型中将文档表达为一个矢量。 用特征向量(T1,W1;T2,W2;T3, W3;…;Tn,Wn)表示文档。 Ti是词条项,Wi是Ti在文档中的 重要程度 , 即将文档看作是由一组相互 独立的词条组构成 ,把T1,T2 …,Tn看成一个n 维坐标系中的坐标轴,对于每一词条,根据其重要程度赋以一定的权值Wi,作为对应坐标轴的坐标值。 权重Wi用词频表示 ,词频分为 绝对词频 和 相对词频 。 绝对词频,即用词在文本中出现的频率表示文本。 相对词频,即为归一化的词频,目前使用 最为频繁的是TF*IDF (Term Frequency * Inverse Document Frequency)TF 乘 IDF 将文档量化了之后我们很容易看出D1与Q更相似~因为D1与Q的夹角小,我们可以用余弦cos表示 分析一下这个例子: 有三个文档D1,D2,Q 这三个文档一共出现了三个词条,我们分别用T1,T2,T3表示 在文档D1中词条T1的权重为2,T2权重为3,T3权重为5 在文档D2中词条T1权重为0,T2权重为7,T3权重为1 在文档Q中词条T1权重为0,T2权重为0,T3权重为2 D1 D2 Q T1 2 3 0 T2 3 7 0 T3 3 1 2

Post training 4-bit quantization of convolutional networks for rapid-deployment

谁都会走 提交于 2020-01-19 18:24:47
现有的很多量化方法都是通过量化后重训练来弥补量化损失的,但这些方法并不完美:它们需要完整的数据集(这涉及到隐私及其他问题),而且还需要大量的计算资源。于是,一种被称为post-training的方法被踢出了:它不需要完整的数据集,也不需要重新训练或微调模型(也就是说,可以达到端对端),且它的准确率与流行的浮点模型的精度接近。 但这类方法一旦把量化精度放到8bit以下时,精度就大幅下降。为了解决这个问题,本文提出了一种利用网络分布的统计信息来最小化在量化过程中引入的本地误差。 ACIQ: Analytical Clipping for Integer Quantization 作者提出了三种方法,第一种是应用于激活层,其形式为: 由于[-α,α]被 均分,因此设间隔Δ: 作者又假设量化前的值位于每个小区间的中心处(由大数定理知,这个假设是可行的),于是量化的方差为: 这里X是量化前的值,Q(X)是量化后的值,作者假设X满足一个均值为零的分布(如高斯分布或拉普拉斯分布。因为能够加上或减去均值,所以这种假设并不使方法失去一般性)。上式的前后两项,由于分布是对称的,所以是相等的,作者称之为裁剪噪音;中间项则称为量化噪音。 随后作者用了两个式子来近似这两个误差: 于是式3最终变为 这里的b大概是来自作者假设的权重分布Laplace(0, b)。 引入这个方程后

深度学习目标检测之YOLOv3实战(一)keras原demo复现

寵の児 提交于 2020-01-19 00:52:21
深度学习目标检测之YOLOv3实战(一)keras原Demo复现 环境配置 框架及权重下载 原代码复现 单类物体识别 怀着异常忐忑的心情,写下第一篇博客,记录一下自己在图像识别方面的心路历程,与大家分享共勉,交流进步。 在寒假放假的最后一天里,把在深度学习实现的第一个模型YOLOv3,从环境配置到原模型复现再到训练自己的数据,全部过程记录下来,方便入门的同学,也希望自己在总结中得到进步。 关于YOLOv3的原理及模型的介绍我在后面的文章会进行更新,这里讲的主要是应用实战,直接上重点。 转载请注明出处 效果图镇住: 环境配置 运行的环境如下,显卡是GTX960M,内存16G,训练一般在晚上跑,没多少感觉,视频实时检测一般在6-8帧,稍微有些卡顿,但用于学习还是勉强能够接受。 环境配置过程中,会出现各种版本之间不相容的问题,出现各种报错,大家可以尽情尝试。 强烈建议大家一定要配置GPU进行训练,否则,cpu的龟速会让你怀疑人生 Windows 10 Visual Studio 2017 Python 3.6.0 Opencv 3.4.1 Gpu 9.0 + cudnn 7.0 Keras 2.2.0 Tensorflow 1.6.0 -- gpu Anaconda3 框架及权重下载 YOLOv3框架:https://github.com/qqwweee/keras-yolo3

6.1激活函数-数据预处理笔记

岁酱吖の 提交于 2020-01-18 05:50:39
文章目录 处理过程 激活函数 sigmoid函数 问题1 首先是饱和神经元将使梯度消失 问题2 sigmoid是非0中心函数 问题3 exp()是一个计算成本高的函数 tanh激活函数 ReLU激活函数 ReLU改进 leaky relu 实践 数据预处理 初始化网络权重 处理过程 处理过程包括 激活函数 数据预处理 权重初始化 批量归一化 训练过程监控 超参的优化 激活函数 当输入数据,在全连接层或者卷积层,我们将输入乘上权重值,然后将结果输入一个激活函数,或非线性单元。 上图是一些例子 sigmoid函数 每个数被输入sigmoid中,都会被压缩到[0,1]的范围内,然而它从在很多问题。 问题1 首先是饱和神经元将使梯度消失 当x=-10,太过接近sigmoid负饱和区,这个区域本质上是平的所以梯度变为0,我们将返回上游梯度乘一个约为0的数,所以得到一个非常小的梯度,所以某种意义上经过链式法则后让梯度流消失因此0梯度就传递到下游的节点。 当x=0,可以有一个好的梯度可以好的反向传播 当x=10,或者很大正值,它们位于梯度平滑区域,无法得到梯度流的反馈。 问题2 sigmoid是非0中心函数 当输入神经元的数值始终为正,它会乘以某个权重W,然后我们将通过激活函数来运行 权重W梯度如何? 当我们把上游梯度传回来,就是对我们的损失L关于f进行求导,就是dl/df它的值就是正数或负数

dede后台按权重排序

隐身守侯 提交于 2020-01-13 01:14:46
解决方案:原文网址 https://jingyan.baidu.com/article/4853e1e57d28701909f72623.html 1.修改权重值,打开dede\album_edit.php文件,找到 UPDATE `#@__archives` SET 这个,在下面加上weight='$weight', 逗号也要,这样就可以修改权重了。 2.打开include\taglib\arclist.lib.php文件,$isweight = $ctag->GetAtt('isweight');修改成$isweight = $ctag->GetAtt('isweight="Y"'); 3.在打开include\arc.listview.class.php文件,搜索排序方式,加上下面代码 else if($orderby == "weight") { $ordersql = " order by arc.weight $orderWay"; } 4.还是arc.listview.class.php文件,把if(preg_match('/hot|click|lastpost/', $orderby))替换成if(preg_match('/hot|click|lastpost|weight/', $orderby))。保存OK; 5.在打开模板list_image.htm

《数学之美》读书笔记和知识点总结(一)

时光总嘲笑我的痴心妄想 提交于 2020-01-12 05:13:10
  早在前几个月我在台湾的时候,就听说《数学之美》是一本非常不错的书,也正好是我喜欢的类型,一直想买。回到北京之后的第一件事就是把我这半年积攒的书单全部兑现,其中包括《数学之美》和《浪潮之巅》。看了之后大叫过瘾,让我好好享受了一回数学之美。 文字和数字的起源 很久以前人类以不同的叫声表示不同的信息,达到彼此交流的目的,当所要表达的信息太多时,叫声已经不够用了,于是文字产生了。 文字:知道“ 罗塞塔 ”石碑的典故。 信息冗余的重要性:当石碑经历风吹日晒,一部分文字被腐蚀掉时,还有另一部分重复的文字作为备份,可以还原石碑的信息。类似的还有人体的DNA,在人体当中,有99%的DNA是无效的,正是这99%保证了人类的正常繁衍,当遇人类遇到辐射时,DNA发生变异的概率是1%. 数字:进制的产生 为了表达大数,不同的文明产生了不同的数字表示方法,最终只有使用10进制的文明生存了下来。 10进制:古中国、古印度、阿拉伯 12进制:印度、斯里兰卡 20进制:玛雅,玛雅文明失败的原因之一就是进制太复杂,不利于科学进步,咱们现在要背九九乘法表,他们背的是361路围棋棋盘。 单位进制:罗马(5、10、50、100、500、1000) 数字的表示方法(编解码原理) 中国:编解码的密钥是乘除 二百万 = 2 x 100 x 10000 罗马: 编解码的密钥是加减 IV = 5-1 = 4 ,

lvs简介

*爱你&永不变心* 提交于 2020-01-10 19:41:32
lvs基础 lvs基础原理及实现 Linux Cluster: Cluster:计算机集合,为解决某个特定问题组合起来形成的单个系统 LB:Load Balancing,负载均衡 HA: High Availiablity,高可用 HP:High Performance,高性能 lvs集群的类型: lvs-nat(network address translation) 多目标IP的DNAT,通过将请求报文中的目标地址和目标端口修改为某挑出的RS的RIP和port实现转发 RIP和DIP必须在同一个IP网络,且应该使用私网地址; 请求报文和响应报文都必须经过由Director转发,Director易于成为系统瓶颈 支持端口映射,可修改请求报文的目标port vs必须是linxu系统,rs可以是任意系统 发送的包 cip/vip --> vs cip/rip 返回的包 rip/cip --> vs vip/cip 支持端口映射 lvs-dr(direcrot routing直接路由) Director Routing:直接路由: //后端主机,改IP后不做通告,也不arp请求响应 通过为请求报文重新封装一个MAC首部进行转发,源MAC是DIP所在的接口的MAC,目标是某挑选出的RS的RIP所在接口的MAC地址;源IP/PORT,以及目标IP/PORT均保持不变