我在學習numpy,對廣播有點困惑,這裏是我的設置。我有兩個矩陣廣播如何在這個numpy的例子中應用?
>>> y=np.array([1,2,3])
>>> v = np.array([1,2,3])
>>> r=np.reshape(v, (3, 1))
因此r是(3 * 1)矩陣,而y是形狀爲(3,)的秩爲1的矩陣。如果我做了y.dot(r),我得到了14,假設numpy在y上應用廣播,使它成爲(1 * 3),然後用r(3 * 1)做點積,這樣得到的矩陣將是1 * 1。
但是,當我做r.dot(y)時,它會引發錯誤。它爲什麼不在這裏做同樣的事情?它應該使y(1 * 3)和r是(3 * 1),它應該給出一個3 * 3的矩陣。這個推理有什麼問題?