Notes-深度学习-Week1-2019_7_23

任务:

1.使用tensorflow做一个CNN的demo。
2.讲解CNN的原理和过程
3.讲解论文,分解论文架构
4.阅读两篇中文论文,学习中文写作

展示提纲:

CNN:

1.介绍CNN的原理和正向传播过程,介绍LENET-5
2.展示使用tensorflow编写的CNN代码
3.介绍CNN的反向传播过程
4.展示依据公式推导用numpy编写的CNN
5.介绍自动微分(Automatic Differentiation)技术
梯度检验
6.介绍一些前沿的网络-resnet,Googlenet
7.提出自己关于深度网络的idea-一个复杂的全连接网络
8.目前能力的不足,进一步学习的目标
9.一些疑问
papers:

idea:

1.在讲解CNN原理时,引入大规模的CNN例如RESNET,并提出对其进行模型压缩的想法
2.讲解CNN时可以使用一些比较有知名度的网络,比如VGG-NET RES-NET
3.做CNN的demo可以考虑:nmist手写识别,人脸识别,竞赛成绩
4.神经网络的结构可不可以智能化的生成
5.预防过拟合的方法-Dropout regularization和模型压缩有相似之处
6.CNN的进阶应用:
a.不使用tensorflow框架了,独立使用python做一个CNN对mnist进行分类
b.使用高级的框架实现对简单数据集的分类(google-net inception-net res-net)
c.使用复杂的数据集,进行更高级的识别活动,例如人脸识别
d.使用gpu进行训练,对比训练结果
7.阅读经典架构的论文
8.resnet可不可以叠加res模块,构成resresresnet,或者可不可以在保证现有准确度的情况下,压缩resnet的模型比如 如果发现某些有备用路径的路径的权重太小以后就把他删掉,或者我的resresresnet也可以这样考虑
9.现在的神经网络大多都是纵向的,我可不可以真正的设计一款全连接的网络,利用图论,网络流和模型压缩对她进行剪枝,从而构建一个类型人脑的相当优秀的神经网络
10.resnet成功的因素之一就是可以跳过一些无用的层,保证了训练效率。这些无用的层是不是就可以用来剪枝
11.inception-net的结构也像一个网一样

思想:将不同的卷积方式水平放在一起,让网络自由的选择训练方式
启发:inception-net完全可以和resnet结合在一起啊,inception-resnet

  1. 重中之重-CNN的误差反传和公式推导----最好有代码实现

目标:

1.掌握基础的TENSORFLOW的应用
2.搞清楚神经网络深度学习的一些东西
3.熟悉linux环境下深度学习的开发
4.能有一些自己的想法

安排:

周三:搞清楚CNN的原理。
周四:阅读tensorflow代码。
周五:学习tensorflow
周六:跑出自己的demo
周日:优化demo,做ppt
周一:阅读论文,做ppt

tips:

1.CNN其实是一个简化的DNN,每个filter相当于被剪枝后且共享权重的一堆神经元卷积的特点就是parameter sharing and sparse connection。CNN其实是一种很聪明的模型压缩,他通过卷积运算巧妙的剪枝和减少参数。
2.卷积(convolution)其实并不准确,这个应该是叫互相关(cross-corelation)
3.pooling layer其实也是一种模型压缩的手段,为了提高运行效率,提高提取特征的鲁棒性
4.写tansorflow代码时最重要的厘清tensor的维度传递和net的结构,大脑一定要清晰
5.

问题:

1.CNN是如何对weights进行更新的?
2.卷积核不是有人设计好的吗,设计好的话怎么编写代码?全随机是不是8行?
3.CNN网络train的具体过程?
4.tensorflow主要是工业界还是学术界在使用?

下一阶段目标:

1.可以使用GPU进行更加复杂的训练,掌握tensoeflow的gpu编程方式
2.更加熟练的使用python和tensorflow

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值