<p>以下是我为自己的目的所做的,逻辑与<a href="https://stackoverflow.com/users/9962828/kedar-bartake">Kedar</a>的<a href="https://stackoverflow.com/questions/50344058/how-to-set-different-keras-backend-in-different-conda-environments/50931865#50931865">answer</a>相同,但在Windows安装(和Keras版本)上,其位置和文件名可能有所不同:</p>
<p><strong>1/</strong>设置a<strong>特定keras.json文件</strong>文件,在目标Python环境的文件夹中。修改“backend”值。在</p>
<p><strong>2/</strong>然后强制加载<strong>_后端.py'</strong>(一个特定于您的Python环境)来加载这个特定的keras.json文件.
另外,强制de“default backend”到您想要的同一个文件中。在</p>
<p>==========================================================</p>
<p><strong>详细信息</strong>:</p>
<p><strong>1.1</strong>打开需要特定后端的Anaconda环境文件夹。在我的例子中是C:\ProgramData\Anaconda3\envs\[MyAnacondaEnvironment]\</p>
<p><strong>1.2</strong>在这里创建一个文件夹.keras,并在该文件夹中复制或创建一个文件keras.json文件(我是从C:\Users\[MyWindowsUserProfile]\.keras复制的\keras.json文件). 在</p>
<p>现在在这个文件中,改变你想要的后端,我已经选择了'cntk'进行一些测试。文件内容现在应该如下所示:</p>
<pre><code>{
"floatx": "float32",
"epsilon": 1e-07,
"backend": "cntk",
"image_data_format": "channels_last"
}
</code></pre>
<p>文件名和位置类似于C:\ProgramData\Anaconda3\envs\[MyAnacondaEnvironment]\.keras\keras.json文件在</p>
<p><strong>2.1</strong>现在打开“加载”文件_后端.py'特定于您正在定制的环境,位于(在我的例子中)C:\ProgramData\Anaconda3\envs\[MyAnacondaEnvironment]\Lib\site packages\keras\backend</p>
<p><strong>2.2</strong>在我的Keras版本(2.3.1)中,这里的第17行到第25行,该文件通常在环境变量或当前Windows用户的帮助下,从它所在的配置文件加载后端。这就是为什么目前您的后端是跨环境的。在</p>
<p>通过强制加载来消除这个问题_后端.py'查看要直接加载到特定于环境的配置文件(步骤1.2中创建的配置文件)中的后端</p>
<p>例如,第26行_后端.py'文件(在我的例子中是第26行,在尝试自动加载配置文件之后)添加该行(并为您自己的位置自定义):</p>
<p>_keras_dir='C:\ProgramData\Anaconda3\envs\[MyAnacondaEnvironment]\.keras'##强制脚本从特定文件获取配置</p>
<p><strong>3.1</strong>然后替换(在我的例子中是第28行,在您强制使用_keras_dir path之后)默认的后端_backend='tensorflow'替换为_backend='cntk'。在</p>
<p>你应该完蛋了</p>