Добрый день!
Помогите, пожалуйста, установить библиотеку tensorflow. Я ввожу: pip install tensorflow, выдает ошибку (пишет, что отказано в доступе, см скрин)
Соответственно, когда пытаюсь ее импортировать, пишет, что нет такого модуля
P.s. остальные библиотеки устанавливаются нормально, проблемы возникли только с этой
Да, из-под администратора. Я ввел такую строку: py -3.6 -m pip install --user tensorflow
Пишет, что успешно установлено, но когда пытаюсь импортировать все равно выдает ошибку
Я запустил терминал от имени администратора (до этого было не от администратора, как я понял), но результат тот же: вроде как все установилось, но импортировать не получается.
Раньше ошибка при импортировании была такая:
from google.protobuf.pyext import _message
ImportError: DLL load failed: Не найдена указанная процедура.
(я уставил отдельно библиотеку google, но не помогло)
Потом стала такая:
from tensorflow.core.framework.graph_pb2 import *
ModuleNotFoundError: No module named ‘tensorflow.core.framework.graph_pb2’
То есть получается, что некоторые подмодули почему-то не установились
Сейчас попробую виртуальную среду создать, хотя не знаю связана ли проблема как-то с этим
Не понял, пятый пост - это что?
Я делал в точности как здесь https://www.tensorflow.org/install/pip
То есть, создал виртуальную среду и установил tf в нее, но при импорте все то же самое:
from google.protobuf.pyext import _message
ImportError: DLL load failed: Не найдена указанная процедура.
(venv) Alex@DESKTOP-6F8AV6C C:\Users\Alex\tensorflow
$ python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
2020-05-24 12:35:17.980955: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found
2020-05-24 12:35:18.019864: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
>>> mnist = tf.keras.datasets.mnist
>>>
>>> (x_train, y_train),(x_test, y_test) = mnist.load_data()
>>> x_train, x_test = x_train / 255.0, x_test / 255.0
>>>
>>> model = tf.keras.models.Sequential([
... tf.keras.layers.Flatten(input_shape=(28, 28)),
... tf.keras.layers.Dense(128, activation='relu'),
... tf.keras.layers.Dropout(0.2),
... tf.keras.layers.Dense(10, activation='softmax')
... ])
2020-05-24 12:35:20.303471: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'nvcuda.dll'; dlerror: nvcuda.dll not found
2020-05-24 12:35:20.335347: E tensorflow/stream_executor/cuda/cuda_driver.cc:313] failed call to cuInit: UNKNOWN ERROR (303)
2020-05-24 12:35:20.362820: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:169] retrieving CUDA diagnostic information for host: DESKTOP-6F8AV6C
2020-05-24 12:35:20.390290: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:176] hostname: DESKTOP-6F8AV6C
2020-05-24 12:35:20.413426: I tensorflow/core/platform/cpu_feature_guard.cc:143] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
2020-05-24 12:35:20.463660: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x27e0892d9f0 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-05-24 12:35:20.503857: I tensorflow/compiler/xla/service/service.cc:176] StreamExecutor device (0): Host, Default Version
>>>
>>> model.compile(optimizer='adam',
... loss='sparse_categorical_crossentropy',
... metrics=['accuracy'])
>>>
>>> model.fit(x_train, y_train, epochs=5)
Epoch 1/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2987 - accuracy: 0.9127
Epoch 2/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.1485 - accuracy: 0.9551
Epoch 3/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.1093 - accuracy: 0.9669
Epoch 4/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.0912 - accuracy: 0.9722
Epoch 5/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.0779 - accuracy: 0.9759
<tensorflow.python.keras.callbacks.History object at 0x0000027E05D39F48>
>>> model.evaluate(x_test, y_test)
313/313 [==============================] - 0s 911us/step - loss: 0.0859 - accuracy: 0.9734
[0.0858759731054306, 0.9733999967575073]
ЗЫ заметил, что в этой вин 10 python3 зачем-то открывает какую-то заглушку Майкрософта открывающую их магазин (если запустить без параметров, если с параметрами, то оно тупо ничего не выводит )
In short, if the screen shows a dollar sign ($) or hash (#) on the left of the blinking cursor, you are in the command line environment.
$, #, % symbols indicate the user account type you are logged in to.
Dollar sign ($) means you are a normal user.
hash (#) means you are the system administrator (root).
In the C shell, the prompt ends with percentage sign (%).
There are differences on prompts in different Unix or GNU/Linux distributions because of their default settings. For example, the prompt of Debian/Ubuntu is guest@linux:~$, the one of Fedora/CentOS/RedHat is [guest@linux ~]$ and the one of SuSE Linux/OpenSUSE is guest@linux:~>. In general, the prompt usually show the login user name, machine hostname and current working directory and ended with a dollar ($), percentage (%) or hash (#) sign.
guest@linux:~$
guest - username: the user account you are logged in to.
linux - machine hostname: the machine you are operating.
~ - current working directory: the directory you are in. Tilde (~) means home directory, i.e. the default directory when first logging in.
Может быть имеются в виду последние патч версии.
Для Питона 3.6 это сейчас 3.6.10.
По той ссылке же написано
Updating from python 3.6.0 to python 3.6.1 fixed this issue for me.
Вообще сидеть на старых версиях обычно смысла нет, особенно на этапе обучения/экспериментов. Лучше брать последнюю стабильную ветку (сейчас 3.8.х), чтобы иметь больше удобств.