## 1 Introduction

*et al.*, 2018; Yatabe and Kitamura, 2018). It attempts to separate the unknown original signals only by using the observations of their mixture without having any prior information of the source signals and channels. It is important to measure the effectiveness of the blind separation algorithms, since it affects not only the effect of the algorithms, but also the iterative process of the algorithms. Evaluating the quality of the waveforms of the signals and the similarity of the waveforms is the most straightforward way to judge the effectiveness of algorithm. However, this method can only be regarded as a qualitative analysis, which cannot quantitatively reflect the stability and convergence rate of the algorithm. Therefore, researchers have proposed some performance indexes, such as crosstalk error (Cichocki and Amari, 2002; Parra and Sajda, 2003; El-Sankary

*et al.*, 2015), correlation coefficient (Li

*et al.*, 2012) and signal-to-noise ratio (Laheld and Cardoso, 1993; Li and Sejnowski, 1995; Grellier and Comon, 1998; Nandakumar and Bijoy, 2014; Aroudi

*et al.*, 2016; Mirzal, 2017) etc. The consistence between the order of the source signals and the separated signals is needed for calculating most of the performance indexes, but the order of the separated signals is uncertain. The crosstalk error does not need to consider the correspondence, and it can reflect the separation effect directly.

**C**and a diagonal matrix. When

**C**is closer to a diagonal matrix or its permutation matrix, the smaller the crosstalk error, the more similar the separated signals are to the source signals. Theoretically, the crosstalk error should be a good performance index in the field of BSS (Macchi, 1993; Moreau and Macchi, 1996; Amari, 1997; Yang and Amari, 1997; Moreau and Macchi, 1998; Macchi and Moreau, 1999; Yang, 1999; Basak and Amari, 1999). However, it is very sensitive to numerical errors and can not be directly used to evaluate separation effects in many practical situations. On one hand, in order to calculate the crosstalk error, it needs to know

**C**in advance, which means that it cannot directly be applied to real-world experiments. On the other hand, if the maximum value of each row of

**C**is in the same column, the crosstalk error usually does not correctly evaluate the separation effect. In this case, small crosstalk errors do not indicate that the separation effect is good. Since each component of the separated signal is an approximate estimation of the same source signal component, the actual separation effect is poor. The above two shortcomings affect its practical application. In order to overcome the above problems, Li Zong have proposed a method to improve crosstalk error evaluation criterion by introducing correlation coefficients to measure the degree of correlation between the separated signal components and adding them to the calculation formula of crosstalk error (Li

*et al.*, 2012). Although this method improves the accuracy of the evaluation when the maximum values of two rows of

**C**are in the same column,

**C**is still unknown when calculating crosstalk error in the practical application. Zhang used the Least Mean Square (LMS) algorithm to estimate

**C**in real time (Zhang

*et al.*, 2011). However, the convergence rate of the method is limited by the convergence step size of the algorithm, and once the step size is inappropriate, the algorithm will fail. At the same time, when the value changes subtly in

**C**(Mansour

*et al.*, 2002), the crosstalk error may vary greatly. In other words, the crosstalk error is not robust.

**C**in the process of calculating the crosstalk error.

## 2 Problem Formulation

*M*units, therefore the instantaneous linear mixing model can be expressed as where ${\mathbf{x}_{t}}\in {R^{m}}$ stands for the observation vector and ${\mathbf{S}_{t}}=[{s_{1}}(t),{s_{2}}(t),\dots ,{s_{n}}{(t)]^{T}}$ is the source signal vector. ${\mathbf{N}_{t}}={[{n_{1}}(t),{n_{2}}(t),\dots ,{n_{m}}(t)]^{T}}$ is the additive observation noise vector. The subscript in ${\mathbf{x}_{t}}$, ${\mathbf{S}_{t}}$ and ${\mathbf{N}_{t}}$ stands for the vectors at the moment

*t*. $\mathbf{A}\in {R^{m\times n}}$ is named as mixed matrix. In general, the noise signal ${n_{i}}(t)$, $i=1,2,\dots ,m$ satisfies Gaussian distribution, and the literature (Qian

*et al.*, 2006) pointed out that the separated signal after the blind source separation is only the superposition of source signal and Gaussian noise.

