• Category
  • >Machine Learning

Introduction to Independent Component Analysis in Machine Learning

  • Soumyaa Rawat
  • Sep 10, 2021
Introduction to Independent Component Analysis in Machine Learning title banner

What is Independent Component Analysis?


Independent Component Analysis (ICA) is a technique in statistics used to detect hidden factors that exist in datasets of random variables, signals, or measurements. 


An alternative to principal component analysis (PCA), Independent Component Analysis helps to divide multivariate signals into subcomponents that are assumed to be non-Gaussian in nature, and independent of each other. 


In signal processing, a field of electrical engineering, ICA plays an important role in helping segregate independent components of electrical signals like sound, image, etc. 


For instance, in the case of separating sound sources, ICA transforms different vectors into independent datasets that help to determine the sources of sound signals. Invented in 1986, the concept of ICA was formulated by Herault and Jutten in an attempt to solve the problem of Blind Source Separation (BSS) in signal processing. 


Although this concept resembles the PCA system, it is an aggressive way to detect independent subcomponents in a dataset, and in a much more accurate way. That said, the ICA is known for its efficiency in the field of Machine Learning and statistics. 


(Also read - Importance of statistics in Data Science



How does ICA work


As we have already learned about Independent Component Analysis (ICA), we will now understand the way it works. When it comes to how ICA works, there is an utterly simple concept to answer this question. Let’s get started. 


A typical independent component analysis example is the cocktail party problem. Herein, the cocktail party problem stands for its literal scenario that creates a noisy environment where people talking to each other cannot hear what the other person has said. 


What’s more, the noisy environment also leads to a mixing of sound signals that, in turn, disables people from identifying the source of sound signals. This is where Independent Component Analysis steps in. 


For this experiment, we take 2 mixed audio recordings. To unmix and segregate the two audio recordings, the ML algorithm detects the different sets of vectors by measuring the sound signals. 


The number of inputs registered by the algorithm is equal to the number of outputs produced. Herein, two assumptions are made before applying the technique of ICA. 


One, that the two signals are ‘statistically independent’ of each other (unaffected by the occurrence of each other), and two, that these subcomponents are non-Gaussian (abnormal distribution) in nature. 


“The non-Gaussian assumption simply means the independent components have distributions that are not Gaussian, meaning it doesn’t look like a bell curve.”Assumptions of Independent Component Analysis 


While the dependence of one component over the other might lead to confusion between the measurements of two different signals, statistical independence reflects that a phenomenon can occur without affecting or hampering the probability of occurrence of the other one. 


Moreover, non-Gaussian distribution implies that latent factors in a linear mixture of a multivariate dataset can be separated from each other, unlike Gaussian distribution that leads to a similarity in statistical values of two variables. (Learn more about other types of statistical data distribution models)


Even though the mixing process of signals is unknown to the algorithms, they are still able to detect the source of various signals based on the technique of Independent Component Analysis.   


ICA in Machine Learning


While Independent Component Analysis is largely known to be a statistical technique that helps to detangle a dataset to identify hidden factors that are independent, ICA can also be seen as one of the most sought-after Machine Learning techniques that is used to train algorithms for various applications. 


In a series of neural networks and random datasets that originate under them, finding independent factors and segregating them from the other Gaussian data points is a substantial task. But, with the help of ICA-empowered signal processing algorithms, one can very well perform the task of analyzing independent components hidden in a dataset. 


ICA in machine learning tools and techniques has advanced significantly and has also enabled mankind to perform a variety of functions like image processing and Biomedical Signal Processing. 


Unlike Principal Component Analysis in Machine Learning that focuses on the variance of components, whether Gaussian or non-Gaussian, ICA emphasizes the interdependence of components that are latent in between the dependent variables in a dataset. 



Applications of ICA 


  1. Speech Enhancement


Thanks to technological advancement, sound signals can be enhanced and produced more clearly. 


Known as speech enhancement, the concept of de-noising sound signals to eliminate unnecessary noise can be achieved by Independent Component Analysis for feature extraction. 


As ICA helps to detangle two independent signals, it assumes that the entities of noise and the actual sound are non-Gaussian in nature and are independent of each other. 


Furthermore, ICA in this aspect can also be used for speech recognition with the help of well-trained ML algorithms. 


When a sound recording with mixed signals of noise and actual speech are run through an algorithm, the frequency-dependent metrics of noise are reduced and thus, diminished to a form where independent latent factors are available for speech enhancement. 



  1. Biomedical Signal Processing


“Biomedical signal processing aims at extracting significant information from biomedical signals. With the aid of biomedical signal processing, biologists can discover new biology and physicians can monitor distinct illnesses.”Signal Processing in Medicine using ICA 


When it comes to Biomedical Signal Processing, medical equipment empowered with Independent Component Analysis can enable doctors and physicians to detect illnesses and identify any abnormalities related to medical sciences. 


This can be done through biomedical signals that are physiological signals of metabolic activities. As ICA helps to disfigure a mixed set of signals and break them into two separate entities, it surely is applicable in Biomedical Signal Processing. 



  1. Image Processing


Ever wondered how unclear images or blur visuals are converted into high-quality images with improved visibility? Well, the magic behind this wonder is of ICA technique. 


A statistical technique that recognizes and outlines the hidden factors in multivariate signals, ICA has significantly transformed the field of image processing, image enhancement, and digital signal processing. 


Effectively applicable in this field, ICA detangles two distinct, independent, and non-Gaussian latent factors in a dataset that helps to put together an improved quality of the image. 


With the help of ML algorithms at work, independent component analysis in image processing has advanced in recent times.



  1. Image De-Noising


Although the application of image de-noising is a sub-field of image processing, it is still a very essential aspect to mention when it comes to the applications of ICA. 


By suppressing unwanted noise and reducing extra traffic over the actual image signal, ICA brings in a variety of ML algorithms and achieves the purpose of image de-noising. 


The purpose of image denoising is to suppress the noise in an effective way so that the edges are preserved and no significant data is lost. Since blurry images can be important for criminal identification or other such purposes in real life, image denoising is an essential application of ICA.    



  1. Handling Incomplete Data


Missing data is a much-renowned phenomenon that takes place in day-to-day life. Perhaps to fill in the missing data and handle incomplete data in many real-life operations, the ML technique of ICA is used. 


Unlike other applications wherein PCA can play a significant role along with ICA, handling missing data does not allow PCA to be effective. Perhaps ICA is the sole solution to fill in missing data. Moreover, ICA can also be seen as one of the data mining tools when it comes to handling incomplete data. 


“Data density estimation is an important step in many machine learning problems. Often we are faced with data containing incomplete entries. The data may be missing due to measurement or recording failure.” Completing Missing Data using ICA 



Future of ICA


With growing attention from all over the world, the technology of ICA has pushed the limits of digital signal processing and Blind Source Separation. Being a high-order statistical technique, ICA has a long way to go in terms of signal processing and signal separation. 


A very prominent topic of research and discovery, ICA has turned the tables ever since it has become effective in developing techniques of signal processing. That said, the future of this technique holds more than what data scientists actually think. 


With greater advances in the field of medicine and image enhancement, ICA is being widely used by scientists from all over the world. 


Since the present technology focuses on non-Gaussian latent components in a dataset, future versions of ICA are expected to look more closely at subGaussian components. 


(Must read - Top 10 Data Extraction Tools





To conclude, Independent Component Analysis is more than just a statistical technique, it is the foundation of signal processing that has enabled scientists in fields as distinct as biosciences to make substantial advancements. 


With the help of 2 assumptions - independence and non-Gaussian nature, data mining has become much easier with the help of ICA. More than ever, it is being used in diverse fields like data processing, image identification, and medicine. 


(Also read: Deep learning algorithms)


In the times to come, one can expect the technique to become more elaborate and diverse to an extent that will enable computers and ML algorithms to distinctly identify Gaussian, non-Gaussian, and subGaussian components in a given dataset.