keras slice layer 层实现方式


Posted in Python onJune 11, 2020

注意的地方: keras中每层的输入输出的tensor是张量, 比如Tensor shape是(N, H, W, C), 对于tf后台, channels_last

Define a slice layer using Lamda layer
def slice(x, h1, h2, w1, w2):
 """ Define a tensor slice function
 """
 return x[:, h1:h2, w1:w2, :]

定义完slice function之后,利用lambda layer添加到定义的网络中去

# Add slice layer
slice_1 = Lambda(slice, arguments={'h1': 0, 'h2': 6, 'w1': 0, 'w2': 6})(sliced)
# As for tensorfow backend, Lambda doesn't need output shape argument
slice_2 = Lambda(slice, arguments={'h1': 0, 'h2': 6, 'w1': 6, 'w2': 12})(sliced)

补充知识:tensorflow和keras张量切片(slice)

Notes

想将一个向量keras slice layer 层实现方式 分割成两部分:keras slice layer 层实现方式 操作大概是:

keras slice layer 层实现方式

在 TensorFlow 中,用 tf.slice 实现张量切片,Keras 中自定义 Lambda 层实现。

TensorFlow

tf.slice(input_, begin, size, name=None)

input_:tf.tensor,被操作的 tensor

begin:list,各个维度的开始下标

size:list,各个维度上要截多长

import tensorflow as tf

with tf.Session() as sess:
 a = tf.constant([1, 2, 3, 4, 5])
 b = tf.slice(a, [0], [2]) # 第一个维度从 0 开始,截 2 个
 c = tf.slice(a, [2], [3]) # 第一个维度从 2 开始,截 3 个
 print(a.eval())
 print(b.eval())
 print(c.eval())

输出

[1 2 3 4 5]
[1 2]
[3 4 5]

Keras

from keras.layers import Lambda
from keras.models import Sequential
import numpy as np

a = np.array([[1, 2, 3, 4, 5]])
model = Sequential([
 Lambda(lambda a: a[:, :2], input_shape=[5]) # 第二维截前 2 个
])

print(model.predict(a))

输出

[[1. 2.]]

以上这篇keras slice layer 层实现方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用QT写一个极简单的图形化Python闹钟程序
Apr 07 Python
使用Node.js和Socket.IO扩展Django的实时处理功能
Apr 20 Python
python中查看变量内存地址的方法
May 05 Python
python向已存在的excel中新增表,不覆盖原数据的实例
May 02 Python
详解python实现识别手写MNIST数字集的程序
Aug 03 Python
使用python根据端口号关闭进程的方法
Nov 06 Python
python gdal安装与简单使用
Aug 01 Python
Python调用钉钉自定义机器人的实现
Jan 03 Python
如何基于python实现年会抽奖工具
Oct 20 Python
Python: glob匹配文件的操作
Dec 11 Python
Python中常见的反爬机制及其破解方法总结
Jun 10 Python
详解Python中__new__方法的作用
Mar 31 Python
Spring http服务远程调用实现过程解析
Jun 11 #Python
keras Lambda自定义层实现数据的切片方式,Lambda传参数
Jun 11 #Python
python怎么提高计算速度
Jun 11 #Python
Python 实现自动登录+点击+滑动验证功能
Jun 10 #Python
Python函数参数定义及传递方式解析
Jun 10 #Python
什么是python类属性
Jun 10 #Python
基于SQLAlchemy实现操作MySQL并执行原生sql语句
Jun 10 #Python
You might like
浅谈php自定义错误日志
2015/02/13 PHP
Yii2 RESTful中api的使用及开发实例详解
2016/07/06 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
如何在centos8自定义目录安装php7.3
2019/11/28 PHP
javascript事件模型代码
2007/07/01 Javascript
各种页面定时跳转(倒计时跳转)代码总结
2013/10/24 Javascript
鼠标经过子元素触发mouseout,mouseover事件的解决方案
2015/07/26 Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
2016/05/16 Javascript
DOM中事件处理概览与原理的全面解析
2016/08/16 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
React 组件转 Vue 组件的命令写法
2018/02/28 Javascript
详解js模板引擎art template数组渲染的方法
2018/10/09 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
turn.js异步加载实现翻书效果
2019/07/25 Javascript
[47:43]Alliance vs KG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
常见python正则用法的简单实例
2016/06/21 Python
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
python使用minimax算法实现五子棋
2019/07/29 Python
Flask框架 CSRF 保护实现方法详解
2019/10/30 Python
Python sklearn库实现PCA教程(以鸢尾花分类为例)
2020/02/24 Python
python访问hdfs的操作
2020/06/06 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
Python中读取文件名中的数字的实例详解
2020/12/25 Python
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
印度手工编织服装和家居用品商店:Fabindi
2019/10/07 全球购物
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
开业庆典答谢词
2014/01/18 职场文书
聚美优品广告词改编
2014/03/14 职场文书
项目合作协议书范本
2014/04/16 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
班主任师德师风自我剖析材料
2014/10/02 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书
MySQL实例精讲单行函数以及字符数学日期流程控制
2021/10/15 MySQL