关于返回值超出范围的解决测试

加载CNN数据超出CNN数据范围时 - 问答 - Python中文网

按照上面的文章,应该修改以下代码的kernel_num

kernel_num=64  # 卷积核数

model = text_cnn(seq_length=seq_length,  # 初始化模型
                 vocab_size=vocab_size,
                 embedding_dim=embedding_dim,
                 num_cla=num_classes,
                 kernel_num=kernel_num)



def text_cnn(seq_length, vocab_size, embedding_dim, num_cla, kernel_num):
    """
    seq_length: 输入的文字序列长度
    vocab_size: 词汇库的大小
    embedding_dim: 生成词向量的特征维度
    num_cla: 分类类别
    kernel_num::卷积层的卷积核数
    """
 
    # 定义输入层
    inputX = keras.layers.Input(shape=(seq_length,), dtype='int32')
    # 嵌入层,将词汇的one-hot编码转为词向量
    embOut = keras.layers.Embedding(vocab_size, embedding_dim, input_length=seq_length)(inputX)
 
    # 分别使用长度为3,4,5的词窗口去执行卷积, 接着进行最大池化处理
    conv1 = keras.layers.Conv1D(kernel_num, 3, padding='valid', strides=1, activation='relu')(embOut)
    maxp1 = keras.layers.MaxPool1D(pool_size=int(conv1.shape[1]))(conv1)

 但是并没有解决我所遇到的

list index out of range

File "F:\FXXK\AutoTakeNet004\AIOUT.py", line 34, in out result = model.predict(a) # 预测样本属于每个类别的概率 File "F:\FXXK\AutoTakeNet004\AIOUT.py", line 51, in main object_listnnnn=out(userdict) File "F:\FXXK\AutoTakeNet004\AIOUT.py", line 62, in main()

经过多次检查,最终发现我没有将用于预测的数据设置为训练的数据形式,导致了 

list index out of range  

你可能感兴趣的:(人工智能,问题,python,人工智能,python)