为什么我第一次运行没问题,第二次就报too many values的错误?
收藏
我爱志方小姐
已解决
4#
回复于2021-07
这个问题可能是由于你将这块代码执行了两遍造成的。在 map 之前,example 有两个元素,tokens 和 label,第一次 map 之后,example 转化为 id,有四个元素(conver_example 有四个返回值):input_ids, token_type_id, seq_len 和 labels。第二次再执行 map 时,即再一次执行 convert_example 将样本转化为 id 时,就会出错。 [代码] 赋值符号左的边需要接收两个值,而右边的 example 却有四个值,于是就会出现下面的错误: [代码] 解决的办法是,重新启动 AIStudio 执行器,然后再一步一步的执行。注意避免重复执行已经执行过的代码,这样有可能会在你不知情的情况下,改变已有变量的值,从而发生超出预期的错误。凡是需要重新执行前面代码的情况,都需要先重启 AIStudio 执行器。 以上~
0
收藏
请登录后评论
是不是需要重启下释放内存
不应该呀,它这个错误不是说的内存不够呀,而且错误定位到print那句了
这个问题可能是由于你将这块代码执行了两遍造成的。在 map 之前,example 有两个元素,tokens 和 label,第一次 map 之后,example 转化为 id,有四个元素(conver_example 有四个返回值):input_ids, token_type_id, seq_len 和 labels。第二次再执行 map 时,即再一次执行 convert_example 将样本转化为 id 时,就会出错。
赋值符号左的边需要接收两个值,而右边的 example 却有四个值,于是就会出现下面的错误:
解决的办法是,重新启动 AIStudio 执行器,然后再一步一步的执行。注意避免重复执行已经执行过的代码,这样有可能会在你不知情的情况下,改变已有变量的值,从而发生超出预期的错误。凡是需要重新执行前面代码的情况,都需要先重启 AIStudio 执行器。
以上~
哇,谢谢,这个细节我还没考虑到,我以为是代码出了bug
少在notebook里用全局变量,还是封装下吧~