케라 레이어 Flatten()
또는 Reshape((-1,))
을 내 모델 끝에 사용하여 [0,0,1,0,0, ... ,0,0,1,0]
과 같은 1D 벡터를 출력하고 싶습니다."Flatten"또는 "Reshape"를 사용하여 케라에서 알려지지 않은 입력 모양의 1D 출력을 얻습니다.
슬프게도 내 알 수없는 입력 모양 때문에 문제가 있습니다 : input_shape=(4, None, 1)))
.
[batch_size, 64]
[batch_size, 256]
secound 위의 주먹 예)이어야하고
[batch_size, 4, 64, 1]
[batch_size, 4, 256, 1]
사이 일 것이다.
model = Sequential()
model.add(Convolution2D(32, (4, 32), padding='same', input_shape=(4, None, 1)))
model.add(BatchNormalization())
model.add(LeakyReLU())
model.add(Convolution2D(1, (1, 2), strides=(4, 1), padding='same'))
model.add(Activation('sigmoid'))
# model.add(Reshape((-1,))) produces the error
# int() argument must be a string, a bytes-like object or a number, not 'NoneType'
model.compile(loss='binary_crossentropy', optimizer='adadelta')
그래야 내 현재의 출력 형태는
[BATCHSIZE, 1, 알 수없는 차원 1]입니다 : 같은
내 모델 보인다. class_weights를 사용하지 못하게하는 예는 "ValueError: class_weight not supported for 3+ dimensional targets."
입니다.
유연한 입력 모양을 사용하면 케라 (제 2의 텐서 흐름 백엔드)에서 3 차원 출력을 평평하게하기 위해 Flatten()
또는 Reshape((1,))
과 같은 것을 사용할 수 있습니까?
고마워요!
소리가 정말 좋습니다! 나는 그것을 내일 시도 할 것이다 (결국 나를 위해 일하지 않는다면 당신에게 피드백을 준다). 그러면 당신의 대답을 받아 들일 것이다! 감사합니다 – Fabian
고맙습니다. :) – Fabian