# Feature extraction from data in the form of many manifolds, in hierarchial structure and various dimensions

Is there a known feature extraction method which was developed to cope with data that satisfies the following assumptions?:

1. The data points are real valued vectors in p dimensions.
2. The points form clusters.
3. A cluster is a manifold with boundaries, possibly curved, of any number of dimensions smaller or equal to p.
4. Points that belong to a cluster don't necessarily lie exactly on the manifold, since there is noise that may move them away.
5. Separate clusters may be of different dimensions and sizes.
6. Clusters may intersect (For example, a 1d curved line that goes through a 2d surface).
7. Clusters may have a hierarchical structure: For example, a 2d manifold that is composed of many smaller clusters of various dimensions, one of which is 5d, which is also composed of many smaller clusters of various dimensions, one of which is 4d, which is composed of data points.
8. The number of clusters, the dimensions, the hierarchical structure are not known to the algorithm.
9. The feature extraction algorithm would find for each cluster a suitable curvilinear coordinate system, and the algorithm outputs for each data point (training or test point) the index of the cluster the point belongs to, and the coordinates in the curvilinear coordinates of that cluster. If there are sub clusters, then the output would be the list: index of cluster, coordinates of subcluster, coordinates of sub-sub cluster,. etc, and finally coordinates of the point in the inner most cluster. The coordinates are always relative to the cluster in that level. In other words, the root cluster is donated by an index, each sub-cluster has coordinates in its parent cluster, the data points have coordinates in the inner most cluster which they belong to.