VisibleDeprecationWarning , Creating an ndarray from ragged nested sequences... 警告怎么办?

在使用tensorflow.keras.datasets的imdb数据集时遇到VisibleDeprecationWarning警告,原因是numpy创建ndarray对象时处理不规则序列。解决方法是通过设置`warnings简单filter("error")`来定位并修改`imdb.load_data()`内部涉及创建ndarray的代码,将警告消除。虽然解决了问题,但为一个警告花费大量时间并不划算,应当注重抓住主要矛盾。
部署运行你感兴趣的模型镜像

        我不是完美主义,但是至少,我在做实验的时候不能容忍有 warning 的出现。

        今天使用 tensorflow.keras.datasets中的 imdb 数据集,使用 imdb.load_data() 方法导入数据的时候,报出一个警告,VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray

        经过查阅,得知这是因为创建 numpy包中 ndarray 类对象时,设若 np.array( some_object),如果传入的参数 some_object 是个 ragged 的,或者维度不整齐,或者每维元素数量不固定的,那么就会报出这个 warning。

        这不是自己写的代码有问题,而是人家写好的代码模块有问题(现在能 被 numpy 兼容,以后会被弃置的)。所以可以修改人家写好的 imdb.load_data 的代码。

        方法。

        先 import warings, 然后 warnings.simplefilter("error"),使得 warning 不会通过检查,报出warning位置,找到了关于创建 ndarray 的代码,这就在imdb.load_data 方法内部

一共两处,

分别做如下修改:

然后就没有 warning 了。

---------------------------------------------------------------------------------------

        Conclusion

---------------------------------------------------------------------------------

哇,第一次改人家的库,虽然并不是底层的库,也是很爽。我 cao 勇 的(ww腔)~~

Above all,  浪费了很多的时间,只为了不见个warning,感觉很亏。

还是要抓主要矛盾,下次一定。 :)

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值