Diferencia entre la operación NumPy.dot() y ‘*’ en Python

En Python, si tenemos dos arrays numpy que a menudo se denominan vector. El operador ‘*’ y numpy.dot() funcionan de manera diferente en ellos. Es importante saberlo especialmente cuando se trata de ciencia de datos o problemas de programación competitivos.
 

Funcionamiento del operador ‘*’

La operación ‘*’ lleva a cabo la multiplicación por elementos en los elementos de la array. El elemento en a[i][j] se multiplica por b[i][j]. Esto sucede para todos los elementos de la array.
Ejemplo: 
 

Let the two 2D array are v1 and v2:-
v1 = [[1, 2], [3, 4]]
v2 = [[1, 2], [3, 4]]

Output:
[[1, 4]
[9, 16]]
From below picture it would be clear.

Trabajo de numpy.dot()

Lleva de multiplicación de array normal. Cuando la condición de la cantidad de columnas de la primera array debe ser igual a la cantidad de filas de la segunda array, se verifica que solo se lleva a cabo la función numpy.dot(), de lo contrario, muestra un error. 
Ejemplo: 
 

Let the two 2D array are v1 and v2:-
v1=[[1, 2], [3, 4]]
v2=[[1, 2], [3, 4]]
Than numpy.dot(v1, v2)  gives output of :-
[[ 7 10]
 [15 22]]

Ejemplos 1: 
 

Python3

import numpy as np
 
 
# vector v1 of dimension (2, 2)
v1 = np.array([[1, 2], [1, 2]])
 
# vector v2 of dimension (2, 2)
v2 = np.array([[1, 2], [1, 2]])
 
print("vector multiplication")
print(np.dot(v1, v2))
 
print("\nElementwise multiplication of two vector")
print(v1 * v2)
Output :
vector multiplication
[[3 6]
 [3 6]]

Elementwise multiplication of two vector
[[1 4]
 [1 4]]

Ejemplos 2: 
 

Python3

import numpy as np
 
 
v1 = np.array([[1, 2, 3], [1, 2, 3], [1, 2, 3]])
 
v2 = np.array([[[1, 2, 3], [1, 2, 3], [1, 2, 3]]])
 
print("vector multiplication")
print(np.dot(v1, v2))
 
print("\nElementwise multiplication of two vector")
print(v1 * v2)
Output :
vector multiplication
[[ 6 12 18]
 [ 6 12 18]
 [ 6 12 18]]

Elementwise multiplication of two vector
[[1 4 9]
 [1 4 9]
 [1 4 9]]

Publicación traducida automáticamente

Artículo escrito por prajakta_mane y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *