在我之前的文章中,我讨论了如何对卷积神经网络(CNN)学习的权重进行拓扑数据分析,以便深入了解正在学习的内容以及如何学习它。

  这项工作的重要性可归纳如下:

  它使我们能够了解神经网络如何执行分类任务。

  它允许我们观察网络的学习方式

  它允许我们看到深层网络中的各个层如何在它们检测到的内容上有所不同

  在这篇文章中,我们展示了如何将这种理解用于实际目的。那些是:

  如何使用持久同源性的条形码长度来推断CNN的准确性。

  我们的研究结果如何从一个数据集推广到下一个数据集。

  使用持久同源条形码方法如何定量测量数据集的定性性质。

  我们需要回顾上一篇文章中的一些想法。引入的一个想法是使用持久同源作为测量数据形状的工具。在我们的例子中,我们使用持久同源性来测量圆形的大小和强度或“明确定义”。

  我们首先回顾一下持久同源性的概念。持久同源性分配给任何数据集并标注“条形码”,它是间隔的集合。在维度=0时,条形码输出反映了数据集分解为集群或组件。

  对于更高维度,持久同源性测量除聚类分解之外的几何特征的存在。在dimension=1的情况下,条形码测量数据集中循环的存在。

​  在左边,条形码包括一个长条和一些更短的条。长条反映了圆的存在,而较短的条反映了噪声。在右边,我们再次有对应于噪音的短杆和两个不同长度的长杆。这些条反映了两个环的存在,条的不同长度对应于环的大小。条形的长度也可以反映出可能被称为循环的“明确定义”的东西。

  在左边,我们有一个非常明确的循环及其条形码。在右侧,循环中添加了一些噪声,使得更加分散且定义不太明确。右边最长的条比左边的条长。因此,最长条的长度可以反映环的明确定义。

  推断CNN的准确性

  实际上是通过条形码中存在一个长条来确认的。我们现在想要了解随着训练的进展,循环形状是如何演变的。

  我们通过检查条形码中最长条的长度(可以在训练的任何阶段计算)与训练点的准确度之间的相关性来实现这一点。我们对两个数据集MNIST和第二个房号数据集进行了这些计算,称为SVHN。

  跨数据集的推广

  第二个发现涉及从一个数据集到另一个数据集的泛化过程。具体来说,我们训练了基于MNIST的CNN,并在应用于SVHN时检查其准确性。我们使用三种不同的方法进行了培训。

  测量可变性

  第三个发现涉及检查两个数据集的可变性。定性地,我们可以确定SVHN比MNIST具有更多的可变性。反过来,我们希望SVHN提供更丰富的数据集和更精确的权重向量数据集。实际上,SVHN的持续时间间隔明显长于MINST(1.27对1.10)。这从上面进一步证实,所生成的圆模型的“良好定义性”与神经网络的质量之间存在强相关性。

  加起来

  拓扑分析在这种类型的分析挑战中有用的原因是它提供了一种将复杂数据集压缩为可理解且可能可操作的形式的方法。在这里,与许多其他数据分析问题一样,获得对数据中“频繁出现的图案”的理解至关重要。上述观察结果表明,拓扑分析可用于获得对CNN学习和泛化能力的控制和理解。这些方面还有许多进一步的想法,我们将在以后的文章中讨论。(欢迎转载分享)

