keras + tensorflow 基本使用 —— backend
theano 以及 TensorFlow 是 keras 的 backend(后端支持),因此,keras 本质上是对 thenao 或者 TensorFlow 的进一步封装(wrapper)。
- keras 安装完成之后,会自动在用户 home 目录创建
.keras/keras.json
文件,用于配置 keras 的一些基本信息:"backend": "tensorflow"
- from keras.datasets import mnist ⇒ mnist.load_data(),在线下载的 mnist.npz也是在该文件夹下;
0. 查看后端
>> from keras import backend
>> backend.image_dim_ordering()
'tf'
>> backend.image_data_format()
'channels_last'
1. 内置数据集
mnist
>> from keras.datasets import mnist >> (X_train, y_train), (X_test, y_test) = mnist.load_data() >> X_train.shape (60000, 28, 28) >> y_train.shape (60000,) >> X_test.shape (10000, 28, 28) >> y_test.shape (10000,)
2. keras 下的 packages
keras.layers(对 layer 的抽象)
- from keras.layers import Input:输入层(首字母大写,是一个类,表示输入层),类构造函数接受的参数分别有,
- shape:tuple 类型,标识维度信息
- from keras.layers import Dense:全连接层,该类构造函数接收的参数分别有:
- output_dim:下一层的神经元的数目
- activation:字符串类型,默认为
'linear'
,所以一定要使用关键字参数的形式,对其进行设置;
- from keras.layers import Input:输入层(首字母大写,是一个类,表示输入层),类构造函数接受的参数分别有,
keras.models(对最终训练学习到的模型进行抽象)
- from keras.models import Model,其构造函数接受的参数分别为:
- input,输入
- output, 输出
- 很像 theano 下的
theano.function(...)
- from keras.models import Model,其构造函数接受的参数分别为:
Model 类更为重要的是其丰富的成员函数,ae = Model(input=…, output=…)
ae.compile(),参数列表主要有:
- optimizer:字符串类型,
adam
/...
- loss:字符串类型,
mse
/...
- optimizer:字符串类型,
ae.fit(),用于正式的训练,参数列表主要有:
- x, y:输入和输出,比如对于自编码器,x 和 y 是一致的;
- shuffle:是否 shuffle 数据
ae.predict():对单个的样本进行预测;
3. 网络搭建
from keras.models import Sequential
from keras.layers import Embedding, SimpleRNNmodel = Sequential()
model.add(Embedding(10000, 32))
model.add(SimpleRNN(32))#
model.summary()
model.pop()# 移除最后添加的层
- model.pop():移除最后添加的层
- model.output_shape:查看输出层(也即最后添加的层)的大小;
references
- Keras FAQ: 常见问题解答
keras + tensorflow 基本使用 —— backend相关推荐
- DL之CNN:基于CNN-RNN(GRU,2)算法(keras+tensorflow)实现不定长文本识别
DL之CNN:基于CNN-RNN(GRU,2)算法(keras+tensorflow)实现不定长文本识别 目录 输出结果 实现代码 输出结果 后期更新-- 实现代码 后期更新-- image_ocr代 ...
- Keras TensorFlow教程:如何从零开发一个复杂深度学习模型
Keras 是提供一些高可用的 Python API ,能帮助你快速的构建和训练自己的深度学习模型,它的后端是 TensorFlow 或者 Theano .本文假设你已经熟悉了 TensorFlow ...
- 【前沿】何恺明大神ICCV2017最佳论文Mask R-CNN的Keras/TensorFlow/Pytorch 代码实现
我们提出了一个概念上简单.灵活和通用的用于目标实例分割(object instance segmentation)的框架.我们的方法能够有效地检测图像中的目标,同时还能为每个实例生成一个高质量的分割掩 ...
- Keras TensorFlow 混编中 trainable=False设置无效
Keras TensorFlow 混编中 trainable=False设置无效 这是最近碰到一个问题,先描述下问题: 首先我有一个训练好的模型(例如vgg16),我要对这个模型进行一些改变,例如添加 ...
- 菜尼奥排错之keras ‘tensorflow.compat.v2.__internal__‘ has no attribute ‘register_clear_session_function‘
环境版本: Ubuntu 16.04.2 LTS Nvidia GeForce RTX 3080*2 CUDA Version 11.2 tensorflow 2.5.0 keras 2.7.0 报 ...
- Keras TensorFlow教程:使用自己的数据集进行训练
大多数Keras教程都尝试使用图像分类数据集(如MNIST(手写识别)或基本对象CIFAR-10(基本对象识别))来开启Keras库的基础知识学习. 这篇文章将对Keras入门教程进行不同的尝试.使用 ...
- 使用Keras/TensorFlow模型构建属于你的Chatbot API
很多人认为,构建自己的聊天机器人(或助手)并不复杂.各种聊天机器人平台正在使用分类模型来识别用户意图.显然,在现有平台上构建聊天机器人时,会得到强有力的提升.为什么不自己使用类似的模型,构建一个独属于 ...
- Ubuntu18.04安装keras(tensorflow)从无到有实录
今天演示一下在Ubuntu18.04上安装keras (后端tensorflow CPU版本)的过程. 整个过程我们在云上安装. 部署云主机 随便找一家云服务提供商,国内有阿里,腾讯,百度,金山,京东 ...
- keras/tensorflow 模型保存后重新加载准确率为0 model.save and load giving different result
我在用别人的代码跑程序的时候遇到了这个问题: keras 模型保存后重新加载准确率为0 GitHub上有个issue:model.save and load giving different resu ...
最新文章
- 未来货运:无人驾驶技术和卡车司机如何配合?
- 端口扫描器——ZenmapKail Linux渗透测
- Visual C#创建Windows服务程序
- matlab中有哪些有趣的命令?好玩的matlab彩蛋
- iOS native集成Weex js文件 不显示提示框问题
- python 默认参数_避坑指南!Python里面的这九个坑,坑的就是你!
- matlab如何绘制传递函数对数幅频特性_开环传递函数是怎样影响系统的?重要参量1/(1+T)与T/(1+T)的释义...
- 三大超算军团加速布局 中科曙光E级超算预研项目正式启动
- destools php_php DES加密算法实例分析
- vue指令02---自动获取焦点(全局自定义指令Vue.directive())和全局过滤器Vue.filter() 的学习...
- 您需要计算机管理员权限,安装需要管理员权限,教您怎么设置安装软件需要管理员权限...
- python超市管理系统流程图_python实现超市管理系统(后台管理)
- 数据索引---Solr DIH
- 二手MacBook笔记本回收数量的提升,也是用户环保意识的增强
- Fiddler抓包工具保姆级使用教程(超详细)
- 黑马在线教育数仓实战1
- 服务器的虚拟盘符,服务器虚拟内存更改盘符
- 【Win11尝鲜】Win 11设置任务栏图标靠左或居中显示
- VS编译出错:未能找到类型,未能加载基类
- 万恶的高强度文件夹加密大师破解之笨办法
热门文章
- python常用模块一览表_python 常用模块
- php 字符串表示,php:字符串(string)数据类型实例详解
- 页面报错500是什么意思_解决方案:品牌备案后,上传产品报错5461,A+页面报错...
- Vertica系列:数仓优化
- epoll编程实例客户端_深入底层探析网络编程之多路复用器(select,poll,epoll)
- Python 之 异常
- spring配置数据源错误记录
- python中input和raw_input的区别
- TensorFlow精进之路(九):TensorFlow编程基础
- VS2017+Opencv3.3+Opencv_contribute编译