#python #tensorflow #keras #tensorflow2.0
#python #tensorflow #keras #tensorflow2.0
Вопрос:
Это мой первый пост, надеюсь, функция форматирования кода, когда нет, извините! Я делал первые шаги с tensorflow около 5 недель. Теперь я хочу попробовать tensorflow 2.0. Я знаю, что могу работать с 1.13. Но просто хочу запустить 2.0.
Что я сделал, установил tensorflow alpha:
pip install tensorflow==2.0.0-alpha0
Хорошо, также cuda 10., но я не дошел до того момента, когда cuda необходим. Теперь это выглядит так :
(tensor) schattenzeit@schattenzeit-GP62-2QE:~/venv$ pip list
Package Version
-------------------- --------------------
absl-py 0.7.1
astor 0.7.1
enum34 1.1.6
gast 0.2.2
google-pasta 0.1.5
grpcio 1.20.0
h5py 2.9.0
Keras 2.2.4
Keras-Applications 1.0.7
Keras-Preprocessing 1.0.9
Markdown 3.1
matlab 0.1
mock 2.0.0
numpy 1.16.2
pandas 0.24.2
pandas-ml 0.6.1
pbr 5.1.3
pip 19.0.3
protobuf 3.7.1
python-dateutil 2.8.0
pytz 2019.1
PyYAML 5.1
scipy 1.2.1
setuptools 41.0.0
six 1.12.0
tb-nightly 1.14.0a20190301
tensorflow-gpu 2.0.0a0
termcolor 1.1.0
tf-estimator-nightly 1.14.0.dev2019030115
Werkzeug 0.15.2
wheel 0.33.1
wrapt 1.11.1
Но когда я хочу сделать небольшую выборку с помощью tensorflow 2.0, я всегда получаю ошибку из-за keras. Просто, когда я хочу загрузить данные mist, или, например
model = tf.keras.models.Sequential()
Ошибка всегда
Неопределенная переменная из входных данных: keras
Где keras?? Код не является ракетостроением, только тестовый запуск кода, может быть, глупо ставить здесь, на форуме, правильные вкладки.
import datetime
from datetime import datetime , timedelta
from dateutil import relativedelta
from keras.layers import Dense,Conv2D, Flatten, MaxPooling2D, Dropout
from pandas_ml import ConfusionMatrix
from tensorflow.python.client import device_lib
import tensorflow as tf
if __name__ == '__main__':
print (tf.version)
# shows always Undefined variable from input:keras
mnist = tf.keras.datasets.mnist
'''
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Conv2D(30,kernel_size=(3,3), activation="relu",input_shape=(28,28,1) ))
model.add(tf.keras.layers.MaxPool2D(pool_size=(2,2)) ) # , strides, padding, data_format))
'''
Как вы видите здесь, используется 2.0, но не может быть запущен из-за ошибки Undefined variable from input:keras
.
print(tf.version)
Показывает, что tensorflow 2.0 существует:
Большое спасибо. проверьте также
import datetime
from datetime import datetime , timedelta
from dateutil import relativedelta
import gzip
import zipfile
import numpy as np
from keras.utils import to_categorical
from keras.layers import Dense,Conv2D, Flatten, MaxPooling2D, Dropout
from pandas_ml import ConfusionMatrix
from tensorflow.python.client import device_lib
import tensorflow as tf
if __name__ == '__main__':
print (tf.version)
# shows always Undefined variable from input:keras
mnist = tf.keras.datasets.mnist
'''
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Conv2D(30,kernel_size=(3,3), activation="relu",input_shape=(28,28,1) ))
model.add(tf.keras.layers.MaxPool2D(pool_size=(2,2)) ) # , strides, padding, data_format))
'''
Я ожидаю, что, например model = tf.keras.models.Sequential()
, это не закончится ошибкой Undefined variable from input:keras
.
Комментарии:
1. Возможно, эта ошибка вызвана импортом обычного Keras и использованием tf.keras
Ответ №1:
Ваш код смешивает версию Keras TensorFlow (которая была установлена с tensorflow-2.0) и автономный Keras. Измените свои входные данные с:
from keras.utils import to_categorical
from keras.layers import Dense,Conv2D, Flatten, MaxPooling2D, Dropout
Для
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.layers import Dense,Conv2D, Flatten, MaxPooling2D, Dropout