La descomposición de valores singulares significa que cuando arr es una array 2D, se factoriza como u y vh , donde u y vh son arrays unitarias 2D y s es una array 1D de los valores singulares de a. La función numpy.linalg.svd() se utiliza para calcular el factor de una array mediante descomposición de valores singulares.
Sintaxis: numpy.linalg.svd(a, full_arrays=True, compute_uv=True, hermitian=False)
Parámetros:
- a (…, M, N) array: Una array real o compleja con a.ndim >= 2.
- full_arrays(bool, opcional) : si es verdadero (predeterminado), u y vh tienen las formas (…, M, M) y (…, N, N), respectivamente. De lo contrario, las formas son (…, M, K) y (…, K, N), respectivamente, donde K = min(M, N).
- compute_uv(bool, opcional) : Si se calcula o no u y vh además de s. Su valor predeterminado es Verdadero.
- hermitian(bool, opcional) : si es verdadero, se supone que a es hermitiano (simétrico si tiene un valor real), lo que permite un método más eficiente para encontrar valores singulares. Su valor predeterminado es Falso.
A continuación se muestran algunos ejemplos de cómo utilizar la función:
Ejemplo 1 :
Python3
# Import numpy library import numpy as np # Create a numpy array arr = np.array([[0, 0, 0, 0, 1], [2, 0, 0, 1, 3], [4, 0, 2, 0, 0], [3, 2, 0, 0, 1]], dtype=np.float32) print("Original array:") print(arr) # Compute the factor by Singular Value # Decomposition U, s, V = np.linalg.svd(arr, full_matrices=False) # Print the result print("\nFactor of the given array by Singular Value Decomposition:") print("\nU=", U, "\n\ns=", s, "\n\nV=", V)
Producción :
Ejemplo 2:
Python3
# Import numpy library import numpy as np # Create a numpy array arr = np.array([[8, 4, 0], [2, 5, 1], [4, 0, 9]], dtype=np.float32) print("Original array:") print(arr) # Compute the factor U, s, V = np.linalg.svd(arr, full_matrices=False) # Print the result print("\nFactor of the given array by Singular Value Decomposition:") print("\nU=", U, "\n\ns=", s, "\n\nV=", V)
Producción :
Ejemplo 3:
Python3
# Import numpy library import numpy as np # Create a numpy array arr = np.array([[8, 1], [0, 5]], dtype=np.float32) print("Original array:") print(arr) # Compute the factor U, s, V = np.linalg.svd(arr, full_matrices=False) # Print the result print("\nFactor of the given array by Singular Value Decomposition:") print("\nU=", U, "\n\ns=", s, "\n\nV=", V)
Producción :
Publicación traducida automáticamente
Artículo escrito por priyabisht y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA