CNTK - 同じレイヤ(フィルタサイズ2,3,4,5など)に複数のフィルタサイズを使用するにはどうすればよいですか?CNTKで異なるフィルタサイズのコンバージョンレイヤを連結する
here(下のgithubのコードへのリンク)に続いて、テキストを取り込み、埋め込みレイヤーを使用し、4つの異なるサイズのフィルター(2,3,4,5)を適用し、結果を完全に接続されたレイヤーに供給します。 Network architecture figure
Kerasサンプルコード:
main_input = Input(shape=(100,)
embedding = Embedding(output_dim=32, input_dim=100, input_length=100, dropout=0)(main_input)
conv1 = getconvmodel(2,256)(embedding)
conv2 = getconvmodel(3,256)(embedding)
conv3 = getconvmodel(4,256)(embedding)
conv4 = getconvmodel(5,256)(embedding)
merged = merge([conv1,conv2,conv3,conv4],mode="concat")
def getconvmodel(filter_length,nb_filter):
model = Sequential()
model.add(Convolution1D(nb_filter=nb_filter,
`enter code here`input_shape=(100,32),
filter_length=filter_length,
border_mode='same',
activation='relu',
subsample_length=1))
model.add(Lambda(sum_1d, output_shape=(nb_filter,)))
#model.add(BatchNormalization(mode=0))
model.add(Dropout(0.5))
return model
(1):/joshsaxe/eXposeDeepNeuralNetwork/blob/master/src/modeling/models.py