keras activation 报错 ‘_OverloadedFunction‘ object has no attribute ‘__name__‘

2024-04-15 02:48

本文主要是介绍keras activation 报错 ‘_OverloadedFunction‘ object has no attribute ‘__name__‘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天在训练模型的时候报错如下:

详细信息如下所示:

Traceback (most recent call last):File "/usr/local/lib64/python3.6/site-packages/keras/legacy/interfaces.py", line 91, in wrapperreturn func(*args, **kwargs)File "/usr/local/lib64/python3.6/site-packages/keras/engine/training.py", line 1418, in fit_generatorinitial_epoch=initial_epoch)File "/usr/local/lib64/python3.6/site-packages/keras/engine/training_generator.py", line 251, in fit_generatorcallbacks.on_epoch_end(epoch, epoch_logs)File "/usr/local/lib64/python3.6/site-packages/keras/callbacks.py", line 79, in on_epoch_endcallback.on_epoch_end(epoch, logs)File "/usr/local/lib64/python3.6/site-packages/keras/callbacks.py", line 446, in on_epoch_endself.model.save(filepath, overwrite=True)File "/usr/local/lib64/python3.6/site-packages/keras/engine/network.py", line 1090, in savesave_model(self, filepath, overwrite, include_optimizer)File "/usr/local/lib64/python3.6/site-packages/keras/engine/saving.py", line 382, in save_model_serialize_model(model, f, include_optimizer)File "/usr/local/lib64/python3.6/site-packages/keras/engine/saving.py", line 83, in _serialize_modelmodel_config['config'] = model.get_config()File "/usr/local/lib64/python3.6/site-packages/keras/engine/network.py", line 860, in get_configlayer_config = layer.get_config()File "/usr/local/lib64/python3.6/site-packages/keras/layers/core.py", line 302, in get_configconfig = {'activation': activations.serialize(self.activation)}File "/usr/local/lib64/python3.6/site-packages/keras/activations.py", line 176, in serializereturn activation.__name__
AttributeError: '_OverloadedFunction' object has no attribute '__name__'

        查了整整一下午的时间,感觉沾边的方法都试了一遍也没有去解决,最终打开keras源码找到了端倪,这个结合报错的含义来理解就是:重载的函数没有__name__属性,这是因为使用了自定义的激活函数,问题就出现在callback函数部分,有一个checkpoint存储的操作,我存储的是model,这里不能直接存储model,应该改成存储weight,之后就不会有这个错误了。

       还有一种比较笨的方法就是去除callback部分,这个不建议使用,因为没有从根本上解决问题,记录一下,这个属实把我折腾的够呛。

      贴一张顺利训练的截图:

 

这篇关于keras activation 报错 ‘_OverloadedFunction‘ object has no attribute ‘__name__‘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/904705

相关文章

Jenkins 插件 地址证书报错问题解决思路

问题提示摘要: SunCertPathBuilderException: unable to find valid certification path to requested target...... 网上很多的解决方式是更新站点的地址,我这里修改了一个日本的地址(清华镜像也好),其实发现是解决不了上述的报错问题的,其实,最终拉去插件的时候,会提示证书的问题,几经周折找到了其中一遍博文

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed

DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed 文章目录 DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed问题解决办法 问题 使用 DBeaver 连接 MySQL 数据库的时候, 一直报错下面的错误 Public Key Retrieval is

vue 父组件调用子组件的方法报错,“TypeError: Cannot read property ‘subDialogRef‘ of undefined“

vue 父组件调用子组件的方法报错,“TypeError: Cannot read property ‘subDialogRef’ of undefined” 最近用vue做的一个界面,引入了一个子组件,在父组件中调用子组件的方法时,报错提示: [Vue warn]: Error in v-on handler: “TypeError: Cannot read property ‘methods

Vue3上传图片报错:Current request is not a multipart request

当你看到错误 "Current request is not a multipart request" 时,这通常意味着你的服务器或后端代码期望接收一个 multipart/form-data 类型的请求,但实际上并没有收到这样的请求。在使用 <el-upload> 组件时,如果你已经设置了 http-request 属性来自定义上传行为,并且遇到了这个错误,可能是因为你在发送请求时没有正确地设置

QT 编译报错:C3861: ‘tr‘ identifier not found

问题: QT 编译报错:C3861: ‘tr’ identifier not found 原因 使用tr的地方所在的类没有继承自 QObject 类 或者在不在某一类中, 解决方案 就直接用类名引用 :QObject::tr( )

笔记本电脑开机报错故障的原因及解决办法

笔记本电脑开机报错故障是指笔记本电脑开机自检时或启动操作系统前停止启动,在显示屏 出现一些错误提示的故障。   笔记本电脑开机报错故障的原因及解决办法   造成此类故障的原因一般是笔记本电脑在启动自检时,检测到硬件设备不能正常工作或在自 检通过后从硬盘启动时,出现硬盘的分区表损坏、硬盘主引导记录损坏、硬盘分区结束标志丢失 等故障,笔记本电脑出现相应的故障提示。   维修此类故障时

Allegro PCB--报错

1。 走线上打孔 问题:在走线上打的Via,我通过"Assign net to Via", 给与网络。成功后。 跑Tools\Database check\ Update all DRC(including batch), Via 网络又没有了 原因& 解决方法: VIA没有和走线完全重合 换个方法: 直接在线上打孔 或者走线change成shape, 或者用细导线把孔连到线路上。

python imshow报错怎么解决

实例如下所示: import matplotlib.pyplot as pltplt.imshow(img)#控制台打印出图像对象的信息,而图像没有显示 解决方法: #引入pylab解决import matplotlib.pyplot as pltimport pylabplt.imshow(img)pylab.show()

Hibernate插入数据时,报错:org.springframework.dao.DataIntegrityViolationException: could not insert: [cn.itc

在用junit测试:插入数据时,报一下错误: 错误原因: package junit;import org.junit.Test;import cn.itcast.crm.container.ServiceProvinder;import cn.itcast.crm.dao.ISysUserDao;import cn.itcast.crm.domain.SysRole;