Relacionado: O módulo de contribuição Import TensorFlow é lento no TensorFlow 1.2.1 também: O que pode fazer com que a importação do TensorFlow seja tão lenta?
Estou usando um ssd e importando TensorFlow. Tenho 4 ghz 8 núcleos pc com 16 gb de ram (Processador AMD FX (tm) -8350 Processador de oito núcleos, 4000 Mhz, 4 núcleos, 8 processadores lógicos). O TensorFlow leva de 10 a 12 segundos para importar.
Existe alguma maneira de importar seletivamente partes do TensorFlow?
Um disco RAM ajudaria?
Há mais trabalho sendo feito em coisas como esta ou: Devagar para importar o tensorflow.contrib com o Python 3 porque o inspect.stack é lento # 11829 ?
Edit: Python 3.6.8 :: Anaconda, Inc. na versão 8.1. Dos caixa, cygwin bash são lentos em 12 segundos. Vs código bash / power shell é mais rápido em 8 segundos. Importando em um arquivo .py como: importor tensorflow como tf. Não tenho certeza do que são ambientes.
Edição 2:
PS D:\ray\dev\ml\ss1> conda info --envs
# conda environments:
#
base * D:\Anaconda3
first D:\Anaconda3\envs\first
d:\Anaconda3
first d:\Anaconda3\envs\first
Edit 3: Usando o código abaixo, recebo 9-10 segundos em um prompt de comando:
(tf2) D:\ray\dev\ml\ss1>python timeimport.py
import tensorflow: 1 units, 9.796 seconds. 0.1 units/second.
version: 2.0.0
(tf2) D:\ray\dev\ml\ss1>python timeimport.py
import tensorflow: 1 units, 9.448 seconds. 0.11 units/second.
version: 2.0.0
(tf2) D:\ray\dev\ml\ss1>python timeimport.py
import tensorflow: 1 units, 9.421 seconds. 0.11 units/second.
version: 2.0.0
from __future__ import absolute_import, division, print_function, unicode_literals
from contextlib import contextmanager
from timeit import default_timer as timer
@contextmanager
def timing(description: str,units=1,title="",before="") -> None:
if before!="":
print(before,flush=True)
start = timer()
yield
dt = timer() - start
frequency=0 if units is None else (units/dt)
if units is None:
if title is None: print(f"{description}: {dt} seconds.",flush=True)
else: print(f"{title} {description}: {dt} seconds.",flush=True)
else:
#"{0:.2f}".format(a)
dt=round(dt,3)
frequency=round(frequency,2)
print(f"{title} {description}: {str(units)} units, {dt} seconds. {str(frequency)} units/second.",flush=True)
return dt
with timing("import tensorflow",1):
import tensorflow as tf
print("version:",tf.__version__)
Editar 4: viragem do Windows Degender, recebo 8-9 segundos em vez de 9-10 segundos.
fonte
Respostas:
Quero começar dizendo que estou usando um quad core de 3 Ghz e não demorou quase dez segundos para importar o TensorFlow em Python. Você poderia elaborar em qual ambiente está tendo problemas para importá-lo (por exemplo, Windows / Mac / Linux no terminal / console / prompt de comando / Anaconda etc.)? Você não especificou como está tentando importar o Tensorflow, mas considerando que o marcou com python-3.x, suponho que você esteja importando o Tensorflow com o Python. Tenho certeza de que essa não será uma resposta popular, mas talvez considere usar o Tensorflow com uma linguagem compilada como c ++. É sabido que linguagens interpretadas como Python são consideravelmente mais lentas que linguagens compiladas e se a velocidade é primordial, parece óbvio usar o TensorFlow em sua língua nativa.
fonte