<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="2.3" xml:lang="EN">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Mar. Sci.</journal-id>
<journal-title>Frontiers in Marine Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Mar. Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-7745</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fmars.2023.1342090</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Marine Science</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>SSANet: normal-mode interference spectrum extraction via SSA algorithm-unrolled neural network</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Zhu</surname>
<given-names>Shuping</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/2564146"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Gao</surname>
<given-names>Wei</given-names>
</name>
<xref ref-type="author-notes" rid="fn001">
<sup>*</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Li</surname>
<given-names>Xiaolei</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<institution>College of Marine Technology, Ocean University of China</institution>, <addr-line>Qingdao</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>Edited by: An-An Liu, Tianjin University, China</p>
</fn>
<fn fn-type="edited-by">
<p>Reviewed by: Haiqiang Niu, Chinese Academy of Sciences (CAS), China</p>
<p>Xuerong Cui, China University of Petroleum (East China), China</p>
<p>Jianheng Lin, Chinese Academy of Sciences (CAS), China</p>
</fn>
<fn fn-type="corresp" id="fn001">
<p>*Correspondence: Wei Gao, <email xlink:href="mailto:gaowei@ouc.edu.cn">gaowei@ouc.edu.cn</email>
</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>01</day>
<month>02</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>10</volume>
<elocation-id>1342090</elocation-id>
<history>
<date date-type="received">
<day>21</day>
<month>11</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>30</day>
<month>12</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2024 Zhu, Gao and Li</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Zhu, Gao and Li</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>In ocean acoustic fields, extracting the normal-mode interference spectrum (NMIS) from the received sound intensity spectrum (SIS) plays an important role in waveguide-invariant estimation and underwater source ranging. However, the received SIS often has a low signal-to-noise ratio (SNR) owing to ocean ambient noise and the limitations of the received equipment. This can lead to significant performance degradation for the traditional methods of extracting NMIS at low SNR conditions. To address this issue, a new deep neural network model called SSANet is proposed to obtain NMIS based on unrolling the traditional singular spectrum analysis (SSA) algorithm. First, the steps of embedding and singular value decomposition (SVD) in SSA is achieved by the convolutional network. Second, the grouping step of the SSA is simulated using the matrix multiply weight layer, ReLU layer, point multiply weight layer and matrix multiply weight layer. Third, the diagonal averaging step was implemented using a fully connected network. Simulation results in canonical ocean waveguide environments demonstrate that SSANet outperforms other traditional methods such as Fourier transform (FT), multiple signal classification (MUSIC), and SSA in terms of root mean square error, mean absolute error, and extraction performance.</p>
</abstract>
<kwd-group>
<kwd>normal-mode interference spectrum</kwd>
<kwd>singular spectrum analysis</kwd>
<kwd>deep unrolled neural network</kwd>
<kwd>low signal-to-noise ratio</kwd>
<kwd>ocean acoustic waveguide</kwd>
</kwd-group>
<counts>
<fig-count count="9"/>
<table-count count="2"/>
<equation-count count="12"/>
<ref-count count="27"/>
<page-count count="11"/>
<word-count count="5417"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-in-acceptance</meta-name>
<meta-value>Ocean Observation</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1" sec-type="intro">
<label>1</label>
<title>Introduction</title>
<p>According to the theory of normal modes (<xref ref-type="bibr" rid="B12">Jensen et&#xa0;al., 2011</xref>) in shallow-water acoustic waveguides, the frequency-domain interference spectrum formed by each pair of normal modes often exhibits different quasi-periodic fluctuation structures, which contain a lot of information related to the waveguide invariant and the source&#x2013;receiver distance. Some authors have pointed out that if the normal-mode interference spectrum (NMIS) can be extracted from the received sound intensity spectrum (SIS), not only can the distance between the source and the receiver be estimated based on the periodicity of its fluctuations (<xref ref-type="bibr" rid="B26">Zhao, 2010</xref>), but also the value of the waveguide invariant can be obtained in terms of the data-matrix sparsity of the NMIS. The main advantage of these methods based on extracting NMIS is that it is feasible to estimate the waveguide invariant and the receiver-source range without any environmental models or data. However, it is unfortunate that NMIS is often difficult to observe in many practical applications owing to the ocean ambient noise and the limitations of the received equipment. Therefore, in recent years, the problem of extracting an NMIS with a low signal-to-noise ratio (SNR) has received considerable attention in the field of underwater acoustic engineering.</p>
<p>The Fourier transform (FT) is considered to be the earliest NMIS estimator, but the frequency resolution of the FT is limited by the Nyquist sampling theorem. In 2010, <xref ref-type="bibr" rid="B27">Zhao et&#xa0;al. (2010)</xref> adopted the multiple signal classification (MUSIC) algorithm to estimate the quasi-period of NMIS and performed a higher resolution spectral analysis of NMIS than FT. Based on the principles of the singular spectrum analysis (SSA) algorithm, <xref ref-type="bibr" rid="B4">Gao (2016)</xref> directly extracted the approximate curves of NMIS in the frequency domain in 2016, and a multi-resolution estimation method of NMIS was proposed and compared with previous methods such as MUSIC and FT (<xref ref-type="bibr" rid="B5">Gao et&#xa0;al., 2020</xref>) in 2020. These studies show that SSA has potential for exploration and development. However, it should be noted that these methods always require a higher SNR (more than 20 dB in the previous literature) and have a poor anti-noise ability.</p>
<p>With the development of artificial intelligence technology and deep learning, it is possible to extract NMIS using deep neural network methods in more complex noisy environments. In particular, a type of algorithm-unrolling neural network (<xref ref-type="bibr" rid="B20">Monga et&#xa0;al., 2021</xref>) that maps various iterative algorithms into learnable neural network layers has been applied in various fields and has shown superior performance compared to traditional algorithms (<xref ref-type="bibr" rid="B8">Gregor and LeCun, 2010</xref>; <xref ref-type="bibr" rid="B11">Hershey et&#xa0;al., 2014</xref>). Inspired by the research above, this study introduces a new method for extracting NMIS from the received SIS called the SSA algorithm-unrolled neural network (SSANet). It is well known that, if the signal subspace has finite dimensions and is orthogonal to the noise subspace, SSA is a powerful tool for separating the signal subspace from the noise subspace through grouping (<xref ref-type="bibr" rid="B24">Vautard et&#xa0;al., 1992</xref>; <xref ref-type="bibr" rid="B16">Li et&#xa0;al., 2019</xref>). Generally, SSA consists of four steps: embedding, singular value decomposition (SVD), grouping, and diagonal averaging (<xref ref-type="bibr" rid="B9">Hassani, 2007</xref>; <xref ref-type="bibr" rid="B13">Kalantari et&#xa0;al., 2020</xref>; <xref ref-type="bibr" rid="B18">Lin and Wu, 2022</xref>). The received SIS consists of a finite number of dominant NMIS that satisfy the above SSA assumption. The SSANet model unrolls the steps of the SSA and designs it as a six-layer neural-network structure. It utilizes a convolutional network (<xref ref-type="bibr" rid="B15">LeCun et&#xa0;al., 1995</xref>; <xref ref-type="bibr" rid="B19">Mallat, 2016</xref>) to achieve the embedding step and SVD in SSA. The grouping process of SSA was simulated using the matrix multiply weight layer, ReLU layer, point multiply weight layer, and matrix multiply weight layer. Finally, the diagonal averaging step was implemented using a fully connected network. This study conducted simulations in two canonical ocean waveguide environments, comparing the extraction performance of SSANet with traditional methods such as the FT, MUSIC, and SSA methods under different SNR. The numerical results demonstrate that SSANet achieves superior performance over the other methods under lower SNR conditions.</p>
<p>The main contributions of this study are summarized as follows:</p>
<list list-type="simple">
<list-item>
<p>(1) A novel network model called SSANet for extracting NMIS is proposed. SSANet can learn complex nonlinear mappings and exhibits strong noise robustness. Compared to traditional extraction methods, it can reduce information loss during the extraction of NMIS under low-SNR conditions. The numerical results confirmed the effectiveness of the SSANet.</p>
</list-item>
<list-item>
<p>(2) This study describes the correspondence between SSANet and the unrolled SSA. The trained SSANet can be naturally interpreted as a parameter-optimized algorithm that effectively overcomes the lack of interpretability in most conventional neural networks.</p>
</list-item>
<list-item>
<p>(3) Extracting NMIS belongs to the signal decomposition/extraction problem; therefore, the SSANet model can also be applied to studying other signal analysis problems, which provides more possibilities for research in this field.</p>
</list-item>
</list>
<p>The remainder of this study is organized as follows. The preliminary concepts required for understanding further are introduced in <italic>Section 2</italic>. For instance, the concept of the NMIS and SSA process. <italic>Section 3</italic> describes the structure of SSANet. <italic>Section 4</italic> presents the results and corresponding discussion to demonstrate the effectiveness of the proposed method. Finally, the conclusions are presented in <italic>Section 5</italic>.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Preliminaries</title>
<p>In this section, the fundamental concepts of SIS and NMIS are introduced in detail. A comprehensive exposition is provided for the basic processing of SSA.</p>
<sec id="s2_1">
<label>2.1</label>
<title>Sound Intensity spectrum</title>
<p>According to the theory of normal-mode, for a point source excitation with circular frequency <italic>&#x3c9;</italic> and depth <italic>z<sub>s</sub>
</italic> in shallow water, the received SIS <italic>I<sub>T</sub>
</italic> at a depth of <italic>z<sub>r</sub>
</italic> after propagation over a long distance <italic>d</italic> can be expressed approximately as in <xref ref-type="disp-formula" rid="eq1">
<bold>Equation 1</bold>
</xref> (<xref ref-type="bibr" rid="B7">Grachev, 1993</xref>; <xref ref-type="bibr" rid="B6">Gao et&#xa0;al., 2021</xref>):</p>
<disp-formula id="eq1">
<label>(1)</label>
<mml:math display="block" id="M1">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>|</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2260;</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:munder>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi>
<mml:mo>&#x2217;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>exp</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mtext>&#x394;</mml:mtext>
<mml:msub>
<mml:mi>&#x3ba;</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtable>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>B<sub>n</sub></italic> is shown in <xref ref-type="disp-formula" rid="eq2">
<bold>Equation 2</bold>
</xref>
</p>
<disp-formula id="eq2">
<label>(2)</label>
<mml:math display="block" id="M2">
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3ba;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:msqrt>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>
<italic>P</italic>(<italic>&#x3c9;</italic>) is the power spectral density of the source, and <italic>B<sub>n</sub>
</italic>(<italic>&#x3c9;, z<sub>r</sub>, z<sub>s</sub>
</italic>) and <italic>B<sub>m</sub>
</italic>(<italic>&#x3c9;, z<sub>r</sub>, z<sub>s</sub>
</italic>) represent the amplitudes of the <italic>n</italic>th and <italic>m</italic>th normal-modes, respectively. <italic>M</italic> is the number of the propagating normal-modes. &#x394;<italic>&#x3ba;<sub>nm</sub>
</italic>(<italic>&#x3c9;</italic>) is the horizontal wavenumber difference between the <italic>n</italic>th and <italic>m</italic>th normal-modes, and &#x394;<italic>&#x3ba;<sub>nm</sub>
</italic>(<italic>&#x3c9;</italic>) = <italic>&#x3ba;<sub>n</sub>
</italic>(<italic>&#x3c9;</italic>) &#x2212; <italic>&#x3ba;<sub>m</sub>
</italic>(<italic>&#x3c9;</italic>). <italic>&#x3c8;<sub>n</sub>
</italic>(<italic>z<sub>r</sub>
</italic>) and <italic>&#x3c8;<sub>n</sub>
</italic>(<italic>z<sub>s</sub>
</italic>) are the mode depth functions for the <italic>n</italic>th normal-mode receiver and source, respectively. &#x2018;&#x2217;&#x2019; represents conjugation. <italic>N<sub>s</sub>
</italic>(<italic>&#x3c9;</italic>) is the additive noise. <inline-formula>
<mml:math display="inline" id="im1">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>M</mml:mi>
</mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>|</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mstyle>
</mml:mrow>
</mml:math>
</inline-formula> represents the non-interference components of SIS, which vary slowly with the frequency. <inline-formula>
<mml:math display="inline" id="im2">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>&#x3c9;</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi>
<mml:mo>&#x2217;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>exp</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>&#x394;</mml:mi>
<mml:msub>
<mml:mi>&#x3ba;</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> is called the NMIS for the <italic>n</italic>&#x2013;<italic>m</italic> pair of normal modes, which oscillates with frequency. <inline-formula>
<mml:math display="inline" id="im3">
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>&#x3c9;</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mstyle displaystyle="true">
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2260;</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:munder>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>m</mml:mi>
<mml:mo>&#x2217;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>exp</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>&#x394;</mml:mi>
<mml:msub>
<mml:mi>&#x3ba;</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> corresponds to the sum of the different NMIS and represents the interference components of the SIS. When multiple propagation modes exist in the ocean waveguide, the SIS received by a single hydrophone is typically a superposition of the NMIS, non-interference components, and environmental noise. In general, it is difficult to observe accurate fluctuation periods of the NMIS directly owing to the ocean ambient noise and the limitations of the received equipment. It should be noted that we are mainly concerned with NMIS, and the non-interference components can be considered as approximately constant and removed to obtain <italic>I<sub>c</sub>
</italic> according to the <xref ref-type="disp-formula" rid="eq3">
<bold>Equation 3</bold>
</xref>:</p>
<disp-formula id="eq3">
<label>(3)</label>
<mml:math display="block" id="M3">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>&#x221e;</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>|</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#xa0;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x2248;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mo>&#x2329;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x232a;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>&#x2248;</mml:mo>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable> </mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im4">
<mml:mrow>
<mml:mo>&#x2329;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x232a;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mi>Z</mml:mi>
</mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Z</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mstyle>
</mml:mrow>
</mml:math>
</inline-formula> represents the polynomial fit term obtained using the least-squares method (<xref ref-type="bibr" rid="B2">Bj&#xf6;rck, 1990</xref>), where <italic>e</italic> is the fitting coefficient. <italic>N</italic>
<sup>&#x2032;</sup>
<italic>
<sub>s</sub>
</italic>(<italic>&#x3c9;</italic>) represents the noise after the removal of non-interference components. In subsequent work, our goal is to extract different NMIS from <italic>I<sub>c</sub>
</italic>.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>SSA algorithm</title>
<p>The SSA is a classical signal decomposition/extraction method. Assuming that the input sequence is <bold>y</bold> = [<italic>y</italic>
<sub>1</sub>
<italic>,y</italic>
<sub>2</sub>
<italic>,.,y<sub>N</sub>
</italic>], the steps of the SSA algorithm are as follows:</p>
<p>1. The first step is embedding. Embedding creates a Hankel trajectory matrix. It can be regarded as a mapping that transfers a one-dimensional vector <bold>y</bold> to Hankel matrix <bold>H</bold>, the <bold>H</bold> is shown in <xref ref-type="disp-formula" rid="eq4">
<bold>Equation 4</bold>
</xref>:</p>
<disp-formula id="eq4">
<label>(4)</label>
<mml:math display="block" id="M4">
<mml:mrow>
<mml:mtext mathvariant="bold">H</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>K</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>5</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where the numbers of the row and column vectors are <italic>L</italic> and <italic>K</italic>, respectively. <italic>L</italic> + <italic>K</italic> = <italic>N</italic> + 1.</p>
<p>2. The second step is to decompose the matrix <bold>H</bold> using SVD. That is, matrix <bold>H</bold> is decomposed into the <xref ref-type="disp-formula" rid="eq5">
<bold>Equation 5</bold>
</xref>:</p>
<disp-formula id="eq5">
<label>(5)</label>
<mml:math display="block" id="M5">
<mml:mrow>
<mml:mtext mathvariant="bold">H</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>U</mml:mi>
<mml:mi>&#x3a3;</mml:mi>
</mml:mstyle>
<mml:msup>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>V</mml:mi>
</mml:mstyle>
<mml:mo>&#x2020;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im5">
<mml:mrow>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>U</mml:mi>
</mml:mstyle>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, its column vectors are orthogonal and normalized. <inline-formula>
<mml:math display="inline" id="im6">
<mml:mrow>
<mml:msup>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>V</mml:mi>
</mml:mstyle>
<mml:mo>&#x2020;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, its row vectors are orthogonal and normalized. <inline-formula>
<mml:math display="inline" id="im7">
<mml:mrow>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is a singular value matrix consisting of zero off-diagonal entries and obvious non-zero singular values on the main diagonal entries (<xref ref-type="bibr" rid="B18">Lin and Wu, 2022</xref>). The symbol &#x2018;&#x2020;&#x2019; represents the conjugate transpose. Assuming the rank of a matrix <bold>H</bold> is <italic>R</italic>, then <bold>&#x3a3;</bold> = diag(<italic>&#x3c3;</italic>
<sub>1</sub>
<italic>,&#x3c3;</italic>
<sub>2</sub>
<italic>,&#x2026;,&#x3c3;<sub>R</sub>
</italic>) (<italic>&#x3c3;</italic>
<sub>1</sub> <italic>&gt; &#x3c3;</italic>
<sub>2</sub> <italic>&gt;&#x2026; &gt; &#x3c3;<sub>R</sub>
</italic>), the matrix <bold>H</bold> can also be expressed as the <xref ref-type="disp-formula" rid="eq6">
<bold>Equation 6</bold>
</xref>:</p>
<disp-formula id="eq6">
<label>(6)</label>
<mml:math display="block" id="M6">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mi>R</mml:mi>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>R</mml:mi>
</mml:munderover>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>3. The third step is grouping. The grouping step splits the Hankel matrix <bold>H</bold> into several groups and sums up the matrices within each group. For <italic>I<sub>c</sub>
</italic>, if there are <italic>r</italic> NMIS, matrix <bold>H</bold> can be divided into two group, as shown in <xref ref-type="disp-formula" rid="eq7">
<bold>Equation 7</bold>
</xref>:</p>
<disp-formula id="eq7">
<label>(7)</label>
<mml:math display="block" id="M7">
<mml:mrow>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>r</mml:mi>
</mml:munderover>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>R</mml:mi>
</mml:munderover>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi mathvariant="bold">V</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im8">
<mml:mrow>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mtext>A</mml:mtext>
</mml:mstyle>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">H</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">H</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">H</mml:mtext>
</mml:mstyle>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the interference components of SIS (<italic>I</italic>) (It is also possible to obtain <inline-formula>
<mml:math display="inline" id="im9">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>diag</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> by setting all the elements in <bold>&#x3a3;</bold> except the first <italic>r</italic> singular values to 0, and then <inline-formula>
<mml:math display="inline" id="im10">
<mml:mrow>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">A</mml:mtext>
</mml:mstyle>
<mml:mo>=</mml:mo>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">U</mml:mtext>
</mml:mstyle>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mi mathvariant="bold">&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">V</mml:mtext>
</mml:mstyle>
<mml:mo>&#x2020;</mml:mo>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">A</mml:mtext>
</mml:mstyle>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im11">
<mml:mrow>
<mml:mtext mathvariant="bold">B</mml:mtext>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mtext mathvariant="bold">H</mml:mtext>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mtext mathvariant="bold">H</mml:mtext>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">H</mml:mtext>
</mml:mstyle>
<mml:mi>R</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the noisy spectrum <inline-formula>
<mml:math display="inline" id="im12">
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>N</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>'</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>4. The fourth step was diagonal averaging. Taking A as an example, the mapped vector <inline-formula>
<mml:math display="inline" id="im13">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">y</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> is obtained using the following steps,as shown in <xref ref-type="disp-formula" rid="eq8">
<bold>Equation 8</bold>
</xref>:</p>
<disp-formula id="eq8">
<label>(8)</label>
<mml:math display="block" id="M8">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">y</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>j</mml:mi>
</mml:mfrac>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>j</mml:mi>
</mml:munderover>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>a</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>=</mml:mo>
<mml:mi>min</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>}</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
</mml:mrow>
</mml:munderover>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>a</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msup>
<mml:mi>K</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>=</mml:mo>
<mml:mi>max</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>}</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>K</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>K</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>a</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msup>
<mml:mi>K</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The SSA has various grouping methods (<xref ref-type="bibr" rid="B23">Unnikrishnan and Jothiprakash, 2022</xref>). The grouping process above divides the matrix into signal and noise subspaces, which completes the denoising operation of <italic>I<sub>c</sub>
</italic>. The SSA (<xref ref-type="bibr" rid="B4">Gao, 2016</xref>) method divides the matrix <bold>H</bold> into <italic>r</italic> + 1 groups (i.e., <bold>H</bold>
<sub>1</sub>, <bold>H</bold>
<sub>2</sub>, <bold>H</bold>
<sub>3</sub> to <bold>H</bold>
<italic>
<sub>r</sub>
</italic>, and <bold>B</bold>) according to the singular value, and then uses diagonal averaging to obtain the corresponding NMIS. This study adopts the first grouping method, and the SSA is unrolled and designed as a neural network model called SSANet. The specific design ideas and basic structure of SSANet are described in the following sections.</p>
<p>It should be noted that the selection of the effective rank <italic>r</italic> in the above process is crucial. In this study, <italic>r</italic> was determined based on the discontinuity of singular values. When white noise is present, the distribution of singular values (<italic>&#x3c3;<sub>i</sub>
</italic>) is characterized by sudden changes. That is, the singular values corresponding to the interference components of SIS(<italic>I</italic>) are relatively large, whereas those corresponding to the noisy spectrum <inline-formula>
<mml:math display="inline" id="im14">
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>N</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>'</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>are much smaller. Therefore, the sequence of relative differences between adjacent singular values is denoted as shown in <xref ref-type="disp-formula" rid="eq9">Equation 9</xref>:</p>
<disp-formula id="eq9">
<label>(9)</label>
<mml:math display="block" id="M9">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:math>
</disp-formula>
<p>is referred to as the difference spectrum of the singular value (<xref ref-type="bibr" rid="B25">Wax and Kailath, 1985</xref>; <xref ref-type="bibr" rid="B3">Fishler et&#xa0;al., 2002</xref>). The effective rank <italic>r</italic> is then determined using the peak of the difference spectrum, which is the estimated value of the number of NMIS.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>The SSANet</title>
<p>In this section, the specific process of SSA unrolling and the corresponding design ideas, network structure, and parameters of SSANet are illustrated in detail.</p>
<sec id="s3_1">
<label>3.1</label>
<title>The design idea of SSANet</title>
<p>Based on the steps of SSA algorithm, we unroll it and design it as SSANet for the extraction of NMIS. The unrolling process of the SSA algorithm and the corresponding relationship with the SSANet are illustrated in <xref ref-type="fig" rid="f1">
<bold>Figure&#xa0;1</bold>
</xref>. Specifically:</p>
<fig id="f1" position="float">
<label>Figure&#xa0;1</label>
<caption>
<p>The process of SSA algorithm-unrolled and the corresponding with SSANet, where the input <italic>I<sub>c</sub>
</italic> is the received sound interference spectrum, and the output <italic>I<sub>nm</sub>
</italic> is the NMIS. <bold>W</bold>
<sub>1</sub>, <bold>W</bold>
<sub>2</sub>, <bold>W</bold>
<inline-formula>
<mml:math display="inline" id="im15">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathsize="normal">
<mml:mtext mathvariant="bold">&#xa0;</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>W</bold>
<inline-formula>
<mml:math display="inline" id="im16">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mtext mathvariant="bold">&#xa0;</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> are the network parameters of SSANet, <bold>U</bold>, <bold>U</bold>
<sup>&#x2020;</sup>, <bold>V</bold>, <bold>V</bold>
<sup>&#x2020;</sup>, <bold>&#x3a3;</bold>, and <bold>&#x3a3;</bold><italic>
<sub>r</sub>
</italic> are the matrices of the SSA algorithm unrolled. The symbol &#x2018;@&#x2019; represents the matrix multiplication.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g001.tif"/>
</fig>
<list list-type="simple">
<list-item>
<p>1. The SSA algorithm transforms the <italic>I<sub>c</sub>
</italic> into the Hankel matrix <bold>H</bold> and then through SVD to obtain matrix <bold>U&#x3a3;V</bold>
<sup>&#x2020;</sup>. Next, the matrix <bold>U&#x3a3;V</bold>
<sup>&#x2020;</sup> left-multiplies the conjugate transpose matrix <bold>U</bold>
<sup>&#x2020;</sup> to obtain the matrix <bold>&#x3a3;V</bold>
<sup>&#x2020;</sup>. For SSANet, this process was implemented using a one-dimensional convolutional neural network. As is well known, the output of a one-dimensional convolutional operation with a single channel and one-step is denoted as shown in <xref ref-type="disp-formula" rid="eq10">Equation 10</xref>:</p>
</list-item>
<list-item>
<p>where <bold>y</bold>
<sup>&#x2032;</sup> and <bold>y</bold>
<sup>&#x2032;&#x2032;</sup> represent the input and output, respectively, of the convolutional neural layer. <italic>Ker</italic> is the convolution kernel, (1<italic>,v</italic>) is the coordinate of <italic>Ker</italic>, (1<italic>,e</italic>) is the coordinate of the output vector, and <bold>b</bold>
<sub>1</sub> is the bias. Therefore, <bold>b</bold>
<sub>1</sub> can be initialized to 0, and the above process uses a convolution network implementation. The weight parameter <bold>W</bold>
<sub>1</sub> of the convolutional network corresponds to <bold>U</bold>
<sup>&#x2020;</sup>. The channel number of the convolutional network is equal to the number of rows (<italic>R</italic>) in matrix U<sup>&#x2020;</sup>, and the size of the <italic>Ker</italic> is equal to the number of columns (<italic>L</italic>) in <bold>U</bold>
<sup>&#x2020;</sup>. The output of this convolution operation is equal to matrix <bold>&#x3a3;V</bold>
<sup>&#x2020;</sup>. This layer is called the convolutional layer (Conv Layer);</p>
</list-item>
<list-item>
<p>2. In the SSA algorithm, the matrix <bold>&#x3a3;V</bold>
<sup>&#x2020;</sup> right-multiplies the matrix <bold>V</bold> to obtain the singular value matrix <bold>&#x3a3;</bold>. For SSANet, a learnable weight <bold>W</bold>
<sub>2</sub> is used instead of <bold>V</bold>, and the dimensions of <bold>W</bold>
<sub>2</sub> correspond to the dimensions of <bold>V</bold>. In this case, each row of the output from the Conv layer matrix-multiplies each column of <bold>W</bold>
<sub>2</sub> to simulate obtaining the singular values in the singular value matrix <bold>&#x3a3;</bold>. This layer is called the matrix multiply weight layer.</p>
</list-item>
<list-item>
<p>3. The SSA algorithm obtains <bold>&#x3a3;</bold>
<italic>
<sub>r</sub>
</italic> by setting the singular values in <bold>&#x3a3;</bold>, except for the first <italic>r</italic> value of 0. The activation function ReLU (<xref ref-type="bibr" rid="B1">Agarap, 2018</xref>) of the neural network satisfies <inline-formula>
<mml:math display="inline" id="im17">
<mml:mrow>
<mml:mi>ReLU</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>x</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>&#x2265;</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>x</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>&lt;</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. For SSANet, the ReLU activation function can be used to simulate the above process, and this layer is called the ReLU Layer. It should be noted that before using ReLU activation, the singular values are added to a set of learnable bias parameters. Even if the singular values (e.g., the last several values) are larger than zero, they can be filtered out by combining suitable biases through the ReLU layer.</p>
</list-item>
<list-item>
<p>4. In the SSA algorithm, matrix <bold>&#x3a3;</bold>
<italic>
<sub>r</sub>
</italic> left-multiplies the matrix <bold>U</bold> to obtain <bold>U&#x3a3;</bold>
<italic>
<sub>r</sub>
</italic>. For SSANet, the conjugate transpose of the weight parameter <bold>W</bold>
<sub>1</sub>, denoted as <inline-formula>
<mml:math display="inline" id="im18">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, was used instead of <bold>U</bold>. The dimensions of <inline-formula>
<mml:math display="inline" id="im19">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> correspond to the dimensions of <bold>U</bold>. The output of the ReLU layer was expanded in dimension by copying. Point multiplication is then performed with the weight <inline-formula>
<mml:math display="inline" id="im20">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> to simulate the process of obtaining <bold>U&#x3a3;</bold>
<italic>
<sub>r</sub>
</italic>. This layer is called the point multiply weight layer.</p>
</list-item>
<list-item>
<p>5. In the SSA algorithm, the matrix <bold>U&#x3a3;</bold>
<italic>
<sub>r</sub>
</italic> right-multiplies the matrix <bold>V<sup>&#x2020;</sup>
</bold> to obtain <inline-formula>
<mml:math display="inline" id="im21">
<mml:mrow>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">A</mml:mtext>
</mml:mstyle>
<mml:mo>&#xa0;</mml:mo>
<mml:mo mathvariant="bold">=</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">U</mml:mtext>
</mml:mstyle>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mi mathvariant="bold">&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mi mathvariant="bold-italic">r</mml:mi>
</mml:msub>
<mml:msup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">V</mml:mtext>
</mml:mstyle>
<mml:mo mathvariant="bold">&#x2020;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. For SSANet, the network parameters of this layer are replaced by the conjugate transpose of weight parameter <bold>W</bold>
<sub>2</sub> from the second layer, denoted as <inline-formula>
<mml:math display="inline" id="im22">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. The dimensions of <inline-formula>
<mml:math display="inline" id="im23">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> correspond to the dimensions of <bold>V</bold>
<sup>&#x2020;</sup>. The output of the previous layer is matrix multiplied by the weight <inline-formula>
<mml:math display="inline" id="im24">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> simulating obtaining <inline-formula>
<mml:math display="inline" id="im25">
<mml:mrow>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">A</mml:mtext>
</mml:mstyle>
<mml:mo>&#xa0;</mml:mo>
<mml:mo mathvariant="bold">=</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">U</mml:mtext>
</mml:mstyle>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mi mathvariant="bold">&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mi mathvariant="bold-italic">r</mml:mi>
</mml:msub>
<mml:msup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">V</mml:mtext>
</mml:mstyle>
<mml:mo mathvariant="bold">&#x2020;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. This layer is referred to as the matrix multiply weight layer. In other words, the process of constructing the Hankel matrix, SVD, and grouping to obtain the <italic>I</italic> in the SSA algorithm is unrolled into the above five steps, corresponding to the five layers in the SSANet neural network.</p>
</list-item>
<list-item>
<p>6. The fourth step in SSA algorithm is diagonal averaging. The process of a fully connected layer in a neural network is represented as <inline-formula>
<mml:math display="inline" id="im26">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mo>'</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>F</mml:mi>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">b</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> (where <italic>F</italic> and <inline-formula>
<mml:math display="inline" id="im27">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> represent the input and output of the fully connected layer, respectively. <bold>W</bold> and <bold>b</bold>
<sub>2</sub> are the weight and bias parameters of the fully connected layer, respectively). <bold>W</bold> and <bold>b</bold>
<sub>2</sub> can achieve data dimensionality reduction and learn complex mapping relations in data through training. Therefore, SSANet implements diagonal averaging with a fully connected network and extracts NMIS by setting the number of output neurons. This layer is referred to as the FC layer.</p>
</list-item>
</list>
<disp-formula id="eq10">
<label>(10)</label>
<mml:math display="block" id="M10">
<mml:mrow>
<mml:msub>
<mml:msup>
<mml:mi mathvariant="bold">y</mml:mi>
<mml:mo>&#x2033;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>v</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>V</mml:mi>
</mml:munderover>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:msup>
<mml:mi mathvariant="bold">y</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>e</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo>&#xb7;</mml:mo>
<mml:mi>K</mml:mi>
<mml:mi>e</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>The structure of SSANet</title>
<p>Based on the unrolling of the SSA algorithm mentioned above, we designed a six-layer network structure called SSANet. Assuming the input is the received and normalized <inline-formula>
<mml:math display="inline" id="im28">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, which undergoes SVD in the SSA algorithm to obtain the unitary matrices <inline-formula>
<mml:math display="inline" id="im29">
<mml:mrow>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">U</mml:mtext>
</mml:mstyle>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula>
<mml:math display="inline" id="im30">
<mml:mrow>
<mml:msup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">V</mml:mtext>
</mml:mstyle>
<mml:mo>&#x2020;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and the singular value matrix <inline-formula>
<mml:math display="inline" id="im31">
<mml:mrow>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mi mathvariant="bold">&#x3a3;</mml:mi>
</mml:mstyle>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. The structure of SSANet is illustrated in <xref ref-type="fig" rid="f2">
<bold>Figure&#xa0;2</bold>
</xref> (the parameters of the SSA algorithm are shown in <xref ref-type="fig" rid="f2">
<bold>Figure&#xa0;2</bold>
</xref>). The dimensions of the network input, weight, and output parameters for each layer are presented in <xref ref-type="table" rid="T1">
<bold>Table&#xa0;1</bold>
</xref>. The specific steps are as follows:</p>
<list list-type="order">
<list-item>
<p>Conv Layer: The number of channels is <italic>R</italic>, the convolutional kernel size is <italic>L</italic>, and the step is 1. The output dimension obtained after the convolution operation was <italic>R</italic> &#xd7; (<italic>N</italic> + 1 &#x2212; <italic>L</italic>) = <italic>R</italic> &#xd7; <italic>K</italic> (the weight parameter of the Conv layer was <inline-formula>
<mml:math display="inline" id="im32">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>).</p>
</list-item>
<list-item>
<p>Matrix multiply weight layer (1): Each row of the output <italic>R</italic> &#xd7; <italic>K</italic> of the Conv layer matrix multiplies each column of the weight matrix <inline-formula>
<mml:math display="inline" id="im33">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and the output dimension is 1 &#xd7; <italic>R</italic>.</p>
</list-item>
<list-item>
<p>ReLU Layer: Add the previous layer&#x2019;s output to the bias and use the ReLU function to activate; the output dimension is 1 &#xd7; <italic>R</italic>.</p>
</list-item>
<list-item>
<p>Point multiply weight layer: Expand the output dimension 1 &#xd7; <italic>R</italic> of the ReLU layer to <italic>L</italic> &#xd7; <italic>R</italic> by copying. Then, each column of <italic>L</italic> &#xd7; <italic>R</italic> point multiplies each column of weight <inline-formula>
<mml:math display="inline" id="im34">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>1</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mi>L</mml:mi>
</mml:msup>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and the output dimension size is <italic>L</italic> &#xd7; <italic>R</italic>.</p>
</list-item>
<list-item>
<p>Matrix multiply weight layer (2): The output <italic>L</italic> &#xd7; <italic>R</italic> of the previous layer right-multiplies the weight <inline-formula>
<mml:math display="inline" id="im35">
<mml:mrow>
<mml:msubsup>
<mml:mstyle mathvariant="" mathsize="normal">
<mml:mtext mathvariant="bold">W</mml:mtext>
</mml:mstyle>
<mml:mn>2</mml:mn>
<mml:mo>&#x2020;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and the output dimension is <italic>L</italic> &#xd7; <italic>K</italic>.</p>
</list-item>
<list-item>
<p>Fc Layer: The output <italic>L</italic> &#xd7; <italic>K</italic> from the previous layer is flattened to 1 &#xd7; (<italic>L</italic> &#xd7; <italic>K</italic>). The Fc layer results in an output dimension of 1 &#xd7; (<italic>N</italic> &#xd7; <italic>num</italic>) (where <italic>num</italic> represents the number of NMIS), thus obtaining the predicted output <inline-formula>
<mml:math display="inline" id="im36">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> of the network.</p>
</list-item>
</list>
<fig id="f2" position="float">
<label>Figure&#xa0;2</label>
<caption>
<p>The structure of SSANet.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g002.tif"/>
</fig>
<table-wrap id="T1" position="float">
<label>Table&#xa0;1</label>
<caption>
<p>The parameters of SSANet.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Layer Number</th>
<th valign="top" align="center">Layer Name</th>
<th valign="top" align="center">Input Size</th>
<th valign="top" align="center">Weight Size</th>
<th valign="top" align="center">Output Size</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">1</td>
<td valign="top" align="center">Conv Layer</td>
<td valign="top" align="center">1 &#xd7; <italic>N</italic>
</td>
<td valign="top" align="center">
<italic>R</italic> &#xd7; <italic>L</italic>
</td>
<td valign="top" align="center">
<italic>R</italic> &#xd7; <italic>K</italic>
</td>
</tr>
<tr>
<td valign="middle" align="center">2</td>
<td valign="top" align="center">Matrix Multiplication<break/>Weight Layer(1)</td>
<td valign="middle" align="center">
<italic>R</italic> &#xd7; <italic>K</italic>
</td>
<td valign="middle" align="center">
<italic>K</italic> &#xd7; <italic>R</italic>
</td>
<td valign="middle" align="center">1 &#xd7; <italic>R</italic>
</td>
</tr>
<tr>
<td valign="middle" align="center">3</td>
<td valign="top" align="center">ReLU<break/>Layer</td>
<td valign="middle" align="center">1 &#xd7; <italic>R</italic>
</td>
<td valign="top" align="center"/>
<td valign="middle" align="center">1 &#xd7; <italic>R</italic>
</td>
</tr>
<tr>
<td valign="middle" align="center">4</td>
<td valign="top" align="center">Point multiplication weight Layer</td>
<td valign="middle" align="center">1 &#xd7; <italic>R</italic>
</td>
<td valign="middle" align="center">
<italic>L</italic> &#xd7; <italic>R</italic>
</td>
<td valign="middle" align="center">
<italic>L</italic> &#xd7; <italic>R</italic>
</td>
</tr>
<tr>
<td valign="middle" align="center">5</td>
<td valign="top" align="center">Matrix Multiplication<break/>Weight Layer(2)</td>
<td valign="middle" align="center">
<italic>L</italic> &#xd7; <italic>R</italic>
</td>
<td valign="middle" align="center">
<italic>R</italic> &#xd7; <italic>K</italic>
</td>
<td valign="middle" align="center">
<italic>L</italic> &#xd7; <italic>K</italic>
</td>
</tr>
<tr>
<td valign="top" align="center">6</td>
<td valign="top" align="center">FC Layer</td>
<td valign="top" align="center">
<italic>L</italic> &#xd7; <italic>K</italic>
</td>
<td valign="top" align="center">(<italic>L</italic> &#xd7; <italic>K</italic>) &#xd7; (<italic>N</italic> &#xd7; <italic>num</italic>)</td>
<td valign="top" align="center">1 &#xd7; (<italic>N</italic> &#xd7; <italic>num</italic>)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The implementation of SSANet was carried out using Pytorch 1.6.0, with an NVIDIA Quadro GV100 GPU. The weight parameters <bold>W</bold>
<sub>1</sub> and <bold>W</bold>
<sub>2</sub> were initialized with Kaming initialization (<xref ref-type="bibr" rid="B10">He et&#xa0;al., 2015</xref>). The mean absolute error was selected as the loss function and optimized using the Adam optimizer (<xref ref-type="bibr" rid="B14">Kingma and Ba, 2014</xref>), with the learning rate (<xref ref-type="bibr" rid="B22">Smith, 2017</xref>) set to 1<italic>e</italic>&#x2212;4. The batch size was set as 128. To prevent network overfitting, an early stop strategy was adopted in training; the network training was stopped when the loss on the validation set did not drop within 10 epochs (<xref ref-type="bibr" rid="B17">Liang et&#xa0;al., 2019</xref>).</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Simulation and results</title>
<p>In this study, we simulated two canonical ocean waveguides and evaluated the extraction results of each method. In this section, the first part presents the datasets. The second part describes the evaluation criteria for comparing SSANet with other methods, such as FT, MUSIC, and SSA. Finally, an analysis of the results obtained using each method is presented.</p>
<sec id="s4_1">
<label>4.1</label>
<title>Datasets</title>
<p>This study utilizes the typical sound field simulation software Kraken (<xref ref-type="bibr" rid="B21">Porter, 1992</xref>), which is used to simulate typical winter (isovelocity) and summer (thermocline) waveguide sound speed profiles. The sound speed and medium parameters are shown in <xref ref-type="fig" rid="f3">
<bold>Figures&#xa0;3A, B</bold>
</xref>. In these two waveguide environments, the emission frequencies of the sound source were <italic>f</italic> &#x2208; [300,360] Hz and <italic>f</italic> &#x2208; [180,220] Hz, respectively. The frequency resolution are 0.3 Hz and 0.2 Hz, respectively. It is assumed that the depths of the known hydrophones are 15 m and 30 m, respectively, whereas the depths and distances of the sound sources are unknown.</p>
<fig id="f3" position="float">
<label>Figure&#xa0;3</label>
<caption>
<p>The sound speed and medium parameters. <bold>(A)</bold> Is the isovelocity waveguide sound speed profiles. <bold>(B)</bold> Is the thermocline waveguide sound speed profiles.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g003.tif"/>
</fig>
<p>For the training samples in the isovelocity waveguide, the depth of the sound source was set as <italic>z<sub>s</sub>
</italic> = {1,2<italic>,&#x2026;</italic>,30} m. At each source depth, 500 data points were randomly generated within the distance <italic>r</italic> &#x2208; [10,15] km. A total of 15,000 samples are generated. Similarly, in the thermocline waveguide, the depth of the sound source was set as <italic>z<sub>s</sub>
</italic> = {1,2<italic>,&#x2026;</italic>,50} m. At each source depth, 500 data points were randomly generated within <italic>r</italic> &#x2208; [20,25] km. In total, 25,000 samples were collected. The two training samples are randomly added with noise at SNR = [&#x2212;10,10] dB and are divided into training and validation sets in an 8:2 ratio for network training. It should be noted that the SSANet model in this study can extract multiple pairs of NMIS by setting the value of <italic>num</italic>. In this study, we use the extraction of two pairs of NMIS as an example to introduce the SSANet method. Therefore, for the training set, the true labels are the first two pairs of NMIS with larger interference amplitudes, i.e., <italic>num</italic> = 2 in the SSANet.</p>
<p>According to the method based on <xref ref-type="bibr" rid="B6">Gao et&#xa0;al. (2021)</xref>, in an isovelocity environment, when <italic>z<sub>r</sub>
</italic>= 17 m, <italic>z<sub>s</sub>
</italic>= 7 m, and <italic>r</italic> = 13 km, the singular value distribution of <italic>I</italic> is shown in <xref ref-type="fig" rid="f4">
<bold>Figure&#xa0;4A</bold>
</xref>. In a thermocline environment, when <italic>z<sub>r</sub>
</italic>= 30 m, <italic>z<sub>s</sub>
</italic>= 29 m, and <italic>r</italic> = 23 km, the singular value distribution of <italic>I</italic> is shown in <xref ref-type="fig" rid="f4">
<bold>Figure&#xa0;4B</bold>
</xref>. As can be seen in <xref ref-type="fig" rid="f4">
<bold>Figure&#xa0;4</bold>
</xref>, there are two large singular values, corresponding to the 1st&#x2013;3rd NMIS(<italic>I</italic>
<sub>13</sub>) and the 1st&#x2013;2nd NMIS (<italic>I</italic>
<sub>12</sub>). Based on the method for determining the effective rank <italic>r</italic> in this study, it is known that only two sets of NMIS dominate in the above environment. Therefore, a test set was generated at the aforementioned sound source depth. The isovelocity waveguide set <italic>z<sub>r</sub>
</italic>= 17 m, <italic>z<sub>s</sub>
</italic>= 7 m, and <italic>r</italic> = {10,10.025,10.5<italic>,&#x2026;</italic>,15} km, and the thermocline waveguide set <italic>z<sub>r</sub>
</italic>= 30 m, <italic>z<sub>s</sub>
</italic>= 29 m, and <italic>r</italic> = {20,20.025,20.5<italic>,&#x2026;</italic>,25} km. Each of them generates 201 data, which are added to the noise of SNR = [&#x2212;10,10] dB with an interval of 2 dB, serving as the test set. The datasets used are presented in <xref ref-type="table" rid="T2">
<bold>Table&#xa0;2</bold>
</xref>. In the data preprocessing stage, all the above data samples were normalized using maximum value normalization.</p>
<fig id="f4" position="float">
<label>Figure&#xa0;4</label>
<caption>
<p>The distribution of singular value. <bold>(A)</bold> Is the distribution of singular value in the isovelocity waveguide. <bold>(B)</bold> Is the distribution of singular value in the thermocline waveguide.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g004.tif"/>
</fig>
<table-wrap id="T2" position="float">
<label>Table&#xa0;2</label>
<caption>
<p>The datasets.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Waveguide</th>
<th valign="top" align="center">
<italic>f</italic> (Hz)</th>
<th valign="top" align="center">
<italic>z<sub>r</sub> </italic>(m)</th>
<th valign="top" align="center">
<italic>z<sub>s</sub>
</italic> (m)</th>
<th valign="top" align="center">
<italic>r</italic> (km)</th>
<th valign="top" align="center">Data Num</th>
<th valign="top" align="center">Data Name</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center">isovelocity</td>
<td valign="bottom" align="center">[300,360]</td>
<td valign="bottom" align="center">17</td>
<td valign="middle" align="center">[1,2<italic>,&#x2026;</italic>,30]</td>
<td valign="middle" align="center">[10,15]</td>
<td valign="top" align="center">12,000<break/>3,000</td>
<td valign="top" align="center">Training sets <break/>Validation sets</td>
</tr>
<tr>
<td valign="top" align="center"/>
<td valign="top" align="center"/>
<td valign="top" align="center"/>
<td valign="top" align="center">7</td>
<td valign="top" align="center">{10,10,025,10.5,&#x2026;,15}</td>
<td valign="top" align="center">201</td>
<td valign="top" align="center">Test sets</td>
</tr>
<tr>
<td valign="bottom" align="center">thermocline</td>
<td valign="bottom" align="center">[180,220]</td>
<td valign="bottom" align="center">30</td>
<td valign="middle" align="center">[1,2<italic>,&#x2026;</italic>,50]</td>
<td valign="middle" align="center">[20,25]</td>
<td valign="top" align="center">20,000<break/>5,000</td>
<td valign="top" align="center">Training sets <break/>Validation sets</td>
</tr>
<tr>
<td valign="top" align="center"/>
<td valign="top" align="center"/>
<td valign="top" align="center"/>
<td valign="top" align="center">29</td>
<td valign="top" align="center">{20,20,025,20.5,&#x2026;,25}</td>
<td valign="top" align="center">201</td>
<td valign="top" align="center">Test sets</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Evaluation criteria</title>
<p>The root-mean-square error (RMSE) and Mean Absolute Error (MAE) were used to evaluate the performance of the methods. A smaller value for both metrics indicates a minor error between the true and predicted values, indicating better extraction of the NMIS. RMSE and MAE are defined in <xref ref-type="disp-formula" rid="eq11">Equation 11</xref> and <xref ref-type="disp-formula" rid="eq12">Equation 12</xref>, as follows:</p>
<disp-formula id="eq11">
<label>(11)</label>
<mml:math display="block" id="M11">
<mml:mrow>
<mml:mtext>RMSE</mml:mtext>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>f</mml:mi>
</mml:mfrac>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>f</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mtext>nm</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq12">
<label>(12)</label>
<mml:math display="block" id="M12">
<mml:mrow>
<mml:mtext>MAE</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>f</mml:mi>
</mml:mfrac>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>f</mml:mi>
</mml:munderover>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>|</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im37">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula>
<mml:math display="inline" id="im38">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>I</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the predicted and true NMIS, respectively.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Simulation results</title>
<p>This study compares the SSANet method with the traditional methods: FT, MUSIC, and SSA methods (<xref ref-type="bibr" rid="B4">Gao, 2016</xref>). For the SSANet method, we assumed the construction of a Hankel matrix as a square matrix; thus, the network parameters are denoted as <inline-formula>
<mml:math display="inline" id="im39">
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>R</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>=101. The MAE and RMSE obtained by applying the four mentioned methods for extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in the isovelocity waveguide under varying SNR are shown in <xref ref-type="fig" rid="f5">
<bold>Figures&#xa0;5A&#x2013;D</bold>
</xref>. Similarly, the MAE and RMSE obtained by applying the four methods for extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in a thermocline waveguide under varying SNR are shown in <xref ref-type="fig" rid="f6">
<bold>Figures&#xa0;6A&#x2013;D</bold>
</xref>. In addition, a random sample was selected from the test dataset in both environments. <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7</bold>
</xref> shows the input <italic>I<sub>c</sub>
</italic> for the isovelocity and thermocline waveguides. <xref ref-type="fig" rid="f8">
<bold>Figures&#xa0;8A&#x2013;F</bold>
</xref>, respectively, represent the results of extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in the isovelocity waveguide using SSANet compared to other methods. <xref ref-type="fig" rid="f9">
<bold>Figures&#xa0;9A&#x2013;F</bold>
</xref>, respectively, represent the results of extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in the thermocline waveguide using SSANet compared to other methods.</p>
<fig id="f5" position="float">
<label>Figure&#xa0;5</label>
<caption>
<p>The results of MAE and RMSE in the isovelocity waveguide. <bold>(A&#x2013;D)</bold> Represent the MAE and RMSE results of extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in the isovelocity waveguide, respectively.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g005.tif"/>
</fig>
<fig id="f6" position="float">
<label>Figure&#xa0;6</label>
<caption>
<p>The results of MAE and RMSE in the thermocline waveguide. <bold>(A&#x2013;D)</bold> Represent the MAE and RMSE results of extracting <italic>I</italic>
<sub>13</sub> and <italic>I</italic>
<sub>12</sub> in the thermocline waveguide, respectively.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g006.tif"/>
</fig>
<fig id="f7" position="float">
<label>Figure&#xa0;7</label>
<caption>
<p>One of the inputs, <italic>I<sub>c</sub>
</italic>, of different methods. <bold>(A)</bold> Represents the input <italic>I<sub>c</sub>
</italic> in the isovelocity waveguide. <bold>(B)</bold> Represents the input <italic>I<sub>c</sub>
</italic> in the thermocline waveguide.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g007.tif"/>
</fig>
<fig id="f8" position="float">
<label>Figure&#xa0;8</label>
<caption>
<p>The SSANet extracts <italic>I</italic>
<sub>13</sub> result comparing with <bold>(A)</bold> SSA, <bold>(C)</bold> FT, and <bold>(E)</bold> MUSIC from <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7A</bold>
</xref>. The SSANet extracts <italic>I</italic>
<sub>12</sub> result comparing with <bold>(B)</bold> SSA, <bold>(D)</bold> FT, and <bold>(F)</bold> MUSIC from <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7A</bold>
</xref>.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g008.tif"/>
</fig>
<fig id="f9" position="float">
<label>Figure&#xa0;9</label>
<caption>
<p>The SSANet extracts <italic>I</italic>
<sub>13</sub> result comparing with <bold>(A)</bold> SSA, <bold>(C)</bold> FT, and <bold>(E)</bold> MUSIC from <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7B</bold>
</xref>. The SSANet extracts <italic>I</italic>
<sub>12</sub> result comparing with <bold>(B)</bold> SSA, <bold>(D)</bold> FT, and <bold>(F)</bold> MUSIC from <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7B</bold>
</xref>.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-10-1342090-g009.tif"/>
</fig>
<p>From <xref ref-type="fig" rid="f5">
<bold>Figures&#xa0;5</bold>
</xref>, <xref ref-type="fig" rid="f6">
<bold>6</bold>
</xref>, <xref ref-type="fig" rid="f8">
<bold>8</bold>
</xref>, <xref ref-type="fig" rid="f9">
<bold>9</bold>
</xref>, it can be observed that SSANet provides the overall best extraction results for the phase, amplitude, and oscillation period of the NMIS. However, the FT, MUSIC, and SSA methods exhibit a significant decrease in performance when the amplitude and phase of the NMIS exhibit nonlinear variations with frequency under low SNR conditions. This is because the traditional extraction algorithms are designed by analyzing the physical processes and through handcrafting, while SSANet attempts to automatically discover model information and incorporate NMIS information by optimizing network parameters that are obtained from the training samples (<xref ref-type="bibr" rid="B20">Monga et&#xa0;al., 2021</xref>). On the one hand, when there is noise, traditional extraction algorithms do not consider the prior information of the noise, whereas SSANet learns the prior information of the noise during network training, and thus SSANet has stronger noise robustness. On the other hand, when the amplitude and phase of the NMIS exhibit nonlinear changes, the prior assumption of traditional extraction algorithms makes it difficult to extract nonlinear information. The SSANet can learn nonlinear information through training. Overall, it can be said that the trained SSANet is a parameter-optimized version of the SSA algorithm and therefore outperforms traditional extraction algorithms. These results confirm the effectiveness of the SSANet proposed in this study.</p>
</sec>
</sec>
<sec id="s5" sec-type="conclusion">
<label>5</label>
<title>Conclusion</title>
<p>In this study, a novel algorithm-unrolled neural network model called SSANet was constructed for the extraction of NMIS in lower SNR conditions. The core of the SSANet model is to unroll the SSA algorithm and utilize the powerful data-learning ability of deep learning. The efficiency of the SSANet was validated in different typical ocean waveguides with different SNR. It is found that the SSANet outperformed the traditional FT, MUSIC, and SSA methods at a low SNR. The structure of SSANet is based on the SSA algorithm, and the trained SSANet can be naturally interpreted as a parameter-optimized algorithm, effectively addressing the lack of interpretability in most conventional neural networks. In the future, we will extend the ideas of SSANet to other signal decomposition/extraction problems, which will provide more possibilities for research in this field. Furthermore, the extraction results of NMIS in the ocean waveguide can be applied to sound source localization, waveguide variance estimation, etc.</p>
</sec>
<sec id="s6" sec-type="data-availability">
<title>Data availability statement</title>
<p>The raw data supporting the conclusions of this article will be made available by the authors, without undue reservation.</p>
</sec>
<sec id="s7" sec-type="author-contributions">
<title>Author contributions</title>
<p>SZ: Conceptualization, Formal analysis, Methodology, Visualization, Writing &#x2013; original draft. WG: Methodology, Supervision, Validation, Writing &#x2013; review &amp; editing. XL: Supervision, Validation, Methodology, Writing &#x2013; review &amp; editing.</p>
</sec>
</body>
<back>
<sec id="s8" sec-type="funding-information">
<title>Funding</title>
<p>The author(s) declare financial support was received for the research, authorship, and/or publication of this article. This work was supported by the National Natural Science Foundation of China under Grant Nos. 52071309 and 52001296, the Taishan Scholars under Grant No. tsqn 201909053, and the Fundamental Research Funds for Central Universities under Grant Nos. 202161003, 202065005, 862001013102, 202165007.</p>
</sec>
<sec id="s9" sec-type="COI-statement">
<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 id="s10" sec-type="disclaimer">
<title>Publisher&#x2019;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>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Agarap</surname> <given-names>A. F.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Deep learning using rectified linear units (relu)</article-title>. <source>arXiv</source>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1803.08375</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bj&#xf6;rck</surname> <given-names>&#xc5;.</given-names>
</name>
</person-group> (<year>1990</year>). <article-title>Least squares methods</article-title>. <source>Handb. numerical Anal.</source> <volume>1</volume>, <fpage>465</fpage>&#x2013;<lpage>652</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/S1570-8659(05)80036-5</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fishler</surname> <given-names>E.</given-names>
</name>
<name>
<surname>Grosmann</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Messer</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2002</year>). <article-title>Detection of signals by information theoretic criteria: General asymptotic performance analysis</article-title>. <source>IEEE Trans. Signal Process.</source> <volume>50</volume>, <fpage>1027</fpage>&#x2013;<lpage>1036</lpage>. doi: <pub-id pub-id-type="doi">10.1109/78.995060</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname> <given-names>W.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Singular value decomposition extraction method for simple positive wave coherent components in shallow sea waveguides</article-title>. <source>Acta Acustica</source> <volume>1</volume>, <fpage>42</fpage>&#x2013;<lpage>48</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.15949/j.cnki.0371-0025.2016.01.005</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Multi-resolution estimation of the interference spectrum per pair of modes in the frequency domain</article-title>. <source>J. Acoustical Soc. America</source> <volume>148</volume>, <fpage>EL340</fpage>&#x2013;<lpage>EL346</lpage>. doi: <pub-id pub-id-type="doi">10.1121/10.0002136</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Fpm-<italic>&#x3b2;</italic>: A method for waveguide invariant estimation using one-dimensional broadband acoustic intensity</article-title>. <source>JASA Express Lett.</source> <volume>1</volume> (<issue>8</issue>), <fpage>084802</fpage>. doi: <pub-id pub-id-type="doi">10.1121/10.0005842</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Grachev</surname> <given-names>G.</given-names>
</name>
</person-group> (<year>1993</year>). <article-title>Theory of acoustic field invariants in layered waveguides</article-title>. <source>Acoustical Phys.</source> <volume>39</volume>, <fpage>33</fpage>&#x2013;<lpage>35</lpage>.</citation>
</ref>
<ref id="B8">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Gregor</surname> <given-names>K.</given-names>
</name>
<name>
<surname>LeCun</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>2010</year>). &#x201c;<article-title>Learning fast approximations of sparse coding</article-title>,&#x201d; in <conf-name>Proceedings of the 27th international conference on international conference on machine learning</conf-name>. <fpage>399</fpage>&#x2013;<lpage>406</lpage>.</citation>
</ref>
<ref id="B9">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Hassani</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2007</year>). <source>Singular spectrum analysis: methodology and comparison</source>. <volume>5</volume>, <fpage>239</fpage>&#x2013;<lpage>257</lpage>.</citation>
</ref>
<ref id="B10">
<citation citation-type="confproc">
<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>2015</year>). &#x201c;<article-title>Delving deep into rectifiers: Surpassing human-level performance on imagenet classification</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE international conference on computer vision</conf-name>. <fpage>1026</fpage>&#x2013;<lpage>1034</lpage>.</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hershey</surname> <given-names>J. R.</given-names>
</name>
<name>
<surname>Roux</surname> <given-names>J. L.</given-names>
</name>
<name>
<surname>Weninger</surname> <given-names>F.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Deep unfolding: Model-based inspiration of novel deep architectures</article-title>. <source>arXiv preprint arXiv:1409.2574</source>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1409.2574</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Jensen</surname> <given-names>F. B.</given-names>
</name>
<name>
<surname>Kuperman</surname> <given-names>W. A.</given-names>
</name>
<name>
<surname>Porter</surname> <given-names>M. B.</given-names>
</name>
<name>
<surname>Schmidt</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Tolstoy</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2011</year>). <source>Computational ocean acoustics</source>. <volume>2011</volume>. (<publisher-loc>New York</publisher-loc>: <publisher-name>Springer</publisher-name>).</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kalantari</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Hassani</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Sirimal Silva</surname> <given-names>E.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Weighted linear recurrent forecasting in singular spectrum analysis</article-title>. <source>Fluctuation Noise Lett.</source> <volume>19</volume>, <fpage>2050010</fpage>. doi: <pub-id pub-id-type="doi">10.1142/S0219477520500108</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kingma</surname> <given-names>D. P.</given-names>
</name>
<name>
<surname>Ba</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Adam: A method for stochastic optimization</article-title>. <source>arXiv</source>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1412.6980</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>LeCun</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Bengio</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>1995</year>). <article-title>Convolutional networks for images, speech, and time series</article-title>. <source>Handb. Brain Theory Neural Networks</source> <volume>3361</volume> (<issue>10</issue>), <fpage>1995</fpage>.</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>Q.</given-names>
</name>
<name>
<surname>Yang</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>An eemd-based denoising method for seismic signal of high arch dam combining wavelet with singular spectrum analysis</article-title>. <source>Shock Vibration</source> <volume>2019</volume>. doi: <pub-id pub-id-type="doi">10.1155/2019/4937595</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liang</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>J.</given-names>
</name>
<name>
<surname>He</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Huang</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Zhuang</surname> <given-names>K.</given-names>
</name>
<etal/>
</person-group>. (<year>2019</year>). <article-title>Darts+: Improved differentiable architecture search with early stopping</article-title>. <source>arXiv</source>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1909.06035</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lin</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Wu</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Singular spectrum analysis for modal estimation from stationary response only</article-title>. <source>Sensors</source> <volume>22</volume>, <fpage>2585</fpage>. doi: <pub-id pub-id-type="doi">10.3390/s22072585</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mallat</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Understanding deep convolutional networks</article-title>. <source>Philos. Trans. R. Soc. A: Mathematical Phys. Eng. Sci.</source> <volume>374</volume>, <fpage>20150203</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1098/rsta.2015.0203</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Monga</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Eldar</surname> <given-names>Y. C.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Algorithm unrolling: Interpretable, efficient deep learning for signal and image processing</article-title>. <source>IEEE Signal Process. Magazine</source> <volume>38</volume>, <fpage>18</fpage>&#x2013;<lpage>44</lpage>. doi: <pub-id pub-id-type="doi">10.1109/MSP.2020.3016905</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Porter</surname> <given-names>M. B.</given-names>
</name>
</person-group> (<year>1992</year>). <source>The kraken normal mode program</source> (<publisher-loc>La Spezia, Italy</publisher-loc>: <publisher-name>SACLANT Undersea Research Centre</publisher-name>).</citation>
</ref>
<ref id="B22">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Smith</surname> <given-names>L. N.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Cyclical learning rates for training neural networks</article-title>,&#x201d; in <conf-name>2017 IEEE winter conference on applications of computer vision (WACV) (IEEE)</conf-name>. <fpage>464</fpage>&#x2013;<lpage>472</lpage>.</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Unnikrishnan</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Jothiprakash</surname> <given-names>V.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Grouping in singular spectrum analysis of time series</article-title>. <source>J. Hydrologic Eng.</source> <volume>27</volume>, <fpage>06022001</fpage>. doi: <pub-id pub-id-type="doi">10.1061/(ASCE)HE.1943-5584.0002198</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Vautard</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Yiou</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Ghil</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>1992</year>). <article-title>Singular-spectrum analysis: A toolkit for short, noisy chaotic signals</article-title>. <source>Physica D: Nonlinear Phenomena</source> <volume>58</volume>, <fpage>95</fpage>&#x2013;<lpage>126</lpage>. doi: <pub-id pub-id-type="doi">10.1016/0167-2789(92)90103-T</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wax</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Kailath</surname> <given-names>T.</given-names>
</name>
</person-group> (<year>1985</year>). <article-title>Detection of signals by information theoretic criteria</article-title>. <source>IEEE Trans. acoustics speech Signal Process.</source> <volume>33</volume>, <fpage>387</fpage>&#x2013;<lpage>392</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TASSP.1985.1164557</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Zhao</surname> <given-names>Z.</given-names>
</name>
</person-group> (<year>2010</year>). <source>Research on shallow sea acoustic field interference structure and broadband sound source ranging</source> (<publisher-loc>China</publisher-loc>: <publisher-name>Ocean University of China</publisher-name>).</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhao</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Gao</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Broadband source ranging in shallow water using the &#x2126;-interference spectrum</article-title>. <source>Chin. Phys. Lett.</source> <volume>27</volume>, <fpage>064301</fpage>. doi: <pub-id pub-id-type="doi">10.1088/0256-307X/27/6/064301</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>