Producto punto en Python con Numpy numpy.dot()

Para calcular el producto punto de NumPy ndarray, puede usar la función numpy.dot()

las funciones numpy.dot() aceptan dos listas como argumentos, calcula su producto punto y devuelven el resultado.

Sintaxis – numpy.dot()

La sintaxis de la función numpy.dot() es

numpy.dot(a, b, out=None)
ParámetroDescripción
a(obligatorio) Primer argumento para la operación de producto punto.
b(obligatorio) Segundo argumento para la operación de producto punto.
out(opcional) Este argumento se utiliza para el rendimiento. Tiene que ser un array contiguo a C, y el dtype debe ser el dtype que se devolvería para dot(a,b).

Comportamiento de numpy.dot() basado en las dimensiones de los arrays de entrada

La siguiente tabla especifica el tipo de operación realizada en base a las dimensiones de los arrays de entrada: a y b.

Dimensión de ‘a’ y ‘b’Salida
Dimensión cero (Escalar)Multiplicación de dos escalares, a y b.
Arrays unidimensionales (Vector)Producto interno de vectores.
Arrays bidimensionales (Matriz)Multiplicación de matrices.
a: Matriz de N dimensiones
b: Array unidimensional
Producto de la suma sobre el último eje de a y b.
a: Matriz de N dimensiones
b: Matriz M-Dimensional (M>=2)
Producto de la suma sobre el último eje de a y el penúltimo eje de b.

Ejemplo 1: Producto punto de escalares en Numpy

En este ejemplo, tomamos dos escalares y calculamos su producto punto utilizando la función numpy.dot(). El producto punto usando numpy.dot() con dos escalares como argumentos devuelve la multiplicación de los dos escalares.

import numpy as np

a = 3 
b = 4
salida = np.dot(a,b)
print(salida)

Salida:

12

Explicación:

salida = a * b
       = 3 * 4
       = 12

Ejemplo 2: Producto Punto Numpy de Arrays 1D (Vectores)

En este ejemplo, tomamos dos matrices unidimensionales de numpy y calculamos su producto punto utilizando la función numpy.dot(). Ya sabemos que, si los argumentos de entrada al método dot() son unidimensionales, la salida será el producto interno de estos dos vectores (ya que se trata de matrices 1D).

import numpy as np

#inicialización del arrays
a = np.array([2, 1, 5, 4])
b = np.array([3, 4, 7, 8])

#producto punto
salida = np.dot(a, b)

print(salida)

Salida:

77

Producto punto:

salida = [2, 1, 5, 4].[3, 4, 7, 8]
       = 2*3 + 1*4 + 5*7 + 4*8
       = 77

Ejemplo 3: Producto Punto Numpy de Arreglos Bidimensionales (Matriz)

En este ejemplo, tomamos dos matrices bidimensionales de numpy y calculamos su producto punto. El producto punto de dos matrices bidimensionales devuelve la multiplicación matricial de las dos matrices de entrada.

import numpy as np

#inicialización de los arrays
a = np.array([[2, 1], [5, 4]])
b = np.array([[3, 4], [7, 8]])

#producto punto
salida = np.dot(a, b)

print(salida)

Salida:

[[13 16]
 [43 52]]

Producto Punto:

salida = [[2, 1], [5, 4]].[[3, 4], [7, 8]]
       = [[2*3+1*7, 2*4+1*8], [5*3+4*7, 5*4+4*8]]
       = [[13, 16], [43, 52]]

En este tutorial de Ejemplos de Python, aprendimos a calcular el producto punto de arrays de numpy, con la ayuda de programas de ejemplo bien detallados.

Deja una respuesta