Keras 切换后端方式(Theano和TensorFlow)
实验室新装了keras,发现keras默认后端是tensorflow,想换回theano,看了官方文档也没搞懂,最终搞定,很简单。
中文文档的描述:keras中文文档,切换后端
其实就是在C:\Users\75538(75538是我的windos用户名字,找你对应的用户名就行)下有个文件夹.keras,里面有keras.json文件,改一下里面的内容就好了,如果没有文件夹和文件,手动创建就行。
用theano的话,keras.json写入
{ "image_dim_ordering": "th", "epsilon": 1e-07, "floatx": "float32", "backend": "theano" }
用thesorflow的话,keras.json写入
{ "image_dim_ordering": "tf", "epsilon": 1e-07, "floatx": "float32", "backend": "tensorflow" }
最后保存就可以了
补充知识:anaconda2-keras安装;keras后端修改
一、anaconda2-keras安装
在anaconda2平台下,安装keras库。记录一下,主要是我一开始觉得很简单,pip一下就行了,结果我用pip install keras安装时,就遇到了这样一个问题:ImportError: cannot import name np_utils。
解决方案:
That tutorial was written on June 9th, 2016.Keras 2 was released in March 2017. Try installing the old version, using pip installkeras==1.2.2.
总结一下就是:
1.先装上anaconda2_python2.7
2.再在anancona prompt中用 pip install keras==1.2.2 装Keras
3.spyder中输入 import Keras,检查是否安装成功
二、keras后端修改
代码用的后端是'theano',故要修改后端
将C:\Anaconda2\Lib\site-packages\keras\backend\__init__.py的line 27修改
# Default backend: TensorFlow.
#_BACKEND = 'tensorflow'
_BACKEND = 'theano'
然后,python-> import keras,检查是否修改成功。
以上这篇Keras 切换后端方式(Theano和TensorFlow)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
浅谈keras通过model.fit_generator训练模型(节省内存)
前言 前段时间在训练模型的时候,发现当训练集的数量过大,并且输入的图片维度过大时,很容易就超内存了,举个简单例子,如果我们有20000个样本,输入图片的维度是224x224x3,用float32存储,那么如果我们一次性将全部数据载入内存的话,总共就需要20000x224x224x3x32bit/8=11.2GB 这么大的内存,所以如果一次性要加载全部数据集的话是需要很大内存的. 如果我们直接用keras的fit函数来训练模型的话,是需要传入全部训练数据,但是好在提供了fit_generator,
-
使用Keras中的ImageDataGenerator进行批次读图方式
ImageDataGenerator位于keras.preprocessing.image模块当中,可用于做数据增强,或者仅仅用于一个批次一个批次的读进图片数据.一开始以为ImageDataGenerator是用来做数据增强的,但我的目的只是想一个batch一个batch的读进图片而已,所以一开始没用它,后来发现它是有这个功能的,而且使用起来很方便. ImageDataGenerator类包含了如下参数:(keras中文教程) ImageDataGenerator(featurewise_cen
-
浅谈keras2 predict和fit_generator的坑
1.使用predict时,必须设置batch_size,否则效率奇低. 查看keras文档中,predict函数原型: predict(self, x, batch_size=32, verbose=0) 说明: 只使用batch_size=32,也就是说每次将batch_size=32的数据通过PCI总线传到GPU,然后进行预测.在一些问题中,batch_size=32明显是非常小的.而通过PCI传数据是非常耗时的. 所以,使用的时候会发现预测数据时效率奇低,其原因就是batch_size太小
-
在keras中model.fit_generator()和model.fit()的区别说明
首先Keras中的fit()函数传入的x_train和y_train是被完整的加载进内存的,当然用起来很方便,但是如果我们数据量很大,那么是不可能将所有数据载入内存的,必将导致内存泄漏,这时候我们可以用fit_generator函数来进行训练. keras中文文档 fit fit(x=None, y=None, batch_size=None, epochs=1, verbose=1, callbacks=None, validation_split=0.0, validation_data=N
-
Keras 切换后端方式(Theano和TensorFlow)
实验室新装了keras,发现keras默认后端是tensorflow,想换回theano,看了官方文档也没搞懂,最终搞定,很简单. 中文文档的描述:keras中文文档,切换后端 其实就是在C:\Users\75538(75538是我的windos用户名字,找你对应的用户名就行)下有个文件夹.keras,里面有keras.json文件,改一下里面的内容就好了,如果没有文件夹和文件,手动创建就行. 用theano的话,keras.json写入 { "image_dim_ordering":
-
keras实现theano和tensorflow训练的模型相互转换
我就废话不多说了,大家还是直接看代码吧~ </pre><pre code_snippet_id="1947416" snippet_file_name="blog_20161025_1_3331239" name="code" class="python"> # coding:utf-8 """ If you want to load pre-trained weights
-
keras导入weights方式
keras源码engine中toplogy.py定义了加载权重的函数: load_weights(self, filepath, by_name=False) 其中默认by_name为False,这时候加载权重按照网络拓扑结构加载,适合直接使用keras中自带的网络模型,如VGG16 VGG19/resnet50等,源码描述如下: If `by_name` is False (default) weights are loaded based on the network's topology,
-
关于Theano和Tensorflow多GPU使用问题
我使用的是tensorflow-gpu (1.2.1)和Theano (0.9.0),2个4G显存Nvidia Quadro M2000 GPU. 1. theano: ValueError: Could not infer context from inputs THEANO_FLAGS="contexts=dev0->cuda0;dev1->cuda1,gpuarray.preallocate=0.95,mode=FAST_RUN,floatX=float32,on_unused
-
最简单纯JavaScript实现Tab标签页切换的方式(推荐)
先说一下最土的一种方法: Html: <div class="tab-head"> <h2 id="tab1" onmouseover="changeTab1()" class="selected">1</h2> <h2 id="tab2" onmouseover="changeTab2()">2</h2> <h2 id=
-
vue选项卡切换登录方式小案例
本文实例为大家分享了vue选项卡切换登录方式的具体代码,供大家参考,具体内容如下 最终效果 组件代码: <template> <div> <div class="login_warp"> <div class="loginbox fl"> <!-- 三个选项卡按钮 --> <div class="login_header"> <span @click="cur
-
python将logging模块封装成单独模块并实现动态切换Level方式
查找了很多资料,但网上给出的教程都是大同小异的,而我想将代码进一步精简,解耦,想实现如下两个目标 1. 将logging模块的初始化,配置,设置等代码封装到一个模块中: 2. 能根据配置切换logging.level, 网上给出的教程都是写死的,如果我在线上之前使用了logging.info(msg),现在想切换为logging.debug(msg)怎么办?需要能够根据配置文件中的 设置配置logging.level 两个文件: logging_class:将logging模块的初始化,配置,设
-
Keras自定义IOU方式
我就废话不多说了,大家还是直接看代码吧! def iou(y_true, y_pred, label: int): """ Return the Intersection over Union (IoU) for a given label. Args: y_true: the expected y values as a one-hot y_pred: the predicted y values as a one-hot or softmax output label:
-
keras实现VGG16方式(预测一张图片)
我就废话不多说了,大家还是直接看代码吧~ from keras.applications.vgg16 import VGG16#直接导入已经训练好的VGG16网络 from keras.preprocessing.image import load_img#load_image作用是载入图片 from keras.preprocessing.image import img_to_array from keras.applications.vgg16 import preprocess_inpu
-
springboot+dynamicDataSource动态添加切换数据源方式
目录 springboot dynamicDataSource动态添加切换数据源 1.修改初始加载的数据源map 2.此时一开始的时候就会加载数据库中的 3.但是发现新增数据源或修改数据源时无法操作 dynamicDataSource动态添加移除数据源 数据源model 切换接口 springboot dynamicDataSource动态添加切换数据源 之前有篇写了切换数据源的方法,那些可以在yml中配置固定的几个数据源进行切换后面需要新需求 在数据库实现增删改查数据源 然后连. 之前配置的就
随机推荐
- 在asp.net中操作sql server数据库的一些小技巧
- JavaScript中用于四舍五入的Math.round()方法讲解
- C#无限栏目分级程序代码分享 好东西第1/3页
- Java中的Runnable,Callable,Future,FutureTask的比较
- ASP.Net刷新页面后自动滚动到原来位置方法汇总
- 用PHP生成excel文件到指定目录
- 解决Python字典写入文件出行首行有空格的问题
- BootstrapValidator超详细教程(推荐)
- linux中 shell 历史命令记录功能
- js实现的拖动后记录轨迹并运行
- javascript怎么禁用浏览器后退按钮
- MySQL中一些优化straight_join技巧
- Android webview与js交换JSON对象数据示例
- php.ini 配置心得(上传等限制)
- PHP实现MySQL更新记录的代码
- Android数据加密之Des加密
- Android编程实现的短信编辑器功能示例
- Android自动填充短信验证码功能(demo)
- Springboot整合Dubbo教程之项目创建和环境搭建
- 使用docker创建集成服务lnmp环境