python - mac - no matching distribution found for tensorflow
TensorFlow versión 1.0.0-rc2 en Windows: "OpKernel(''op:" BestSplits "device_type:" CPU "'') para operación desconocida: BestSplits" con código de prueba (4)
Es posible que pueda suprimir el filtro de advertencia en el nivel 2. Esto funcionó para mí con TensorFlow 1.0.1 en una instalación virtualenv.
os.environ [''TF_CPP_MIN_LOG_LEVEL''] = ''2''
Sry sobre la respuesta adicional, pero no soy digno de comentar.
Instalé TensorFlow versión 1.0.0-rc2 en Windows 7 SP1 x64 Ultimate (Python 3.5.2 | Anaconda personalizado (64 bits)) usando:
pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0rc2-cp35-cp35m-win_amd64.whl
Cuando intento ejecutar el script de prueba desde https://web.archive.org/web/20170214034751/https://www.tensorflow.org/get_started/os_setup#test_the_tensorflow_installation en Eclipse 4.5 o en la consola:
import tensorflow as tf
print(''TensorFlow version: {0}''.format(tf.__version__))
hello = tf.constant(''Hello, TensorFlow!'')
sess = tf.Session()
print(sess.run(hello))
Obtengo un mensaje de error:
TensorFlow version: 1.0.0-rc2
''Hello, TensorFlow!''
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflob
w/core/framework/op_kernel.cc:943] OpKernel (''op: "BestSplits" device_type: "CPU"'') for unknown op: BestSplits
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "CountExtremelyRandomStats" device_type: "CPU"'') for unknown op: CountExtremelyRandomStats
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "FinishedNodes" device_type: "CPU"'') for unknown op: FinishedNodes
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "GrowTree" device_type: "CPU"'') for unknown op: GrowTree
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "ReinterpretStringToFloat" device_type: "CPU"'') for unknown op: ReinterpretStringToFloat
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "SampleInputs" device_type: "CPU"'') for unknown op: SampleInputs
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "ScatterAddNdim" device_type: "CPU"'') for unknown op: ScatterAddNdim
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "TopNInsert" device_type: "CPU"'') for unknown op: TopNInsert
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "TopNRemove" device_type: "CPU"'') for unknown op: TopNRemove
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "TreePredictions" device_type: "CPU"'') for unknown op: TreePredictions
E c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/framework/op_kernel.cc:943] OpKernel (''op: "UpdateFertileSlots" device_type: "CPU"'') for unknown op: UpdateFertileSlots
¿Por qué?
No tuve tales problemas con TensorFlow 0.12.1 (instalado con
pip install tensorflow==0.12.1
):
TensorFlow version: 0.12.1
b''Hello, TensorFlow!''
Instalación de la compilación nocturna actual (versión de CPU):
pip install --upgrade http://ci.tensorflow.org/view/Nightly/job/nightly-win/85/DEVICE=cpu,OS=windows/artifact/cmake_build/tf_python/dist/tensorflow-1.0.0rc2-cp35-cp35m-win_amd64.whl
solucionó el problema (no más
“OpKernel (''op: ”BestSplits“ device_type: ”CPU“'') for unknown op: BestSplits”
etc.).
Ahora hay algunas advertencias de SSE:
TensorFlow version: 1.0.0-rc2
b''Hello, TensorFlow!''
2017-02-15 19:56:22.688266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.688266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.689266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.689266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.689266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2017-02-15 19:56:22.689266: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
en cuyo caso puede intentar ¿Cómo compilar Tensorflow con SSE4.2 y las instrucciones AVX?
TensorFlow 1.0.0 se lanzó hace unos días. Sin embargo, tiene el mismo problema. Una compilación nocturna más reciente tiene diferentes advertencias :
sess = tf.Session()
2017-02-17 13:01:59.790943: W c:/tf_jenkins/home/workspace/nightly-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
FYI: Tensorflow macOS binary, compilado con SSE4.1, SSE4.2 y optimizaciones AVX.
Para ocultar las advertencias / errores, puede
use
os.environ[''TF_CPP_MIN_LOG_LEVEL''] = ''3''
, por ejemplo:
import tensorflow as tf
import os
os.environ[''TF_CPP_MIN_LOG_LEVEL''] = ''3''
print(''TensorFlow version: {0}''.format(tf.__version__))
hello = tf.constant(''Hello, TensorFlow!'')
sess = tf.Session()
print(sess.run(hello))
TF_CPP_MIN_LOG_LEVEL
:
-
0
: se muestran todos los registros (esa es la configuración predeterminada) -
1
: filtrar registros de información -
2
: además filtra los registros deWARNING
-
3
: además filtra los registros deERROR
.
Parece que el problema se solucionó en la versión 1.1.0rc0 y posteriores.
Encuentra la última versión de tensorflow:
pip search --version tensorflow
Actualizar tensorflow:
pip install --upgrade tensorflow==1.1.0rc1
Refiriéndome a las sugerencias anteriores, creo que hacer 2 pasos es útil:
Primero, actualice el tensorflow:
pip install --upgrade tensorflow==1.1.0rc1
luego, los registros de errores cambian a registros de advertencia:
W c:/tf_jenkins/home/workspace/release-win/device/cpu/os/windows/tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn''t compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
En segundo lugar, puede suprimir el filtro de advertencia en el nivel 2.
os.environ[''TF_CPP_MIN_LOG_LEVEL''] = ''2''
Creo que funciona bien sin filtrar los registros de "error".