今天在跑相应程序的时候,出现了如下的错误:
仔细排查之后发现,对应的一个批次处理数据的内容为
d =
([array([[ 101, 3173, 4538, ..., 4500, 1501, 2421],
[ 101, 1352, 3352, ..., 0, 0, 0],
[ 101, 1298, 1744, ..., 0, 0, 0],
...,
[ 101, 3736, 5722, ..., 0, 0, 0],
[ 101, 4130, 2255, ..., 0, 0, 0],
[ 101, 1724, 2335, ..., 0, 0, 0]]), array([[ 101, 686, 5279, ..., 102, 0, 0],
[ 101, 6963, 1065, ..., 0, 0, 0],
[ 101, 3926, 1290, ..., 0, 0, 0],
...,
[ 101, 2175, 1506, ..., 0, 0, 0],
[ 101, 5401, 1065, ..., 0, 0, 0],
[ 101, 674, 2128, ..., 0, 0, 0]])], array([[0, 2, 1, ..., 0, 1, 0],
[0, 2, 1, ..., 0, 1, 0],
[0, 2, 1, ..., 0, 1, 0],
...,
[0, 2, 1, ..., 0, 1, 0],
[0, 2, 1, ..., 0, 1, 0],
[0, 2, 1, ..., 0, 1, 0]]))
可以看出,
输出标签之中的array中的每一个数组存放多个相应的数值内容,导致最终的程序结果报错
array([[0,2,1,...,0,1,0],
[0,2,1,...0,1,0],
[0,2,1,...0,1,0],
...
[0,2,1,...0,1,0],
[0,2,1,...0,1,0]]))
实际上放入的标签结果应该为
array([0,2,1,...,0,1,0])