**V**is a $n\times m$ whitening matrix. After whitening, the problem of BSS changes from seeking for the mixed matrix

**A**to seeking an $n\times n$ orthogonal decomposition matrix

**W**(Jiang, 2014). Supposing ${\mathbf{y}_{t}}$ is the estimated vector of ${\mathbf{S}_{t}}={[{s_{1}}(t),{s_{2}}(t),\dots ,{s_{n}}(t)]^{T}}$ and ${\mathbf{y}_{t}}$ can be modelled as

##### (3)

\[ {\mathbf{y}_{t}}=\mathbf{W}{\mathbf{z}_{t}}=\mathbf{WVA}{\mathbf{S}_{t}}+\mathbf{WV}{\mathbf{N}_{t}}.\]**C**is defined as

**C**is a generalized permutation matrix (Cichocki and Amari, 2002), which is equal to the product of a permutation matrix and a full rank diagonal matrix: where

**P**is a permutation matrix, which represents the uncertainty of the order of the blind separation results.

**Λ**is a full rank diagonal matrix, which represents the uncertainty of the amplitude of the blind separation results. It can be seen that the waveforms of signal can be completely recovered except for the real amplitude and order of the source signals.

**C**as close as possible to a generalized permutation matrix. Based on this, in order to evaluate the performance of the separation algorithms, the literature (Cichocki and Amari, 2002) gave a measurement method by using the difference between

**C**and a generalized permutation matrix, which is named as crosstalk error and expressed as

##### (6)

\[ \textit{PI}(\mathbf{C})=\frac{1}{n(n-1)}\Bigg\{{\sum \limits_{i=1}^{n}}\Bigg({\sum \limits_{j=1}^{n}}\frac{|{c_{ij}}|}{{\max _{k}}|{c_{ik}}|}-1\Bigg)+{\sum \limits_{j=1}^{n}}\Bigg({\sum \limits_{i=1}^{n}}\frac{|{c_{ij}}|}{{\max _{k}}|{c_{kj}}|}-1\Bigg)\Bigg\},\]*i*and column

*j*. The smaller the value of $\mathit{PI}$, the better the separation effect of the algorithm. If and only if

**C**is a generalized permutation matrix, $\textit{PI}=0$. According to formula (6), it can be seen that the key to compute the crosstalk error is to obtain the matrix

**C**. Another shortcoming of the crosstalk error is that it is not robust. As an example, the following two global separation matrices are presented:

##### (7)

\[ {\mathbf{C}_{1}}=\left[\begin{array}{c@{\hskip4.0pt}c@{\hskip4.0pt}c@{\hskip4.0pt}c@{\hskip4.0pt}c}100000\hspace{1em}& 10\hspace{1em}& 1\hspace{1em}& 2\hspace{1em}& 4\\ {} 1\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\\ {} 10\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\\ {} 1\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\\ {} 8\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\end{array}\right];\hspace{1em}{\mathbf{C}_{2}}=\left[\begin{array}{c@{\hskip4.0pt}c@{\hskip4.0pt}c@{\hskip4.0pt}c@{\hskip4.0pt}c}100000\hspace{1em}& 10\hspace{1em}& 1\hspace{1em}& 2\hspace{1em}& 4\\ {} 1\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\\ {} 10\hspace{1em}& 0\hspace{1em}& 0.01\hspace{1em}& 0\hspace{1em}& 0\\ {} 1\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\\ {} 8\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\hspace{1em}& 0\end{array}\right].\]**C**.

**C**should be in different columns. However, from the definition of formula (6), this restriction is not considered. Therefore, in this paper, we add the position information of the maximum value of each row in the

**C**to the definition of the crosstalk error to improve the robustness of the crosstalk error.

## 3 A New Algorithm for Calculating the Crosstalk Error

**A**is established and the corresponding analytic solution is given in this section. Then, the position information constraint is introduced into the definition of crosstalk error to improve its robustness. Finally, the whole process of the algorithm for calculating the crosstalk error is given.

