将 Conv1D 添加到 CNN 模型定义时语法无效
Invalid Syntax when adding Conv1D to CNN model definition
我正在尝试使用 CNN 进行文本分类(使用 Keras)。在大多数教程中,他们建议为此使用 Conv1D
,但是当我尝试定义模型时,出现 Invalid Syntax
错误。
这些是我要导入的库:
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Flatten
from keras.layers.convolutional import Conv1D
from keras.layers.convolutional import MaxPooling1D
from keras.layers.embeddings import Embedding
from keras.preprocessing import sequence
这是模型定义:
model = Sequential()
model.add(Embedding(vocab_size, 32, input_length=max_length)
model.add(Conv1D(32, 3, activation='relu')) #This is where I'm getting the error
model.add(MaxPooling1D())
model.add(Flatten())
model.add(Dense(250, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
这是错误信息:
File "<ipython-input-29-a0d7dea5e2b2>", line 3
model.add(Conv1D(32, 3, activation='relu'))
^
SyntaxError: invalid syntax
你能告诉我我做错了什么吗?我该如何解决?
谢谢。
您缺少括号:
model.add(Embedding(vocab_size, 32, input_length=max_length) ) <----
我正在尝试使用 CNN 进行文本分类(使用 Keras)。在大多数教程中,他们建议为此使用 Conv1D
,但是当我尝试定义模型时,出现 Invalid Syntax
错误。
这些是我要导入的库:
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Flatten
from keras.layers.convolutional import Conv1D
from keras.layers.convolutional import MaxPooling1D
from keras.layers.embeddings import Embedding
from keras.preprocessing import sequence
这是模型定义:
model = Sequential()
model.add(Embedding(vocab_size, 32, input_length=max_length)
model.add(Conv1D(32, 3, activation='relu')) #This is where I'm getting the error
model.add(MaxPooling1D())
model.add(Flatten())
model.add(Dense(250, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
这是错误信息:
File "<ipython-input-29-a0d7dea5e2b2>", line 3
model.add(Conv1D(32, 3, activation='relu'))
^
SyntaxError: invalid syntax
你能告诉我我做错了什么吗?我该如何解决?
谢谢。
您缺少括号:
model.add(Embedding(vocab_size, 32, input_length=max_length) ) <----