神经元

神经网络分类简介

主宰稳场 提交于 2020-03-27 09:56:57
3 月,跳不动了?>>> 1 深度学习概念 2006年,Geoffery Hinton在《Science》和相关期刊上发表了论文,首次提出了“深度信念网络”的概念。具体是利用预训练的方式缓解了局部最优解的问题,将隐藏层增加到了7层,实现了真正意义上的“深度”。 他给多层神经网络相关的学习方法赋予了一个新名词--“ 深度学习 ”。很快,深度学习在语音识别领域暂露头角。接着,2012年,深度学习技术又在图像识别领域大展拳脚。在这之后,关于深度神经网络的研究与应用不断涌现。 2 神经网络分类 神经网络的分类主要有以下几种:DNN(深度神经网络)、RNN (循环神经网络)、CNN(卷积神经网络)、ResNet(深度残差)、LSTM之外,还有很多其他结构的神经网络 。 DNN: 为了克服梯度消失,ReLU、maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。结构跟多层感知机一样,如下图所示. 我们看到全连接DNN的结构里下层神经元和所有上层神经元都能够形成连接,从而导致参数数量膨胀。假设输入的是一幅像素为1K*1K的图像,隐含层有1M个节点,光这一层就有10^12个权重需要训练,这不仅容易过拟合,而且极容易陷入局部最优。 RNN: DNN无法对时间序列上的变化进行建模。然而,样本出现的时间顺序对于自然语言处理、语音识别、手写体识别等应用非常重要。为了适应这种需求

深度学习入门整理学习(一)

有些话、适合烂在心里 提交于 2020-01-25 05:13:04
深度学习入门 近期在学习深度学习的相关知识,作为一个深度学习小白,《深度学习:从入门到实战》这本书确实对于我来说非常适合,前期铺垫较为精明,并且在开始时不只是挖掘深度学习本身上,对深度学习的发展历程也有一定介绍,在明白了深度学习是什么、解决什么样的问题后再进行逐步讲解,实在对于学生的我再适合不过,下面我将我学习时的一部分笔记和自己的理解进行张贴,希望对大家和我都有所帮助。 明确机器学习适合做什么? (1)具有明确的输入和输出,能够通过学习分类或者预测的功能来完成的任务,但是机器学习可能不是因果关系,而是一种统计关联关系。 (2)具有大型数据集或者可以创建包含输入-输出对的大型数据集的任务。 (3)具有明确的目标和量度标准,并可以提供清晰反馈的任务。 (4)不需要大量知识背景或者长逻辑链推理的任务。 (5)不需要对于决策过程进行解释的任务,这是因为深度学习属于可统计的而不可解释的范畴。 (6)不需要完全精确,能够容忍错误 (7)不需要随时间迅速变化的任务,即训练样本和测试样本之间差异不大的任务 (8)不需要灵巧、运动或机动性的任务。 人工智能学派之争 (1)符号主义。用符号进行逻辑与机器推理,实现一些知识的机器证明,处理知识表示、知识推理和知识运用等问题。 (2)连接主义。用大量神经元的组合实现人脑功能,期望创造一个通用网络模型,然后通过数据训练,不断改善模型中的参数

深度学习基础知识题库大全

百般思念 提交于 2019-12-28 16:34:26
1、 梯度下降算法 的正确步骤是什么? a.计算预测值和真实值之间的误差 b.重复迭代,直至得到网络权重的最佳值 c.把输入传入网络,得到输出值 d.用随机值初始化权重和偏差 e.对每一个产生误差的神经元,调整相应的(权重)值以减小误差 A.abcde B.edcba C.cbaed D.dcaeb 解析:正确答案 D ,考查知识点-深度学习。 2、已知: - 大脑是有很多个叫做神经元的东西构成,神经网络是对大脑的简单的数学表达。 - 每一个神经元都有输入、处理函数和输出。 - 神经元组合起来形成了网络,可以拟合任何函数。 - 为了得到最佳的神经网络,我们用梯度下降方法不断更新模型 给定上述关于神经网络的描述,什么情况下 神经网络模型 被称为深度学习模型? A.加入更多层,使神经网络的深度增加 B.有维度更高的数据 C.当这是一个图形识别的问题时 D.以上都不正确 解析:正确答案 A ,更多层意味着网络更深。没有严格的定义多少层的模型才叫深度模型,目前如果有超过2层的隐层,那么也可以及叫做深度模型。 3、训练 CNN 时,可以对输入进行旋转、平移、缩放(增强数据)等预处理提高模型泛化能力。这么说是对,还是不对? A.对 B.不对 解析: 对 。如寒sir所说,训练CNN时,可以进行这些操作。当然也不一定是必须的,只是data augmentation扩充数据后,模型有更多数据训练