了解卷积神经网络如何使用TDA学习的更多相关文章

  1. 卷积神经网络CNN与深度学习常用框架的介绍与使用

    一.神经网络为什么比传统的分类器好 1.传统的分类器有 LR(逻辑斯特回归) 或者 linear SVM ,多用来做线性分割,假如所有的样本可以看做一个个点,如下图,有蓝色的点和绿色的点,传统的分类器 ...

  2. 卷积神经网络之AlexNet网络模型学习

    ImageNet Classification with Deep Convolutional Neural Networks 论文理解  在ImageNet LSVRC-2010上首次使用大型深度卷 ...

  3. 卷积神经网络之VGG网络模型学习

    VGG:VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION 牛津大学 visual geometry group(VG ...

  4. 深度学习之卷积神经网络(CNN)学习

    1.卷积神经网络中卷积的核心意义是什么?每一组卷集核 权重是一个抽特征的滤波器, 从卷集核的角度抽取特征 2.卷积神经网络很好的特性参数共享机制每一个神经元固定一组a x b x c(图像的通道数) ...

  5. 卷积神经网络之ResNet网络模型学习

    Deep Residual Learning for Image Recognition 微软亚洲研究院的何凯明等人 论文地址 https://arxiv.org/pdf/1512.03385v1.p ...

  6. 卷积神经网络(CNN)学习算法之----基于LeNet网络的中文验证码识别

    由于公司需要进行了中文验证码的图片识别开发,最近一段时间刚忙完上线,好不容易闲下来就继上篇<基于Windows10 x64+visual Studio2013+Python2.7.12环境下的C ...

  7. 【深度学习与TensorFlow 2.0】卷积神经网络(CNN)

    注:在很长一段时间,MNIST数据集都是机器学习界很多分类算法的benchmark.初学深度学习,在这个数据集上训练一个有效的卷积神经网络就相当于学习编程的时候打印出一行“Hello World!”. ...

  8. SIGAI深度学习第七集 卷积神经网络1

    讲授卷积神经网络核心思想.卷积层.池化层.全连接层.网络的训练.反向传播算法.随机梯度下降法.AdaGrad算法.RMSProp算法.AdaDelta算法.Adam算法.迁移学习和fine tune等 ...

  9. Python机器学习笔记:卷积神经网络最终笔记

    这已经是我的第四篇博客学习卷积神经网络了.之前的文章分别是: 1,Keras深度学习之卷积神经网络(CNN),这是开始学习Keras,了解到CNN,其实不懂的还是有点多,当然第一次笔记主要是给自己心中 ...

随机推荐

  1. 为什么Redis可以方便地实现分布式锁

    1.Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多客户端对Redis的连接并不存在竞争关系. 2.Redis的SETNX命令可以方便的实现分布式锁. setNX(SET if  ...

  2. ES6 Object.setPrototypeOf ()方法和defineProperty()方法的使用

    将一个指定的对象的原型设置为另一个对象或者null(既对象的[[Prototype]]内部属性). 示例: <script type="text/javascript"> ...

  3. Flask中的对象的配置

    常用的有 1.'DEBUG': False, # 是否开启Debug模式 2.'TESTING': False, # 是否开启测试模式 3.'SECRET_KEY': None # 在启用Flask内 ...

  4. Non-local Neural Networks

    1. 摘要 卷积和循环神经网络中的操作都是一次处理一个局部邻域,在这篇文章中,作者提出了一个非局部的操作来作为捕获远程依赖的通用模块. 受计算机视觉中经典的非局部均值方法启发,我们的非局部操作计算某一 ...

  5. Spring Cloud Stream 使用延迟消息实现定时任务(RabbitMQ)

    应用场景 通常在应用开发中我们会碰到定时任务的需求,比如未付款订单,超过一定时间后,系统自动取消订单并释放占有物品. 许多同学的第一反应就是通过spring的schedule定时任务轮询数据库来实现, ...

  6. Delphi XE2 之 FireMonkey 入门(14) - 滤镜: 概览

    相关单元: FMX.Filter FMX.FilterCatBlur FMX.FilterCatGeometry FMX.FilterCatTransition FMX_FilterCatColor ...

  7. requests模块(请求接口)

    下面分别是get,post,入参json,添加cookie,添加header,上传/下载文件 的接口请求举例: import requests   #导入模块 #1.发get请求 url = 'htt ...

  8. Week 9 - 638.Shopping Offers - Medium

    638.Shopping Offers - Medium In LeetCode Store, there are some kinds of items to sell. Each item has ...

  9. 06 使用bbed提交delete的数据--01

    使用bbed模拟delete提交操作 --session 1 TEST@ orcl )); Table created. TEST@ orcl ,'AAAAA'); row created. TEST ...

  10. vts测试流程

    测试前提: 1.发货user版本 2.selinux:Enable 3.连接ADB,stay awake 4.烧录XXX申请的key 5.外网环境(ipv6) ATV9测试准备(正常准备环境+fast ...