Saya memiliki dua matriks
a = np.matrix([[1,2], [3,4]])
b = np.matrix([[5,6], [7,8]])
dan saya ingin mendapatkan produk elemen-bijaksana [[1*5,2*6], [3*7,4*8]],, setara
[[5,12], [21,32]]
saya telah mencoba
print(np.dot(a,b))
dan
print(a*b)
tapi keduanya memberikan hasil
[[19 22], [43 50]]
yang merupakan hasil kali matriks, bukan produk bijak. Bagaimana saya bisa mendapatkan produk elemen-bijaksana (alias produk Hadamard) menggunakan fungsi bawaan?
adan barray numpy? Juga, dalam pertanyaan Anda di atas, Anda menggunakan xdan yuntuk komputasi, bukan adan b. Apakah itu hanya salah ketik?
@perkalian matriks dengan larik numpy, yang berarti sama sekali tidak ada alasan yang baik untuk menggunakan matriks di atas larik.
adan bdaftar. Mereka akan bekerja di np.dot; tapi tidak di a*b. Jika Anda menggunakan np.array(a)atau np.matrix(a), *berfungsi tetapi dengan hasil yang berbeda.
adanbbukan tipe matriks NumPy? Dengan kelas ini,*mengembalikan produk dalam, bukan elemen-bijaksana. Tetapi untukndarraykelas biasa ,*berarti produk yang bijak.