# Unsupervised Learning

In **Unsupervised learning**, there are no labels for the training data. A machine learning algorithm tries to learn the underlying patterns or distributions that govern the data.

> An **unlabeled** data means you don't need to provide the model with any kind of label or solution while the model is being trained.

#### Types of Unsupervised Learning <a href="#types" id="types"></a>

| Association | Clustering |
| ----------- | ---------- |
|             |            |

## Clustering <a href="#clustering" id="clustering"></a>

* _Clustering_ is a form of machine learning that is used to group similar items into clusters based on their features.&#x20;
* For example, a researcher might take measurements of penguins, and group them based on similarities in their proportions.
* Clustering is an example of _unsupervised_ machine learning, in which you train a model to separate items into clusters based purely on their characteristics, or _features_. There is no previously known cluster value (or _label_) from which to train the model.

Unsupervised learning task that helps to determine if there are any naturally occurring groupings in the data. Clustering tasks involve exploring how your data might be grouped together.

#### Algorithms <a href="#algorithms" id="algorithms"></a>

* K-Means in K-Means, "K" indicates the number of clusters the model will try to find during training. We can also set the value of "K" prior to the model training.



* has no feedback mechanism.
* Used In​
  * Market Basket Analysis
  * Semantic Clustering
  * Delivery Store Optimization
  * Identifying Accident Prone Areas
* Algorithms
  * K-Means Clustering
  * Hierarchical Clustering
  * Apriori Algorithm
  * Principal Component Analysis
  * Fuzzy Means
  * Partial List Squares.
  * Singular Value Decomposition

Generative AIGenerative Adversial Networks (GAN)

* putting two neural networks against each other to generate new content
* generator network produces new data
* discriminator network classifies the new data either it is real or fake and gives feedback

Autoregressive models

* data evolves over time
* relies on previous time series data to generate accurate new data

Transformer-based model

* used to study the data that is sequential in nature

#### Autoregressive models <a href="#autoregressive-models" id="autoregressive-models"></a>

_Autoregressive convolutional neural networks (AR-CNNs)_ are used to study systems that evolve over time and assume that the likelihood of some data depends only on what has happened in the past. It’s a useful way of looking at many systems, from weather prediction to stock prediction.Autoregressive convolutional neural networks make iterative changes over time to create new data.

#### Generative adversarial networks (GANs) <a href="#generative-adversarial-networks-gans" id="generative-adversarial-networks-gans"></a>

_Generative adversarial networks (GANs)_, are a machine learning model format that involves pitting two networks against each other to generate new content. The training algorithm swaps back and forth between training a _generator network_ (responsible for producing new data) and a _discriminator network_ (responsible for measuring how closely the generator network’s data represents the training dataset).

### What are GANs? <a href="#what-are-gans" id="what-are-gans"></a>

A GAN is a type of generative machine learning model which pits two neural networks against each other to generate new content: a generator and a discriminator.

* A _generator_ is a neural network that learns to create new data resembling the source data on which it was trained.
* A _discriminator_ is another neural network trained to differentiate between real and synthetic data.

The generator and the discriminator are trained in _alternating cycles_. The generator learns to produce more and more realistic data while the discriminator iteratively gets better at learning to differentiate real data from the newly created data.

#### Transformer-based models <a href="#transformer-based-models" id="transformer-based-models"></a>

_Transformer-based models_ are most often used to study data with some sequential structure (such as the sequence of words in a sentence). Transformer-based methods are now a common modern tool for modeling natural language.
