Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Deep learning tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[162278,4]与[163000,4]_Deep Learning - Fatal编程技术网

Deep learning tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[162278,4]与[163000,4]

Deep learning tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[162278,4]与[163000,4],deep-learning,Deep Learning,我正在用python Keras运行RFB网络移动模型。当我开始训练时,我会面对错误。我猜[163000,4]16是批处理大小,3000是“预测(连接)”的输出形状。我尝试更改批处理大小,但这种方法不起作用。如果有人能给我一些建议,这将非常有用。谢谢 错误: 警告:将稀疏索引转换为形状未知的稠密张量。这可能会消耗大量内存。 “将稀疏索引转换为未知形状的稠密张量。” 纪元1/50 回溯(最近一次呼叫最后一次): 文件“C:\Users\Administrator\AppData\Roaming\P

我正在用python Keras运行RFB网络移动模型。当我开始训练时,我会面对错误。我猜[163000,4]16是批处理大小,3000是“预测(连接)”的输出形状。我尝试更改批处理大小,但这种方法不起作用。如果有人能给我一些建议,这将非常有用。谢谢

错误: 警告:将稀疏索引转换为形状未知的稠密张量。这可能会消耗大量内存。 “将稀疏索引转换为未知形状的稠密张量。” 纪元1/50 回溯(最近一次呼叫最后一次): 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1278行,在\u do\u call中 返回fn(*args) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1263行,在\u run\u fn中 选项、提要、获取列表、目标列表、运行元数据) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1350行,位于调用会话运行中 运行(元数据) tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[162278,4]与[163000,4] [[Node:loss/predictions\u loss/sub\u 1=sub[T=DT\u FLOAT,[u class=[“loc:@training/Adam/gradients/AddN\u 1”],[u device=“/job:localhost/replica:0/task:0/device:GPU:0”](loss/predictions\u loss/strippets\u slice\u 4,loss/predictions\u loss\u slice\u slice\u slice\u 5)]] [[Node:loss/mul/_3821=\u Recvclient\u terminated=false,recv\u device=“/job:localhost/replica:0/task:0/device:CPU:0”,send\u device=“/job:localhost/replica:0/task:0/device:GPU:0”,send\u device\u化身=1,tensor\u name=“edge\u loss/mul”,tensor\u type=DT\u FLOAT,\u device=“/job:localhost/replica:0/task:0/device:CPU:0”]

在处理上述异常期间,发生了另一个异常:

回溯(最近一次呼叫最后一次): 文件“e:/dl/final-vision-mbV3-SSD-RFB-SE-assession-keras_添加_额外_层_使用_mbV3/train.py”,第123行,in 初始_历元=初始_历元) 文件“D:\Anaconda\envs\czh tfkeras\lib\site packages\keras\legacy\interfaces.py”,第91行,在包装器中 返回函数(*args,**kwargs) 文件“D:\Anaconda\envs\czh-tfkeras\lib\site-packages\keras\engine\training.py”,第2224行,在fit\U生成器中 等级重量=等级重量) 文件“D:\Anaconda\envs\czh-tfkeras\lib\site-packages\keras\engine\training.py”,第1883行,在批处理的列中 输出=自列车功能(ins) 文件“D:\Anaconda\envs\czh tfkeras\lib\site packages\keras\backend\tensorflow\u backend.py”,第2478行,在调用中 **自我介绍(kwargs) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第877行,正在运行 运行_元数据_ptr) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1100行,正在运行 feed_dict_tensor、options、run_元数据) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1272行,在运行中 运行(元数据) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\client\session.py”,第1291行,在\u do\u call中 提升类型(e)(节点定义、操作、消息) tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[162278,4]与[163000,4] [[Node:loss/predictions\u loss/sub\u 1=sub[T=DT\u FLOAT,[u class=[“loc:@training/Adam/gradients/AddN\u 1”],[u device=“/job:localhost/replica:0/task:0/device:GPU:0”](loss/predictions\u loss/strippets\u slice\u 4,loss/predictions\u loss\u slice\u slice\u slice\u 5)]] [[Node:loss/mul/_3821=\u Recvclient\u terminated=false,recv\u device=“/job:localhost/replica:0/task:0/device:CPU:0”,send\u device=“/job:localhost/replica:0/task:0/device:GPU:0”,send\u device\u化身=1,tensor\u name=“edge\u loss/mul”,tensor\u type=DT\u FLOAT,\u device=“/job:localhost/replica:0/task:0/device:CPU:0”]

由op“损失/预测损失/子项1”引起,定义为: 文件“e:/dl/final-vision-mbV3-SSD-RFB-SE-assession-keras\u add\u extra\u layer\u use\u mbV3/train.py”,第110行,in 编译(优化器=Adam(lr=learning\u rate\u base),损失=MultiboxLoss(NUM\u CLASSES,neg\u pos\u ratio=3.0)。计算损失) 文件“D:\Anaconda\envs\czh-tfkeras\lib\site-packages\keras\engine\training.py”,第830行,编译 样品(重量、面罩) 文件“D:\Anaconda\envs\czh-tfkeras\lib\site-packages\keras\engine\training.py”,第429行,格式为 分数数组=fn(y_真,y_pred) 文件“e:\dl\final-vision-mbV3-SSD-RFB-SE-assession-keras\u add\u extra\u layer\u use\u mbV3\nets\SSD\u training.py”,第49行,计算损耗 y_pred[:,:,:4]) 文件“e:\dl\final-vision-mbV3-SSD-RFB-SE-assession-keras\u add\u extra\u layer\u use\u mbV3\nets\SSD\u training.py”,第24行,在l1中 sq_损失=0.5*(y_真实-y_预测)**2 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\ops\math\u ops.py”,第行 850,二进制_op_包装 return func(x,y,name=name) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\ops\gen\u math\u ops.py”,第8769行,子文件 “Sub”,x=x,y=y,name=name) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\framework\op_def_library.py”,第787行,位于_apply_op_helper中 op_def=op_def) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\util\deprecation.py”,第454行,在新函数中 返回函数(*args,**kwargs) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\framework\ops.py”,第3155行,在create\u op中 op_def=op_def) 文件“C:\Users\Administrator\AppData\Roaming\Python36\site packages\tensorflow\Python\framework\ops.py”,第1717行,位于init self.\u traceback=tf\u stack.extract\u stack()

