tf.keras.layers.Conv1D 学习

tf.keras.layers.Conv1D(filters=3, kernel_size=2, activation='relu',use_bias=True)

其中,filters参数表示,将输入的每一个窗口数据经过几个过滤器输出,其中每一个过滤器表示一个映射方式,定义为g(x);可以类似深度网络中每一层的维度数,原理如下图所示

tf.keras.layers.Conv1D 学习_第1张图片

kernel_size:卷积的窗口大小,由于是Cov1D,即1维卷积

一个完整句子的卷积处理过程如下:

 tf.keras.layers.Conv1D 学习_第2张图片

所以当输入一个(batch_size,token_size,embedding_size)的数据时,通过对每一个句子的token卷积 输出为:(batch_size,token_size-kernel_size+1,filters)

举例,比如一个batch下的数据,卷积过程为:

tf.keras.layers.Conv1D 学习_第3张图片

滤波器在矩阵指定方向上滑动,对应位置相乘求和

你可能感兴趣的:(tensorflow2.x,NLP,keras,tensorflow,深度学习)