I would like to know if there are SOM implementations (preferably R) available that accept fuzzy input. That is, I have data in which some nominal features are spread out between a number of categories. For example: feature 1 has 5 categories and an observation might have the values (which are actually probabilities) [0, 0.5, 0.25, 0.25, 0].
-
1$\begingroup$ Why wouldn't you just treat the 5 categories as 5 separate features? $\endgroup$– naught101Commented Dec 2, 2013 at 6:00
-
$\begingroup$ This does sound as a good and simple option, thank you. Is this good/best practice? I suppose there is no real way of avoiding the increased number of inputs? I ask because my sample size is quite small. $\endgroup$– FigaroCommented Dec 2, 2013 at 8:42
1 Answer
There are a few papers which propose fuzzy SOM.
Petri Vuorimaa, "Fuzzy self-organizing map", Fuzzy Sets and Systems Volume 66, Issue 2, 9 September 1994, Pages 223-231.
Kohonen's Self-Organizing Map is one of the best-known neural network models. In this paper, we introduce a fuzzy version of the model called: Fuzzy Self-Organizing Map. We replace the neurons of the original model by fuzzy rules, which are composed of fuzzy sets. The fuzzy sets define an area in the input space, where each fuzzy rule fires. The output of each rule is a singleton. The outputs are combined together by a weighted average, where the firing strengths of the fuzzy rules act as the weights. The weighted average gives a continuous valued output for the system. Thus the Fuzzy Self-Organizing Map performs a mapping from a n-dimensional input space to one-dimensional output space. The learning capability of the Fuzzy Self-Organizing Map enables it to model a continuous valued function to an arbitrary accuracy. The learning is done by first self-organizing the centers of the fuzzy sets according to Kohonen's Self-Organizing Map learning laws. After that, the fuzzy sets and the outputs of the fuzzy rules are initialized. Finally, in the last phase of the new learning method, the fuzzy sets are tuned by an algorithm similar to Kohonen's Learning Vector Quantization 2.1. Simulation results of a two-dimensional sinc function show good accuracy and fast convergence.
Janos Abonyi, Sandor Migaly and Ferenc Szeifer, "Fuzzy Self-Organizing Map based on Regularized Fuzzy $c$-means Clustering"
This paper presents a new fuzzy clustering algorithm for the clustering and visualization of high-dimensional data. The cluster centers are arranged on a grid defined on a small dimensional space that can be easily visualized. The smoothness of this mapping is achieved by adding a regularization term to the fuzzy $c$-means (FCM) functional. The measure of the smoothness is expressed as the sum of the second order partial derivatives of the cluster centers. Coding the values of the cluster centers with colors, regions with different colors evolve on the map and the hidden relation between the variables reveal. Comparison to the existing modifications of the fuzzy $c$-means algorithm and several application examples are given.