### An improved hyperbolic embedding algorithm

Because hyperbolic space has properties that make it amenable to graph representations, there is significant interest in scalable hyperbolic-space embedding methods. These embeddings enable constant-time approximation of shortest-path distances, and so are significantly more efficient than full shortest-path computations. In this article, we improve on existing landmark-based hyperbolic embedding algorithms for large-scale graphs. Whereas previous methods compute the embedding by using the derivative-free Nelder–Mead simplex optimization method, our approach uses the limited-memory BFGS (LBFGS) method, which is quasi-Newton optimization, with analytic gradients. Our method is not only significantly faster but also produces higher-quality embeddings. Moreover, we are able to include the hyperbolic curvature as a variable in the optimization. We compare our hyperbolic embedding method implementation in Python (called Hypy) against the best publicly available software, Rigel. Our method is an order of magnitude faster and shows significant improvements in the accuracy of the shortest-path distance calculations. Furthermore, tests are performed on a variety of real-world networks, and we show the scalability of our method by embedding a graph with 1.8 billion edges and 65 million nodes.

- Publication Date:

- Report Number(s):
- SAND-2018-8912J

Journal ID: ISSN 2051-1310; 667069

- Grant/Contract Number:
- AC04-94AL85000

- Type:
- Accepted Manuscript

- Journal Name:
- Journal of Complex Networks

- Additional Journal Information:
- Journal Volume: 6; Journal Issue: 3; Journal ID: ISSN 2051-1310

- Publisher:
- Oxford University Press

- Research Org:
- Sandia National Lab. (SNL-CA), Livermore, CA (United States)

- Sponsoring Org:
- USDOE National Nuclear Security Administration (NNSA)

- Country of Publication:
- United States

- Language:
- English

- Subject:
- 97 MATHEMATICS AND COMPUTING; hyperbolic graph embedding; landmark; embedding

- OSTI Identifier:
- 1466759

```
Chowdhary, Kenny, and Kolda, Tamara G.
```*An improved hyperbolic embedding algorithm*. United States: N. p.,
Web. doi:10.1093/comnet/cnx034.

```
Chowdhary, Kenny, & Kolda, Tamara G.
```*An improved hyperbolic embedding algorithm*. United States. doi:10.1093/comnet/cnx034.

```
Chowdhary, Kenny, and Kolda, Tamara G. 2017.
"An improved hyperbolic embedding algorithm". United States.
doi:10.1093/comnet/cnx034. https://www.osti.gov/servlets/purl/1466759.
```

```
@article{osti_1466759,
```

title = {An improved hyperbolic embedding algorithm},

author = {Chowdhary, Kenny and Kolda, Tamara G.},

abstractNote = {Because hyperbolic space has properties that make it amenable to graph representations, there is significant interest in scalable hyperbolic-space embedding methods. These embeddings enable constant-time approximation of shortest-path distances, and so are significantly more efficient than full shortest-path computations. In this article, we improve on existing landmark-based hyperbolic embedding algorithms for large-scale graphs. Whereas previous methods compute the embedding by using the derivative-free Nelder–Mead simplex optimization method, our approach uses the limited-memory BFGS (LBFGS) method, which is quasi-Newton optimization, with analytic gradients. Our method is not only significantly faster but also produces higher-quality embeddings. Moreover, we are able to include the hyperbolic curvature as a variable in the optimization. We compare our hyperbolic embedding method implementation in Python (called Hypy) against the best publicly available software, Rigel. Our method is an order of magnitude faster and shows significant improvements in the accuracy of the shortest-path distance calculations. Furthermore, tests are performed on a variety of real-world networks, and we show the scalability of our method by embedding a graph with 1.8 billion edges and 65 million nodes.},

doi = {10.1093/comnet/cnx034},

journal = {Journal of Complex Networks},

number = 3,

volume = 6,

place = {United States},

year = {2017},

month = {12}

}