面试问到了keras后端,好好总结一下。
什么是后端?
keras是一个模型级的库,提供了快速构建深度学习网络的模块。Keras并不处理如张量乘法、卷积等底层操作。这些操作依赖于某种特定的、优化良好的张量操作库。Keras依赖于处理张量的库就称为“后端引擎”。
Keras提供了两种后端引擎Theano/Tensorflow,并将其函数统一封装,使得用户可以以同一个接口调用不同后端引擎的函数
如何修改后端
windows下打开:C:\Users\Administrator.keras\keras.json 文件,文件中配置了keras后端信息。
{
“floatx”: “float32”,
“epsilon”: 1e-07,
“backend”: “tensorflow”,
“image_data_format”: “channels_last”
}
- “floatx”:字符串,“float16”、"float32"和"float64"之一,是浮点数精度
- “epsilon”:防止除0的小数值
- “backend”:字符串,为"tensorflow"或"theano",规定使用的后端
- image_dim_ordering:字符串,“tf"或"th”,该选项指定了Keras将要使用的维度顺序,可通过keras.backend.image_dim_ordering()来获取当前的维度顺序。对数据来说,tf假定维度顺序为(rows,cols,channels)而th假定维度顺序为(channels, rows, cols)。
可以通过修改配置文件修改后端信息。