GeneralizedUmatrix-package {GeneralizedUmatrix} | R Documentation |
Credible Visualization for Two-Dimensional Projections of Data
Description
Projections are common dimensionality reduction methods, which represent high-dimensional data in a two-dimensional space. However, when restricting the output space to two dimensions, which results in a two dimensional scatter plot (projection) of the data, low dimensional similarities do not represent high dimensional distances coercively [Thrun, 2018] <DOI: 10.1007/978-3-658-20540-9>. This could lead to a misleading interpretation of the underlying structures [Thrun, 2018]. By means of the 3D topographic map the generalized Umatrix is able to depict errors of these two-dimensional scatter plots. The package is derived from the book of Thrun, M.C.: "Projection Based Clustering through Self-Organization and Swarm Intelligence" (2018) <DOI:10.1007/978-3-658-20540-9> and the main algorithm called simplified self-organizing map for dimensionality reduction methods is published in <DOI: 10.1016/j.mex.2020.101093>.
Details
For a brief introduction to GeneralizedUmatrix please see the vignette Introduction of the Generalized Umatrix Package.
For further details regarding the generalized Umatrix see [Thrun, 2018], chapter 4-5, or [Thrun/Ultsch, 2020].
If you want to verifiy your clustering result externally, you can use Heatmap
or SilhouettePlot
of the CRAN package DataVisualizations
.
Index of help topics:
CalcUstarmatrix Calculate the U*matrix for a given Umatrix and Pmatrix. Chainlink Chainlink is part of the Fundamental Clustering Problem Suit (FCPS) [Thrun/Ultsch, 2020]. DefaultColorSequence Default color sequence for plots Delta3DWeightsC intern function EsomNeuronsAsList Converts wts data (EsomNeurons) into the list form ExtendToroidalUmatrix Extend Toroidal Umatrix GeneralizedUmatrix Generalized U-Matrix for Projection Methods published in [Thrun/Ultsch, 2020] GeneralizedUmatrix-package Credible Visualization for Two-Dimensional Projections of Data GeneratePmatrix Generates the P-matrix ListAsEsomNeurons Converts List to WTS LowLand LowLand NormalizeUmatrix Normalize Umatrix ReduceToLowLand ReduceToLowLand TopviewTopographicMap Top view of the topographic map in 2D Uheights4Data Uheights4Data UmatrixColormap U-Matrix colors UniqueBestMatchingUnits UniqueBestMatchingUnits XYcoords2LinesColumns XYcoords2LinesColumns(X,Y) Converts points given as x(i),y(i) coordinates to integer coordinates Columns(i),Lines(i) addRowWiseC intern function plotTopographicMap Visualizes the generalized U-matrix in 3D sESOM4BMUs simplified ESOM setdiffMatrix setdiffMatrix shortens Matrix2Curt by those rows that are in both matrices. trainstepC internal function for s-esom upscaleUmatrix Upscale a Umatrix grid
Author(s)
Michal Thrun
Maintainer: Michael Thrun <mthrun@informatik.uni-marburg.de>
References
[Thrun/Ultsch, 2020] Thrun, M. C., & Ultsch, A.: Uncovering High-Dimensional Structures of Projections from Dimensionality Reduction Methods, MethodsX, Vol. 7, pp. 101093, DOI doi:10.1016/j.mex.2020.101093, 2020.
[Thrun, 2018] Thrun, M. C.: Projection Based Clustering through Self-Organization and Swarm Intelligence, doctoral dissertation 2017, Springer, Heidelberg, ISBN: 978-3-658-20539-3, doi:10.1007/978-3-658-20540-9, 2018.
[Ultsch/Thrun, 2017] Ultsch, A., & Thrun, M. C.: Credible Visualizations for Planar Projections, in Cottrell, M. (Ed.), 12th International Workshop on Self-Organizing Maps and Learning Vector Quantization, Clustering and Data Visualization (WSOM), IEEE Xplore, France, 2017.
Examples
data("Chainlink")
Data=Chainlink$Data
Cls=Chainlink$Cls
InputDistances=as.matrix(dist(Data))
res=cmdscale(d=InputDistances, k = 2, eig = TRUE, add = FALSE, x.ret = FALSE)
ProjectedPoints=as.matrix(res$points)
#see also ProjectionBasedClustering package for other common projection methods
#see DatabionicSwarm for projection method without parameters or objective function
# ProjectedPoints=DatabionicSwarm::Pswarm(Data)$ProjectedPoints
resUmatrix=GeneralizedUmatrix(Data,ProjectedPoints)
plotTopographicMap(resUmatrix$Umatrix,resUmatrix$Bestmatches,Cls)
##Interactive Island Generation
## from a tiled Umatrix (toroidal assumption)
## Not run:
Imx = ProjectionBasedClustering::interactiveGeneralizedUmatrixIsland(resUmatrix$Umatrix,
resUmatrix$Bestmatches)
plotTopographicMap(resUmatrix$Umatrix,
resUmatrix$Bestmatches, Imx = Imx)
## End(Not run)
#External Verification
## Not run:
DataVisualizations::Heatmap(Data,Cls)
#if spherical cluster strcuture
DataVisualizations::SilhouettePlot(Data,Cls)
## End(Not run)