学习opencv 停车场车位识别,用到神经网络模型训练,使用keras框架。
记下一篇学习笔记。
keras中文文档
keras 官方文档中总结了keras框架的几个指导原则:
- 用户友好
- 模块化(在我们构建自己的神经网络时候, 特别是神经网络层、损失函数、优化器、初始化方法、激活函数、正则化方法,它们都是可以结合起来构建新模型的模块。)
- 易于扩展
- 基于python 实现
keras 的核心数据结构是model,最简单的是顺序模型 Sequential ,
对于更复杂的结构,有 Keras 函数式 API,它允许构建任意的神经网络图。
从简单的顺序结构Sequential开始:
Sequential模型是层的线性堆栈
顺序结构给人一种感觉就是一条线下来,把所有需要的模块罗列下来。
from keras.models import Sequential
model = Sequential()
1 首先指定输入的形状shape
通过Sequential模型的第一层来确定模型中输入数据的shape,只需要在第一层中定义,因为其它层
可以进行自动形状推断。
接着就使用.add()
来堆叠模型。
Dense中参数的含义
参数的含义
from keras.layers import Dense
# units表示该层输出的维度
# activation表示激活函数
# input_dim表示张量的维度
model.add(Dense(units=64, activation='relu', input_dim=100))
model.add(Dense(units=10, activation='softmax'