Keras 中的 CNN 实例 - CIFAR-10 数据增强、可视化CNN 等

CIFAR-10:6W 张图片,10个类别(飞机、汽车、鸟、猫、鹿、狗、狐狸、马、货车、船)

课外资料

  • 这是用于在 Keras 中指定神经网络(包括 CNN)的备忘单。
  • 参阅 CIFAR-10 竞赛的获胜架构!

数据增强

缩放不变性旋转不变性平移不变性

课外资料

  • 阅读这篇对 MNIST 数据集进行可视化的精彩博文。
  • 参阅此详细实现,了解如何使用增强功能提高 Kaggle 数据集的效果。
  • 阅读关于 ImageDataGenerator 类的 Keras 文档。

突破性的 CNN 架构 课外资料

  • 参阅 AlexNet 论文!
  • 在此处详细了解 VGGNet。
  • 此处是 ResNet 论文。
  • 这是用于访问一些著名 CNN 架构的 Keras 文档。
  • 阅读这一关于梯度消失问题的详细处理方案。
  • 这是包含不同 CNN 架构的基准的 GitHub 资源库。
  • 访问 ImageNet Large Scale Visual Recognition Competition (ILSVRC) 网站。

可视化 CNN 学习到的规律

(非常棒的)课外资料 !

  • 这是摘自斯坦福大学的 CS231n 课程中的一个a 章节,其中对 CNN 学习的内容进行了可视化。
  • 参阅这个关于很酷的 OpenFrameworks 应用的演示,该应用可以根据用户提供的视频实时可视化 CNN!
  • 这是另一个 CNN 可视化工具的演示。如果你想详细了解这些可视化图表是如何制作的,请观看此视频。
  • 这是另一个可与 Keras 和 Tensorflow 中的 CNN 无缝合作的可视化工具。
  • 阅读这篇可视化 CNN 如何看待这个世界的 Keras 博文。在此博文中,你会找到 Deep Dreams 的简单介绍,以及在 Keras 中自己编写 Deep Dreams 的代码。阅读了这篇博文后:

    • 再观看这个利用 Deep Dreams 的音乐视频(注意 3:15-3:40 部分)!
    • 使用这个网站创建自己的 Deep Dreams(不用编写任何代码!)。
  • 如果你想详细了解 CNN 的解释

    • 这篇文章详细讲解了在现实生活中使用深度学习模型(暂时无法解释)的一些危险性。
    • 这一领域有很多热点研究。这些作者最近朝着正确的方向迈出了一步。

可视化 CNN

我们看一个 CNN 示例,了解具体运行过程。

我们要查看的 CNN 在 ImageNet 上进行了训练(请参阅这篇来自 Zeiler 和 Fergus 的论文)。在下面的图片中(摘自上述同一论文),我们将看到该网络中的每个层级会检测到什么,并查看每个层级如何检测到越来越复杂的规律。

导致网络的第一层级被激活的示例规律,从简单的对角线(从左上角开始)到绿色块(底部中间部分)。

上述图片来自 Matthew Zeiler 和 Rob Fergus 的深度可视化工具箱,使我们能够可视化 CNN 中的每个层级侧重的是什么。

你可能感兴趣的:(Keras 中的 CNN 实例 - CIFAR-10 数据增强、可视化CNN 等)