1. 程式人生 > 程式設計 >keras的backend 設定 tensorflow,theano操作

keras的backend 設定 tensorflow,theano操作

win7 系統環境安裝步驟:

1.首先是安裝Python,建議安裝anaconda

2.安裝完anaconda後開啟anaconda promp命令列promp,輸入conda list.

可以看到已經安裝的庫以及版本等資訊,注意此時沒有keras.

3.通過 conda install keras 或 pip install keras 直接安裝。(會預設的給你安裝keras最新版本和所需要的theano)

4.安裝完成之後,就可以開啟notebook,輸入import keras 檢查是否成功。

5.因為windows版本的tensorflow剛剛才推出,所以目前支援性不太好。

但是keras的backend 同時支援tensorflow和theano.

並且預設是tensorflow,因此在win本上需要更改backend為theano才能執行。

這是官網的配置文件:點選開啟連結

如果已經執行過一次Keras,你將在下面的目錄下找到Keras的配置檔案:~/.keras/keras.json

如果該目錄下沒有該檔案,你可以手動建立一個

將檔案的預設配置如下:

C:\Users\Administrator>python
Python 2.7.12 |Anaconda 4.2.0 (64-bit)| (default,Jun 29 2016,11:07:13) [MSC v.1500 64 bit (AMD64)] on win32
Type "help","copyright","credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import keras
Using TensorFlow backend.
Traceback (most recent call last):
 File "<stdin>",line 1,in <module>
 File "C:\Anaconda2\lib\site-packages\keras\__init__.py",line 2,in <module>
 from . import backend
 File "C:\Anaconda2\lib\site-packages\keras\backend\__init__.py",line 68,in <module>
 from .tensorflow_backend import *
 File "C:\Anaconda2\lib\site-packages\keras\backend\tensorflow_backend.py",in <module>
 import tensorflow as tf
ImportError: No module named tensorflow
>>> import keras
Using Theano backend.
WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to execute optimized C-implementations (for both CPU and GPU) and will default to Python implementations. Performance will be severely degraded. To remove this warning,set Theano flags cxx to an empty string.

方法一:將C:\Anaconda2\Lib\site-packages\keras\backend\__init__.py的line 27修改

# Default backend: TensorFlow.
#_BACKEND = 'tensorflow'
_BACKEND = 'theano'

然後,python-> import keras

方法二: 出現 tensorflow提示錯誤的話,需要修改下面的位置的內容

C:\Users\Administrator\.keras\keras.json
{
"image_dim_ordering":"tf","epsilon":1e-07,"floatx":"float32","backend":"tensorflow"
}

{
 "image_dim_ordering": "tf","epsilon": 1e-07,"floatx": "float32","backend": "theano"
}

補充知識:keras修改backend.py,完成永久配置tensorflow-gpu呼叫方式

編寫keras程式中出現了GPU的記憶體問題,需要調節keras預設的tensorflow設定引數,每次都必須單獨設定gpu選項比較麻煩,可以設定keras下的tensorflow_backend.py實現永久配置keras。

本人的配置:ubuntu18.04+cuda10.0+cuda7.5.1+MX150+tensorflow-gpu1.13.1

初始設定中出現記憶體錯誤。

keras依賴的config檔案位置

keras的配置檔案在linux下在如下的地址中,在使用者賬戶下的隱藏資料夾中.

// 一般的安裝位置

~/.local/lib/python2.7/site-packages/keras/backend

使用檔案編輯器(vim,vi,nano等)開啟tensorflow_backend.py檔案

// 一般在檔案的180行左右,修改為如下
...
else:
    if _SESSION is None:
      if not os.environ.get('OMP_NUM_THREADS'):
        config = tf.ConfigProto(allow_soft_placement=True)
        config.gpu_options.allow_growth=True
        config.gpu_options.per_process_gpu_memory_fraction=0.9
      else:
        num_thread = int(os.environ.get('OMP_NUM_THREADS'))
        config = tf.ConfigProto(intra_op_parallelism_threads=num_thread,allow_soft_placement=True)
        config.gpu_options.allow_growth=True
        config.gpu_options.per_process_gpu_memory_fraction=0.9
      _SESSION = tf.Session(config=config)
    session = _SESSION
  ...

以上這篇keras的backend 設定 tensorflow,theano操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。