深度学习基础 - 神经元

。_饼干妹妹 提交于 2019-12-07 07:21:34
深度学习基础 - 神经元 flyfish 以直线为例 y = ∑ i = 1 n w i × x i + b = w ⋅ x + b y=\sum_{i=1}^nw_i\times x_i + b = w\cdot x + b y = i = 1 ∑ n ​ w i ​ × x i ​ + b = w ⋅ x + b Y = W X + B Y=WX+B Y = W X + B 表示很多个神经元之间的关系 数学说 大写就是矩阵 [ y 1 y 2 ] = [ w 1 , 1 w 1 , 2 w 2 , 1 w 2 , 2 ] [ x 1 x 2 ] + [ b 1 b 2 ] \left[\begin{array}{l}{y_{1}} \\ {y_{2}}\end{array}\right]=\left[\begin{array}{ll}{w_{1,1}} & {w_{1,2}} \\ {w_{2,1}} & {w_{2,2}}\end{array}\right]\left[\begin{array}{l}{x_{1}} \\ {x_{2}}\end{array}\right]+\left[\begin{array}{l}{b_{1}} \\ {b_{2}}\end{array}\right] [ y 1 ​ y 2 ​ ​ ] = [ w 1 , 1 ​ w 2 , 1 ​ ​

neuroscience 神经元的相互作用

匿名 (未验证) 提交于 2019-12-02 23:30:02
从单个的神经到网络和认知,这是怎样一个过程? 我们在做决定的时候我们脑子里发生了什么? 是什么刺激了neuron让它发送电位信号? 剑桥有本很好的书,全面的讲解了计算机神经科学和理论神经科学,而且是免费的,正好和我的感兴趣的领域高度符合。 书名叫 Neuronal Dynamics 可以翻译成神经云动力学,dynamics有相互作用的意思, 所以我觉得叫做“神经元的相互作用方式”更接地气 Neurons and Mathematics 神经元和数学的基础概念介绍 如果不事先弄懂neuroscience的一些基础概念,比如action potentials(动作电位 ), postsynaptic potentials(突触后电位), firing thresholds(触发阈值),到后了面写代码的时候就会一脸懵逼,还得跑回来重头学概念。 希望五一节假期能够写完 文章来源: https://blog.csdn.net/sinat_24070543/article/details/89735664

权重初始化的常见方法

不想你离开。 提交于 2019-12-02 21:48:49
1.把w初始化为0 在神经网络中,把w初始化为0是不可以的。这是因为如果把w初始化0,那么每一层的神经元学到的东西都是一样的(输出是一样的),而且在bp的时候,每一层内的神经元也是相同的,因为他们的gradient相同。 2.对w随机初始化 初始化容易出现梯度消失或者梯度爆炸的问题。 3.Xavier initialization 基本思想:保证输入和输出的方差一致,这样就可以避免所有输出值都趋向于0。虽然刚开始的推导基于线性函数,但是在一些非线性神经元也很有效。比较适合tanh 4.He initialization 权重的初始化方法是将Xavier初始化的方差乘以2。适合rule激活函数。 来源: https://www.cnblogs.com/happytaiyang/p/11763786.html

batch normalization 与 layer normalization

心不动则不痛 提交于 2019-11-27 07:57:16
bn和ln的本质区别: batch normalization是 纵向归一化 ,在batch的方向上对同一层每一个神经元进行归一化,即 同一层每个神经元具有不同的均值和方差 。 layer normalization 是 横向归一化 ,即 同一层的所有神经元具有相同的均值和方差 。 bn和ln的使用区别: 1.如果batch size过小,那么得到的统计量难以反应全局信息,因此不适合使用bn;而ln不关心batch size。 2.由于rnn编码是考虑句子长度信息的,而同一个batch里的句子长度可能不一致,因此在rnn使用batch normalization是有问题的,而ln是在横向归一化,因此可以应用在rnn网络中。 来源: https://www.cnblogs.com/zhufz/p/11352403.html