### 3.1 Modelling and Model Solving

**A**, then

**C**can be calculated by using $\mathbf{C}=\mathbf{WVA}$. Since ${\mathbf{y}_{t}}=\mathbf{WV}{\mathbf{x}_{t}}$, so we can get that ${\mathbf{x}_{t}}$ can also be regarded as a mixture of ${\mathbf{y}_{t}}$. Suppose where $\hat{\mathbf{A}}\in {R^{m\times n}}$. According to formulas (3), (5) and (8), we can get

##### (10)

\[ \mathbf{C}=\mathbf{WVA}=\mathbf{WV}(\hat{\mathbf{A}}\mathbf{P}\boldsymbol{\Lambda })=(\mathbf{WV}\hat{\mathbf{A}})(\mathbf{P}\boldsymbol{\Lambda }).\]**A**and its estimated value $\hat{\mathbf{A}}$, which do not affect the result of the crosstalk error defined by formula (6). The following cost function for calculating $\hat{\mathbf{A}}$ is established by using the least squares criterion, which is

##### (11)

\[ \underset{{\hat{\mathbf{A}}_{t}}}{\min }J({\hat{\mathbf{A}}_{t}})=\underset{{\hat{\mathbf{A}}_{t}}}{\min }{\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}\| {\hat{\mathbf{A}}_{t}}{\mathbf{y}_{t}}-{\mathbf{x}_{t}}{\| ^{2}},\]*λ*is the forgetting factor subjecting to $0<\lambda <1$ and close to 1, ${\hat{\mathbf{A}}_{t}}$ is the estimated value of

**A**at moment

*t*.

##### (12)

\[ \frac{\partial J}{\partial {\hat{\mathbf{A}}_{t}}}=-2{\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}\big\{-{\mathbf{x}_{t}}{\mathbf{y}_{t}^{T}}+{\hat{\mathbf{A}}_{t}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}\big\}.\]##### (13)

\[ {\hat{\mathbf{A}}_{t}}=\Bigg({\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}{\mathbf{x}_{t}}{{\mathbf{y}_{t}}^{T}}\Bigg){\Bigg({\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}\Bigg)^{-1}}.\]##### (14)

\[ {\varphi _{t}}={\sum \limits_{i=1}^{t-1}}{\lambda ^{t-1-i}}{\mathbf{y}_{t-1}}{\mathbf{y}_{t-1}^{T}}+{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}=\lambda {\varphi _{t-1}}+{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}.\]##### (15)

\[ {{\varphi _{t}}^{-\mathrm{1}}}{\varphi _{t}}{\varphi _{t-1}^{-1}}=\lambda {{\varphi _{t}}^{-\mathrm{1}}}{\varphi _{t-1}}{\varphi _{t-1}^{-1}}+{{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}},\]##### (16)

