尺寸为

时间:2018-06-17 14:55:45

标签: machine-learning julia

我目前正在学习使用julia的ML,并且在尝试使用2个矩阵的点积时我遇到了一个问题,这里是代码:

w, b = zeros(size(train_x, 1), 1), 0
println("Weights size : $(size(w'))")
println("Train X size : $(size(train_x))")
result = dot(w', train_x)

形状是:
 * w形状:(1,12288)
 * train_x形状:(12288,209)

这个电话给我一个错误,即:
DimensionMismatch(“点积参数的长度为12288和2568192”)

我错过了什么吗?这个点积使用numpy是有效的,所以我有点困惑。

1 个答案:

答案 0 :(得分:2)

Julia中的dot函数仅适用于严格意义上的点积 - 矢量空间上的内积,即两个向量之间的内积。看起来你只想将矢量与矩阵相乘。在这种情况下,您可以使用

w = zeros(size(train_x, 1)) # no need for the extra dimension
result = w' * train_x

*将执行矩阵向量乘法。在Julia中,与Numpy不同,但在Matlab中,.*用于元素乘法。