这篇教程Keras基本概念写得很实用,希望能帮到您。
基本概念
- Keras的核心数据结构是模型,也就是一种组织网络层的方式,最主要的是序贯模型(Sequential).创建好一个模型后就可以用add()向里面添加层.模型搭建完毕后需要使用complie()来编译模型,之后就可以开始训练和预测了(类似于sklearn).
- Sequential其实是模型的一种特殊情况,单输入单输出,层与层之间只有相邻关系.而通用的模型被称为函数式模型(function model API),支持多输入多输出,层与层之间可以任意相连.
- Keras的底层库是Theano或TensorFlow,它们是符号式的库,也就是首先定义各种变量,然后建立一个规定各个变量之间计算关系的计算图,最后再把运算的输入放进去形成数据流从而输出.
- 张量(tensor)是向量或矩阵的自然推广,也就是数字的多阶排列.张量的阶数也称为维度或者轴(axis).
- 深度学习的优化算法一般是梯度下降,一般采用的是小批量梯度下降(mini-batch gradient decent),需要把数据分为若干批,按批来更新参数.Keras中的batch指的就是这个批,每个batch对应网络的一次更新.
- epochs指的就是所有批次的单次训练迭代,也就是总数据的训练次数.每个epoch对应网络的一轮更新.
- model.save(filepath)可以保存模型及权重,配置信息在一个HDF5文件中,models.load_model(filepath)可以重新实例化模型.
keras获得model中某一层的某一个Tensor的输出维度 keras序贯(Sequential)模型 |