A Robust Embedded Non-Linear Acoustic Noise Cancellation (ANC) Using Artificial Neural Network (ANN) for Improving the Quality of Voice Communications

Embedded Acoustic Noise Cancellation (ANC) has enjoyed remarkable success in the telecommunication field, and it becomes an essential component in various communications applications, such as digital transmission. So, it is an efficient method used to enhance the quality of communications against noise phenomena which is a problem in communication systems. This paper contributes towards a new non-linear embedded ANC based Artificial Neural Network (ANN) in digital signal processing and backpropagation (BP) of the gradient algorithm. This system is usually required for non-linear adaptive processing digital signals. The neuronal ANC estimates the noise path and subtracting noise from a received signal by minimizing a cost function. It is the mean square error. Thus, also the filter weights are adaptively updated. In this work, we designed and simulated our intelligent embedded ANC model with the help of MATLAB\Simulink software. The proposed system was designed by using embedded functions in Simulink. In addition, all simulation results are performed and verified using Signal Noise to Ratio (SNR) and Mean Square Error (MSE), number of iteration, neuronal architecture, criteria and it has been compared in various scenarios. Finally, a study and analysis on convergence of neuronal ANC based backpropagation of the gradient algorithm demonstrate that our proposed system can effectively improve the quality of voice communications against the undesired noise. It also provides faster convergence during the back propagation of the gradient. Furthermore, the best values of SNR and MSE show the effectiveness of the proposed model. Keywords— Embedded systems; noise cancellation problem; artificial neural network; digital signal processing; back propagation. Manuscript received 22 Aug. 2020; revised 22 Jan. 2021; accepted 31 Jan. 2021. Date of publication 30 Apr. 2021. IJASEIT is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.


I. INTRODUCTION
ANC is a system that has been widely applied for various purposes, especially in communication systems. It has many advantages for eliminating the unwanted acoustic noise that affects the quality of voice communications [1]- [3]. At the same time, neural networks, digital signal processing and embedded systems have become increasingly important in many applications such as compression, classification, identification, and recognition, and Noise cancellation [4], [5]. It is also very widely that acoustic noise cancellation in voice communications has used this efficient technology. In this case, the recent technology of ANC should use the new approaches based on artificial neural networks.
There have been numerous efforts to develop more adaptive approaches to enhance the quality of communication [6]- [12]. Wahbi et al. implemented an ANC by using adaptive filters in time and frequency domain to remove acoustic noise from voice communications [13]- [15]. In each module, we implemented and tested the behavior of ANC according to the international recommendations. Also, many classical systems are developed to have enhanced the quality of communications against acoustic noise using adaptive filters [16]- [18].
Several types of neural networks have been developed. Maximilian Strake et al. [19] have introduced a fully convolutional recurrent networks for speech enhancement. It is able to preserve the local structure of spectral harmonics present in the features at its input. In addition, ANC based Recurrent Neural Networks are employed for Speech enhancement [20]- [22]. In this paper, we present a new algorithm for noise cancellation using non-linear ANN approach. We focus our study on the type MLP. In the process of building this type of acoustic noise canceller, learning aims to adapt the weights of connections between neurons so that the network will output the enhanced signal with the same form as the desired input. That is to minimize the error of the network on all forms of learning base. However, the Embedded ANC is developed using a Multi-layer Perception (MLP) network, a feedforward neural network trained with the backpropagation algorithm. The main scope of this approach is the fast convergence during the learning phase. Fig. 1 describes its structure where the desired response is composed of an original signal plus the noised, which is uncorrelated with the signal. The filter input is a sequence of a noised signal which is correlated with the noised signal in the desired signal. By using the ANN algorithm inside the adaptive filter, the error term en produced by this system is then the original signal with the noise signal canceled. The output signal network to each input signal is directly compared with the desired signal and a feedback is given to the network to correct possible signal errors. The interconnection of neurons forms a network. Neurons are arranged in layers: an input layer, an output layer, and one or more hidden layers between the input and output layers. However, the model used in our developed ANC is a Multilayer Perception based (MLP) network (Fig. 2). They are generally characterized by:  One input layer representing inputs which are transmitted the data to be processed from a source external to the network  .One or more hidden layers performing the specific treatment of the network.  An output that delivers results. The inputs to a neuron include its bias and the sum of its weighted inputs (Fig. 3). A neuron's output depends on the neuron's inputs and on its transfer function [23]. There are many useful transfer functions or activation functions.   Table I

