keras实战

目录

1. Keras 搭建简单模型

1.1 keras搭建分类模型

1.1.1 搭建一个简单的分类模型

1.1.2 callback的使用

1.2 Keras搭建回归模型

2. Keras搭建深度网络

2.1 搭建一个20层的深度网络

2.1.1实现批归一化

2.1.2使用激活函数——selu

2.1.3 防止过拟合——dropout

3.  keras 模型构建的方法——总结

3.1 先构造Sequential实例,再一层层叠加

3.2 在构造Sequential实例时就加入layers 

3.3 函数式api 

3.4 子类api 


1. Keras 搭建简单模型

1.1 keras搭建分类模型

1.1.1 搭建一个简单的分类模型

其中涉及:

loss的选择:sparse_category_crossentropycategory_crossentropy

激活函数的选择:relusoftmax

对数据进行归一化等

代码详见:

1.1.2 callback的使用

callbacks 中加入 Tensorboard, EarlyStopping, ModelCheckPoint

tree显示当前目录的文件夹结构

打开tensorboard: 输入tensorboard –logdir=callbacks

在浏览器中打开 localhost:6006,就可以看到tensorBoard的界面啦。

如果遇到问题,可以看我的另一篇博客:

在docker中使用tensorboard,localhost拒绝请求的解决办法_zhao_crystal的博客-CSDN博客

希望可以帮助到你。

1.2 Keras搭建回归模型

在分类问题中:label 是离散的(即预测的是类别), 模型的输出是概率分布

eg:三分类问题输出的例子:[0.2, 0.7, 0.1]

损失函数一般可以用:平方差损失和交叉熵损失(一般交叉熵损失是一个比较好的选择,因为其可以衡量两个分布的距离)

交叉熵和KL散度有什么关系吗

在回归问题中,label是连续的(预测的是一个有大小的值), 模型输出是一个实数值

eg:在这里说预测值更合适,比如房价,无人驾驶中方向盘转动的角度

损失函数一般可以用:预测值与真实值的差距,平方差损失,绝对值损失

在一些情况下,可以将连续的预测值量化,从而将回归问题转化为分类问题。

这里我们使用california_housing数据集,构建了一个三层的模型,和分类模型不同的是,最后一层的输出神经元为1,输出为一个实数。

代码详见:

2. Keras搭建深度网络

用的是fashion_mnist数据集。

2.1 搭建一个20层的深度网络

这里我们搭建一个20层的网络,要搭建20层,那岂不是要add20次。聪明的我们可以用for循环呀?

如下是loss 和 accuracy曲线

为什么在最开始的几次迭代中,loss不下降?

(1)由于参数众多,训练不充分

(2)梯度消失:对于深度神经网络来说,离目标函数比较远的底层网络的梯度比较微小的现象。主要是由于链式法则引起,因为需要对复合函数f(g(x)) 求梯度。

2.1.1实现批归一化

不知道批归一化是什么?可以看

深度学习基础知识_zhao_crystal的博客-CSDN博客

 从图中可以看出,批归一化可以缓解梯度消失

代码详见:

2.1.2使用激活函数——selu

selu:自带归一化的一个激活函数

代码详见:

2.1.3 防止过拟合——dropout

Dropout

AlphaDropout:1. 均值和方差不变,2.归一化性质不变

代码详见:

3.  keras 模型构建的方法——总结

3.1 先构造Sequential实例,再一层层叠加

代码详见:

3.2 在构造Sequential实例时就加入layers 

代码详见:

3.3 函数式api 

代码详见:

3.4 子类api 

 

 代码详见:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值