Articles of matriz multiplicación

formas de multiplicación de matriz numpy

En la multiplicación de matrices, suponga que A es una matriz de 3 x 2 (3 filas, 2 columnas) y B es una matriz de 2 x 4 (2 filas, 4 columnas), entonces si una matriz C = A * B , entonces C debería Tiene 3 filas y 4 columnas. ¿Por qué numpy no […]

Multiplicación de matrices de elementos en NumPy

Estoy haciendo mi primera incursión real en Python y NumPy para hacer un procesamiento de imágenes. Tengo una imagen cargada como una matriz numérica tridimensional, donde el eje 0 representa bandas de imagen, mientras que los ejes 1 y 2 representan columnas y filas de píxeles. A partir de esto, necesito tomar la matriz 3×1 […]

Multiplicación de matrices utilizando hdf5.

Estoy tratando de multiplicar 2 matrices grandes con límite de memoria usando hdf5 (pytables) pero la función numpy.dot parece darme un error: Valueerror: la matriz es demasiado grande ¿Necesito realizar la multiplicación de matrices por mí mismo, quizás de forma bloque, o hay alguna otra función de python similar a numpy.dot? import numpy as np […]

Numpy – ¿Matrices múltiples 3×3 y 100x100x3?

Tengo los siguientes import numpy as np XYZ_to_sRGB_mat_D50 = np.asarray([ [3.1338561, -1.6168667, -0.4906146], [-0.9787684, 1.9161415, 0.0334540], [0.0719453, -0.2289914, 1.4052427], ]) XYZ_1 = np.asarray([0.25, 0.4, 0.1]) XYZ_2 = np.random.rand(100,100,3) np.matmul(XYZ_to_sRGB_mat_D50, XYZ_1) # valid operation np.matmul(XYZ_to_sRGB_mat_D50, XYZ_2) # makes no sense mathematically ¿Cómo realizo la misma operación en XYZ_2 que lo haría en XYZ_2? ¿De alguna manera […]

Multiplicación eficiente de elementos de una matriz y un vector en TensorFlow

¿Cuál sería la forma más eficiente de multiplicar (de forma elemental) un tensor 2D (matriz): x11 x12 .. x1N … xM1 xM2 .. xMN por un vector vertical: w1 … wN Para obtener una nueva matriz: x11*w1 x12*w2 … x1N*wN … xM1*w1 xM2*w2 … xMN*wN Para dar algo de contexto, tenemos M muestras de datos […]

Multiplicando matriz 3D con matriz 2D

Tengo dos matrices para multiplicar. Una es la matriz de peso – W cuyo tamaño es 900x2x2 . Otra es la matriz de entrada-I cuyo tamaño es 2×2 . Ahora quiero realizar una sum sobre c = WI que será una matriz de 900×1 , pero cuando realizo la operación se multiplica y me da […]

Auto-multiplicación matricial eficiente numpy (matriz de gramo)

Quiero multiplicar B = A @ AT en numpy. Obviamente, la respuesta sería una matriz simétrica (es decir, B[i, j] == B[j, i] ). Sin embargo, no me queda claro cómo aprovechar esto fácilmente para reducir el tiempo de cálculo a la mitad (calculando solo el triángulo inferior de B y luego usándolo para obtener […]

Tensor áspero: Tensordot sobre rebanadas frontales de tensor

Estoy tratando de realizar una multiplicación de matrices con cortes frontales de un tensor 3D, como se muestra a continuación. Si X.shape == (N, N) e Y.shape == (N, N, Y) , el tensor resultante debe ser de forma (N, N, Y) . ¿Cuál es la syntax np.tensordot adecuada para lograr esto? Estoy tratando de […]

¿Cómo obtener la multiplicación de matrices de elementos (producto Hadamard) en cantidad?

Tengo dos matrices a = np.matrix([[1,2], [3,4]]) b = np.matrix([[5,6], [7,8]]) y quiero obtener el producto por elementos, [[1*5,2*6], [3*7,4*8]] , igualando [[5,12], [21,32]] Yo he tratado print(np.dot(a,b)) y print(a*b) pero ambos dan el resultado [[19 22], [43 50]] que es el producto de matriz, no el producto de elementos. ¿Cómo puedo obtener el producto […]

Diferencia entre el punto numpy () y la multiplicación de matrices de Python 3.5+ @

Recientemente me mudé a Python 3.5 y noté que el nuevo operador de multiplicación de matrices (@) a veces se comporta de manera diferente al operador de puntos numpy . En el ejemplo, para matrices 3d: import numpy as np a = np.random.rand(8,13,13) b = np.random.rand(8,13,13) c = a @ b # Python 3.5+ d […]