Clustering with SOMs in Incanter
Self-organizing maps (SOMs) are a type of neural network that cluster and categorize the data without supervision. An SOM starts from a random set of groupings and competitively updates the values in the network to eventually match those in the distribution of the training data. In this way, it learns the clusters in the data by looking at the attributes of the data.
Incanter has an easy-to-use implementation of SOMs. We'll use it here to look for clusters in the Iris dataset.
Getting ready
First, we'll need to have these dependencies in our project.clj
file:
(defproject d-mining "0.1.0-SNAPSHOT" :dependencies [[org.clojure/clojure "1.6.0"] [incanter "1.5.5"]])
We'll also need to have these libraries loaded into our script or REPL:
(require '[incanter.core :as i] '[incanter.som :as som] 'incanter.datasets)
We'll use the Iris dataset for this recipe:
(def iris ...