您当前的位置: 首页 >  Python

Better Bench

暂无认证

  • 1浏览

    0关注

    695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Python-Tensorflow】tf.nn.conv1d()解析与使用

Better Bench 发布时间:2020-12-30 14:31:55 ,浏览量:1

1 作用

对一维数据进行卷积。一维卷积(conv1d)可以看作是二维卷积(conv2d)的简化。 二维卷积是将一个特征图在width和height两个方向上进行卷积操作,而一维卷积则只是在width或者说height一个方向上进行卷积。

2 参数解析 output = tf.nn.conv1d(value, filters, stride, padding)

value:要卷积的张量,形状是【batch, in_width, in_channels】,说白了就是[batch, 行数, 列数] ----batch 表示多少个样本 ----表示样本的宽度 ----in_channels 表示样本有多少个通道

filter :卷积的参数,形状是[filter_width, in_channels, out_channels] ----filter_width 表示与 value 进行卷积的(行数/每次) ----in_channels 表示 value 一共有多少列 = value 中的 in_channels ----out_channels 表示卷积核数目

stride :是卷积的步长

padding: ‘SAME’ 或者‘VALID表示是否边缘填充

3 举例使用
import tensorflow as tf
import numpy as np
# 定义一个矩阵a,表示需要被卷积的矩阵。
a = np.array(np.arange(1, 1 + 20).reshape([1, 10, 2]), dtype=np.float32)
# 卷积核,此处卷积核的数目为1
kernel = np.array(np.arange(1, 1 + 4), dtype=np.float32).reshape([2, 2, 1])
# 进行conv1d卷积
conv1d = tf.nn.conv1d(a, kernel, 1, 'VALID')
with tf.Session() as sess:
    # 初始化
    tf.global_variables_initializer().run()
    # 输出卷积值
    print(sess.run(conv1d))

输出 [[[ 30.] [ 50.] [ 70.] [ 90.] [110.] [130.] [150.] [170.] [190.]]]

关注
打赏
1665674626
查看更多评论
立即登录/注册

微信扫码登录

0.0421s