hsgsom-0.2.0: An implementation of the GSOM clustering algorithm.

Portabilitynon-portable (requires STM)
Maintainergnn -dot- code -at- gmail -dot- com



This module contains the necessary modifications of some functions to parallelise a phase of the GSOM Algorithm by using multiple threads.



phase :: Int -> Phase -> Lattice -> Inputs -> IO LatticeSource

phase n parameters inputs will update the given lattice by executing one phase of the GSOM algorithm with the given inputs and parameters using n threads.

run :: Int -> Phases -> Lattice -> Inputs -> IO LatticeSource

Since a complete run of the GSOM algorithm means running a number of Phases this is usually the main function used. run n phases lattice inputs runs the GSOM algorithm by running the phases in the order specified, each time making passes over inputs and using the produced Lattice as an argument to the next phase. The phases are run using n worker threads. The initial Lattice, lattice may be constructed with the newRandom and the newCentered functions.