InvalidArgumentError(回溯见上文):不兼容的形状:[162278,4]与[163000,4] [[Node:loss/predictions\u loss/sub\u 1=sub[T=DT\u FLOAT,[u class=[“loc:@training
 if __name__ == "__main__":
   log_dir = "logs/"
   annotation_path = '2007_train.txt'
   NUM_CLASSES = 21
   input_shape = [300, 300, 3]
   anchors_size = [30,60,111,162,213,264,315]
   priors = get_anchors((input_shape[0], input_shape[1]), anchors_size)
   bbox_util = BBoxUtility(NUM_CLASSES, priors)

    model = SSD300(input_shape, NUM_CLASSES, anchors_size)
    model_path = 'model_data/mobilenet_v3_large_224_1.0_float_no_top.h5'
    # model.load_weights(model_path, by_name=True, skip_mismatch=True)

    logging = TensorBoard(log_dir=log_dir)
    checkpoint = ModelCheckpoint(log_dir + 'ep{epoch:03d}-loss{loss:.3f}-val_loss{val_loss:.3f}.h5',
        monitor='val_loss', save_weights_only=True, save_best_only=False, period=1)
    reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=3, verbose=1)
    early_stopping = EarlyStopping(monitor='val_loss', min_delta=0, patience=10, verbose=1)

    val_split = 0.1
    with open(annotation_path) as f:
        lines = f.readlines()
    np.random.seed(10101)
    np.random.shuffle(lines)
    np.random.seed(None)
    num_val = int(len(lines)*val_split)
    num_train = len(lines) - num_val
    
    for i in range(80):
        model.layers[i].trainable = False
    if True:
        Init_epoch = 0
        Freeze_epoch = 50
        BATCH_SIZE = 16
        learning_rate_base = 5e-4

        gen = Generator(bbox_util, BATCH_SIZE, lines[:num_train], lines[num_train:],
                        (input_shape[0], input_shape[1]),NUM_CLASSES)

        model.compile(optimizer=Adam(lr=learning_rate_base),loss=MultiboxLoss(NUM_CLASSES, neg_pos_ratio=3.0).compute_loss)
        model.fit_generator(gen.generate(True), 
                steps_per_epoch=num_train//BATCH_SIZE,
                validation_data=gen.generate(False),
                validation_steps=num_val//BATCH_SIZE,
                epochs=Freeze_epoch, 
                initial_epoch=Init_epoch,
                callbacks=[logging, checkpoint, reduce_lr, early_stopping])

    for i in range(80):
        model.layers[i].trainable = True
    if True:
        Freeze_epoch = 50
        Epoch = 100
        BATCH_SIZE = 8
        learning_rate_base = 1e-4
        
        gen = Generator(bbox_util, BATCH_SIZE, lines[:num_train], lines[num_train:],
                        (input_shape[0], input_shape[1]),NUM_CLASSES)

        model.compile(optimizer=Adam(lr=learning_rate_base),loss=MultiboxLoss(NUM_CLASSES, neg_pos_ratio=3.0).compute_loss)
        model.fit_generator(gen.generate(True), 
                steps_per_epoch=num_train//BATCH_SIZE,
                validation_data=gen.generate(False),
                validation_steps=num_val//BATCH_SIZE,
                epochs=Epoch, 
                initial_epoch=Freeze_epoch,
                callbacks=[logging, checkpoint, reduce_lr, early_stopping])