3) Back Propagation of Gradient:
The adjustment of the weight's connection and biases of different layers can be obtained by minimizing a cost function using the back propagation gradient [24]. The cost function, Mean Square Error (MSE), is a function of the difference between a desired output and the actual output of the ANN filter. This difference is known as the estimation error of the ANN algorithm.
Where, bj : is the total input of hidden layer yj.  The final output of network, which represents the noise estimated, maybe calculated by using the following equation: Where, ak : is the total input of output hidden sk.  The error signal have often calculated as : Firstly, the cost function (C), which will minimize, is the Mean Square Error (MSE) defined by: The partial derivative of cost function C, over hjk, represents the variation of error according to weights variation. On all training, we have: The h jk+1 and w jk+1 vectors for updating weights can be written by the following expressions: We denote δ2 and δ1 propagation errors for the output layer and the output of the hidden layer.
Each iteration of the BP ANN algorithm requires 8 distinct steps in the following order: Step 1: Initialize the weights.
Step 2: Define the input vector and corresponding desired output.
Step 3: Calculate the network output. (Eq.1) Step 4: Calculate the error in the output. (Eq.3) Step 5: Calculate the gradient of the error with respect to weights. (Eq.5) Step 6: Update the filter tap weights. (Eq.6 and Eq.7) Step 7: Re-inject the output error in the network and calculate the error in hidden layers.
-if the condition on the error or number of iteration is matched, go to step 8, else apply the new input vector and go to step 3.

A. Model of Proposed ANN Embedded ANC Algorithm
An ANN Embedded Noise Canceller developed to reduce noise in voice communications is presented in Fig. 5.

B. Flow chart of ANN ANC Algorithm
Modeling ANN Embedded ANC system may perform according to the following steps as shown in Fig. 6. In this work, tangent sigmoid and linear activation functions will be used respectively in the hidden layers and the output layer. Those functions are defined respectively by the equations (8) and (9): For defining the number of hidden layers and the neurons in each layer, the designer must have a great number of experiences. For example, we were varying the network size, and we do a full training for each size and finally choose the structure that provides the best results.

C. Simulation Results
According to the neural model, our simulation modeling and design results are obtained after a number of tests of iterations by acting respectively on the number of hidden layers, the number of neurons per hidden layers and network settings. All measurements are taken using a Levenberg-Marquardt type of learning. Fig. 7 shows the best performance for the validation of the neural system of acoustic noise cancellation based on the number of iterations adequate. Learning stops when the mean squared error (MSE) based on the number of samples starts to decrease to less than a certain threshold, knowing that the MSE criterion represents the standard deviation between the filtered signal and the desired signal.    Fig. 9 are used to measure the correlation between the original and the enhanced signal. All curves have a high value greater than 0.99. This means that the proposed algorithm has a good learning performance. Finally, the neural cancellation system's performance of the designed acoustic noise depends on the number of hidden layers and neurons in each hidden layer. Fig. 10 and 11 respectively represent the original signal and the noisy signal. While Fig. 12 represents the output of designed Embedded ANC system, also called the filtered or enhanced signal (signal without noise). During this work, to check the validity of the results obtained by the neural approach and allows us to compare the signal obtained by the network with the observed signal, we opted for the use of the signal to noise ratio (SNR) and the mean square error (MSE) [25]. The following equations respectively give mathematical formulations: '() *+ = 10 ,-. ( /-0(-0# #1 ,'# 1 ,) /-0((-# ) ) (10) Where, dk = noisy signal; yk = noise estimate; k = number of samples.

D. Discussion Results
The tables below show the measurement results of MSE for evaluating performance concerning the artificial approach to improving the voice quality degraded by the acoustic noise. These values were obtained when the non-linear based on neural networks and filtering gave better results than when linear filtering based on adaptive approaches [26]- [28]. In this case, we worked on several neural structures with multiple learning functions. We realized that the architecture with two hidden layers { } is the most stable for all tests because it always converges to the optimal solution (global minimum). Finally, the ANN Embedded ANC System's performance depends on the number of hidden layers and the number of neurons in each hidden layer, learning but also used.

IV. CONCLUSION
In this work we proposed an artificial neural network Embedded Acoustic Noise Cancellation System for enhancing the quality of communication. The main advantage of the proposed system is its efficiency for non-linear phenomena such as acoustic noise. The proposed Embedded ANC's effectiveness is then evaluated by using SNR and MSE, neuronal architecture, and number of iteration criteria. However, the obtained result can show that the ANN ANC algorithm provides the fastest convergence rate, best values of SNR, and lowest MSE compared to adaptive algorithms. Further work could be done in implementing the embedded ANC for a real-time applications by using a Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA) or Application-Specific Integrated Circuit (ASIC).