Lam*_*mda 4 python numpy keras
我试图测试一个网络,但似乎有一个恼人的错误,我不太清楚我理解.
import keras
from keras.models import Sequential
from keras.optimizers import SGD
from keras.layers.core import Dense, Activation, Lambda, Reshape,Flatten
from keras.layers import Conv1D,Conv2D,MaxPooling2D, MaxPooling1D, Reshape
from keras.utils import np_utils
from keras.models import Model
from keras.layers import Input, Dense
from keras.layers import Dropout
from keras import backend as K
from keras.callbacks import ReduceLROnPlateau
from keras.callbacks import CSVLogger
from keras.callbacks import EarlyStopping
from keras.layers.merge import Concatenate
from keras.callbacks import ModelCheckpoint
import random
import numpy as np
window_height = 8
filter_size=window_height
pooling_size = 28
stride_step = 2
def fws():
np.random.seed(100)
input = Input(5,window_height,1)
shared_conv = Conv2D(filters = 1, kernel_size = (0,window_height,1))
output = shared_conv(input)
print output.shape
fws()
Run Code Online (Sandbox Code Playgroud)
错误信息:
File "experiment.py", line 34, in <module>
fws()
File "experiment.py", line 29, in fws
input = Input(5,window_height,1)
File "/usr/local/lib/python2.7/dist-packages/keras/engine/topology.py", line 1426, in Input
input_tensor=tensor)
File "/usr/local/lib/python2.7/dist-packages/keras/legacy/interfaces.py", line 87, in wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/keras/engine/topology.py", line 1321, in __init__
batch_input_shape = tuple(batch_input_shape)
TypeError: 'int' object is not iterable
Run Code Online (Sandbox Code Playgroud)
为什么我会收到此错误?
我在网络中试图使用共享卷积层,代码说明,并且为了测试目的,想看看输出变成了什么?
Sta*_*ael 13
你的行:
input = Input(5,window_height,1)
Run Code Online (Sandbox Code Playgroud)
给出了这个错误.将此与keras的示例进行比较:https://keras.io/getting-started/functional-api-guide/
inputs = Input(shape=(784,))
Run Code Online (Sandbox Code Playgroud)
该Input
对象期望迭代,shape
但你传递了它int
.在示例中,您可以看到它们如何绕过1维输入.