theano 以及 TensorFlow 是 keras 的 backend(后端支持),因此,keras 本质上是对 thenao 或者 TensorFlow 的进一步封装(wrapper)。
- keras 安装完成之后,会自动在用户 home 目录创建
.keras/keras.json
文件,用于配置 keras 的一些基本信息:
"backend": "tensorflow"
1. keras 下的 packages
keras.layers(对 layer 的抽象)
- from keras.layers import Input:输入层(首字母大写,是一个类,表示输入层),类构造函数接受的参数分别有,
- shape:tuple 类型,标识维度信息
- from keras.layers import Dense:全连接层,该类构造函数接收的参数分别有:
- output_dim:下一层的神经元的数目
- activation:字符串类型,默认为
'linear'
,所以一定要使用关键字参数的形式,对其进行设置;
- from keras.layers import Input:输入层(首字母大写,是一个类,表示输入层),类构造函数接受的参数分别有,
keras.models(对最终训练学习到的模型进行抽象)
- from keras.models import Model,其构造函数接受的参数分别为:
- input,输入
- output, 输出
- 很像 theano 下的
theano.function(...)
- from keras.models import Model,其构造函数接受的参数分别为:
Model 类更为重要的是其丰富的成员函数,ae = Model(input=…, output=…)
- ae.compile(),参数列表主要有:
- optimizer:字符串类型,
adam
/...
- loss:字符串类型,
mse
/...
- optimizer:字符串类型,
ae.fit(),用于正式的训练,参数列表主要有:
- x, y:输入和输出,比如对于自编码器,x 和 y 是一致的;
- shuffle:是否 shuffle 数据
ae.predict():对单个的样本进行预测;
- ae.compile(),参数列表主要有: