环境配置:

系统:win10

1、安装 Anaconda,安装教程请自行百度。这里我使用的版本是:

C:\Users\HaiBin>conda --version
conda 4.8.3

2、安装python

C:\Users\HaiBin>python --version
Python 3.7.6

3、在查找中,输入Anaconda Prompt命令,并运行它。

运行后

准备工作到这里,基本完成,接下来,安装TensorFlow2和Keras。

安装TensorFlow2

1、在Anaconda prompt窗口输入下面的命令,创建一个环境

(base) C:\Users\HaiBin>conda create -n tf2 python=3.7.6

这是新建一个名为tf2,并且python版本是3.7.6的一个环境

2、切换到刚刚创建的tf2环境中,准备安装TensorFlow2,输入如下命令:

(base) C:\Users\HaiBin>conda activate tf2

3、安装TensorFlow2

(tf2) C:\Users\HaiBin>pip install tensorflow==2.0.0

安装Keras

1、安装Keras前,先依次安装下面的这个库

(tf2) C:\Users\HaiBin>conda install mingw libpython
(tf2) C:\Users\HaiBin>pip install theano

2、最后安装keras

(tf2) C:\Users\HaiBin>pip install keras==2.3.1

注意:keras一定要和你的TensorFlow版本匹配,因为我安装的TensorFlow是2.0.0版本,与它对应的是keras2.3.1

以上命令均在Anaconda prompt窗口中完成,否则有可能安装不成功。

测试

运行python,输入import keras回车后,结果出来Using TensorFlow backend.表示TensorFlow安装成功。

(tf2_keras) C:\Users\HaiBin>python
Python 3.7.6 (default, Jan  8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import keras
Using TensorFlow backend.
>>>

接下来,需要将上面新建的环境配置到pycharm中

PyCharm配置

1、创建一个新的项目,如下图:

 到始,TensorFlow2和Keras已经成功安装完成了。

来段代码测试,试一试:

from keras.datasets import mnist
from keras.utils import to_categorical

train_X, train_y = mnist.load_data()[0]
train_X = train_X.reshape(-1, 28, 28, 1)
train_X = train_X.astype('float32')
train_X /= 255
train_y = to_categorical(train_y, 10)

from keras.models import Sequential
from keras.layers import Conv2D, MaxPool2D, Flatten, Dropout, Dense
from keras.losses import categorical_crossentropy
from keras.optimizers import Adadelta

model = Sequential()
model.add(Conv2D(32, (5,5), activation='relu', input_shape=[28, 28, 1]))
model.add(Conv2D(64, (5,5), activation='relu'))
model.add(MaxPool2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dropout(0.5))
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(10, activation='softmax'))

model.compile(loss=categorical_crossentropy,
             optimizer=Adadelta(),
             metrics=['accuracy'])

batch_size = 100
epochs = 8
model.fit(train_X, train_y,
         batch_size=batch_size,
         epochs=epochs)

test_X, test_y = mnist.load_data()[1]
test_X = test_X.reshape(-1, 28, 28, 1)
test_X = test_X.astype('float32')
test_X /= 255
test_y = to_categorical(test_y, 10)
loss, accuracy = model.evaluate(test_X, test_y, verbose=1)
print('loss:%.4f accuracy:%.4f' %(loss, accuracy))

运行结果:

 

安装Keras时,遇到一些小Bug,最后贴出解决方法,报错如下:

TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

这说明我们使用的protobuf库的版本高了,可以卸载已经安装过的protobuf 版本,再安装3.20.x以下的版本,我们可以使用3.19.0版本即可,命令如下:

1、卸载protobuf 已经安装的版本

 (tf2) C:\Users\HaiBin>pip uninstall protobuf

2、安装3.19.0版本

(tf2) C:\Users\HaiBin>pip install protobuf==3.19.0

3、测试keras是否安装成功

(tf2) C:\Users\HaiBin>python
 Python 3.7.6 (default, Jan  8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
 Type "help", "copyright", "credits" or "license" for more information.
 >>> import keras
 Using TensorFlow backend.
 >>>

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