权重

task04

て烟熏妆下的殇ゞ 提交于 2020-02-20 01:32:25
梯度消失、梯度爆炸以及Kaggle房价预测¶ 梯度消失和梯度爆炸 考虑到环境因素的其他问题 Kaggle房价预测 梯度消失和梯度爆炸 深度模型有关数值稳定性的典型问题是消失(vanishing)和爆炸(explosion)。 当神经网络的层数较多时,模型的数值稳定性容易变差。 假设一个层数为的多层感知机的第层的权重参数为,输出层的权重参数为。为了便于讨论,不考虑偏差参数,且设所有隐藏层的激活函数为恒等映射(identity mapping)。给定输入,多层感知机的第层的输出。此时,如果层数较大,的计算可能会出现衰减或爆炸。举个例子,假设输入和所有层的权重参数都是标量,如权重参数为0.2和5,多层感知机的第30层输出为输入分别与(消失)和(爆炸)的乘积。当层数较多时,梯度的计算也容易出现消失或爆炸。 随机初始化模型参数 在神经网络中,通常需要随机初始化模型参数。下面我们来解释这样做的原因。 回顾多层感知机一节描述的多层感知机。为了方便解释,假设输出层只保留一个输出单元(删去和以及指向它们的箭头),且隐藏层使用相同的激活函数。如果将每个隐藏单元的参数都初始化为相等的值,那么在正向传播时每个隐藏单元将根据相同的输入计算出相同的值,并传递至输出层。在反向传播中,每个隐藏单元的参数梯度值相等。因此,这些参数在使用基于梯度的优化算法迭代后值依然相等。之后的迭代也是如此。在这种情况下

深度学习——循环神经网络

为君一笑 提交于 2020-02-19 06:09:16
理解 循环神经网络(Recurrent Neural Network, RNN)是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network)。 递归神经网络(RNN)相对于MLP和CNN的主要优点是,它能够处理序列数据,在传统神经网络或卷积神经网络中,样本(sample)输入与输出是没有“顺序”概念的,可以理解为,如果把输入序列和输出序列重新排布,对整体模型的理论性能不会有影响。RNN则不同,它保证了输入和输出至少有一端是有序列特征的。 传统的神经网络结构可以归纳为下图左边的形式,隐藏层 h 的状态是不保存的,而在RNN中,每一个时间步的隐藏层状态都是由上一层的输入和上一个时间的状态共同计算得到。 为什么循环神经网络可以往前看任意多个输入值呢? 来看下面的公式,即 RNN 的输出层 o 和隐藏层 s 的计算方法: 如果反复把式 2 带入到式 1,将得到: RNN 的训练算法为:BPTT BPTT 的基本原理和 BP 算法是一样的,同样是三步: 1、前向计算每个神经元的输出值; 2、反向计算每个神经元的误差项值,它是误差函数E对神经元j的加权输入的偏导数; 3、计算每个权重的梯度。 最后再用随机梯度下降算法更新权重。 模型参数 W_xh: 状态-输入权重 W

CSS用途、分类、权重、性能

梦想与她 提交于 2020-02-19 03:22:30
CSS基础 Cascading Style Sheet 层叠样式表 选择器 { 属性 : 值 ; 属性 : 值 } 分号是分隔符 选择器: 1. 用于匹配HTML元素 有不同的匹配规则,多个选择器可叠加 2. 分类和权重 选择器分类 元素选择器a { } 伪元素选择器 : : before { } 类选择器 . link { } 属性选择器 [ type = radio ] { } 伪类选择器 : hover { } ID 选择器 #id { } 组合选择器 [ type = checkbox ] + label { } 否定选择器 : not ( . link ) { } 通用选择器 * { } 选择器权重 ID选择器#id{} +100j 类 属性 伪类 +10 元素 伪元素 +1 其它选择器 +0 计算一个不进位的数字 #id . link a [ href ] 100 + 10 + 1 + 0 = 111 #id . link . active 100 + 10 + 10 = 120 如果一个id选择器,11个类选择器 第一位是1, 第二位是11,不进位 !important优先级最高 style元素属性 优先级高比id高 相同权重 后写的生效 3.性能 < style > . body div . hello { color : red ; } < / style > <

织梦按权重排序和自定义排序

