# On Fast Converging Data-Selective Adaptive Filtering
## 2 Problem Description  
This section describes how to apply the data selection approach for distinct application set-ups. Regardless of the application, the filter output can be formulated as  
\[y(k)=\mathbf{w}^{T}(k)\mathbf{x}(k) \tag{1}\]  
where \(\mathbf{x}(k)=[x_{0}(k)\ x_{1}(k)\ldots x_{N-1}(k)]^{T}\) is the input applied to the adaptive filter and \(\mathbf{w}(k)=[w_{0}(k)\ w_{1}(k)\ldots w_{N-1}(k)]^{T}\) represents the adaptive filter coefficients. We can compute the a priori error signal \(e(k)\) as  
\[e(k)=d(k)-\mathbf{w}^{T}(k)\mathbf{x}(k) \tag{2}\]  
where \(d(k)\) is the desired signal. Basically the error signal \(e(k)\) is used by the adaptive algorithm to determine the updating of the filter coefficients. Given the error distribution, it is possible to infer the degree of innovation the current data carries; an illustration is provided in Figure 1. Observe that the central interval (in light blue) is equivalent to lower error values, whereas the edge intervals in red correspond to higher error values, indicating the presence of possible outliers that damage the estimation. The data-selection strategy relies on updating the filter coefficients only when the current data are informative, i.e., generate an error that does not belong to any of those intervals. Hence, the overall computational cost is reduced, since the coefficients are no longer updated 100% of the time. The adaptive algorithms require an objective function of the error in order to perform the coefficient updating. A common objective function considered in the adaptive filtering theory is the instantaneous squared error,  
\[J(\mathbf{w}(k))=\frac{1}{2}|e(k)|^{2} \tag{3}\]  
where \(|\cdot|\) denotes the absolute value. If the error distribution is assumed to be Gaussian, then  
\[\boldsymbol{e}\sim\mathcal{N}(0,\,\sigma_{e}^{2}) \tag{4}\]  
where \(\sigma_{e}^{2}\) is the error variance. By normalizing the error distribution, we obtain  
\[\frac{\boldsymbol{e}}{\sigma_{e}}\sim\mathcal{N}(0,\,1). \tag{5}\]  
The updating of the adaptive filter coefficients occurs if the normalized error \(\frac{|e(k)|}{\sigma_{e}}\) is greater than a given threshold \(\sqrt{\tau(k)}\). However, if \(\frac{|e(k)|}{\sigma_{e}}\) is greater than another threshold \(\sqrt{\tau_{\max}}\), an outlier is identified and thus, no update should be performed. These conditions can be incorporated to the minimization of the function  
\[J^{\prime}(\mathbf{w}(k))= \begin{cases}\frac{1}{2}|e(k)|^{2},\,\,\text{if}\, \sqrt{\tau(k)}\leq\frac{|e(k)|}{\sigma_{e}}<\sqrt{\tau_{\max}}\\ 0,\,\,\text{otherwise}.\end{cases}  \tag{6}\]  
Hence, the coefficient updating follows the rule,  
\[\mathbf{w}(k+1)= \begin{cases}\mathbf{w}(k)+\mathbf{u}(k),\,\,\sqrt{\tau(k)} \leq\frac{|e(k)|}{\sigma_{e}}<\sqrt{\tau_{\max}}\\ \mathbf{w}(k),\,\,\text{otherwise}.\end{cases}  \tag{7}\]  
where the term \(\mathbf{u}(k)\) depends on the adaptive algorithm employed. The desired probability of coefficient update \(P_{\text{up}}(k)\) represents how often the first statement in Equation (7) is performed and is modeled as  
\[P_{\text{up}}(k)=P\left\{\frac{|e(k)|}{\sigma_{e}}>\sqrt{\tau(k)}\right\}-P \left\{\frac{|e(k)|}{\sigma_{e}}>\sqrt{\tau_{\max}}\right\}. \tag{8}\]  
Figure 1: Data selection strategy. By considering the distribution in (5), Equation (8) in steady-state becomes,  
\[P_{\text{up}}=2Q_{e}\left(\sqrt{\tau}\right)-2Q_{e}\left(\sqrt{\tau_{\text{max}}} \right), \tag{9}\]  
where \(Q_{e}(\cdot)\) is the complementary Gaussian cumulative distribution function, given by \(Q_{e}(x)=1/(2\pi)\int_{x}^{\infty}exp(-t^{2}/2)dt\)[16]. Even when outliers are present in the dataset, the probability \(P\left\{\frac{|e(k)|}{\sigma_{e}}>\sqrt{\tau_{\text{max}}}\right\}\) tends to be very small. Therefore, the parameter \(\tau\) can be obtained from Equation (9) as  
\[\sqrt{\tau}=Q_{e}^{-1}\left(\frac{P_{\text{up}}}{2}\right), \tag{10}\]  
where \(Q_{e}^{-1}(\cdot)\) is the inverse of the \(Q_{e}(\cdot)\) function.