以下为读书笔记
摘要
这篇文章主要记述了博主初识深度学习的过程包括安装Tensorflow,,Keras的方法和其中遇到的问题,并以MINIST(基于TensorFlow)为例子分别构建线性层的Softmax回归模型和多层卷积神经网络Softmax回归模型来学习框架的使用。
环境说明
环境:
- windows10
- python3.7
- 编译器:Spyder3.3.3
其他:
- Annaconda:开源的包、环境管理器,里面集成了Python的库,如numpy、matplot等,博主之前装了Python3.7,又下载了Annaconda:在其中配置了Python3.6环境,很是方便,直接去官网Download自己需要的版本就好:Annaconda官网!
小谈TensorFlow和Keras
TensorFlow
概念
Google的TensorFlow开源深度学习框架可以理解为是一个“数学函数”集合和AI训练学习的执行框架,在世界深度学习框架范围内拥有最高的知名度,通过它我们只需要少量的代码就可以很好地完成AI模型的建立和训练,而不需要很强的编程功底,对科学研究人员是一大福利,我想这也许也是Python迅速崛起的原因,毕竟大多数人没有那么多时间去学习复杂的C++。
有关TensorFlow的内容欢迎访问TensorFlow中文社区
Keras
概念
Keras是一个高级神经网络API,用Python编写,支持python2.7-3.6,能够在Tensorflow,CNTK或Theano之上运行,它的开发重点是实现快速研究(简单来说就是比Tensorflow使用方便,框架更灵巧简约,运算速度更快)
Keras设计原则
-
用户友好:Keras是专为人类设计的API,以用户体验为中心。Keras遵循减少认知并进行高效研究:它提供一致且简单的API,最大限度减少用户所需操作的东西,并且可以根据用户错误提供清晰且可操作的反馈。
-
模块化:模型被理解为独立的,完全可配置的模块的序列或图形,可以通过尽可能少的限制将其插入到一起。特别是,神经层,成本函数,优化器,初始化方案,激活函数和正则化方案都是独立的模块,您可以将它们组合在一起以创建新模型。
-
易扩展性:新模块易于添加(作为新类和函数),现有模块提供了充足的示例。为了能够轻松创建新模块,可以实现全面的表现力,使Keras适合高级研究。
-
使用Python:没有声明格式的单独模型配置文件。模型在Python代码中描述,它紧凑,易于调试,并且易于扩展。