神经网路与深度学习
介绍神经网络与深度学习的相关知识点!
花露水和暖壶
you have to trust in something!
展开
-
神经网络的输入层到底算第0层还是第1层?
一般来说,输入层是第0层,当我们提到说某神经网络模型是一个三层神经网络时,意味着它包含两个隐藏层,一个输出层。具体来说,输入层是第0层,第一个隐藏层是第1层,第二个隐藏层是第2层,输出层是第3层,也就是说我们提到X层神经网络时,默认是不包括输入层在内的。...原创 2021-11-03 09:45:51 · 2505 阅读 · 0 评论 -
通俗易懂的极限学习机(Extreme Learning Machine)
什么是极限学习机(Extreme Learning Machine,ELM)?如果你不想深究它,只想知道它是什么、有什么优点的话,那我告诉你:极限学习机就是个特殊的前向传播网络或者叫前馈神经网络,那么它特殊在哪呢?(1)输入层和隐含层的连接权值、隐含层的阈值可以随机设定,且设定完后不用再调整:普通的前馈神经网络都需要使用反向传播来一轮又一轮的修改优化参数,但是ELM不是,它的权重值可以随机设定,而且设定后就不用再调整了,这最起码比反向传播减少了相当一部分的计算量。(2):隐含层和输出层之间的连接权值β原创 2021-07-07 18:50:57 · 6609 阅读 · 0 评论 -
numpy中广播(broadcast)的一个小坑
鉴于numpy中矩阵的运算居多,所以以下内容中参与运算的数据元素都默认为矩阵,且以矩阵的逐元素相乘这个操作为例子进行说明。numpy中的广播(broadcast)说白了就是干一件事——扩展矩阵,而且扩展对象都是纬度比较小的矩阵,将维度较小的矩阵扩展到和维度较大的矩阵二者具有相同的维度,我们以逐元素相乘这个操作举个例子:a = np.random.randn(3, 3)b = np.random.randn(3, 1) # b = np.random.randn(1, 3)结果也是(3,3)c = a原创 2021-06-10 23:41:24 · 380 阅读 · 0 评论 -
为什么需要非线性的激活函数?
线性的激活函数所做的工作仅仅是将输入数据进行线性组合后再输出,如果只使用现行的激活函数,那么即便神经网络的层数再多、隐藏单元的个数再多也没啥卵用,最终还是将数据进行线性组合后就输出了,而且很多时候数据的复杂程度是线性函数根本无法学习的!其实实际运用中,隐藏层使用线性激活函数的场景非常非常非常少,可能除了与压缩有关的一些非常特殊的情况才会在隐藏层使用线性激活函数,否则大部分都是在隐藏层使用非线性的激活函数。只有一个地方可以使用线性的激活函数,就是针对回归问题,比如房价预测,但是也仅仅限制在输出单元,也就是原创 2021-06-09 19:34:27 · 310 阅读 · 0 评论