This chapter focuses on techniques for embedding general metric spaces into low-dimensional Euclidean spaces, and the application of these techniques to protein segments. The basic concept is simple: By embedding a set of protein sequences into Euclidean space, each protein is mapped to a specific point in Euclidean space, where similar proteins are mapped to close points. Thus, distinct families of proteins are mapped to separate clusters, allowing us to predict the biological function of a protein by observing the other members in its cluster. This methodology thus converts the problem of finding a protein's function to a problem of pattern recognition. This approach must address three problems: (1) Constructing a metric space on the protein sequence space, (2) Finding the optimal embedding, and (3) Discovering statistical regularities in Euclidean space (clustering). The first two stages are described in this chapter.