我正在Keras与convolutional layers一起工作,并发现了这个出色的question。我假设以下代码:
%load
将创建5个过滤器,每个过滤器的大小为4。因此,如果我的(1-D)输入如下所示:
model.add(Conv1D(filters=5, kernel_size=4, padding='same', activation='relu'))
,我将得到以下输出:
[x_0,x_1,x_2_x_3,x_4]
在这里,[x_0,x_1,x_2_x_3,x_4]代表我的输入序列,o_ {00}代表第一个包含4个元素的过滤器的第一个过滤器窗口的输出,o_ {01}代表第一个过滤器的第二个过滤器窗口包含4个元素,等等...
我到目前为止是否正确?
现在,如果所有过滤器都包含相同的数字,那么这将毫无意义,因此,我假定所有创建的过滤器必须包含不同的数字。但是如何创建这些过滤器?他们只是在Keras中填充了随机数,还是在工作任何复杂的算法?
非常感谢您的帮助。