大家好,又见面了,我是你们的朋友全栈君。
通常我们运行TensorFlow会报告如下信息,意思是你的CPU支持AVX2指令集,但TensorFlow的二进制版本没有使用
2019-02-14 15:44:41.989265: I T:srcgithubtensorflowtensorflowcoreplatformcpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
对于有强迫症的我来说难以容忍,由于GPU GTX1050(2G)内存不够,不能用于训练,全靠CPU来训练,CPU训练是相当花时间的,于是琢磨使用AVX2指令集
要使用AVX2指令集,正规的做法是自己编译TensorFlow,刚开始我也是这么干的,各种软件下载,环境配置,各种问题解决,然后编译,这个非常耗时,在我的笔记本上大概要3-4小时,忙活完了一天都快过去了,安装后发现我的编译参数设置不对,还要重新编译,崩溃
幸好发现一个好东西,省去了这些麻烦,这个网站编译好了各种版本的TensorFlow,下载就可以使用
https://github.com/fo40225/tensorflow-windows-wheel
我使用的python 3.6,需要下载下面的版本,注意要使用avx2版本
tensorflow_gpu-1.12.0-cp36-cp36m-win_amd64.whl (cuda100cudnn73avx)
tensorflow-1.12.0-cp36-cp36m-win_amd64.whl (avx2)
cuda需要使用10.0.X
cudnn需要使用7.3.X
(X尽量选大的版本,具体安装过程就不详细说了)
可以说这种安装办法是目前最好,最省时间的办法,充分利用cpu的指令集,避免的cuda和cudnn版本的烦恼。
用pip网络安装TensorFlow,一是没有cpu优化,二是cuda和cudnn版本不清楚,会出现大量问题花大量时间
- 问题
1.msgpack版本问题
安装Keras的过程中,遇到下面错误,找不到1.21.8版的msgpack
distributed 1.21.8 requires msgpack, which is not installed.
解决办法是安装最新版
pip install msgpack
2.h5py的版本问题
执行keras-yolo的时候出现下面的警告
C:UsersxxxAppDataLocalContinuumanaconda3libsite-packagesh5py__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`. from ._conv import register_converters as _register_converters
解决办法是安装最新版
pip install –upgrade h5py
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142874.html原文链接:https://javaforall.cn