解决TypeError: type complex doesn‘t define __round__ method
创始人
2024-02-06 01:14:13
0

在调整学习率的时候遇到的一个bug,现已解决。
在这里插入图片描述
首先看这个bug说的是:类型complex(复数:i+j)类型不能使用round函数。
为啥不能使用呢:
在这里插入图片描述
round函数是四舍五入,round(lr,10)就是取lr四舍五入后十位。而复数不能进行四舍五入。
那么lr是一个复数,为什么lr是一个复数?
我们知道复数是对负数开偶数次方,也就是lr是一个负数,这显然是不合理的,那么lr是通过lr_scheduler在不断的迭代减小的,说明lr已经减少到负数了,那肯定是lr_scheduler的原因了。
我们找到lr_scheduler:

lr_scheduler = PolyLR(optimizer,max_epoch=500,power=0.9)

我使用的poly学习率:图片参考
在这里插入图片描述
在这里插入图片描述
lr为负,说明epoch/num_epoch已经大于1了,当前的epoch大于总的epoch也是不现实的。
然后我就在打印学习率地方设置了print。打印一下学习率。
在这里插入图片描述
然后我就发现了在epoch1的第705个iteration处,lr为负值,702处为0,说明epoch已经为500,但是现在才是第1代呀!
相当在epoch=0时,795/3=265
在epoch=1时,702/3=234
234+265=500!!!
也就是错误的把polylr的epoch参数当做真实的的epoch参数了,polylr的epoch参数应该为iteration的数目,即总数为(795/3)*500=132500。因此把参数重新修改:
在这里插入图片描述
成功运行!!!
在这里插入图片描述

相关内容

热门资讯

行万里丝路 见证跨越千年的繁荣... 2025丝绸之路万里行采访团出关。  8月5日,2025丝绸之路万里行“上合之路 一路向前”大型跨国...
美国民众:每次来超市物价又涨了...   据美联社4日报道,美联社与芝加哥大学全国民意研究中心联合进行的民意调查显示,大约一半的美国人认为...
鼓点为媒 舞步成约——记新疆国...   手腕翻转,指尖弹动,舞步起落,跳跃与旋转间,肢体的定格与律动精准衔接,力量的积蓄与释放自如切换…...
湖南一小女孩在狂风暴雨中呼喊妈...   8月3日,湖南。小女孩在狂风暴雨中呼喊妈妈,妈妈却头也不回地走了。(编辑 浩浩)
老虎瘦骨嶙峋饿得吃草 动物园回...   近日,在北京一老虎瘦骨嶙峋饿得吃草。北京动物园:按照饲养要求喂养,体重在正常范围。(编辑:迭戈)
【文物里的抗战记忆】击毙日军“...   【文物里的抗战记忆】  在军事博物馆众多馆藏重器中,这门75毫米迫击炮独占一方醒目的展柜,它是中...
山西华严寺殿墙遭游客刻字?官方...   记者8月5日从山西省大同市辽金文化艺术博物院了解到,近日,有网友反映大同华严寺薄伽教藏殿西墙外立...
7月份中国物流业景气指数为50...   央视网消息:中国物流与采购联合会8月5日发布,7月份中国物流业景气指数为50.5%,环比回落0....
双工位连发、智慧工厂实现量产 ...   央视网消息:北京时间8月4日18时21分,我国在海南商业航天发射场使用长征十二号运载火箭,成功将...
雨后大量出现!别摘、别买、别吃...   进入“七下八上”主汛期以来,我国北方尤其是华北及东北地区降水天气明显增多。  频繁降水、空气潮湿...