gpt4 book ai didi

python - 预期 conv1d_1_input 具有形状 (15, 512),但得到的数组具有形状 (4, 512)

转载 作者:行者123 更新时间:2023-11-30 22:11:20 25 4
gpt4 key购买 nike

我正在使用 CNN 和 word2vec 作为嵌入方法,使用 keras 使用 python 进行情感分析项目。根据我的代码,我设置了输入形状,15和512,所以当我想预测一个新句子的极性时说:“我很抱歉”,例如长度:4 - 我面临这个错误:

expected conv1d_1_input to have shape (15, 512) but got array with shape (4, 512) and this is a part of my code:

model = Sequential()
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same',
input_shape=(15, 512)))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=3, activation='elu', padding='same'))
model.add(Dropout(0.25))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Conv1D(32, kernel_size=2, activation='elu', padding='same'))
model.add(Dropout(0.25))
model.add(Dense(256, activation='relu')
model.add(Dense(256, activation='relu'))
model.add(Dropout(0.5))
model.add(Flatten())
model.add(Dense(2, activation='softmax'))

我能做的就是制作新的 python 文件并加载所有相关模型,例如 word2vec ...并更改其输入形状,如下所示:

model111 = Sequential()
model111.add(Conv1D(32, kernel_size=3, activation='elu', padding='same',
input_shape=(len(input), 512)))
model111.add(Dense(256, activation='relu'))
model111.add(Dense(256, activation='relu'))
model111.add(Dropout(0.5))
model111.add(Flatten())
model111.add(Dense(2, activation='softmax'))

我想知道这个方法行不行??任何有效的解决方案将非常感激

最佳答案

当输入的大小小于模型预期的大小时,您需要进行填充(即在输入数组的末尾添加零,以在提供给模型之前完成预期的大小。有一个 keras 函数可以做到这一点:

from keras.preprocessing.sequence import pad_sequences
input_array = pad_sequences(input_array, maxlen=max_tweet_length, padding='post')

然后, reshape 数据,使其符合 CNN 预期的空间性:

input_array = input_array.reshape(input_array.shape + (1,))

关于python - 预期 conv1d_1_input 具有形状 (15, 512),但得到的数组具有形状 (4, 512),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51447071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com