【问题标题】:Adding two length m vectors results in a matrix with dimensions m * m添加两个长度为 m 的向量会产生一个尺寸为 m * m 的矩阵
【发布时间】:2018-08-30 00:35:12
【问题描述】:

在 numpy 中,当我有一个大小为 (m,) 的向量和另一个大小为 (m, 1) 的向量时,将两者相加得到一个大小为 (m, m) 的矩阵。但是,我只想要矢量结果。我该怎么做?

编辑:我实际上使用的是 tensorflow,(m, 1) 向量实际上是(m, ?)。但是,当我在权重(n, m) . (m, ?) 之间的点积上添加偏差时,我得到一个(m, m) 矩阵,它基本上复制了行间的偏差。我该如何解决这个问题?

【问题讨论】:

    标签: numpy matrix tensorflow vector linear-algebra


    【解决方案1】:

    广播开始

    (m,)+(m,1)
    (1,m]+(m,1)    # match number of dimensions
    (m,m)          # match shapes
    

    为了避免这种情况,将一个数组重新整形为 (m,1),或将另一个数组重新整形为 (m,)。

    【讨论】:

      【解决方案2】:

      用大小 (m,) 重塑 numpy 数组

      array=np.reshape(array,(m,1))
      

      【讨论】:

        猜你喜欢
        • 2014-12-24
        • 1970-01-01
        • 1970-01-01
        • 2017-11-26
        • 1970-01-01
        • 1970-01-01
        • 2018-09-06
        • 2020-06-18
        • 1970-01-01
        相关资源
        最近更新 更多