In recent years, Deep Learning models have shown a great performance in complex optimization problems. They generally require large training datasets, which is a limitation in most practical cases. Transfer learning allows importing the first layers of a pre-trained architecture and connecting them to fully-connected layers to adapt them to a new problem. Consequently, the configuration of the these layers becomes crucial for the performance of the model. Unfortunately, the optimization of these models is usually a computationally demanding task. One strategy to optimize Deep Learning models is the pruning scheme. Pruning methods are focused on reducing the complexity of the network, assuming an expected performance penalty of the model once pruned. However, the pruning could potentially be used to improve the performance, using an optimization algorithm to identify and eventually remove unnecessary connections among neurons. This work proposes EvoPruneDeepTL, an evolutionary pruning model for Transfer Learning based Deep Neural Networks which replaces the last fully-connected layers with sparse layers optimized by a genetic algorithm. Depending on its solution encoding strategy, our proposed model can either perform optimized pruning or feature selection over the densely connected part of the neural network. We carry out different experiments with several datasets to assess the benefits of our proposal. Results show the contribution of EvoPruneDeepTL and feature selection to the overall computational efficiency of the network as a result of the optimization process. In particular, the accuracy is improved reducing at the same time the number of active neurons in the final layers.
翻译:近年来,深地学习模型在复杂的优化问题上表现良好,通常需要大量培训数据集,这是多数实际情况下的限制。传输学习可以输入经过训练的架构的第一层,并将其与完全连接的层连接起来,以适应新的问题。因此,这些层的配置对于模型的性能至关重要。不幸的是,这些模型的优化通常是计算上要求很高的任务。优化深地学习模型的一个战略是修剪计划。预留方法的重点是降低网络的复杂性,假设模型一旦修剪后会受到预期的性能处罚。然而,可使用优化算法来改进性能,从而发现并最终消除神经元之间的不必要连接。这项工作提出了EvoPrune-DeepTL,这是基于深神经网络的传输学习的演进性运行模式,它用基因算法优化的微薄层取代最后完全连接的层。根据解决方案编码战略,我们提议的模型可以在与核心连接的精度网络精度上进行优化的运行或特性选择。我们提出的神经网络的精度选择的精度部分,我们用不同的方式对结果的精度进行实验。我们用精度的精度来评估结果的精度的精度计算。