CS20SI+tensorflow学习笔记(一)

个人笔记,如有错误,欢迎指正。

(一)深度学习框架概述

tensorflow是目前程序员中使用比例最高的深度学习框架,深度学习框架简单来说就是库,在编程时需要import tensorflow 进行使用,深度学习框架像一套积木,其各个组件可以是某一个模型,也可以是某一个算法,利用这个框架,我们可以自己去设计模型去训练数据,也可以使用已有的模型和参数训练数据。

(二)深度学习框架核心组件

框架有五大组件:张量、基于张量的各种操作、计算图、自动微分工具、BLAS/CUBLAS/CUDNN等拓展包

张量:代数中定义的张量是基于矩阵和向量的推广,注意其维度,一张RGB彩色图片表示成一个3阶张量;将数据抽象成张量表示,处理速度快;Python numpy包中numpy.imread和numpy.imsave两个方法,分别是图片到张量,张量到图片。

数学运算和处理过程:数据学习的过程中,涉及到矩阵乘法、卷积、池化等数学操作,注意大部分张量操作都是基于抽象类的,而非应用函数,即不面向过程编程。

计算图:上面的各种过程整合在一起,会涉及到多个操作是并行还是顺次执行,如何协同各种不同的底层设备,如何避免各种类型的冗余操作等。这里的计算图就是为了解决这个问题,在后来成熟的框架中,图形结构在开发框架中在Python建模和c++执行(底层)之间耦合,将计算图作为前后端之间的中间表示,可带来良好的交互性。

自动微分:相对于自动微分,对一些非线性过程(如ReLU),使用符号微分成本高昂。

运算效率:为了提高运算效率,可以使用高级语言和C语言交互的方式,也可以使用可以方便转为底层语言的高级语言,如Cython;为了提高运算效率,可以利用一些拓展包进行加速,BLAS对CPU加速,CUDNN对GPU加速。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值