<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Comput. Neurosci.</journal-id>
<journal-title>Frontiers in Computational Neuroscience</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Comput. Neurosci.</abbrev-journal-title>
<issn pub-type="epub">1662-5188</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fncom.2021.760554</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Dynamical Conventional Neural Network Channel Pruning by Genetic Wavelet Channel Search for Image Classification</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Chen</surname> <given-names>Lin</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1250579/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Gong</surname> <given-names>Saijun</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1446870/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Shi</surname> <given-names>Xiaoyu</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1250611/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Shang</surname> <given-names>Mingsheng</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/1513840/overview"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Chongqing Institute of Green and Intelligent Technology, Chinese Academy of Sciences (CAS)</institution>, <addr-line>Chongqing</addr-line>, <country>China</country></aff>
<aff id="aff2"><sup>2</sup><institution>School of Information Science and Technology, Tibet University</institution>, <addr-line>Lhasa</addr-line>, <country>China</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Song Deng, Nanjing University of Posts and Telecommunications, China</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Yi He, Old Dominion University, United States; Ji Xu, Guizhou University, China</p></fn>
<corresp id="c001">&#x0002A;Correspondence: Xiaoyu Shi <email>xiaoyushi&#x00040;cigit.ac.cn</email></corresp>
</author-notes>
<pub-date pub-type="epub">
<day>27</day>
<month>10</month>
<year>2021</year>
</pub-date>
<pub-date pub-type="collection">
<year>2021</year>
</pub-date>
<volume>15</volume>
<elocation-id>760554</elocation-id>
<history>
<date date-type="received">
<day>18</day>
<month>08</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>28</day>
<month>09</month>
<year>2021</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2021 Chen, Gong, Shi and Shang.</copyright-statement>
<copyright-year>2021</copyright-year>
<copyright-holder>Chen, Gong, Shi and Shang</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license> </permissions>
<abstract><p>Neural network pruning is critical to alleviating the high computational cost of deep neural networks on resource-limited devices. Conventional network pruning methods compress the network based on the hand-crafted rules with a pre-defined pruning ratio (PR), which fails to consider the variety of channels among different layers, thus, resulting in a sub-optimal pruned model. To alleviate this issue, this study proposes a genetic wavelet channel search (GWCS) based pruning framework, where the pruning process is modeled as a multi-stage genetic optimization procedure. Its main ideas are 2-fold: (1) it encodes all the channels of the pertained network and divide them into multiple searching spaces according to the different functional convolutional layers from concrete to abstract. (2) it develops a wavelet channel aggregation based fitness function to explore the most representative and discriminative channels at each layer and prune the network dynamically. In the experiments, the proposed GWCS is evaluated on CIFAR-10, CIFAR-100, and ImageNet datasets with two kinds of popular deep convolutional neural networks (CNNs) (ResNet and VGGNet). The results demonstrate that GNAS outperforms state-of-the-art pruning algorithms in both accuracy and compression rate. Notably, GNAS reduces more than 73.1% FLOPs by pruning ResNet-32 with even 0.79% accuracy improvement on CIFAR-100.</p></abstract>
<kwd-group>
<kwd>neural network pruning</kwd>
<kwd>neural architecture search</kwd>
<kwd>wavelet features</kwd>
<kwd>neural network compression</kwd>
<kwd>image classification</kwd>
</kwd-group>
<counts>
<fig-count count="6"/>
<table-count count="7"/>
<equation-count count="11"/>
<ref-count count="40"/>
<page-count count="11"/>
<word-count count="7017"/>
</counts>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<title>1. Introduction</title>
<p>Deep convolutional neural networks (CNNs) have achieved substantial progress in many research fields, such as computer vision (Wang et al., <xref ref-type="bibr" rid="B30">2019</xref>), natural language processing (Gim&#x000E9;nez et al., <xref ref-type="bibr" rid="B4">2020</xref>), and information recommendation (Wu et al., <xref ref-type="bibr" rid="B32">2021a</xref>,<xref ref-type="bibr" rid="B33">b</xref>). However, the number of parameters in deep CNN-based models (e.g., ResNet-50 He et al., <xref ref-type="bibr" rid="B6">2016</xref>) generally exceeds hundreds of megabytes. It needs billions of floating number operations (FLOPs) to run these deep models, bringing a significant challenge to deploy large networks on devices with limited resources (e.g., mobile phone, robot, drone). Thus, the huge storage and the expensive computational costs have become significant problems to hinder practical applications of deep CNNs in complex real-world scenarios.</p>
<p>Neural network compression (Renda et al., <xref ref-type="bibr" rid="B25">2020</xref>; Xu et al., <xref ref-type="bibr" rid="B34">2020</xref>) has been proposed to accelerate the deep CNNs computation. Network pruning is one of the most intuitive methods to create a small-scale network by reducing redundant and non-informative weights (Li et al., <xref ref-type="bibr" rid="B16">2016</xref>; Yang et al., <xref ref-type="bibr" rid="B36">2017</xref>). The critical point in network pruning is finding a proper metric to measure the importance of the pruned parts. One solution is deleting the weights with small absolute values (Liu et al., <xref ref-type="bibr" rid="B19">2017</xref>) under the presumption that the smaller value of a weight parameter is, the less impact it has on the final result. But this intuitive assumption has been proved invalid in some cases (Ye et al., <xref ref-type="bibr" rid="B39">2018</xref>). On the other hand, many other pruning algorithms have been developed, such as judging the influence of parameter clipping on training loss (Molchanov et al., <xref ref-type="bibr" rid="B22">2016</xref>) or the reconstruction errors of feature outputs (He et al., <xref ref-type="bibr" rid="B10">2017</xref>). However, such algorithms mainly rely on human expert knowledge and hand-crafted pruning rules.</p>
<p>In addition, prevailing methods usually ignore the variety of channels among layers (He et al., <xref ref-type="bibr" rid="B8">2018</xref>, <xref ref-type="bibr" rid="B9">2019</xref>). The candidates of sub-networks are chosen according to various evaluation criteria with the pre-defined pruning ratio (PR) for each layer or block. In this case, no matter which specific channels are pruned, the compressed network architecture remains the same. As mentioned in Gu et al. (<xref ref-type="bibr" rid="B5">2018</xref>) and He et al. (<xref ref-type="bibr" rid="B7">2020</xref>), the channels of different layers have various functions. Thus, the truly informative (or discriminative) channels might be wrongly removed if the PR is fixed (Yang et al., <xref ref-type="bibr" rid="B37">2018</xref>; Liu et al., <xref ref-type="bibr" rid="B20">2019</xref>), resulting in a decrease in the test accuracy of the pruned network. Furthermore, these manually-set pruning parameters may be the sub-optimal trade-off between the model size and prune accuracy.</p>
<p>Recently, automatic pruning algorithms with neural architecture search (NAS) approaches (Chen et al., <xref ref-type="bibr" rid="B1">2021</xref>; Jia et al., <xref ref-type="bibr" rid="B13">2021</xref>; Liang et al., <xref ref-type="bibr" rid="B17">2021</xref>; Wang et al., <xref ref-type="bibr" rid="B29">2021a</xref>; Xu et al., <xref ref-type="bibr" rid="B35">2021</xref>; Yang et al., <xref ref-type="bibr" rid="B38">2021</xref>) are identified as a promising way to automate network compression. It casts the network pruning problem into the NAS framework, i.e., the search space of NAS is the parameters of the pre-trained network to be pruned. A typical NAS-based pruning model (Dong and Yang, <xref ref-type="bibr" rid="B2">2019</xref>; Jiahui and S., <xref ref-type="bibr" rid="B14">2019</xref>; Liu et al., <xref ref-type="bibr" rid="B20">2019</xref>) explores the potential sub-network architectures from the pre-trained network. Then the intermediate compressed model is evaluated and fine-tuned sequentially to construct the final output. However, prevailing NAS-based algorithms (Jiahui and S., <xref ref-type="bibr" rid="B14">2019</xref>; Liu et al., <xref ref-type="bibr" rid="B20">2019</xref>) usually simplify the network at a coarse-grained level while ignoring the critical specific channels.</p>
<p>This study proposes a novel NAS-based pruning model named GWCS. It can dynamically prune a pre-trained network at the channel level while maintaining the model accuracy. First, we formulate the network compression task as a combinatorial optimization problem. Specifically, we genetically encode each channel in the pre-trained network and prune it adaptively using a dynamic selection operation in multiple stages with a wavelet channel aggregation (WCA) based fitness function. As shown in <xref ref-type="fig" rid="F1">Figure 1</xref>, our dynamic network pruning model yields much higher prune accuracy than the hand-crafted pruning method for ResNet series models on CIFIA-100. Notably, our model even accelerates ResNet32 and ResNet56 three times, along with the improved classification results.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>We compare classification accuracy vs. computational complexity (FLOPs) with ResNet series models on CIFIA-100. Our pruning method with a more flexible optimization procedure obtains more promising results than filter pruning algorithm based on geometric median (FPGM) (He et al., <xref ref-type="bibr" rid="B9">2019</xref>) with the fixed pruning rate.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0001.tif"/>
</fig>
<p>This study makes innovative contributions in the automatic network pruning process for image classification as follows:</p>
<p>(1) We develop a GWCS pipeline to prune the pre-trained network dynamically. It models the channel-wise network pruning task as a multi-stage genetic optimization procedure. (2) We introduce a WCA based fitness function to evaluate and exploit the most informative channels. (3) Extensive experiments are conducted to demonstrate the effectiveness of the proposed dynamic channel pruning model on some popular benchmark datasets, including CIFAR-10, CIFAR-100, and ImageNet. Our GWCS outperforms the tested state-of-the-art models regarding pruning accuracy and network compression rate.</p>
<p>The rest of the study is organized as follows: Section 2 presents the proposed genetic wavelet channel search scheme. The experimental results are provided in section 3, following the discussion in section 4.</p>
</sec>
<sec sec-type="methods" id="s2">
<title>2. Methods</title>
<sec>
<title>2.1. Overview of GWCS</title>
<p>This study aims to remove the redundant channels from the pre-trained network <italic>M</italic> for generating a pruned output <italic>O</italic> with reliable classification results. We approach the problem of compressing the network with flexible pruning layers as a genetic search framework. It contains three steps which are shown in <xref ref-type="fig" rid="F2">Figure 2</xref>: (1) Training a large CNNs (the pre-trained network <italic>M</italic>), (2) Using GWCS to prune the channels in pre-trained network <italic>M</italic> layer by layer, (3) Knowledge distilling (KD) the pruned network to recover the model accuracy. In the search process, the most critical part is to effectively and flexibly remove the inadequate channels in the pre-trained network <italic>M</italic> without significantly compromising accuracy. Next, we will introduce our GWCS model to address this problem.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>Overview of GWCS model. The input CNNs <italic>M</italic> is the pre-trained model. The circles in figures mean channels. The pre-trained CNNs <italic>M</italic> can be encoded and pruned through GGS during the iteration process. Finally, the pruned network containing the most informative channels can be fine-tuned by KD.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0002.tif"/>
</fig>
</sec>
<sec>
<title>2.2. Genetic Wavelet Channel Search</title>
<sec>
<title>2.2.1. Gradual Genetic Search (GGS)</title>
<p><bold>Initialization</bold>. Our proposed GWCS strategy is an iterative process in which the initial network is made gradually better as a group called a population. At first, all the channels of pre-trained network <italic>M</italic> can be encoded into random binary genotypes to generate the population <inline-formula><mml:math id="M1"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:math></inline-formula>, in which we denote the candidate compressed network <inline-formula><mml:math id="M2"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:math></inline-formula> standing for the <italic>i</italic>th instance in <inline-formula><mml:math id="M3"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:math></inline-formula>:</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M4"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where <italic>i</italic> &#x02208; {1, 2, &#x02026;, <italic>NP</italic>}, and <italic>NP</italic> and <italic>N</italic> is the total number of population individuals. <italic>N</italic> is the total number of the channels in <bold>X</bold><sub><italic>i</italic></sub>, and <inline-formula><mml:math id="M5"><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> means the <italic>j</italic>-th channel code of <bold>X</bold><sub><italic>i</italic></sub>, while <inline-formula><mml:math id="M6"><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> represents the corresponding channel to be pruned; otherwise, <inline-formula><mml:math id="M7"><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula> means the channel will be reserved.</p>
<p>All the individuals of <bold>X</bold><sub><italic>i</italic></sub> are grouped into the population set <inline-formula><mml:math id="M8"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:math></inline-formula>, defined in Equation (2):</p>
<disp-formula id="E2"><label>(2)</label><mml:math id="M9"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" columnalign="left" equalrows="false" columnlines="" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mstyle displaystyle="true"><mml:munder accentunder="false"><mml:mrow><mml:msub><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>P</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mo>&#x0FE38;</mml:mo></mml:munder></mml:mstyle></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>h</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>n</mml:mi><mml:mi>e</mml:mi><mml:mi>l</mml:mi><mml:msup><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mtext>&#x000A0;</mml:mtext><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>d</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:munder></mml:mstyle></mml:mtd></mml:mtr><mml:mtr></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:math></disp-formula>
<p><bold>Gradual Genetic Search</bold>. Searching the entire space with millions of channels in <bold>X</bold><sub><italic>i</italic></sub> is intractable. In this study, we proposed a new strategy, named GGS, to examine the valuable channels hierarchically, rather than directly inspecting all the <inline-formula><mml:math id="M10"><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> in <bold>X</bold><sub><italic>i</italic></sub> as a whole.</p>
<p>The success of CNN mainly attributes to its hierarchical structures from the concrete level to the abstract level, i.e., the convolutions in shallow layers extract coarse features such as color and edges. In contrast, those in deep layers acquire more abstract or semantic features related to the concept of category. The proposed GGS is consistent with this theory. As shown in <xref ref-type="fig" rid="F2">Figure 2</xref>, we divide the neural network searching process into multiple stages according to the down-sampling sizes in CNNs, i.e., we can divide the whole search space into several sub-spaces with multi-scale feature sizes down-sampling from 4&#x000D7; to 32&#x000D7;, e.g., an individual network <bold>X</bold><sub><italic>i</italic></sub> can also be divided as:</p>
<disp-formula id="E3"><label>(3)</label><mml:math id="M11"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>3</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>4</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where the sub-network <inline-formula><mml:math id="M12"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <italic>st</italic> &#x02208; [1, 4]. Note that the maximum iteration number of <italic>T</italic><sup>(<italic>st</italic>)</sup> is set variously in each stage due to the total number of channels in <inline-formula><mml:math id="M13"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> is different.</p>
<p><bold>Crossover</bold>. In every iteration, we can produce a new group of offspring (i.e., new codes of the pruned network) using variations through the crossover operator. First, we randomly selected two chromosomes as parents, e.g., <inline-formula><mml:math id="M14"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> and <inline-formula><mml:math id="M15"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> are chosen to exchange channel bits at certain points. After that, a new offspring <inline-formula><mml:math id="M16"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> can be generated by using the multipoint crossing strategy based on the selected parents <inline-formula><mml:math id="M17"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> and <inline-formula><mml:math id="M18"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>, which can be formulated as:</p>
<disp-formula id="E4"><label>(4)</label><mml:math id="M19"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext mathvariant="bold">G</mml:mtext><mml:mo>&#x025E6;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mo>|</mml:mo><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mtext mathvariant="bold">G</mml:mtext><mml:mo>|</mml:mo><mml:mo>&#x025E6;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where <bold>G</bold> is a random vector of bits (0 or 1) to disrupt the codes of selected parents.</p>
<p><bold>Mutation</bold>. The mutation operator is applied to further enhance the diversity of offspring and the ability of the model to escape from local optimization. We use the binary mutation strategy by flipping the bit randomly in <inline-formula><mml:math id="M20"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> to produce a new individual <inline-formula><mml:math id="M21"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>, defined as follows.</p>
<disp-formula id="E5"><label>(5)</label><mml:math id="M22"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mi>H</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where <italic>H</italic>(&#x000B7;) means that a total of <italic>p</italic>_<italic>m%</italic> of binary codes in randomly selected channels will be flipped. In our study, the bit flip in the genotype space could potentially create a different pruned network.</p>
<p><bold>Selection</bold>. Every candidate of the lightweight network in the population (including both parents and offspring) will be evaluated for survival and reproduction (becoming a parent) in each iteration. For each network at stage <inline-formula><mml:math id="M23"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>, the top K individuals with the highest fitness are selected based on the Roulette Wheel algorithm with a survival probability of <italic>p</italic>_<italic>s%</italic>, to form the next generation. In this study, the <inline-formula><mml:math id="M24"><mml:msubsup><mml:mrow><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> of each <inline-formula><mml:math id="M25"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> at the <italic>st</italic><sub><italic>th</italic></sub> stage can be denoted as follows:</p>
<disp-formula id="E6"><label>(6)</label><mml:math id="M26"><mml:msubsup><mml:mrow><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>F</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:msubsup><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>P</mml:mi></mml:mrow></mml:msubsup><mml:mi>F</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">X</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></disp-formula>
<p>where the <italic>Ft</italic>(&#x000B7;) is the fitness function, which determines whether a potential pruned network could survive and will be introduced in detail below.</p>
</sec>
<sec>
<title>2.2.2. Fitness Function</title>
<p>In GWCS, we aim to find the best individual network after removing the redundancy channels through the fitness evaluation. Considering that the most informative channels should have the minimal reconstruction error of feature maps, our fitness function <italic>Ft</italic>(&#x000B7;) is designed based on the similarity of feature maps between the pre-trained network and pruned network. The output <italic>Ft</italic> can be used as a pruning criterion to identify the best-pruned networks.</p>
<p>Wavelet transform has been successfully applied in image processing. Its primary purpose is to extract the specific properties of the image with the wavelet basis function, which can be formulated as:</p>
<disp-formula id="E7"><label>(7)</label><mml:math id="M27"><mml:msup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x022C6;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msqrt><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac><mml:mstyle displaystyle="true"><mml:msubsup><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x0221E;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x0221E;</mml:mi></mml:mrow></mml:msubsup></mml:mstyle><mml:mi>F</mml:mi><mml:mo>*</mml:mo><mml:mi>&#x003C8;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>&#x003C4;</mml:mi></mml:mrow><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi></mml:math></disp-formula>
<p>where <italic>a</italic> is the scale that controls the stretching of the wavelet, and <bold>&#x003C4;</bold> is the translation that affects the translation of the wavelet. <italic>F</italic> represents the feature maps of the last CNN layer in the input network. In our GWCS algorithm, we adapt the Haar wavelet function (Porwik and Lisowska, <xref ref-type="bibr" rid="B23">2005</xref>) to extract the frequency features due to its simplicity and effectiveness.</p>
<p>To calculate the similarity between the networks with different sizes of features maps (i.e., the total number of channels of the network is variable after the dynamic pruning), we aggregate all the wavelet feature maps into one vector, which is formulated in Equation (8).</p>
<disp-formula id="E8"><label>(8)</label><mml:math id="M28"><mml:msup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo class="qopname">max</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle displaystyle="true"><mml:msubsup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>H</mml:mi><mml:mi>H</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x022C6;</mml:mo></mml:mrow></mml:msubsup></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02295;</mml:mo><mml:mi>A</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle displaystyle="true"><mml:msubsup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>L</mml:mi><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x022C6;</mml:mo></mml:mrow></mml:msubsup></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where <italic>HH</italic> and <italic>LL</italic> represent high-frequency and low-frequency information. &#x02295; is the element-wise addition. The final fused feature vectors <italic>F</italic><sup>&#x0002A;</sup> are generated by the maximum values of <italic>HH</italic> and the average values of <italic>LL</italic> using &#x02295; operation. Comparing to conventional aggregate functions, including global average pooling (GAP) or global max pooling (GMP), more rich information contained in both high- and low-frequency components are more helpful for improving the classification (Qin et al., <xref ref-type="bibr" rid="B24">2020</xref>), i.e., it can further boost the feature similarity estimation.</p>
<p>As is illustrated in <xref ref-type="fig" rid="F3">Figure 3</xref>, both <italic>F</italic><sup>(<italic>st</italic>)</sup> and <inline-formula><mml:math id="M29"><mml:msubsup><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> can be transformed and aggregated by wavelet operation using (Equations 7, 8), denoted as <italic>F</italic><sup>&#x0002A;(<italic>st</italic>)</sup> and <inline-formula><mml:math id="M30"><mml:msubsup><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>, respectively. We can obtain the similarity <inline-formula><mml:math id="M31"><mml:msubsup><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> based on the cosine distance, which can be formulated as:</p>
<disp-formula id="E9"><label>(9)</label><mml:math id="M32"><mml:msubsup><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x000B7;</mml:mo><mml:msubsup><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mrow><mml:mo stretchy="false">&#x02225;</mml:mo><mml:msup><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x02225;</mml:mo><mml:mo>&#x02225;</mml:mo><mml:msubsup><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup><mml:mo stretchy="false">&#x02225;</mml:mo></mml:mrow></mml:mfrac></mml:math></disp-formula>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Details of GGS. We divide the network searching process into multiple stages with different maximum iterations numbers. The final output is the code of the pruned network.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0003.tif"/>
</fig>
<p>The best-pruned network <italic>O</italic> can be achieved by selecting the best individual with the highest fitness from population <inline-formula><mml:math id="M33"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:math></inline-formula> after maximum iterations. The detailed steps of GGS are shown in Algorithm 1, from which we can observe that the time complexity of our GWCS is <italic>O</italic>[<italic>st</italic> &#x0002A; <italic>T</italic><sup><italic>st</italic></sup> &#x0002A; (<italic>NP</italic> &#x0002A; <italic>N</italic> &#x0002A; <italic>size</italic>(<italic>F</italic>) &#x0002B; <italic>NP</italic> &#x0002A; <italic>N</italic> &#x0002B; <italic>N</italic>)].</p>
<table-wrap position="float">
<label>Algorithm 1</label>
<caption><p>Algorithm of the gradual genetic search.</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td align="left" valign="top" colspan="2"><bold>Input</bold>: The original network <italic>M</italic></td>
</tr>
<tr>
<td align="left" valign="top" colspan="2"><bold>Output</bold>: A pruned network <italic>O</italic></td>
</tr>
<tr>
<td align="left" valign="top">1:</td>
<td align="left" valign="top">Randomly initialize the binary codes in networks {<bold>X</bold><sub>1</sub>, <bold>X</bold><sub>2</sub>, &#x022EF;&#x02009;, <bold>X</bold><sub><italic>NP</italic></sub>} to form the initial population <inline-formula><mml:math id="M34"><mml:msub><mml:mrow><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> by Equation (2).</td>
</tr>
<tr>
<td align="left" valign="top">2:</td>
<td align="left" valign="top">Set the maximum iteration number <bold>T</bold>=[<italic>T</italic><sup>1</sup>,&#x02026;,<italic>T</italic><sup>4</sup>] for each searching stage.</td>
</tr>
<tr>
<td align="left" valign="top">3:</td>
<td align="left" valign="top"><bold>for</bold> <italic>st = 1 to 4</italic> <bold>do</bold></td>
</tr>
<tr>
<td align="left" valign="top">4:</td>
<td align="left" valign="top">&#x02003;<bold>while</bold> <italic>t</italic> in <italic>T</italic><sup><italic>st</italic></sup> <bold><italic>do</italic></bold></td>
</tr>
<tr>
<td align="left" valign="top">5:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Calculate</italic> <italic>F</italic><sup>&#x0002A;(<italic>st</italic>)</sup> <italic>and</italic> <inline-formula><mml:math id="M35"><mml:msubsup><mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>*</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>P</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> <italic>by Equation(7, 8)</italic>.</td>
</tr>
<tr>
<td align="left" valign="top">6:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Calculate the fitness</italic> <inline-formula><mml:math id="M36"><mml:msubsup><mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>P</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> <italic>by Equation (9)</italic>.</td>
</tr>
<tr>
<td align="left" valign="top">7:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Select top K individuals from</italic> <inline-formula><mml:math id="M37"><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> <italic>by Eq. (6)</italic>.</td>
</tr>
<tr>
<td align="left" valign="top">8:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Crossover and mutate the top K individuals using (Equation 4, 5)</italic>.</td>
</tr>
<tr>
<td align="left" valign="top">9:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Generate</italic><inline-formula><mml:math id="M38"><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="-tex-caligraphic">A</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula></td>
</tr>
<tr>
<td align="left" valign="top">10:</td>
<td align="left" valign="top">&#x02003;&#x02003;<italic>Update</italic> <italic>t</italic> &#x0003D; <italic>t</italic> &#x0002B; 1</td>
</tr>
<tr>
<td align="left" valign="top">11:</td>
<td align="left" valign="top">&#x02003;<bold><italic>end</italic></bold> <bold><italic>while</italic></bold></td>
</tr>
<tr>
<td align="left" valign="top">12:</td>
<td align="left" valign="top"><bold>end for</bold></td>
</tr>
<tr>
<td align="left" valign="top">13:</td>
<td align="left" valign="top">Select the best individual as the pruned network <italic>O</italic></td>
</tr>
<tr>
<td align="left" valign="top">14:</td>
<td align="left" valign="top"><bold>return</bold> <italic>O</italic></td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec>
<title>2.3. Knowledge Distillation</title>
<p>The fine-tuning (FT) process is crucial for recovering the original performance (Dong and Yang, <xref ref-type="bibr" rid="B2">2019</xref>). In this study, knowledge distillation (KD) (Hinton et al., <xref ref-type="bibr" rid="B11">2015</xref>) is applied to improve the performance of the pruned network. In our model, the pruned network derives from the pre-trained network. Thus, we take the pre-trained network as the teacher network and transfer its knowledge into the pruned network (i.e., the student network).</p>
<p>In the classification task with CNNs, the softmax layer is adopted as the classifier. The softmax output is a one-hot vector, i.e., the classification result is the label with the largest value. However, such logit outputs contain very little information as we cannot learn the relationship between classes except the prediction labels. The output results can be further softened as:</p>
<disp-formula id="E10"><label>(10)</label><mml:math id="M39"><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>z</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>T</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003A3;</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>z</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>T</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></disp-formula>
<p>where <italic>z</italic> is the softmax vector from the pre-trained network. <italic>T</italic> stands for temperature. When <italic>T</italic> tends to zero, the output <italic>q</italic><sub><italic>k</italic></sub> is degraded into the one-hot vector. The pruned network can take the soft target output <italic>q</italic><sub><italic>k</italic></sub> as the training loss to transfer the knowledge from the original unpruned network.</p>
<p>Following the prevailing study in Dong and Yang (<xref ref-type="bibr" rid="B2">2019</xref>), we use the middle layer transfer of KD to optimize the searched network <italic>via</italic> (Equation 11).</p>
<disp-formula id="E11"><label>(11)</label><mml:math id="M40"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mi>a</mml:mi><mml:mi>r</mml:mi><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>
<p>where <italic>L</italic> is the total loss function of KD and <italic>L</italic><sub><italic>n</italic></sub> is the loss function of each training stage.</p>
</sec>
</sec>
<sec sec-type="results" id="s3">
<title>3. Results</title>
<sec>
<title>3.1. Experimental Setting</title>
<sec>
<title>3.1.1. Datasets</title>
<p>In our experiment, we evaluated the tested models on CIFAR-10, CIFAR-100 (Krizhevsky, <xref ref-type="bibr" rid="B15">2009</xref>), and ImageNet (Russakovsky et al., <xref ref-type="bibr" rid="B26">2015</xref>) for image classification tasks. CIFAR-10 consists of 50 k training and 10 k testing 32 &#x000D7; 32 images in 10 classes. Similar to CIFAR-10, the CIFAR-100 dataset has 100 categories. There are 500 training images and 100 verification images for each class. The ImageNet dataset (ISLVRC 2012) (Russakovsky et al., <xref ref-type="bibr" rid="B26">2015</xref>) is a large visual database collected from the real world. it consists of 1,281,167 training images and 50,000 validation images in 1,000 classes. Data augmentation techniques, including random resize, crop, brightness changing, and horizontal flipping are also employed to improve accuracy.</p>
</sec>
<sec>
<title>3.1.2. Implementation Details</title>
<p>Following the previous studies (He et al., <xref ref-type="bibr" rid="B8">2018</xref>, <xref ref-type="bibr" rid="B9">2019</xref>; Dong and Yang, <xref ref-type="bibr" rid="B2">2019</xref>), ResNet series networks (He et al., <xref ref-type="bibr" rid="B6">2016</xref>), and VGGNet-16 (Simonyan and Zisserman, <xref ref-type="bibr" rid="B27">2015</xref>) are chosen as the baseline networks in our pruning experiment. We trained them using the standard stochastic gradient descent (SGD) optimization with batch size 128. Our initial learning rate is set to 0.1, which is gradually reduced with a weight decay of 0.0005. For CIFAR-10, we train the Resnet for 150 epochs and train the VGGNet-16 for 200 epochs, respectively. For CIFAR-100, we train the Resnet for 200 epochs and train the VGGNet-16 for 300 epochs, respectively. For ImageNet, we train the Resnet for 150 epochs and train the VGGNet-16 for 300 epochs, respectively. All models are implemented on dual NVIDIA GTX1080ti GPUs in PyTorch.</p>
</sec>
<sec>
<title>3.1.3. Specific Searching and Training Setting</title>
<p>We take the unpruned network as the initial input for our algorithm in the process of pruning. First, the codes of 50 individuals (which have the same number of channels as the unpruned network) are randomly initialized. Each individual will be evaluated as a candidate pruned network. Then, we search the optimal channels using GGS in multiple stages, i.e., we divided the searching procedure into four stages with the maximum number of iterations in [10, 10, 5, 5]. The top 20 individuals are chosen for crossover and mutating based on the fitness values. Specifically, in crossover operation, two individuals are randomly selected for exchanging 50% of codes with each other. In mutation, 10% of codes of individuals are chosen for mutating, i.e., 0 and 1 interchange. Finally, a new population can be generated by selecting the top 30 individuals for the next iteration.</p>
</sec>
</sec>
<sec>
<title>3.2. Comparison With State-of-the-Art Methods</title>
<p>We compare several state-of-the-art network pruning models published in most recent years in our experiments.</p>
<p><bold>Soft Filter Pruning (SFP):</bold> He et al. (<xref ref-type="bibr" rid="B8">2018</xref>) proposes a SFP method. After training the model at each epoch, the L2 norm of the corresponding channel is calculated. Meanwhile, the lower-ranked channel is set to zero according to a manual pruning rate. Still, the pruned ones will also participate in the next round of iterations instead of deleting them directly.</p>
<p><bold>Discrimination aware channel pruning (DCP):</bold> Zhuang et al. (<xref ref-type="bibr" rid="B40">2018</xref>) implements a pruning method called DCP, which adds discriminative losses into the network and obtains pruned network after a greedy algorithm for channel selection.</p>
<p><bold>Genetic channel pruning (GCP):</bold> Hu et al. (<xref ref-type="bibr" rid="B12">2018</xref>) also uses a genetic algorithm to code and prune the network. However, the GCP searches the entire pre-trained network as a whole and prunes it with a group of manually assigned compression rates and the layer-wise error is estimated with the Hessian matrix.</p>
<p><bold>Filter pruning algorithm based on geometric median (FPGM):</bold> He et al. (<xref ref-type="bibr" rid="B9">2019</xref>) proposes a filter pruning algorithm based on geometric median. FPGM deletes the redundant filters instead of the relatively less important ones with a manual setting of pruning rate.</p>
<p><bold>Transformable architecture search (TAS):</bold> Dong and Yang (<xref ref-type="bibr" rid="B2">2019</xref>) proposes a TAS approach for compressing CNNs by channel-wise probability distribution and knowledge transfer. TAS aimed to search for the appropriate width and depth of the pruned network.</p>
<p><bold>High-rank pruning (HRank):</bold> Lin et al. (<xref ref-type="bibr" rid="B18">2020</xref>) reveals a rule of CNNs even if the input image is different, there is always a large rank in the same part of the feature graph. The results suggest that the latent rank information is essential in the network so that the redundancy weights can be compressed with low-rank feature maps.</p>
<p><bold>Joint search-and-training (JST):</bold> Lu et al. (<xref ref-type="bibr" rid="B21">2020</xref>) implements an automatic search algorithm by training and pruning simultaneously. It saves the pre-training time in the automatic pruning algorithm with competitive classification accuracy.</p>
<p><bold>Discrete model compression (DMC):</bold> Gao et al. (<xref ref-type="bibr" rid="B3">2020</xref>) proposes a discrete compression model, which attaches a gate for each channel to control whether the channel is opened or not. Then the pruned network is obtained by gradient descent to optimize the gate parameters.</p>
<p><bold>Learning filter pruning criteria (LFPC):</bold> He et al. (<xref ref-type="bibr" rid="B7">2020</xref>) introduces a LFPC to select a set of suitable measures for different layers adaptively. LFPC evaluates the importance of the filters based on the proposed differentiable criteria sampler with Gumbel-softmax.</p>
<p><bold>Structural redundancy reduction with graph redundancy (SRR-GR):</bold> Wang et al. (<xref ref-type="bibr" rid="B31">2021b</xref>) assumes that the performance of the pruning filter in the more redundant layer is better than that of pruning the least important filter in all layers. Based on this assumption, this method establishes an undirected graph for each layer, in which each vertex represents a filter and edge denotes the distance between filter weights. The quotient space size and covering number are calculated according to the redundancy rates of each graph.</p>
<p><bold>Manifold regularized dynamic pruning (ManiDP):</bold> Tang et al. (<xref ref-type="bibr" rid="B28">2021</xref>) develops a (ManiDP) strategy that identifies the complexity and feature similarity of the training data set. The network is pruned dynamically by exploiting the manifold regularization, and the appropriate sub-network is allocated for each instance.</p>
</sec>
<sec>
<title>3.3. Main Results With ResNet</title>
<sec>
<title>3.3.1. Results on CIFAR-10 and CIFAR-100</title>
<p>The pruning result of ResNet series networks on CIFAR-10 and CIFAR-100 are shown in <xref ref-type="table" rid="T1">Tables 1</xref>, <xref ref-type="table" rid="T2">2</xref>. Among all the tested pruning algorithms, our GWCS model consistently reduces the largest number of channels to generate the minimum FLOPs among all the tested pruning models. Notably, our model produced the highest pruning rates of 73.6 and 73.1% by pruning ResNet-32 on CIFAR-10 and CIFAR-100, respectively. It saved more than half of GPU computational cost compared to FPGM. Turning to the pruning accuracy, our model achieves the lowest accuracy drops by pruning the ResNet networks on CIFIA-10 and obtains the best prune accuracy with ResNet-56 and ResNet-110 on CIFIA-100. For example, when pruning ResNet-110, our model achieves the highest pruning accuracy of 75%, outperforming the second-best model (FPGM) by more than 1.54% in terms of accuracy drop, along with much fewer computations. Note that the proposed GWCS model also achieves a very close result (only 0.05% of the drop of accuracy) to the original ResNet-110 with the highest FLOPs reduction (nearly 2.39 &#x000D7; compression rate). These results suggest that the proposed GWCS is an effective and reliable network pruning model, achieving a better trade-off between pruning accuracy and model size.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Comparison results on CIFAR-10 with ResNet-32, 56, and 110.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Network</bold></th>
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Baseline Acc (%)</bold></th>
<th valign="top" align="center"><bold>Prune Acc (%)</bold></th>
<th valign="top" align="center"><bold>Drop (%)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td/>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">92.63</td>
<td valign="top" align="center">92.31</td>
<td valign="top" align="center"><underline>0.32%</underline></td>
<td valign="top" align="center">4.03E7(41.5%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">SFP</td>
<td valign="top" align="center">92.63</td>
<td valign="top" align="center">92.08</td>
<td valign="top" align="center">0.55</td>
<td valign="top" align="center">4.03E7(41.5%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-32</td>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">93.88</td>
<td valign="top" align="center">92.92</td>
<td valign="top" align="center">0.96</td>
<td valign="top" align="center">3.78E7(45.4%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">LFPC</td>
<td valign="top" align="center">92.63</td>
<td valign="top" align="center">92.12</td>
<td valign="top" align="center">0.51</td>
<td valign="top" align="center">3.27E7(52.6%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">ManiDP</td>
<td valign="top" align="center">92.66</td>
<td valign="top" align="center">92.15</td>
<td valign="top" align="center">0.51</td>
<td valign="top" align="center">2.54E7(63.2%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">93.08</td>
<td valign="top" align="center">92.97</td>
<td valign="top" align="center"><bold>0.11</bold></td>
<td valign="top" align="center"><bold>1.82E7(73.6%)</bold></td>
</tr> <tr>
<td/>
<td valign="top" align="left">HRank</td>
<td valign="top" align="center">94.46</td>
<td valign="top" align="center">93.52</td>
<td valign="top" align="center">0.94</td>
<td valign="top" align="center">6.58E7(37.9%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">JST</td>
<td valign="top" align="center">94.41</td>
<td valign="top" align="center">93.68</td>
<td valign="top" align="center">0.73</td>
<td valign="top" align="center">6.32E7(49.7%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-56</td>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">93.59</td>
<td valign="top" align="center">92.89</td>
<td valign="top" align="center"><underline>0.70</underline></td>
<td valign="top" align="center">5.94E7(52.6%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">SFP</td>
<td valign="top" align="center">93.59</td>
<td valign="top" align="center">92.26</td>
<td valign="top" align="center">1.33</td>
<td valign="top" align="center">5.94E7(52.6%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">94.46</td>
<td valign="top" align="center">93.69</td>
<td valign="top" align="center">0.77</td>
<td valign="top" align="center">5.95E7(52.7%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">94.23</td>
<td valign="top" align="center">93.75</td>
<td valign="top" align="center"><bold>0.48</bold></td>
<td valign="top" align="center"><bold>5.05E7(60.3%)</bold></td>
</tr> <tr>
<td/>
<td valign="top" align="left">SFP</td>
<td valign="top" align="center">93.67</td>
<td valign="top" align="center">92.97</td>
<td valign="top" align="center">0.70</td>
<td valign="top" align="center">1.21E8(52.3%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-110</td>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">94.97</td>
<td valign="top" align="center">94.33</td>
<td valign="top" align="center">0.64</td>
<td valign="top" align="center">1.19E8(53.0%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">LFPC</td>
<td valign="top" align="center">93.68</td>
<td valign="top" align="center">93.07</td>
<td valign="top" align="center"><underline>0.61</underline></td>
<td valign="top" align="center">1.01E8(60.3%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">95.03</td>
<td valign="top" align="center">94.78</td>
<td valign="top" align="center"><bold>0.25</bold></td>
<td valign="top" align="center"><bold>1.12E8(56.0%)</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>The best results are highlighted in bold and the second-best results are underlined. &#x0201C;Drop&#x0201D; means accuracy drop, &#x0201C;FLOPs (PR)&#x0201D; represents FLOPs of the compressed model with the corresponding pruning ratio (PR)</italic>.</p>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Comparison results on CIFAR-100 with ResNet-32, 56, and 110.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Network</bold></th>
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Baseline Acc (%)</bold></th>
<th valign="top" align="center"><bold>Prune Acc (%)</bold></th>
<th valign="top" align="center"><bold>Drop (%)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td/>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">69.77</td>
<td valign="top" align="center">68.52</td>
<td valign="top" align="center">1.25</td>
<td valign="top" align="center">4.03E7(41.5%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-32</td>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">70.62</td>
<td valign="top" align="center">71.74</td>
<td valign="top" align="center"><bold>&#x02013;1.12</bold></td>
<td valign="top" align="center">3.80E7(45.0%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">71.09</td>
<td valign="top" align="center">71.88</td>
<td valign="top" align="center"><underline>&#x02013;0.79</underline></td>
<td valign="top" align="center"><bold>2.29E7(73.1%)</bold></td>
</tr> <tr>
<td/>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">71.41</td>
<td valign="top" align="center">69.66</td>
<td valign="top" align="center">1.75</td>
<td valign="top" align="center">5.94E7(52.6%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-56</td>
<td valign="top" align="left">JST</td>
<td valign="top" align="center">72.89</td>
<td valign="top" align="center">70.63</td>
<td valign="top" align="center">2.26</td>
<td valign="top" align="center">6.72E7(51.1%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">73.18</td>
<td valign="top" align="center">72.25</td>
<td valign="top" align="center"><underline>0.93</underline></td>
<td valign="top" align="center">6.12E7(51.3%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">73.14</td>
<td valign="top" align="center">73.75</td>
<td valign="top" align="center"><bold>&#x02013;0.61</bold></td>
<td valign="top" align="center"><bold>5.12E7(59.7%)</bold></td>
</tr> <tr>
<td/>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">74.14</td>
<td valign="top" align="center">72.55</td>
<td valign="top" align="center"><underline>1.59</underline></td>
<td valign="top" align="center">1.21E8(52.3%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-110</td>
<td valign="top" align="left">JST</td>
<td valign="top" align="center">74.42</td>
<td valign="top" align="center">72.26</td>
<td valign="top" align="center">2.16</td>
<td valign="top" align="center">1.08E8(58.0%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">75.06</td>
<td valign="top" align="center">73.16</td>
<td valign="top" align="center">1.90</td>
<td valign="top" align="center">1.20E8(52.6%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">75.05</td>
<td valign="top" align="center">75.00</td>
<td valign="top" align="center"><bold>0.05</bold></td>
<td valign="top" align="center"><bold>1.07E8(58.2%)</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>The best results are highlighted in bold and the second-best results are underlined</italic>.</p>
</table-wrap-foot>
</table-wrap>
</sec>
<sec>
<title>3.3.2. Results on ImageNet</title>
<p>The effectiveness of GWCS is further validated by the transferred performance on ImageNet using ResNet-50 and ResNet-101. As shown in <xref ref-type="table" rid="T3">Table 3</xref>, The proposed approach can produce a promising test accuracy (0.36 and 0.33% Top-5 accuracy drop on ResNet-50 and ResNet-101, respectively) with the largest compression rates. For example, GWCS outperforms TAS by 0.12% Top-5 accuracy drop with a significant FLOPs reduction (less than nearly 15.6%). When pruning RedNet-101, our model obtains a comparable test accuracy rate but removes nearly 2 &#x000D7; FLOPs than the SFP model.</p>
<table-wrap position="float" id="T3">
<label>Table 3</label>
<caption><p>Comparison results on ImageNet with ResNet-50 and ResNet-101.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Network</bold></th>
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Top-1</bold><break/><bold>Prune Acc (%)</bold></th>
<th valign="top" align="center"><bold>Top-5</bold><break/><bold>Prune Acc (%)</bold></th>
<th valign="top" align="center"><bold>Top-1</bold><break/><bold>Drop (%)</bold></th>
<th valign="top" align="center"><bold>Top-5</bold><break/><bold>Drop (%)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td/>
<td valign="top" align="left">HRank</td>
<td valign="top" align="center">74.98</td>
<td valign="top" align="center">92.33</td>
<td valign="top" align="center">2.48</td>
<td valign="top" align="center">1.22</td>
<td valign="top" align="center">2.62E9(40.8%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">TAS</td>
<td valign="top" align="center">76.20</td>
<td valign="top" align="center">93.07</td>
<td valign="top" align="center">1.26</td>
<td valign="top" align="center">0.48</td>
<td valign="top" align="center">2.31E9(43.5%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">JST</td>
<td valign="top" align="center">75.51</td>
<td valign="top" align="center">92.43</td>
<td valign="top" align="center"><underline>1.01</underline></td>
<td valign="top" align="center">0.66</td>
<td valign="top" align="center">2.25E9(44.9%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">74.83</td>
<td valign="top" align="center">92.32</td>
<td valign="top" align="center">1.32</td>
<td valign="top" align="center">0.55</td>
<td valign="top" align="center">2.58E9(53.5%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-50</td>
<td valign="top" align="left">DMC</td>
<td valign="top" align="center">75.35</td>
<td valign="top" align="center">92.49</td>
<td valign="top" align="center"><bold>0.80</bold></td>
<td valign="top" align="center"><underline>0.38</underline></td>
<td valign="top" align="center">2.01E9(55.0%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">SRR-GR</td>
<td valign="top" align="center">75.76</td>
<td valign="top" align="center">92.67</td>
<td valign="top" align="center">1.02</td>
<td valign="top" align="center">0.51</td>
<td valign="top" align="center">2.01E9(55.1%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">DCP</td>
<td valign="top" align="center">74.95</td>
<td valign="top" align="center">92.32</td>
<td valign="top" align="center">1.06</td>
<td valign="top" align="center">0.61</td>
<td valign="top" align="center">1.99E9(55.6%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/>
<td valign="top" align="left">Our</td>
<td valign="top" align="center">76.64</td>
<td valign="top" align="center">93.78</td>
<td valign="top" align="center">1.09</td>
<td valign="top" align="center"><bold>0.36</bold></td>
<td valign="top" align="center"><bold>1.83E9(59.1%)</bold></td>
</tr> <tr>
<td/>
<td valign="top" align="left">SFP</td>
<td valign="top" align="center">77.51</td>
<td valign="top" align="center">93.71</td>
<td valign="top" align="center"><bold>&#x02013;0.14</bold></td>
<td valign="top" align="center"><bold>&#x02013;0.20</bold></td>
<td valign="top" align="center">6.43E9(30.0%)</td>
</tr>
<tr>
<td valign="top" align="left">ResNet-101</td>
<td valign="top" align="left">FPGM</td>
<td valign="top" align="center">77.37</td>
<td valign="top" align="center">93.56</td>
<td valign="top" align="center">0.05</td>
<td valign="top" align="center"><underline>0.00</underline></td>
<td valign="top" align="center">6.43E9(30.0%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Our</td>
<td valign="top" align="center">77.65</td>
<td valign="top" align="center">93.65</td>
<td valign="top" align="center"><underline>&#x02013;0.13</underline></td>
<td valign="top" align="center">0.33</td>
<td valign="top" align="center"><bold>4.36E9(58.7%)</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>The best results are highlighted in bold, and the second-best results are underlined</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>We also visualize the pruned channels of ResNet-50 on ImageNet in <xref ref-type="fig" rid="F4">Figure 4</xref>. As can be seen from <xref ref-type="fig" rid="F4">Figure 4</xref>, the pruning rates are various in each layer, which could be more suitable for channel searching as the information contained in layers may be different, and the truly useful channels can be preserved with a flexible pruning strategy.</p>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p>Visualization of pruned channels in ResNet-50 with GWCS on ImageNet, where layer on the x-axis represents the number of layers in ResNet-50, channel means the number of channels in each layer. The bars in light blue indicate the number of channels in the pre-trained network. The purple ones indicate the number of channels after pruning. The PR are shown on the top of the bars.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0004.tif"/>
</fig>
</sec>
</sec>
<sec>
<title>3.4. Main Results With VGGNet</title>
<p>In <xref ref-type="table" rid="T4">Table 4</xref>, we show the comparison results in terms of Prune ACC and FLOPs on CIFAR-10 and CIFAR-100 with VGGNet-16. Among all the tested models, our proposed GWCS still achieves the highest pruning rate and yields the lowest FLOPs. In particular, we can see that the pruning reductions of our model are 64.18 and 66.61% on CIFAR-10 and CIFAR-100, respectively, which are much higher than HRank, GCP, and JST. Furthermore, our model produces a comparable accuracy with much fewer FLOPs. For instance, compared with GCP, our model obtains a very close test accuracy (0.58 vs. 0.20% accuracy drop) but prunes more than 1.8 &#x000D7; channels on CIFAR-100.</p>
<table-wrap position="float" id="T4">
<label>Table 4</label>
<caption><p>Comparing our model and other methods with VGGNet-16 on CIFAR-10 and CIFAR-100.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th valign="top" align="left"><bold>Datasets</bold></th>
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Baseline Acc (%)</bold></th>
<th valign="top" align="center"><bold>Prune Acc (%)</bold></th>
<th valign="top" align="center"><bold>Drop (%)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td/>
<td valign="top" align="left">GCP</td>
<td valign="top" align="center">92.71</td>
<td valign="top" align="center">92.74</td>
<td valign="top" align="center"><bold>&#x02013;0.03</bold></td>
<td valign="top" align="center">2.74E8(52.0%)</td>
</tr>
<tr>
<td valign="top" align="left">CIFAR-10</td>
<td valign="top" align="left">HRank</td>
<td valign="top" align="center">93.96</td>
<td valign="top" align="center">93.43</td>
<td valign="top" align="center">0.53</td>
<td valign="top" align="center">2.71E8(53.5%)</td>
</tr>
<tr style="border-bottom: thin solid #000000;">
<td/> <td valign="top" align="left">Ours</td>
<td valign="top" align="center">94.13</td>
<td valign="top" align="center">93.76</td>
<td valign="top" align="center"><underline>0.37</underline></td>
<td valign="top" align="center"><bold>2.29E8(64.18%)</bold></td>
</tr>
<tr>
<td valign="top" align="left">fine-tuning</td>
<td valign="top" align="left">GCP</td>
<td valign="top" align="center">72.21</td>
<td valign="top" align="center">72.01</td>
<td valign="top" align="center"><bold>0.20</bold></td>
<td valign="top" align="center">3.82E8(37.0%)</td>
</tr>
<tr>
<td valign="top" align="left">CIFAR-100</td>
<td valign="top" align="left">JST</td>
<td valign="top" align="center">75.75</td>
<td valign="top" align="center">74.63</td>
<td valign="top" align="center">1.12</td>
<td valign="top" align="center">3.22E8(45.0%)</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Ours</td>
<td valign="top" align="center">73.75</td>
<td valign="top" align="center">73.17</td>
<td valign="top" align="center"><underline>0.58</underline></td>
<td valign="top" align="center"><bold>2.21E8(66.61%)</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>We highlight the best and second-best results in bold face and underline, respectively. &#x0201C;Drop&#x0201D; means accuracy drop, &#x0201C;FLOPs (PR)&#x0201D; means FLOPs and pruning rate</italic>.</p>
</table-wrap-foot>
</table-wrap>
</sec>
</sec>
<sec sec-type="discussion" id="s4">
<title>4. Discussion</title>
<sec>
<title>4.1. GGS vs. Overall Genetic Search</title>
<p>In our model, we proposed a hierarchical search method named GGS algorithm to prune the network in multiple stages instead of searching the whole space of all channels [i.e., Overall Genetic Search (OGS)] at each iteration. We conduct the ablation experiment for studying the effect of GGS comparing to the overall search method on the CIFAR-10 dataset using ResNet-32. The channels of the pre-trained network are divided into four stages by using GGS, and the maximal number of iterations in each stage is set to 10, 10, 5, and 5, respectively. Thus, the total number of iterations in the pruning process is 30, which is also set as the maximum iteration number for OGS. The same FT operation with KD is applied in the OGS method to recover the accuracy of the pruned network. We can inform from <xref ref-type="table" rid="T5">Table 5</xref> that, GGS generates a more accurate classification result with more than 0.9% FLOPs reduction, compared to the OGS method when pruning ResNet-32 on CIFAR-10, suggesting that the proposed GGS proves a more optimal solution for identifying the critical channels in a large search space.</p>
<table-wrap position="float" id="T5">
<label>Table 5</label>
<caption><p>Comparison of gradual search and overall search on CIFAR-10 with ResNet-32.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Method</bold></th>
<th valign="top" align="center"><bold>Prune Acc(Drop)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Overall Genetic Search</td>
<td valign="top" align="center">92.19%(0.89%)</td>
<td valign="top" align="center">2.31E7(72.7%)</td>
</tr>
<tr>
<td valign="top" align="left">Gradual Genetic Search</td>
<td valign="top" align="center"><bold>92.97%(0.11%)</bold></td>
<td valign="top" align="center"><bold>2.23E7(73.6%)</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>The best results are highlighted in bold, and the second-best results are underline</italic>.</p>
</table-wrap-foot>
</table-wrap>
</sec>
<sec>
<title>4.2. Effect of WCA</title>
<p>Wavelet channel aggregation in the proposed GWCS model is used to evaluate the performance of the pruned network based on the fused wavelet transformed features. Comparing to conventional feature aggregation methods used in deep CNNs, including GAP, GMP, and GAP&#x0002B;GMP, we investigated the utility of the fitness function based on the WCA method on CIFAR-10 and CIFAR-100 in terms of prune accuracy and FLOPs. The comparison results are reported in <xref ref-type="table" rid="T6">Table 6</xref>. We observed that GAP prunes much more channels while producing much worse accuracy values. However, WCA achieves the best classification accuracy with the comparable FLOPs. As mentioned in Qin et al. (<xref ref-type="bibr" rid="B24">2020</xref>), GAP extracts the low-frequency information (e.g., the contour of an object) of the image, while GMP takes the high-frequency information (e.g., edge or texture). Nevertheless, both the contour and texture features are essential for image classification. Therefore, considering both high- and low-frequency information in our WCA method could help identify the best-compressed network.</p>
<table-wrap position="float" id="T6">
<label>Table 6</label>
<caption><p>Comparison of different feature aggregation methods applied in fitness functions on CIFAR-10 with ResNet-32.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Fitness function</bold></th>
<th valign="top" align="center"><bold>Prune Acc(Drop)</bold></th>
<th valign="top" align="center"><bold>FLOPs(PR)</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">GAP</td>
<td valign="top" align="center">91.41%(1.67%)</td>
<td valign="top" align="center"><bold>2.15E7(75.4%)</bold></td>
</tr>
<tr>
<td valign="top" align="left">GMP</td>
<td valign="top" align="center">91.25%(1.83%)</td>
<td valign="top" align="center">2.21E7(74.0%)</td>
</tr>
<tr>
<td valign="top" align="left">GAP&#x0002B;GMP</td>
<td valign="top" align="center">91.84%(1.24%)</td>
<td valign="top" align="center">2.23E7(73.5%)</td>
</tr>
<tr>
<td valign="top" align="left">WCA</td>
<td valign="top" align="center"><bold>92.97%(0.11%)</bold></td>
<td valign="top" align="center">2.23E7(73.6%)</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>The best results are highlighted in bold, and the second-best results are underlined. GAP is global average pooling. GMP is global max pooling. WCA is our proposed wavelet channel aggregation method</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>As is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>, the feature maps of the pruned network with selected channels based on the WCA contains more information for categorization than those of the selected ones using other conventional feature aggregation methods. The results further prove that the proposed WCA can adequately choose the channels with the most representational power for the network.</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>Visualization of the feature maps of the pruned network obtained with different feature aggregation functions. Baseline is the pre-trained ResNet-50, GAP is the global average pooling, GMP is the global max pooling, and WCA is our wavelet channel aggregation (WCA).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0005.tif"/>
</fig>
</sec>
<sec>
<title>4.3. Effect of FT Strategies</title>
<p>Knowledge Distillation (KD) is the last step in our GWCS model for regaining the lost performance. In this sub-section, we try to investigate the effectiveness of the GWCS for reducing the redundancy channels instead of relying on KD technology alone. Thus, two ablation experiments, i.e., the GWCS based on KD (GWCS&#x0002B;KD), are conducted to compare with: (1) the conventional FT technique by retraining the compact network from scratch, named GWCS&#x0002B;FT. (2) The channels pruning strategy with random selection and KD, named RS&#x0002B;KD.</p>
<p>As shown in <xref ref-type="fig" rid="F6">Figure 6</xref>, we can observe that KD and FT result in very similar classification accuracy but are various in speeds of convergence. Specifically, GWCS&#x0002B;KD can always reach the highest accuracy after about 2,000 iterations, while FT needs more than 3,500 iterations. This suggests that GWCS&#x0002B;KD is more efficient for network pruning. However, RS&#x0002B;KD does not outperform GWCS&#x0002B;KD and GWCS&#x0002B;FT in the iterations. All of these demonstrate that our GWCS algorithm with KD indeed obtains a promise pruning result.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p>Test the effect of fine-tuning (FT) strategies on CIFAR-10 and CIFAR-10 with ResNet-32. <bold>(A)</bold> FT results on CIFAR-10. <bold>(B)</bold> FT results on CIFAR-100.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fncom-15-760554-g0006.tif"/>
</fig>
<p>To summarize, in this study, we propose a novel genetic NAS-based network pruning method to automate the channel-wise network pruning. The main idea is to dynamically select the most informative channels in each layer from the pre-trained network using a multi-stage genetic optimization algorithm. Furthermore, we presented a novel fitness function based on the WCA to evaluate the performance of the pruned network. We conduct large-scale experiments using several public datasets to verify the performance of tested pruning models. The results demonstrate that the proposed GWCS model achieves a more compressed network with a promise classification accuracy than other tested SOTA pruning methods. In the future, we will further evaluate the effectiveness of our model on some mobile devices and employ the proposed model to compress the CNNs for other tasks, such as object detection or image segmentation.</p>
</sec>
</sec>
<sec sec-type="data-availability" id="s5">
<title>Data Availability Statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="s6">
<title>Author Contributions</title>
<p>LC, SG, and XS implemented and optimized the methods and wrote the manuscript. LC, XS, and MS designed the experiment and algorithm. All authors contributed to the article and approved the submitted version.</p>
</sec>
<sec sec-type="funding-information" id="s7">
<title>Funding</title>
<p>Publication costs are funded by the National Nature Science Foundation of China under grant nos. 61902370, 61802360, and in part by the Chongqing Research Program of Technology Innovation and Application under grants cstc2019jscx-zdztzxX0019.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s8">
<title>Publisher&#x00027;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec> </body>
<back>

<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Chen</surname> <given-names>Y.</given-names></name> <name><surname>Guo</surname> <given-names>Y.</given-names></name> <name><surname>Chen</surname> <given-names>Q.</given-names></name> <name><surname>Li</surname> <given-names>M.</given-names></name> <name><surname>Zeng</surname> <given-names>W.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Contrastive neural architecture search with neural architecture comparators,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>9502</fpage>&#x02013;<lpage>9511</lpage>.</citation>
</ref>
<ref id="B2">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Dong</surname> <given-names>X.</given-names></name> <name><surname>Yang</surname> <given-names>Y.</given-names></name></person-group> (<year>2019</year>). <article-title>Network pruning via transformable architecture search,</article-title> in <source>The Conference on Neural Information Processing Systems (NeurIPS)</source> (<publisher-loc>Vancouver, BC</publisher-loc>), <fpage>760</fpage>&#x02013;<lpage>771</lpage>.</citation>
</ref>
<ref id="B3">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Gao</surname> <given-names>S.</given-names></name> <name><surname>Huang</surname> <given-names>F.</given-names></name> <name><surname>Pei</surname> <given-names>J.</given-names></name> <name><surname>Huang</surname> <given-names>H.</given-names></name></person-group> (<year>2020</year>). <article-title>Discrete model compression with resource constraint for deep neural networks,</article-title> in <source>2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>Seattle, WA</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>1899</fpage>&#x02013;<lpage>1908</lpage>.</citation>
</ref>
<ref id="B4">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gim&#x000E9;nez</surname> <given-names>M.</given-names></name> <name><surname>Palanca</surname> <given-names>J.</given-names></name> <name><surname>Botti</surname> <given-names>V.</given-names></name></person-group> (<year>2020</year>). <article-title>Semantic-based padding in convolutional neural networks for improving the performance in natural language processing. a case of study in sentiment analysis</article-title>. <source>Neurocomputing</source> <volume>378</volume>, <fpage>315</fpage>&#x02013;<lpage>323</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2019.08.096</pub-id></citation>
</ref>
<ref id="B5">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gu</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Kuen</surname> <given-names>J.</given-names></name> <name><surname>Ma</surname> <given-names>L.</given-names></name> <name><surname>Shahroudy</surname> <given-names>A.</given-names></name> <name><surname>Shuai</surname> <given-names>B.</given-names></name> <etal/></person-group>. (<year>2018</year>). <article-title>Recent advances in convolutional neural networks</article-title>. <source>Pattern Recognit</source>. <volume>77</volume>, <fpage>354</fpage>&#x02013;<lpage>377</lpage>. <pub-id pub-id-type="doi">10.1016/j.patcog.2017.10.013</pub-id></citation>
</ref>
<ref id="B6">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Ren</surname> <given-names>S.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2016</year>). <article-title>Deep residual learning for image recognition,</article-title> in <source>2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>Las Vegas, NV</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>770</fpage>&#x02013;<lpage>778</lpage>. <pub-id pub-id-type="pmid">32166560</pub-id></citation></ref>
<ref id="B7">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Ding</surname> <given-names>Y.</given-names></name> <name><surname>Liu</surname> <given-names>P.</given-names></name> <name><surname>Zhu</surname> <given-names>L.</given-names></name> <name><surname>Zhang</surname> <given-names>H.</given-names></name> <name><surname>Yang</surname> <given-names>Y.</given-names></name></person-group> (<year>2020</year>). <article-title>Learning filter pruning criteria for deep convolutional neural networks acceleration,</article-title> in <source>2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>Seattle, WA</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>2006</fpage>&#x02013;<lpage>2015</lpage>.</citation>
</ref>
<ref id="B8">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Kang</surname> <given-names>G.</given-names></name> <name><surname>Dong</surname> <given-names>X.</given-names></name> <name><surname>Fu</surname> <given-names>Y.</given-names></name> <name><surname>Yang</surname> <given-names>Y.</given-names></name></person-group> (<year>2018</year>). <article-title>Soft filter pruning for accelerating deep convolutional neural networks,</article-title> in <source>Proceedings of the 27th International Joint Conference on Artificial Intelligence</source> (<publisher-loc>Stockholm</publisher-loc>), <fpage>2234</fpage>&#x02013;<lpage>2240</lpage>. <pub-id pub-id-type="pmid">31478883</pub-id></citation></ref>
<ref id="B9">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Liu</surname> <given-names>P.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Hu</surname> <given-names>Z.</given-names></name> <name><surname>Yang</surname> <given-names>Y.</given-names></name></person-group> (<year>2019</year>). <article-title>Filter pruning via geometric median for deep convolutional neural networks acceleration,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</source> (<publisher-loc>Long Beach, CA</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>4340</fpage>&#x02013;<lpage>4349</lpage>.</citation>
</ref>
<ref id="B10">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2017</year>). <article-title>Channel pruning for accelerating very deep neural networks,</article-title> in <source>Proceedings of the IEEE International Conference on Computer Vision (ICCV)</source> (<publisher-loc>Venice, FL</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>1389</fpage>&#x02013;<lpage>1397</lpage>.</citation>
</ref>
<ref id="B11">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Hinton</surname> <given-names>G.</given-names></name> <name><surname>Vinyals</surname> <given-names>O.</given-names></name> <name><surname>Dean</surname> <given-names>J.</given-names></name></person-group> (<year>2015</year>). <article-title>Distilling the knowledge in a neural network</article-title>. <source>arXiv</source> arXiv:1503.02531.</citation>
</ref>
<ref id="B12">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Hu</surname> <given-names>Y.</given-names></name> <name><surname>Sun</surname> <given-names>S.</given-names></name> <name><surname>Li</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Gu</surname> <given-names>Q.</given-names></name></person-group> (<year>2018</year>). <article-title>A novel channel pruning method for deep neural network compression</article-title>. <source>arXiv</source> arXiv:1805.11394.</citation>
</ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jia</surname> <given-names>F.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Guan</surname> <given-names>J.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name> <name><surname>Qiu</surname> <given-names>C.</given-names></name> <name><surname>Qi</surname> <given-names>S.</given-names></name></person-group> (<year>2021</year>). <article-title>Arank: Toward specific model pruning via advantage rank for multiple salient objects detection</article-title>. <source>Image Vis. Comput</source>. <volume>111</volume>:<fpage>104192</fpage>. <pub-id pub-id-type="doi">10.1016/j.imavis.2021.104192</pub-id></citation>
</ref>
<ref id="B14">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Jiahui</surname> <given-names>Y.</given-names></name> <name><surname>Huang</surname> <given-names>T. S.</given-names></name></person-group> (<year>2019</year>). <article-title>Network slimming by slimmable networks: Towards one-shot architecture search for channel numbers</article-title>. <source>CoRR, abs/1903.11728</source>.</citation>
</ref>
<ref id="B15">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Krizhevsky</surname> <given-names>A.</given-names></name></person-group> (<year>2009</year>). <source>Learning Multiple Layers of features From Tiny Images</source>. Technical report.</citation>
</ref>
<ref id="B16">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>H.</given-names></name> <name><surname>Kadav</surname> <given-names>A.</given-names></name> <name><surname>Durdanovic</surname> <given-names>I.</given-names></name> <name><surname>Samet</surname> <given-names>H.</given-names></name> <name><surname>Graf</surname> <given-names>H. P.</given-names></name></person-group> (<year>2016</year>). <article-title>Pruning filters for efficient convnets</article-title>. <source>CoRR, abs/1608.08710</source>.</citation>
</ref>
<ref id="B17">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Liang</surname> <given-names>T.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <name><surname>Tang</surname> <given-names>Z.</given-names></name> <name><surname>Hu</surname> <given-names>G.</given-names></name> <name><surname>Ling</surname> <given-names>H.</given-names></name></person-group> (<year>2021</year>). <article-title>Opanas: One-shot path aggregation network architecture search for object detection,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-name>IEEE</publisher-name>), <fpage>10195</fpage>&#x02013;<lpage>10203</lpage>.</citation>
</ref>
<ref id="B18">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Lin</surname> <given-names>M.</given-names></name> <name><surname>Ji</surname> <given-names>R.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Zhang</surname> <given-names>B.</given-names></name> <name><surname>Tian</surname> <given-names>Y.</given-names></name> <etal/></person-group>. (<year>2020</year>). <article-title>Hrank: Filter pruning using high-rank feature map,</article-title> in <source>2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition, CVPR 2020</source>, June 13&#x02013;19, 2020 (<publisher-loc>Seattle, WA</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>1526</fpage>&#x02013;<lpage>1535</lpage>.</citation>
</ref>
<ref id="B19">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>Li</surname> <given-names>J.</given-names></name> <name><surname>Shen</surname> <given-names>Z.</given-names></name> <name><surname>Huang</surname> <given-names>G.</given-names></name> <name><surname>Yan</surname> <given-names>S.</given-names></name> <name><surname>Zhang</surname> <given-names>C.</given-names></name></person-group> (<year>2017</year>). <article-title>Learning efficient convolutional networks through network slimming,</article-title> in <source>Proceedings of the IEEE International Conference on Computer Vision (ICCV)</source> (<publisher-loc>Venice</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>2736</fpage>&#x02013;<lpage>2744</lpage>.</citation>
</ref>
<ref id="B20">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>Mu</surname> <given-names>H.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Guo</surname> <given-names>Z.</given-names></name> <name><surname>Yang</surname> <given-names>X.</given-names></name> <name><surname>Cheng</surname> <given-names>K.-T.</given-names></name> <etal/></person-group>. (<year>2019</year>). <article-title>Metapruning: Meta learning for automatic neural network channel pruning.</article-title> In <italic>2019 IEEE/CVF International Conference on Computer Vision (ICCV)</italic> (<publisher-loc>Seoul</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>3295</fpage>&#x02013;<lpage>3304</lpage>.</citation>
</ref>
<ref id="B21">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Lu</surname> <given-names>X.</given-names></name> <name><surname>Huang</surname> <given-names>H.</given-names></name> <name><surname>Dong</surname> <given-names>W.</given-names></name> <name><surname>Li</surname> <given-names>X.</given-names></name> <name><surname>Shi</surname> <given-names>G.</given-names></name></person-group> (<year>2020</year>). <article-title>Beyond network pruning: a joint search-and-training approach,</article-title> in <source>Twenty-Ninth International Joint Conference on Artificial Intelligence and Seventeenth Pacific Rim International Conference on Artificial Intelligence IJCAI-PRICAI-20</source> (<publisher-loc>Yokohama</publisher-loc>), <fpage>2583</fpage>&#x02013;<lpage>2590</lpage>.</citation>
</ref>
<ref id="B22">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Molchanov</surname> <given-names>P.</given-names></name> <name><surname>Tyree</surname> <given-names>S.</given-names></name> <name><surname>Karras</surname> <given-names>T.</given-names></name> <name><surname>Aila</surname> <given-names>T.</given-names></name> <name><surname>Kautz</surname> <given-names>J.</given-names></name></person-group> (<year>2016</year>). <article-title>Pruning convolutional neural networks for resource efficient transfer learning</article-title>. <source>CoRR, abs/1611.06440</source>.</citation>
</ref>
<ref id="B23">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Porwik</surname> <given-names>P.</given-names></name> <name><surname>Lisowska</surname> <given-names>A.</given-names></name></person-group> (<year>2005</year>). <article-title>The haar-wavelet transform in digital image processing: Its status and achievements</article-title>. <source>Mach. Graph. Vis</source>. <volume>13</volume>, <fpage>79</fpage>&#x02013;<lpage>98</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-540-25944-2_1</pub-id></citation>
</ref>
<ref id="B24">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Qin</surname> <given-names>Z.</given-names></name> <name><surname>Zhang</surname> <given-names>P.</given-names></name> <name><surname>Wu</surname> <given-names>F.</given-names></name> <name><surname>Li</surname> <given-names>X.</given-names></name></person-group> (<year>2020</year>). <article-title>Fcanet: Frequency channel attention networks</article-title>. <source>arXiv arXiv</source>:2012.11879.</citation>
</ref>
<ref id="B25">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Renda</surname> <given-names>A.</given-names></name> <name><surname>Frankle</surname> <given-names>J.</given-names></name> <name><surname>Carbin</surname> <given-names>M.</given-names></name></person-group> (<year>2020</year>). <article-title>Comparing rewinding and fine-tuning in neural network pruning,</article-title> in <source>8th International Conference on Learning Representations, ICLR 2020</source>, April 26&#x02013;30, 2020 (Addis Ababa).</citation>
</ref>
<ref id="B26">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Russakovsky</surname> <given-names>O.</given-names></name> <name><surname>Deng</surname> <given-names>J.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Krause</surname> <given-names>J.</given-names></name> <name><surname>Satheesh</surname> <given-names>S.</given-names></name> <name><surname>Ma</surname> <given-names>S.</given-names></name> <etal/></person-group>. (<year>2015</year>). <article-title>Imagenet large scale visual recognition challenge</article-title>. <source>Int. J. Comput. Vis</source>. <volume>115</volume>, <fpage>211</fpage>&#x02013;<lpage>252</lpage>. <pub-id pub-id-type="doi">10.1007/s11263-015-0816-y</pub-id></citation>
</ref>
<ref id="B27">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Simonyan</surname> <given-names>K.</given-names></name> <name><surname>Zisserman</surname> <given-names>A.</given-names></name></person-group> (<year>2015</year>). <article-title>Very deep convolutional networks for large-scale image recognition,</article-title> in <source>3rd International Conference on Learning Representations, ICLR 2015</source>, May 7&#x02013;9, 2015 (<publisher-loc>San Diego, CA</publisher-loc>).</citation>
</ref>
<ref id="B28">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Tang</surname> <given-names>Y.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <name><surname>Xu</surname> <given-names>Y.</given-names></name> <name><surname>Deng</surname> <given-names>Y.</given-names></name> <name><surname>Xu</surname> <given-names>C.</given-names></name> <name><surname>Tao</surname> <given-names>D.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Manifold regularized dynamic network pruning,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>5018</fpage>&#x02013;<lpage>5028</lpage>.</citation>
</ref>
<ref id="B29">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>D.</given-names></name> <name><surname>Li</surname> <given-names>M.</given-names></name> <name><surname>Gong</surname> <given-names>C.</given-names></name> <name><surname>Chandra</surname> <given-names>V.</given-names></name></person-group> (<year>2021a</year>). <article-title>Attentivenas: Improving neural architecture search via attentive sampling</article-title>. <source>In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-name>IEEE</publisher-name>), <fpage>6418</fpage>&#x02013;<lpage>6427</lpage>.</citation>
</ref>
<ref id="B30">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>G.</given-names></name> <name><surname>Li</surname> <given-names>W.</given-names></name> <name><surname>Ourselin</surname> <given-names>S.</given-names></name> <name><surname>Vercauteren</surname> <given-names>T.</given-names></name></person-group> (<year>2019</year>). <article-title>Automatic brain tumor segmentation based on cascaded convolutional neural networks with uncertainty estimation</article-title>. <source>Front. Comput. Neurosci</source>. <volume>13</volume>:<fpage>56</fpage>. <pub-id pub-id-type="doi">10.3389/fncom.2019.00056</pub-id><pub-id pub-id-type="pmid">31456678</pub-id></citation></ref>
<ref id="B31">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Li</surname> <given-names>C.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name></person-group> (<year>2021b</year>). <article-title>Convolutional neural network pruning with structural redundancy reduction,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>14913</fpage>&#x02013;<lpage>14922</lpage>.</citation>
</ref>
<ref id="B32">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>D.</given-names></name> <name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Luo</surname> <given-names>X.</given-names></name> <name><surname>Zhou</surname> <given-names>M.</given-names></name></person-group> (<year>2021a</year>). <article-title>A latent factor analysis-based approach to online sparse streaming feature selection</article-title>. <source>IEEE Trans. Syst. Man Cybern. Syst.</source> <fpage>1</fpage>&#x02013;<lpage>15</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.2021.3096065</pub-id></citation>
</ref>
<ref id="B33">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wu</surname> <given-names>D.</given-names></name> <name><surname>Luo</surname> <given-names>X.</given-names></name> <name><surname>Shang</surname> <given-names>M.</given-names></name> <name><surname>He</surname> <given-names>Y.</given-names></name> <name><surname>Wang</surname> <given-names>G.</given-names></name> <name><surname>Zhou</surname> <given-names>M.</given-names></name></person-group> (<year>2021b</year>). <article-title>A deep latent factor model for high-dimensional and sparse matrices in recommender systems</article-title>. <source>IEEE Trans. Syst. Man Cybern. Syst</source>. <volume>51</volume>, <fpage>4285</fpage>&#x02013;<lpage>4296</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.2019.2931393</pub-id></citation>
</ref>
<ref id="B34">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>X.</given-names></name> <name><surname>Feng</surname> <given-names>W.</given-names></name> <name><surname>Jiang</surname> <given-names>Y.</given-names></name> <name><surname>Xie</surname> <given-names>X.</given-names></name> <name><surname>Sun</surname> <given-names>Z.</given-names></name> <name><surname>Deng</surname> <given-names>Z.</given-names></name></person-group> (<year>2020</year>). <article-title>Dynamically pruned message passing networks for large-scale knowledge graph reasoning,</article-title> in <source>8th International Conference on Learning Representations, ICLR 2020</source>, April 26&#x02013;30, 2020 (Addis Ababa).</citation>
</ref>
<ref id="B35">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>Y.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <name><surname>Han</surname> <given-names>K.</given-names></name> <name><surname>Tang</surname> <given-names>Y.</given-names></name> <name><surname>Jui</surname> <given-names>S.</given-names></name> <name><surname>Xu</surname> <given-names>C.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Renas: Relativistic evaluation of neural architecture search,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>4411</fpage>&#x02013;<lpage>4420</lpage>.</citation>
</ref>
<ref id="B36">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>T.-J.</given-names></name> <name><surname>Chen</surname> <given-names>Y.-H.</given-names></name> <name><surname>Sze</surname> <given-names>V.</given-names></name></person-group> (<year>2017</year>). <article-title>Designing energy-efficient convolutional neural networks using energy-aware pruning,</article-title> in <source>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition</source> (<publisher-loc>Honolulu, HI</publisher-loc>), <fpage>5687</fpage>&#x02013;<lpage>5695</lpage>.</citation>
</ref>
<ref id="B37">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>T.-J.</given-names></name> <name><surname>Howard</surname> <given-names>A.</given-names></name> <name><surname>Chen</surname> <given-names>B.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Go</surname> <given-names>A.</given-names></name> <name><surname>Sandler</surname> <given-names>M.</given-names></name> <etal/></person-group>. (<year>2018</year>). <article-title>Netadapt: Platform-aware neural network adaptation for mobile applications,</article-title> in <source>Proceedings of the European Conference on Computer Vision (ECCV)</source> (<publisher-loc>Munich</publisher-loc>), <fpage>285</fpage>&#x02013;<lpage>300</lpage>.</citation>
</ref>
<ref id="B38">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>Z.</given-names></name> <name><surname>Wang</surname> <given-names>Y.</given-names></name> <name><surname>Chen</surname> <given-names>X.</given-names></name> <name><surname>Guo</surname> <given-names>J.</given-names></name> <name><surname>Zhang</surname> <given-names>W.</given-names></name> <name><surname>Xu</surname> <given-names>C.</given-names></name> <etal/></person-group>. (<year>2021</year>). <article-title>Hournas: Extremely fast neural architecture search through an hourglass lens,</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</source> (<publisher-loc>IEEE</publisher-loc>), <fpage>10896</fpage>&#x02013;<lpage>10906</lpage>.</citation>
</ref>
<ref id="B39">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Ye</surname> <given-names>J.</given-names></name> <name><surname>Lu</surname> <given-names>X.</given-names></name> <name><surname>Lin</surname> <given-names>Z. L.</given-names></name> <name><surname>Wang</surname> <given-names>J. Z.</given-names></name></person-group> (<year>2018</year>). <article-title>Rethinking the smaller-norm-less-informative assumption in channel pruning of convolution layers</article-title>. <source>CoRR, abs/1802.00124</source>.</citation>
</ref>
<ref id="B40">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Zhuang</surname> <given-names>Z.</given-names></name> <name><surname>Tan</surname> <given-names>M.</given-names></name> <name><surname>Zhuang</surname> <given-names>B.</given-names></name> <name><surname>Liu</surname> <given-names>J.</given-names></name> <name><surname>Guo</surname> <given-names>Y.</given-names></name> <name><surname>Wu</surname> <given-names>Q.</given-names></name> <etal/></person-group>. (<year>2018</year>). <article-title>Discrimination-aware channel pruning for deep neural networks,</article-title> in <source>Proceedings of the 32nd International Conference on Neural Information Processing Systems (NIPS)</source> (<publisher-loc>Montreal, QC</publisher-loc>), <fpage>883</fpage>&#x02013;<lpage>894</lpage>.</citation>
</ref>
</ref-list>

</back>
</article>