Acabo de instalar tensorflow v2.3 en anaconda python. Traté de probar la instalación usando el comando python a continuación;
$ python -c "import tensorflow as tf; x = [[2.]]; print('tensorflow version', tf.__version__); print('hello, {}'.format(tf.matmul(x, x)))"Recibí el siguiente mensaje;
2020-12-15 07:59:12.411952: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)to use the following CPU instructions in performance-critical operations: AVX AVX2 To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. hello, [[4.]] Por el mensaje, parece que la instalación se instaló correctamente. Pero, ¿qué significa exactamente This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)to use the following CPU instructions in performance-critical operations: AVX AVX2 ?
¿Estoy usando una versión de tensorflow con algunas características limitadas? ¿Algún efecto secundario?
Estoy usando Windows 10.
El mensaje
This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2significa que en lugares donde el rendimiento es importante (por ejemplo, la multiplicación de matrices en redes neuronales profundas), se utilizarán ciertas instrucciones de compilación optimizadas. La instalación parece ser exitosa.
El repositorio oneDNN GitHub dice:
oneAPI Deep Neural Network Library (oneDNN) es una biblioteca de rendimiento multiplataforma de código abierto de componentes básicos para aplicaciones de aprendizaje profundo. La biblioteca está optimizada para procesadores de arquitectura Intel, gráficos de procesador Intel y gráficos basados en arquitectura Xe. oneDNN tiene soporte experimental para las siguientes arquitecturas:
- Brazo* Arquitectura de 64 bits (AArch64)
- GPU NVIDIA*
- OpenPOWER* Energía ISA (PPC64)
- IBMz* (s390x)
Una parte importante de Tensorflow es que se supone que es rápido. Con una instalación adecuada, funciona con CPU, GPU o TPU. Parte de ir rápido significa que usa un código diferente dependiendo de su hardware. Algunas CPU admiten operaciones que otras CPU no admiten, como la suma vectorizada (agregar varias variables a la vez). Tensorflow simplemente te dice que la versión que has instalado puede usar las operaciones AVX y AVX2 y está configurada para hacerlo de forma predeterminada en ciertas situaciones (por ejemplo, dentro de una matriz de multiplicación hacia adelante o hacia atrás), lo que puede acelerar las cosas. Esto no es un error, solo le dice que puede y aprovechará su CPU para obtener esa velocidad adicional.
Nota: AVX significa Extensiones vectoriales avanzadas.
Hice los siguientes comandos para instalar keras y tensorflow en CPU y GPU :
conda create --name py36 python==3.6.13 conda install tensorflow conda install keras conda install tensorflow-gpu conda install tensorflow-estimator==2.1.0cuando usé "verbose=0" en Model.fit() ocurrió, luego lo eliminé y se resolvió