Skip to main content
. 2019 Jul 30;19(15):3340. doi: 10.3390/s19153340
Algorithm 1 Algorithm for finding optimal convolutional layer depth parameter (Dopt)
  • (1)
    Set the Convolutional Layer Depth parameter (CLDn).
    CLDn,(CLDnCLD,n=1,2,3,,T) when CLD={1,2,3,,T}
  • (2)
    Set the Kernel Size (KSj).
    KSj,(KSjKS,j=1,,10) when KS={5,9,13,17,21,25,29,33,37,41}
  • (3)
    Set the Kernel Count (KCk).
    KCk,(KCkKC,k=1,,5) when KC={32,64,128,256,512}
  • (4)
    Set the Dense Layer Neuron Count (DLNCl).
    DLNCl,(DLNClDLCN,l=1,,4) when DLNC={256,512,1024,2048}
  • (5)

    Define the Convolution Layer parameter combination (Convnth, n=1,,T).

    : combination for all cases in set of elements.
    Convnth:{KSjKCk}j=110;k=15
  • (6)
    Define the Dense Layer parameter (Densemth, m=1,2).
    Densemth:{DLNCl}j=110;k=15
  • (7)
    Define the Paramnth by the combination () of the parameters (1), (5) and (6) in Convolutional Layer depth n.
    Paramnth:{CLDnConvnthDensemth}n=1,2,3;m=1,2
  • (8)

    The recognition rate for each parameter combination and the average recognition rate at Convolutional Layer Depth n are calculated as follows.

    Begin Loop:

    for (n = 1; n < = T; n++)
    • Configures z parameter combinations CPnth (Combination of Parameters) for all cases on depth n.
      CPnth:{Paramnth1,,Paramnthz}
    • Configures the Accnth by calculating the recognition rate of each
      Paramnthp(p=1,z) for CPnth.
      Accnth:{acc(Paramnth1),,acc(Paramnthz)}
    • Compute average recognition rate μAccnth and store the result value and depth value n to Resultn.
      μAccnth=1p{p=1zacc(Paramithp)}
      Resultn:{n,μAccnth}
      End Loop:
  • (9)
    Find the maximum μAccnth of T Results and set the depth value n to the Dopt.
    Dopt={n|nResultn,argmax(μAccnth)}