PaddleX icon indicating copy to clipboard operation
PaddleX copied to clipboard

在使用网络数据集进行训练时报 row index exceeds matrix dimensions

Open yanchaoguo opened this issue 5 years ago • 11 comments

请问如下问题该如何定位? 感觉像是有脏数据 怎么找到脏数据呢

2020-11-06 18:01:39 [INFO] [TRAIN] Epoch=1/30, Step=708/708, loss=0.156119, lr=0.0097, time_each_step=0.75s, eta=5:21:6 2020-11-06 18:01:39 [INFO] [TRAIN] Epoch 1 finished, loss=0.19938, lr=0.00985 . 2020-11-06 18:01:39 [INFO] Start to evaluating(total_samples=1416, total_steps=177)...

......

~/anaconda3/lib/python3.7/site-packages/scipy/sparse/coo.py in _check(self) 284 if self.row.max() >= self.shape[0]: 285 print(self.row.max(), self.shape) --> 286 raise ValueError('row index exceeds matrix dimensions') 287 if self.col.max() >= self.shape[1]: 288 raise ValueError('column index exceeds matrix dimensions')

ValueError: row index exceeds matrix dimensions

yanchaoguo avatar Nov 06 '20 10:11 yanchaoguo

这里看不出,麻烦将日志贴全一些,特别是报错开始到结束

jiangjiajun avatar Nov 06 '20 10:11 jiangjiajun

这里看不出,麻烦将日志贴全一些,特别是报错开始到结束

`2020-11-06 18:01:39 [INFO] [TRAIN] Epoch 1 finished, loss=0.19938, lr=0.00985 . 2020-11-06 18:01:39 [INFO] Start to evaluating(total_samples=1416, total_steps=177)... 0%| | 0/177 [00:00<?, ?it/s]share_vars_from is set, scope is ignored. 254 (2, 2)


ValueError Traceback (most recent call last) in () 56 learning_rate=0.01, 57 save_dir='output/fastscnn', ---> 58 use_vdl=True) 59 60

~/anaconda3/lib/python3.7/site-packages/paddlex/cv/models/fast_scnn.py in train(self, num_epochs, train_dataset, train_batch_size, eval_dataset, save_interval_epochs, log_interval_steps, save_dir, pretrain_weights, optimizer, learning_rate, lr_decay_power, use_vdl, sensitivities_file, eval_metric_loss, early_stop, early_stop_patience, resume_checkpoint) 172 pretrain_weights, optimizer, learning_rate, lr_decay_power, 173 use_vdl, sensitivities_file, eval_metric_loss, early_stop, --> 174 early_stop_patience, resume_checkpoint)

~/anaconda3/lib/python3.7/site-packages/paddlex/cv/models/deeplabv3p.py in train(self, num_epochs, train_dataset, train_batch_size, eval_dataset, save_interval_epochs, log_interval_steps, save_dir, pretrain_weights, optimizer, learning_rate, lr_decay_power, use_vdl, sensitivities_file, eval_metric_loss, early_stop, early_stop_patience, resume_checkpoint) 356 use_vdl=use_vdl, 357 early_stop=early_stop, --> 358 early_stop_patience=early_stop_patience) 359 360 def evaluate(self,

~/anaconda3/lib/python3.7/site-packages/paddlex/cv/models/base.py in train_loop(self, num_epochs, train_dataset, train_batch_size, eval_dataset, save_interval_epochs, log_interval_steps, save_dir, use_vdl, early_stop, early_stop_patience) 557 batch_size=eval_batch_size, 558 epoch_id=i + 1, --> 559 return_details=True) 560 logging.info('[EVAL] Finished, Epoch={}, {} .'.format( 561 i + 1, dict2str(self.eval_metrics)))

~/anaconda3/lib/python3.7/site-packages/paddlex/cv/models/deeplabv3p.py in evaluate(self, eval_dataset, batch_size, epoch_id, return_details) 431 one_label = one_label[np.newaxis, np.newaxis, :, :] 432 mask = one_label != self.ignore_index --> 433 conf_mat.calculate(pred=one_pred, label=one_label, ignore=mask) 434 _, iou = conf_mat.mean_iou() 435 logging.debug("[EVAL] Epoch={}, Step={}/{}, iou={}".format(

~/anaconda3/lib/python3.7/site-packages/paddlex/cv/models/utils/seg_eval.py in calculate(self, pred, label, ignore) 44 # Accumuate ([row=label, col=pred], 1) into sparse matrix 45 spm = csr_matrix( ---> 46 (one, (label, pred)), shape=(self.num_classes, self.num_classes)) 47 spm = spm.todense() 48 self.confusion_matrix += spm

~/anaconda3/lib/python3.7/site-packages/scipy/sparse/compressed.py in init(self, arg1, shape, dtype, copy) 55 # (data, ij) format 56 from .coo import coo_matrix ---> 57 other = self.class(coo_matrix(arg1, shape=shape)) 58 self._set_self(other) 59 elif len(arg1) == 3:

~/anaconda3/lib/python3.7/site-packages/scipy/sparse/coo.py in init(self, arg1, shape, dtype, copy) 196 self.data = self.data.astype(dtype, copy=False) 197 --> 198 self._check() 199 200 def reshape(self, *args, **kwargs):

~/anaconda3/lib/python3.7/site-packages/scipy/sparse/coo.py in _check(self) 284 if self.row.max() >= self.shape[0]: 285 print(self.row.max(), self.shape) --> 286 raise ValueError('row index exceeds matrix dimensions') 287 if self.col.max() >= self.shape[1]: 288 raise ValueError('column index exceeds matrix dimensions')

ValueError: row index exceeds matrix dimensions`

yanchaoguo avatar Nov 06 '20 11:11 yanchaoguo

这个数据集有地址么,我来试试

jiangjiajun avatar Nov 06 '20 12:11 jiangjiajun

这个数据集有地址么,我来试试

稍等 我上传到云一份

yanchaoguo avatar Nov 06 '20 12:11 yanchaoguo

这个数据集有地址么,我来试试

链接:https://pan.baidu.com/s/19b3j5P1u2JyBK3LZNWoljw 提取码:6666 谢谢!

yanchaoguo avatar Nov 06 '20 13:11 yanchaoguo

这个数据集有地址么,我来试试

链接:https://pan.baidu.com/s/19b3j5P1u2JyBK3LZNWoljw 提取码:6666 谢谢!

@jiangjiajun 请问有发现麽

yanchaoguo avatar Nov 07 '20 11:11 yanchaoguo

你好,数据我已经保存,关于数据的测试会在周一反馈给你

jiangjiajun avatar Nov 07 '20 11:11 jiangjiajun

你好,数据我已经保存,关于数据的测试会在周一反馈给你

谢谢,数据问题我已经定位解决了

yanchaoguo avatar Nov 08 '20 08:11 yanchaoguo

是什么原因导致的呢

jiangjiajun avatar Nov 09 '20 02:11 jiangjiajun

是什么原因导致的呢

掩码图片没有处理好 范围超出了labels定义的数量

yanchaoguo avatar Nov 09 '20 02:11 yanchaoguo

是什么原因导致的呢

掩码图片没有处理好 范围超出了labels定义的数量

你好,请问怎么处理这个图片才能不超出范围呢?我在运行比较大的graph的时候也遇到了这个问题。谢谢

mpanpan avatar May 12 '22 09:05 mpanpan