TensorfFlow2.0 (2) 超参数搜索代码实战

本文详细介绍了超参数的概念,包括网格搜索、随机搜索、遗传算法搜索和启发式搜索四种策略,并通过手动实现与Keras库的应用,展示了超参数搜索的代码实战。重点讲解了如何在TensorFlow2.0中应用随机搜索来优化模型性能。
摘要由CSDN通过智能技术生成

一、 概念

               在神经网络中有许多参数,而超参数就是神经网络训练过程中不变的参数,也就是在训练之前设置好的参数,

               而不是训练

               得到的参数。比如说,神经网络结构:层数,宽度,激活函数、训练参数:batch_size,学习率,学习率衰减算法。

               而超参数搜索就是让机器自己选择合适的超参数的值,以省下我们大量的精力。

 

二、 搜索策略

               超参数的搜索策略一共有以下几种

               2.1 网格搜索

               2.2 随机搜索

               2.3 遗传算法搜索

               2.4 启发式搜索

          2.1 网格搜索

                         假设我们需要对两个超参数进行搜索,那我们就设定一个二维矩阵,x 轴对应超参数 1 ,y 轴对应超参数 2,

                         机器就会将两个超参数的值两两组合,找到最合适的值和最合适的搭配。

                         我们可以总结如下:

                          定义 n 维方格

                         每个方格对应一组超参数

                         一对一对尝试

          2.2 随机搜索

                         在选定的参数范围内随机生成超参数数组,并对超参数进行组合,以达到最优解。

                        总结如下:

                        生成方式随机

                        可探索的空间更大

          2.3 遗传算法搜索

                        初始化候选超参数集合

                        训练筛选 -> 得到模型的生存概率

                        淘汰并选择一部分

                        交叉 -> 变异

                        得到下一代

                        迭代

          2.4 启发式搜索

                       启发式搜索是以前研究热点 —— AutoML 的一部分,在其的子领域神经网络结构搜索

                       原理如下:(具体原理有空的话会再写一篇博文)

                       使用循环神经网络来生成参数,生成参数后根据参数生成新的网络结构来进行训练

                       训练后,使用强化学习的思维,生成反馈机制,再来训练我们的循环神经网络

                       

三、 手工实现超参数搜索代码实战

              手工实现的话,缺点在于比较繁琐,下面展示的只是一个参数的修改,而实际上我们需要修改的远远不止一个参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值