Я изменил файл JSON для keras быть следующее:Keras бэкенд JSON определяется как tensorflow, но Keras до сих пор не может найти tensorflow
{
"image_dim_ordering": "tf",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "tensorflow"
}
Но когда я запускаю следующий простой Keras учебник для нейронная сеть:
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation
from keras.optimizers import SGD
model = Sequential()
# Dense(64) is a fully-connected layer with 64 hidden units.
# in the first layer, you must specify the expected input data shape:
# here, 20-dimensional vectors.
model.add(Dense(64, input_dim=20, init='uniform'))
model.add(Activation('tanh'))
model.add(Dropout(0.5))
model.add(Dense(64, init='uniform'))
model.add(Activation('tanh'))
model.add(Dropout(0.5))
model.add(Dense(10, init='uniform'))
model.add(Activation('softmax'))
sgd = SGD(lr=0.1, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='categorical_crossentropy',
optimizer=sgd,
metrics=['accuracy'])
model.fit(X_train, y_train,
nb_epoch=20,
batch_size=16)
score = model.evaluate(X_test, y_test, batch_size=16)
Как взяты из: https://keras.io/getting-started/sequential-model-guide/
Я все еще получаю следующее сообщение об ошибке:
Using TensorFlow backend.
Traceback (most recent call last):
File "./keras_test", line 3, in <module>
from keras.models import Sequential
File "/usr/local/lib/python2.7/dist-packages/keras/__init__.py", line 2, in <module>
from . import backend
File "/usr/local/lib/python2.7/dist-packages/keras/backend/__init__.py", line 67, in <module>
from .tensorflow_backend import *
File "/usr/local/lib/python2.7/dist-packages/keras/backend/tensorflow_backend.py", line 1, in <module>
import tensorflow as tf
ImportError: No module named tensorflow
У меня нет идей относительно того, что может быть проблемой, поэтому некоторая помощь будет высоко оценена.
Первоначально я думал, что это может быть проблема с версией python. Поскольку я немного новичок в кодировании python и Linux, я устанавливал/обновлял все свои версии python, даже не думая, и я только надеюсь, что Keras будет использовать ту же версию python, что и мой бэкэнд Tensorflow (который должен быть использованным anaconda3). Оглядываясь назад, я действительно должен использовать virtualenv, но я не уверен, что это моя проблема или нет (просто пытаюсь дать как можно больше информации).
Я установил Keras с помощью:
sudo pip install keras
Если я запустить его снова, я получаю следующий результат:
Requirement already satisfied (use --upgrade to upgrade): keras in /usr/local/lib/python2.7/dist-packages
Requirement already satisfied (use --upgrade to upgrade): theano in /usr/local/lib/python2.7/dist-packages (from keras)
Requirement already satisfied (use --upgrade to upgrade): pyyaml in /usr/local/lib/python2.7/dist-packages (from keras)
Requirement already satisfied (use --upgrade to upgrade): six in /usr/local/lib/python2.7/dist-packages (from keras)
Requirement already satisfied (use --upgrade to upgrade): numpy>=1.7.1 in /usr/local/lib/python2.7/dist-packages (from theano->keras)
Requirement already satisfied (use --upgrade to upgrade): scipy>=0.11 in /usr/local/lib/python2.7/dist-packages (from theano->keras)
You are using pip version 8.1.2, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Кроме того, я 100% уверен, что моя установка Tensorflow работает, как я работать (и закодированы) некоторые примеры GPU-Cuda для этого.
Спасибо!
бежишь keras из среды Конда? что происходит при запуске python, а затем «import tensorflow»? – gidim
Когда я запускаю python и использую 'import tensorflow', я не получаю сообщений об ошибках. Все работает отлично. Я не работаю из среды conda, все на моем основном компьютере/системе.Это, как говорится, когда я делал все внутри виртуальных вещей, казалось, работал нормально (не то, что это помогает решить мою проблему, размещенную здесь), но я могу по крайней мере начать работать с keras. :/ – pche8701