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)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
浅谈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训练模型(节省内存)
前言 前段时间在训练模型的时候,发现当训练集的数量过大,并且输入的图片维度过大时,很容易就超内存了,举个简单例子,如果我们有20000个样本,输入图片的维度是224x224x3,用float32存储,那么如果我们一次性将全部数据载入内存的话,总共就需要20000x224x224x3x32bit/8=11.2GB 这么大的内存,所以如果一次性要加载全部数据集的话是需要很大内存的. 如果我们直接用keras的fit函数来训练模型的话,是需要传入全部训练数据,但是好在提供了fit_generator,
-
在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中的ImageDataGenerator进行批次读图方式
ImageDataGenerator位于keras.preprocessing.image模块当中,可用于做数据增强,或者仅仅用于一个批次一个批次的读进图片数据.一开始以为ImageDataGenerator是用来做数据增强的,但我的目的只是想一个batch一个batch的读进图片而已,所以一开始没用它,后来发现它是有这个功能的,而且使用起来很方便. ImageDataGenerator类包含了如下参数:(keras中文教程) ImageDataGenerator(featurewise_cen
-
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中配置固定的几个数据源进行切换后面需要新需求 在数据库实现增删改查数据源 然后连. 之前配置的就
随机推荐
- 利用xcopy命令实现本地文件复制到远程服务器的方法
- Java并发编程示例(四):可控的线程中断
- iOS应用设计模式开发中职责链(责任链)模式的实现解析
- JS简单的轮播的图片滚动实例
- ASP.net 验证码实现代码(C#)
- php url路由入门实例
- ThinkPHP3.2.2的插件控制器功能
- Android之自定义实现BaseAdapter(通用适配器二)
- Linux下MySQL5.7.18二进制包安装教程(无默认配置文件my_default.cnf)
- React-Native TextInput组件详解及实例代码
- js图片实时加载提供网页打开速度
- JavaScript中的ajax功能的概念和示例详解
- CMD进入控制面板的命令小结
- 你不需要jQuery(三) 新AJAX方法fetch()
- SpringMVC实现文件下载功能
- 浅谈Java中的atomic包实现原理及应用
- vue自动化表单实例分析
- vue的for循环使用方法
- Linux初始化系统盘后重新挂载数据盘方法
- Java线程让步yield用法实例分析
