关于keras.layers.Conv1D的kernel_size参数使用介绍


Posted in Python onMay 22, 2020

今天在用keras添加卷积层的时候,发现了kernel_size这个参数不知怎么理解,keras中文文档是这样描述的:

kernel_size: 一个整数,或者单个整数表示的元组或列表, 指明 1D 卷积窗口的长度。

又经过多方查找,大体理解如下:

因为是添加一维卷积层Conv1D(),一维卷积一般会处理时序数据,所以,卷积核的宽度为1,而kernel_size就是卷积核的长度了,这样的意思就是这个卷积核是一个长方形的卷积核。

补充知识:tf.layers.conv1d函数解析(一维卷积)

一维卷积一般用于处理文本,所以输入一般是一段长文本,就是词的列表

函数定义如下:

tf.layers.conv1d(
inputs,
filters,
kernel_size,
strides=1,
padding='valid',
data_format='channels_last',
dilation_rate=1,
activation=None,
use_bias=True,
kernel_initializer=None,
bias_initializer=tf.zeros_initializer(),
kernel_regularizer=None,
bias_regularizer=None,
activity_regularizer=None,
kernel_constraint=None,
bias_constraint=None,
trainable=True,
name=None,
reuse=None
)

比较重要的几个参数是inputs, filters, kernel_size,下面分别说明

inputs : 输入tensor, 维度(None, a, b) 是一个三维的tensor

None : 一般是填充样本的个数,batch_size

a : 句子中的词数或者字数

b :字或者词的向量维度

filters : 过滤器的个数

kernel_size : 卷积核的大小,卷积核其实应该是一个二维的,这里只需要指定一维,是因为卷积核的第二维与输入的词向量维度是一致的,因为对于句子而言,卷积的移动方向只能是沿着词的方向,即只能在列维度移动

一个例子:

inputs = tf.placeholder('float', shape=[None, 6, 8])
out = tf.layers.conv1d(inputs, 5, 3)

说明: 对于一个样本而言,句子长度为6个字,字向量的维度为8

filters=5, kernel_size=3, 所以卷积核的维度为3*8

那么输入6*8经过3*8的卷积核卷积后得到的是4*1的一个向量(4=6-3+1)

又因为有5个过滤器,所以是得到5个4*1的向量

画图如下:

关于keras.layers.Conv1D的kernel_size参数使用介绍

以上这篇关于keras.layers.Conv1D的kernel_size参数使用介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现对比不同字体中的同一字符的显示效果
Apr 23 Python
Python如何通过subprocess调用adb命令详解
Aug 27 Python
浅谈python中的正则表达式(re模块)
Oct 17 Python
Numpy中矩阵matrix读取一列的方法及数组和矩阵的相互转换实例
Jul 02 Python
使用python的pexpect模块,实现远程免密登录的示例
Feb 14 Python
django的model操作汇整详解
Jul 26 Python
解决Pytorch 加载训练好的模型 遇到的error问题
Jan 10 Python
python基于event实现线程间通信控制
Jan 13 Python
Python object类中的特殊方法代码讲解
Mar 06 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 Python
python实现双向链表原理
May 25 Python
Python参数传递对象的引用原理解析
May 22 #Python
Python configparser模块常用方法解析
May 22 #Python
keras中的卷积层&池化层的用法
May 22 #Python
Keras Convolution1D与Convolution2D区别说明
May 22 #Python
Python pip安装模块提示错误解决方案
May 22 #Python
keras中的backend.clip用法
May 22 #Python
Pycharm修改python路径过程图解
May 22 #Python
You might like
深入解析PHP内存管理之谁动了我的内存
2013/06/20 PHP
PHP获取短链接跳转后的真实地址和响应头信息的方法
2014/07/25 PHP
PHP处理postfix邮件内容的方法
2015/06/16 PHP
Zend Framework教程之Zend_Layout布局助手详解
2016/03/04 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
PHP下 Mongodb 连接远程数据库的实例代码
2017/08/30 PHP
laravel5.1框架基础之Blade模板继承简单使用方法分析
2019/09/05 PHP
JavaScript Base64编码和解码,实现URL参数传递。
2006/09/18 Javascript
jQuery中prevUntil()方法用法实例
2015/01/08 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
2015/03/01 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
2015/04/27 Javascript
jQuery弹出遮罩层效果完整示例
2016/09/13 Javascript
jQuery实现鼠标悬停3d菜单展开动画效果
2017/01/19 Javascript
jQuery取得元素标签名称小结(附代码)
2017/08/16 jQuery
解决IE7中使用jQuery动态操作name问题
2017/08/28 jQuery
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
jQuery序列化form表单数据为JSON对象的实现方法
2018/09/20 jQuery
vue-video-player视频播放器使用配置详解
2020/10/23 Javascript
Python实例之wxpython中Frame使用方法
2014/06/09 Python
python 根据pid杀死相应进程的方法
2017/01/16 Python
python Matplotlib画图之调整字体大小的示例
2017/11/20 Python
机器学习10大经典算法详解
2017/12/07 Python
python爬虫爬取淘宝商品信息(selenum+phontomjs)
2018/02/24 Python
Python+PyQT5的子线程更新UI界面的实例
2019/06/14 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
Django修改app名称和数据表迁移方案实现
2020/09/17 Python
Python高阶函数与装饰器函数的深入讲解
2020/11/10 Python
HTML5实现移动端点击翻牌功能
2020/10/23 HTML / CSS
StubHub意大利:购买和出售全球演唱会和体育赛事门票
2017/11/21 全球购物
大学毕业生的自我鉴定
2013/11/30 职场文书
公安机关纪律作风整顿个人剖析材料材料
2014/10/10 职场文书
晚自修旷课检讨书怎么写
2014/11/17 职场文书
幼儿园辞职书
2015/02/26 职场文书
详解Python小数据池和代码块缓存机制
2021/04/07 Python
Java新手教程之ArrayList的基本使用
2021/06/20 Java/Android
Python实现制作销售数据可视化看板详解
2021/11/27 Python