\[ {\varphi _{t-1}^{-1}}=\lambda {{\varphi _{t}}^{-\mathrm{1}}}+{{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}.\]##### (17)

\[ {\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}=\lambda {{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}+{{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}={{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}\big[\lambda +{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}\big],\]##### (18)

\[ {{\varphi _{t}}^{-\mathrm{1}}}{\mathbf{y}_{t}}=\frac{{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}}{[\lambda +{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}]}.\]##### (19)

\[ {{\varphi _{t}}^{-\mathrm{1}}}=\frac{1}{\lambda }\bigg[{\varphi _{t-1}^{-1}}-\frac{{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}}{\lambda +{\mathbf{y}_{t}^{T}}{\varphi _{t-1}^{-1}}{\mathbf{y}_{t}}}\bigg].\]##### (20)

\[ {\mathbf{P}_{t}}=\frac{1}{\lambda }\big[{\mathbf{P}_{t-1}}-{\mathbf{P}_{t-1}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{Q}_{t}}\big].\]##### (21)

\[\begin{aligned}{}{\hat{\mathbf{A}}_{t}}& =\Bigg(\hspace{0.1667em}{\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}{\mathbf{x}_{t}}{\mathbf{y}_{t}^{T}}\Bigg){\Bigg(\hspace{0.1667em}{\sum \limits_{i=1}^{t}}{\lambda ^{t-i}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}\Bigg)^{-1}}\\ {} & =\frac{1}{\lambda }\big(\lambda {\mathbf{q}_{t-1}}+{\mathbf{x}_{t}}{\mathbf{y}_{t}^{T}}\big)\big({\mathbf{P}_{t-1}}-{\mathbf{P}_{t-1}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{Q}_{t}}\big)\\ {} & ={\mathbf{q}_{t-1}}{\mathbf{P}_{t-1}}-{\mathbf{q}_{t-1}}{\mathbf{P}_{t-1}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{Q}_{t}}+{\mathbf{x}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{P}_{t}}\\ {} & ={\hat{\mathbf{A}}_{t-1}}-{\hat{\mathbf{A}}_{t-1}}{\mathbf{y}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{Q}_{t}}+{\mathbf{x}_{t}}{\mathbf{y}_{t}^{T}}{\mathbf{P}_{t}}.\end{aligned}\]**C**can be estimated by the following formula: An iterative method for calculating the crosstalk error can be obtained by substituting equation (22) into formula (6).

### 3.2 Location Introduction

##### (23)

\[\begin{aligned}{}\mathit{PI}(\mathbf{C})& =\frac{1}{n(n-1)}\Bigg\{{\sum \limits_{i=1}^{n}}\Bigg({\sum \limits_{j=1}^{n}}\frac{|{c_{ij}}|}{{\max _{k}}|{c_{ik}}|}-1\Bigg)\\ {} & \hspace{1em}+{\sum \limits_{j=1}^{n}}\Bigg({\sum \limits_{i=1}^{n}}\frac{|{c_{ij}}|}{{\max _{k}}|{c_{kj}}|}{\prod \limits_{p=1}^{j}}(1+{r_{p}})-1\Bigg)\Bigg\},\end{aligned}\]*p*is same as any other rows before row

*p*, otherwise ${r_{p}}=0$, for $p=2,3,\dots ,n$. ${r_{p}}$ is a factor for punishing the proximity of

**C**to a generalized permutation matrix.

**C**is a generalized permutation matrix (maximum values in every row share different columns). However, the crosstalk error increases when the global separation matrix is in the situations described in (Zhang

*et al.*, 2011). The more maximum values in different rows share the same column, the worse the effect of blind source separation is and the greater the crosstalk error calculated by equation (23) is. Thus, the proposed adaptive calculation method of the crosstalk error can evaluate the effectiveness of blind source separation algorithm. Plugging the solutions of the location optimizations into the algorithm, we get the complete adaptive algorithm for calculating the crosstalk error. The pseudo code of the proposed algorithm is given in Algorithm 1.

## 4 Experiments and Analysis

### 4.1 Simulation Experiments

*T*is the meaning of matrix transposition. In this experiment, the sampling rate is taken as 10 KHz. The number of sampling points is 5000.

**A**is randomly generated by the function $\mathbf{A}=\texttt{randn(4,4)}$ of MATLAB library. Let $\mathbf{W}=\mathbf{I}$, where

**I**is the unit matrix. Zero-mean independent Gaussian white noise is added to the mixtures, and the signal-to-noise ratio is 20 dB. The forgetting factor of the algorithm is 0.993. The proximity of the estimation of $\mathit{PI}$ calculated by our proposed algorithm and the theoretical value of $\mathit{PI}$ calculated by the conventional RLS algorithm is shown in Fig. 1, the value of the crosstalk error is the average of 500 Monte Carlo trials.

*et al.*(2011) to the same data set. The 500 Monte Carlo trials are run, and the comparison curves of crosstalk error in iterative process is shown in Fig. 5. From Fig. 5, we can see that the conventional algorithm proposed by Zhang requires about 15,000 iterations to achieve convergence, but our proposed algorithm only requires about 1800 iterations. Obviously, our proposed algorithm increases the convergence rate more than eight times relative to the conventional algorithm proposed by Zhang.