∥☆過路亽.° 提交于 2020-02-16 07:39:32
【按权重排序】 dede:list 的方法 1、找到"根目录\include\arc.listview.class.php"文件。 2、修改代码:在文件第727行处添加按weight排序判断代码(红色部分为新添加代码)。 //排序方式 $ordersql = ''; if($orderby=="senddate" || $orderby=="id") { $ordersql=" ORDER BY arc.id $orderWay"; } else if($orderby=="hot" || $orderby=="click") { $ordersql = " ORDER BY arc.click $orderWay"; } else if($orderby=="lastpost") { $ordersql = " ORDER BY arc.lastpost $orderWay"; } else if($orderby=="weight") { $ordersql = " ORDER BY arc.weight $orderWay"; } else { $ordersql=" ORDER BY arc.sortrank $orderWay"; } 3、再在第778行处找到此段代码    //如果不用默认的sortrank或id排序,使用联合查询(数据量大时非常缓慢)   if

论文阅读——Optimizing the Convolution Operation to accelerate DNN on FPGA

跟風遠走 提交于 2020-02-15 13:03:23
论文阅读之FPGA硬件加速 Optimizing the Convolution Operation to Accelerate Deep Neural Networks on FPGA 时间:2018 期刊:IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS Section I 本文的主要贡献有: (1)深入分析卷积运算中的循环计算,通过减少循环层数来加速卷积计算 (2)通过浮点到定点的转换来加速CNN的计算,主要减少存取数据和访问存储器的时间 (3)设计了一个数据路由来处理不同类型的卷积运算,如步长、0填充等,尤其对于irregular CNNs,设计了data router并进行了硬件实现 (4)本文的加速策略在NiN,VGG-16,ResNet等网络架构上进行了验证 Section II CNN中的循环 Loop Unrolling 循环展开 剖析CNN中的四层循环 Loop Unrolling循环展开 Loop 1:每一个卷积核内的乘加运算MAC 一个filter中不同位置的数据做MAC Loop 2:一个filter在所有输入特征图同一像素点的不同通道层(feature map的个数)上的循环 做inner product后相加 Loop 3:一个filter在一张feature

Neural Architecture Search: A Survey论文阅读

大城市里の小女人 提交于 2020-02-15 02:48:24
这篇是NAS领域2018年的一篇综述,NAS当时在CV领域中图像分类、目标检测、语义分割三大基础方向已经大放异彩。当时DARTS刚出来一定程度上改变了NAS的发展方向,这篇文章可以说当入门看了解NAS还是不错的。论文主要从三个方面来介绍NAS的发展现状:search space、search strategy、performance estimation strategy。如下图: 搜索空间 :即人为事先制定的网络框架,预先设定好适合当前任务的结构能够有效减小搜索空间、简化搜索。但既然是人为设置也就限制了创新,参考 ICLR 2020 的 NAS evaluation is frustratingly hard 也可以发现,搜索空间的设置可能已经极大程度上决定最终的网络性能。 搜索策略 :定义了如何在搜索空间中寻找最优网络结构,一方面快速搜寻最好的结构另一方面也要避免收敛到局部最优的位置。 性能评估 :既要评估在特定数据集上的性能,也要考虑到搜索的代价,自从DARTS出来后很多NAS系统都极大减少搜索耗时、测试时间。 搜索空间 链式结构 最简单的积木式结构,需要定义的有:层数、每个层的运算操作、运算的超参(卷积核大小数量、步长等)。 重复单元结构 现在一些跨层手段如ResNet和DenseNet这些极大丰富了NAS的搜索空间设置。所以现在用的多的还是cell/block结构下的空间

Word2vec模型及负采样精讲

旧巷老猫 提交于 2020-02-12 21:55:03
Word2vec模型本质 :是一个用来生成词向量的、简单的神经网络模型。   通过计算相似度来降低原来输入词的维度,举个例子:              图.甲 网络结构如下:                图.乙   如乙图所示,我们一开始输入的是one-hot编码后的向量,1位于第7位,其对应的输入层到隐藏层的权重矩阵w一定是第7行,如下图示意            图.丙   丙图示意的是第三行,我们将one-hot编码后的输入再tokenize转化回去,查找w索引值为3的行,拿出来即可,拿出来的就是 词向量 原来需要计算那么多次乘法,现在只需查表即可。   图甲那张图的全过程称之为 池化向量。                图.丁   图丁有一处错误,全连接层激活函数为softmax,output到预测值时的激活函数为sigmoid,此图为原始的池化向量过程。 负采样:     在训练神经网络时,每当接受一个训练样本,然后调整所有神经单元权重参数,来使神经网络预测更加准确。换句话说,每个训练样本都将会调整所有神经网络中的参数。   我们词汇表的大小决定了我们skip-gram 神经网络将会有一个非常大的权重参数,并且所有的权重参数会随着数十亿训练样本不断调整。   negative sampling (负例样本,即one-hot编码后的为0的那些位置的样本

CSS的三大特性

◇◆丶佛笑我妖孽 提交于 2020-02-12 18:46:14
CSS有三个非常重要的特性:层叠性、继承性、优先级 一、层叠性 相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠)另一个冲突的样式。层叠性主要解决样式冲突的问题 层叠性原则: 样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式 样式不冲突,不会层叠。 二、继承性 css中的继承:子标签会继承父标签的某些样式,如文本颜色和字号。简单的理解就是:子承父业。 1、恰当的使用继承可以简化代码,降低CSS样式的复杂性 2、子元素可以继承父元素的样式(text- , font-, line-这些元素开头的可以继承,以及color属性)。跟文字相关的样式 行高的继承性 行高可以跟单位也可以不跟单位 如果子元素没有设置行高,则会继承父元素的行高为1.5。 此时,子元素的行高是:当前子元素的文字大小*1.5 三、优先级 当同一个元素指定多个选择器,就会有优先级的产生 选择器相同,则执行层叠行 选择器不同,则根据选择器权重执行 选择器          选择器权重 继承或者*          0.0.0.0. 元素选择器          0..0.0.1 类选择器、伪类选择器    0.0.1.0 ID选择器          0.1.0.0 行内样式style=""       1.0.0.0 !important 重要的       无穷大 优先级注意点: 1

