[论文解读] Evolving Deep Convolutional Neural Networks for Image Classification
本论文提出 EvoCNN,一种基于遗传算法的方法,用于自动进化 CNN 架构和权重初始化以进行图像分类,采用可变长度编码和高效的适应度评估。
Evolutionary computation methods have been successfully applied to neural networks since two decades ago, while those methods cannot scale well to the modern deep neural networks due to the complicated architectures and large quantities of connection weights. In this paper, we propose a new method using genetic algorithms for evolving the architectures and connection weight initialization values of a deep convolutional neural network to address image classification problems. In the proposed algorithm, an efficient variable-length gene encoding strategy is designed to represent the different building blocks and the unpredictable optimal depth in convolutional neural networks. In addition, a new representation scheme is developed for effectively initializing connection weights of deep convolutional neural networks, which is expected to avoid networks getting stuck into local minima which is typically a major issue in the backward gradient-based optimization. Furthermore, a novel fitness evaluation method is proposed to speed up the heuristic search with substantially less computational resource. The proposed algorithm is examined and compared with 22 existing algorithms on nine widely used image classification tasks, including the state-of-the-art methods. The experimental results demonstrate the remarkable superiority of the proposed algorithm over the state-of-the-art algorithms in terms of classification error rate and the number of parameters (weights).
研究动机与目标
- 激发对 CNN 架构设计和权重初始化的需求,能够超越人工调参的扩展性。
- 提出一种灵活的、可变长度的基因编码,用以表示 CNN 块和深度。
- 为深度 CNN 发展出高效的基于 GA 的适应度评估和权重初始化方案。
- 实现在保持高准确率的同时,自动发现具有更少参数的 CNN 架构。
提出的方法
- 引入一种可变长度的基因编码策略,用以表示卷积层、池化层和全连接层。
- 仅编码权重的两种统计量(均值和标准差),以初始化潜在数百万个参数。
- 使用 Slack Binary Tournament 进行父代选择,以在均值性能和模型大小之间取得平衡。
- 设计 Unit Alignment 交叉,通过交换同单位块来处理可变长度染色体。
- 采用高效的适应度评估,对每个架构进行少量训练轮次,并将准确率的均值/方差以及参数数量作为适应度。
- 应用环境选择以在世代之间维持精英性和多样性。
实验结果
研究问题
- RQ1EvoCNN 是否能够在不需要人工干预的情况下自动发现用于图像分类的有效 CNN 架构?
- RQ2同时进化架构与权重初始化是否能在参数更少的情况下带来超过现有方法的更高准确率?
- RQ3在有限计算资源下,所提出的适应度评估在引导搜索方面有多有效?
- RQ4Unit Alignment 交叉在保持单元完整性的同时,是否能够高效地重组可变长度的架构?
- RQ5使用 EvoCNN 进化 CNN 时,在模型大小和准确性之间会出现哪些权衡?
主要发现
- EvoCNN 在分类错误率和参数数量方面相较于现有方法显示出更优的性能。
- 该方法进化的 CNN 架构可以包含不同的深度和构建块,而无预定义的最大深度。
- 权重初始化通过均值和标准差来表示,使大规模网络的初始权重采样更加高效。
- Slack Binary Tournament 和 Unit Alignment 交叉使在可变长度的多块 CNN 染色体上实现有效的 GA 搜索成为可能。
- 适应度评估使用早期轮次训练和统计量来近似性能,在引导搜索的同时降低计算需求。
- 与许多现有方法相比,EvoCNN 在准确性和权重数量之间取得了有利的权衡。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。