如果我没理解错的话,我可以将3-Layered NN转换为DL NN,方法是在the hidden layer之后添加一个RelU,然后重复hidden layer + RelU
我很难想象维度是如何工作的。现在,我从一个small library中获得了以下内容,这样我就可以理解这些概念了
M = 784 # 28 x 28 pixels
N = 512 # hidden neurons
P = 10 # number of possible classes
w1 = np.random.normal(0.0, pow(10, -0.5), (M, N))
w2 = np.random.normal(0.0, pow(10, -0.5), (N, P))
b1 = np.random.normal(0.0, pow(10, -0.5), (N))
b2 = np.random.normal(0.0, pow(10, -0.5), (P))
x = Input(w1, b1)
h = Hidden(x, w2, b2)
g = Softmax(h)
cost = CrossEntropy(g) # numpy.mean(CrossEntropy) over BATCH SIZE
train_data()但是我想去
x = Input(w1, b1)
h = Hidden(x, w2, b2)
r = ReLU(h)
h2 = Hidden(r, ??, ??) # 1
r2 = ReLU(h2) # 2
.. <repeat 1 and 2>
g = Softmax(h)
cost = CrossEntropy(g) # numpy.mean(CrossEntropy) over BATCH SIZE
train_data()Related article I a writing about this
发布于 2016-12-17 07:04:55
如果我没理解错的话,我可以通过在隐藏层后面添加一个RelU,然后重复隐藏层+ RelU来将3层NN转换为DL NN
深度学习几乎是一个时髦的词。它可以是任何网络,从3个学习层到至少16层。取决于作者/什么时候你想知道“深度”是什么意思。例如,deep residual learning paper将门槛设置得更高,达到了几百层。
重要的是,你至少有一个具有非线性的隐藏层。具有输入层、隐藏层和输出层(即两个学习层)的网络。非线性(逻辑函数,tanh,ReLU,...)让神经网络如此强大。
对于维数:这些是矩阵乘法/向量加法。您的输入是(1,M)维的,并与(M,N)维的矩阵相乘。结果的维度为(1,N)。下一个要相乘的矩阵必须是维数(N,随便什么)。所以你必须确保相邻矩阵的维数是拟合的。就是微积分基础。
https://stackoverflow.com/questions/40987555
复制相似问题