机器学习之 了解TensorFlow
来源:互联网 发布:linux查找路径命令 编辑:程序博客网 时间:2024/05/18 16:38
1、关于Python中的数值计算
1.python 对数值计算过程中借助numpy之类的函数库实现高效计算,即通过外部计算实现复杂运算,如矩阵运算。
劣势:外部计算同python之间的切换需要很大的时间开销;
2.GPU加速计算的实现,并不是由于它比CPU计算效率高,而是其并行计算加快了运算。
劣势:CPU(或内存)与GPU之间数据的传输相当耗时;
2、关于计算图(Computational Graphs)
可以用一种图形化语言来描述数学运算,其中图的节点表示一个变量,变量的类型可以为标量、向量、矩阵或张量,用图的边来表示运算。如图(图片来自Bengio等人的Deep Leaning):
其中这四个计算图依次表示标量乘法、Logistic regression、Feedforward algorithm、神经网络带正则项的损失函数的计算过程。
3、关于Symbol-to-Symbol的计算模式
为清晰的说明Symbol-to-Number与Symbol-to-Symbol之间的区别,还是求导运算为例通过引用Bengio等人的话来理解吧。
symbol-to-number: Taking a computational graph and a set of numerical values for the inputs to the graph, then return a set of numerical values describing the gradient at those input values;
symbol-to-symbol: Taking a computational graph and add additional nodes to the graph that provide a symbolic description of the desired derivatives.
如图(图片来自于Bengio等人的DeepLearning)即为通过Symbol-to-Symbol模式求
4、TensorFlow的计算模式
我觉得TensorFlow计算的一个主要设计初衷就是围绕我最开始写到的关于Python的数值计算和GPU加速计算,进行优劣进行扬长避短的设计的:把复杂运算放在python之外完成,减少从外部运算切回Python以及各计算单元(CPU或GPU)之间数据迁移的操作,比如通过symbol-to-symbol的计算模式,将计算图的定义转换成分布式执行的操作, 充分利用可用的计算资源,最后以节点符号返回我们关注的计算对象并进行赋值。
由于没有深入了解,就权当一点读书笔记和个人想法吧。
- 机器学习之 了解TensorFlow
- 机器学习入门之了解机器学习
- 机器学习笔记5:TensorFlow的了解与运行
- 机器学习之TensorFlow框架学习笔记
- TensorFlow之MNIST机器学习入门
- TensorFlow框架(5)之机器学习实践
- TensorFlow框架(5)之机器学习实践
- TensorFlow框架(5)之机器学习实践
- TensorFlow框架之MNIST机器学习入门
- 机器学习2:开始Tensorflow之旅
- Python与机器学习之TensorFlow方法论
- 机器学习之基础理论相关了解
- 机器学习之入门篇(了解机器学习)
- 机器学习6-tensorflow
- 新手机器学习-tensorflow
- 机器学习-TensorFlow安装
- [机器学习收藏] TensorFlow初学者必须了解的55个经典案例
- 了解点机器学习
- socket说明
- python 画图--饼图
- 获取屏幕的宽度和高度
- 报错 MYSQL --Subquery returns more than 1 row
- Android启动界面先白屏然后才出现画面的解决办法
- 机器学习之 了解TensorFlow
- Ionic 常见问题及解决方案
- 第一份博客
- 802.11 MAC基础
- ASIO协程彻底转变你的思维
- c/c++第三天
- POJ-多边形的应用(皮克公式)
- 红黑树
- oracle扩展表空间