Unsupervised Studying Sequence —Exploring Self-Organizing Maps | by Ivo Bernardo | Aug, 2023

Learn the way Self-Organizing Maps work and why they’re a helpful unsupervised studying algorithm

16 min learn

10 hours in the past

Picture by teckhonc

Self-Organizing Maps (SOMs) are a sort of unsupervised neural community utilized for clustering and visualization of high-dimensional knowledge. SOMs are educated utilizing a aggressive studying algorithm, by which nodes (often known as neurons) within the community compete for the correct to signify enter knowledge.

The SOM structure consists of a 2D grid of nodes, the place every node is related to a weight vector that represents the technique of the centroids within the SOM answer. The nodes are organized in such a means that nodes are organized round comparable knowledge factors, producing a layer that represents the underlying knowledge.

SOMs are generally used for a wide selection of duties similar to:

  • knowledge visualization
  • anomaly detection
  • function extraction
  • clustering

We will additionally visualize SOMs as the most straightforward neural community model for unsupervised studying!

Whereas they appear complicated at first, Self-Organizing Maps (or Kohonen Maps, named after their inventor) are one fascinating kind of algorithm that is ready to map the underlying construction from the information. They are often described as follows:

  • a one-layer unsupervised neural community, with out backpropagation.
  • a restricted k-means answer, the place nodes have the power to affect the motion of different nodes (within the context of k-means, the nodes are often called centroids).

On this weblog publish, we’ll do a few experiments on the SOM mannequin. Later, we’ll apply a Self-Organizing Map to an actual use case, the place we will see the principle options and shortcomings of the algorithm.

To grasp how SOMs be taught, let’s begin by plotting a toy dataset in 2 dimensions.

We’ll create a numpyarray with the next dataset and plot it afterwards:

import numpy as np
X = np.array([[1, 2], [2, 1], [1, 3], [1, 2.5], [3.1, 5], [4, 10], [3.6, 5.4], [2…

Constructing a Remark Toxicity Ranker Utilizing Hugging Face’s Transformer Fashions | by Jacky Kaub | Aug, 2023

Software program Engineering Finest Practices for Writing Maintainable ML Code | by Hennie de Tougher | Aug, 2023