【问题标题】:Understanding varying neurons in deep learning?了解深度学习中的不同神经元?
【发布时间】:2018-05-04 19:27:50
【问题描述】:

在执行线性代数运算时,深度学习如何改变每一层的神经元数量并保持正确的代数运算?

此代码生成各种维度的矩阵并计算点积,我试图只专注于通过网络移动值的核心操作。

将 numpy 导入为 np

def gm(m , n):
  return np.random.uniform(1 , 1 , (m , n))

x = gm(4,2)
print('x' , x)

m1 = gm(2,3)
print('m1' , m1)

d1 = np.dot(x , m1)
print('d1' , d1)

打印:

x [[1. 1.]
 [1. 1.]
 [1. 1.]
 [1. 1.]]
m1 [[1. 1. 1.]
 [1. 1. 1.]]
d1 [[2. 2. 2.]
 [2. 2. 2.]
 [2. 2. 2.]
 [2. 2. 2.]]

如果输出矩阵是 2x1,这是如何产生的?换句话说,如何从矩阵 d1 产生一个 2x1 矩阵?

keras 等框架抽象了 this ,但是抽象是如何发生的呢?

【问题讨论】:

    标签: numpy deep-learning keras linear-algebra matrix-multiplication


    【解决方案1】:

    映射相对简单,我将只关注 MLP(与其他神经网络一样,结构复杂,可以做很多其他事情,但核心思想是一样的)。

    假设您的输入是一批大小 [B x D],其中 B - 样本数(可以是 1),D - 特征数(输入维度)。作为你想要的输出 [B x K] 其中 K - 输出数。

    典型的 MLP 只是一系列仿射变换,后跟一些(逐点)非线性 f:

    h_{i+1} = f( h_i W_i + B_i)
    

    其中 h_0 = X(输入),h_N 是输出

    假设我想要一个带有 Z 个神经元的隐藏层,那么我所要做的就是创建 两个 矩阵 W 和两个向量 B,其中一对将用于将输入映射到 Z 维,另一个从 Z 映射到所需的 K:

    W_1 is D x Z
    B_1 is 1 x Z
    
    W_2 is Z x K
    B_2 is 1 x K
    

    因此我们有

    f(X W_1 + B_1) W_2 + B_2   
    
    X W_1 is [B x D] [D x Z] = [B x Z]
    X W_1 + B_1 is [B x Z] + [1 x Z] = [B x Z]   # note that summation 
                        # is overloaded in the sense that it is adding the
                        # same B to each row of the argument
    f(X W_1 + B_1) is [B x Z]
    f(X W_1 + B_1) W_2 is [B x Z] [Z x K] = [B x K]
    f(X W_1 + B_1) W_2 + B_2 is [B x K] + [1 x K] = [B x K]
    

    与更多隐藏层类似,您只需在右侧矩阵乘以大小为 [dimension_of_previous_one x desired_output_dimension] 的矩阵,这只是数学中的常规线性投影操作(并且偏差使其仿射)

    【讨论】:

    • " [B x D],其中 B - 样本数(可以是 1),D - 特征数(输入维度)。作为您想要的输出 [B x K] " B 是否需要等于相同的值?换句话说,所需的样本数 (B) 是否等于输出维度 B?作为 row ,输入和输出的 col 维度可以不同。
    • 您希望每个输入样本都有一个输出,所以是的,B 是常数。否则意义不大。当然,您可以想象基于序列/示例集做出一个预测的情况,但随后您可以将其折叠到其他维度。
    • 谢谢,现在更有意义了。这类似于卷积网络
    猜你喜欢
    • 2018-10-05
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    • 2020-03-06
    • 2021-01-16
    • 1970-01-01
    • 1970-01-01
    • 2020-01-09
    相关资源
    最近更新 更多