dimensionality reduction this unsupervised ml method is used to reduce the number of feature variables for each data sample by selecting set of principal or representative features question arises here is that why we need to reduce the dimensionalitythe reason behind is the problem of feature space complexity which arises when we start analyzing and extracting millions of features from data samples this problem generally refers to "curse of dimensionalitypca (principal component analysis) -nearest neighbors and discriminant analysis are some of the popular algorithms for this purpose anomaly detection this unsupervised ml method is used to find out the occurrences of rare events or observations that generally do not occur by using the learned knowledgeanomaly detection methods would be able to differentiate between anomalous or normal data point some of the unsupervised algorithms like clusteringknn can detect anomalies based on the data and its features semi-supervised learning such kind of algorithms or methods are neither fully supervised nor fully unsupervised they basically fall between the two supervised and unsupervised learning methods these kinds of algorithms generally use small supervised learning component small amount of pre-labeled annotated data and large unsupervised learning component lots of unlabeled data for training we can follow any of the following approaches for implementing semi-supervised learning methodsthe first and simple approach is to build the supervised model based on small amount of labeled and annotated data and then build the unsupervised model by applying the same to the large amounts of unlabeled data to get more labeled samples nowtrain the model on them and repeat the process the second approach needs some extra efforts in this approachwe can first use the unsupervised methods to cluster similar data samplesannotate these groups and then use combination of this information to train the model reinforcement learning these methods are different from previously studied methods and very rarely used also in this kind of learning algorithmsthere would be an agent that we want to train over period of time so that it can interact with specific environment the agent will follow set of strategies for interacting with the environment and then after observing the environment it will take actions regards the current state of the environment the following are the main steps of reinforcement learning methodsstep firstwe need to prepare an agent with some initial set of strategies step then observe the environment and its current state step nextselect the optimal policy regards the current state of the environment and perform important action step nowthe agent can get corresponding reward or penalty as per accordance with the action taken by it in previous step