Tensorflow có một chức năng gọi là batch_matmul nhân với các tensors chiều cao hơn. Nhưng tôi có một thời gian khó hiểu nó hoạt động như thế nào, có lẽ một phần vì tôi đang gặp khó khăn trong việc hình dung nó.Làm thế nào để tensorflow batch_matmul hoạt động?
Những gì tôi muốn làm là nhân một ma trận của từng lát một tensor 3D, nhưng tôi không hoàn toàn hiểu những gì hình dạng của tensor a là. Liệu z là chiều kích bên trong nhất? Điều nào sau đây là đúng?
tôi sẽ nhất thích đầu tiên là đúng - đó là trực quan nhất đối với tôi và dễ dàng để nhìn thấy trong .eval() đầu ra. Nhưng tôi nghi ngờ điều thứ hai là chính xác.
Tensorflow nói rằng batch_matmul thực hiện:
out[..., :, :] = matrix(x[..., :, :]) * matrix(y[..., :, :])
Điều đó có nghĩa gì? Điều đó có nghĩa là gì trong bối cảnh ví dụ của tôi? Cái gì đang được nhân với cái gì? Và tại sao tôi không nhận được 3D tensor theo cách tôi mong đợi?
[tf.batch_matmul không còn có sẵn] (http://stackoverflow.com/a/ 43819275/1090562) –