当前位置:   article > 正文

python cnn代码详解 keras_Wandb用起来,一行Python代码实现Keras模型可视化!

python实现cnn可视化代码

在训练神经网络的过程中,我们可能会希望可视化网络的性能和中间的结构,很多可视化代码的冗长复杂使得我们望而却步,有没有一行代码就能解决可视化的所有问题呢?

通过wandb,只需要加一行Python代码就可以可视化Keras网络性能指标和结构。(注:Keras使得构建神经网络变得简单明了,这一点深得人心)

这样好用的包如何下载呢?

只需运行“pip install wandb”,就可以轻松地安装wandb,然后所有的Keras示例就都可以运行了。

实测运行

为了测试wandb的可视化效果,我修改了Keras examples目录中的一些脚本来测试这个功能,只需将下面一行代码添加到训练脚本的顶部。

from wandb import magic

Keras examples链接:

https://github.com/keras-team/keras

简单的CNN

由入门的mnist_cnn.py开始,我添加了一行“from wandb import magic”——你也可以查看mnist_cn.py,这是从Keras examples中fork过来的,只更改了一行。

mnist_cn.py链接:

https://github.com/lukas/keras/blob/master/examples/mnist_cnn.py9017a98daa330797ec3b9aad638069a1.png

当模型运行时,wandb在后台启动一个进程,保存相关指标至wandb.com。你可以访问网页链接查看输出。得到的结果如下:df6d7db753faa255617cbc3a75fb7bf4.png

链接:

https://app.wandb.ai/l2k2/keras-examples/runs/ovptynun/model

模型标记的数据以及损失曲线和精度曲线如下:99b285ed8c03cc18aa979e0dc9c50e91.png

d411c7c6d9a05bae25075d8c0571a1c1.png

Cifar数据集上的ResNet

接下来,我fork了cifar10_resnet.py并同样地更改了一行,你可以在wandb.com看到ResNet的可视化。46987b634fd191d6ec6ba380deb1739c.png

cifar10_resnet.py链接:

https://github.com/lukas/keras/blob/master/examples/cifar10_resnet.py

可视化网页链接:

https://app.wandb.ai/l2k2/keras-examples/runs/ieqy2e9h/model

在system界面,可以看到这个模型比mnist示例使用了更多的GPU。4895f079e22dcf4311c2c47587e878dc.png

system界面链接:

https://app.wandb.ai/l2k2/keras-examples/runs/ieqy2e9h/system

Siamese网络

接下来我尝试了siamese网络的例子。在这个例子中,我想看一下TensorFlow图,幸运的是,同样只需要一行代码就可以调用可视化工具TensorBoard。你可以点击下方链接查看。5597c6e084d44dd0aa7491b97f44cfc5.png

可视化后链接:

https://app.wandb.ai/l2k2/keras-examples/runs/fsc63n6a?workspace=user-l2k2

其他功能

对于每个模型的测试都只花费了不到一分钟的时间,也只增加了很少的计算开销,并且该方法适用于你使用的任何Keras模型。如果想要跟踪更多的东西,你可以用下面两行来代替:

import wandb wandb.init(magic=True)

然后你可以使用自定义wandb.log()函数来保存想保存的任何内容。可以去wandb网站了解更多信息。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/211826
推荐阅读
相关标签
  

闽ICP备14008679号