零基础入门篇使用Python搭建点击率预估模型

坚强是说给别人听的谎言 提交于 2020-02-12 03:48:59
本文将从零开始,仅仅利用基础的numpy库,使用Python实现一个最简单的神经网络(或者说是简易的LR,因为LR就是一个单层的神经网络),解决一个点击率预估的问题。感兴趣的朋友跟随小白一起看看吧 点击率预估模型 0.前言 本篇是一个基础机器学习入门篇文章,帮助我们熟悉机器学习中的神经网络结构与使用。 日常中习惯于使用Python各种成熟的机器学习工具包,例如sklearn、TensorFlow等等,来快速搭建各种各样的机器学习模型来解决各种业务问题。 本文将从零开始,仅仅利用基础的numpy库,使用Python实现一个最简单的神经网络(或者说是简易的LR,因为LR就是一个单层的神经网络),解决一个点击率预估的问题。 1.假设一个业务场景 声明:为了简单起见,下面的一切设定从简…. 定义需要解决的问题: 老板:小李,这台机器上有一批微博的点击日志数据,你拿去分析一下,然后搞点击率预测啥的… 是的,就是预测一篇微博是否会被用户点击(被点击的概率)……预测未来,貌似很神奇的样子! 热门微博 简单的介绍一下加深的业务数据 每一条微博数据有由三部分构成: {微博id, 微博特征X, 微博点击标志Y} 微博特征X有三个维度: X={x0="该微博有娱乐明星”,x1="该微博有图”,x2="该微博有表情”} 微博是否被点击过的标志Y: Y={y0=“点击”, y1=“未点击”} 数据有了

基于matlab的图像腐蚀原理与去噪应用

一曲冷凌霜 提交于 2020-02-11 18:35:05
写本文的目的是记录自己做过的一些东西,深化理解,理清思路,便于回忆。本人处于学习阶段,欢迎指出不对的地方。 数学形态学是数字图像处理中一种很独特的方法,它基于像素与其周遭像素的位置灰度关系来完成某些功能。膨胀和腐蚀是最常见的处理方法,由此衍生出来的还有开运算、闭运算、梯度运算、顶帽(Top Hat)、黑帽(Black Hat)等,此次利用膨胀和腐蚀来处理加入泊松噪声的图像,使图像在尽可能减小损失的情况下完成噪声的滤除。 简单来说,图像腐蚀就是滑动算子取区域最小值,在算子为1的区域内选取最小值作为该像素的输出值,然后用相同的操作遍历整个图像。腐蚀和膨胀是对高像素值(高亮)部分而言的,不是低像素值的黑色部分。 开始试验 1.预处理和加入噪声 首先引入要处理的图像 将图像转换为灰度图像(彩色图像问题要将图像分为三层去处理,三层图像后期合并时也许还会出现一些颜色上的误差,需要进一步讨论,此处暂且不顾) 加入泊松噪声。泊松噪声从视觉效果来看类似于高斯噪声,但服从泊松分布。 2.创建形态学算子 使用腐蚀来去除图像噪声。腐蚀属于图像形态学方法的一种,进行腐蚀前首先要确定腐蚀所用的算子,此处创建两个算子方便对比,一个是三阶单位矩阵,另一个是三阶的副对角线为1,其余元素为0的矩阵,二者形态上对称。将单位矩阵称作-45度模板,另一个称为45度模板。 3.运算 使用imeroad(