谢邀。
1. 一维向量,当然可以作为CNN的输入。这时,你需要使用一维CNN。
2. 最典型的一维输入,是语音。建议你去查一些语音模型,比如wavenet,就用到了一维卷积。
一维卷积的原理,可用下面的图来说明:
假设我们有一个待卷积序列(左边) 。 有一个1×5的卷积核。 如果我们的步长为1,则卷积的过程是:
下面,我们阅读wavenet网络的基础代码,注意其中的conv1d函数,这里就是用的一维卷积哦。不过,这个函数也是调用系统的Conv1D函数来实现的。更多的,就得要你去跑代码体验啦。
# 定义训练参数和模型结构并开始训练
epochs = 50
num_blocks = 3
filters = 128 # 128个卷积核
X = Input(shape=(None, mfcc_dim,), dtype=’float32′, name=’X’) # 输入的音频的那个
Y = Input(shape=(None,), dtype=’float32′, name=’Y’) # 输入的是所对应的汉字
X_length = Input(shape=(1,), dtype=’int32′, name=’X_length’)
Y_length = Input(shape=(1,), dtype=’