PyDHNet: A Python Library for Dynamic Heterogeneous Network Representation Learning and Evaluation Hoang Nguyen hoang.cam.nguyen@ryerson.ca Toronto Metropolitan University, ON, Canada Radin Hamidi Rad radin@ryerson.ca Toronto Metropolitan University, ON, Canada Ebrahim Bagheri bagheri@ryerson.ca Toronto Metropolitan University, ON, Canada ABSTRACT Network representation learning and its applications have received increasing attention. Due to their various application areas, many re- search groups have developed a diverse range of software tools and techniques to learn representation for different types of networks. However, to the best of our knowledge, there are limited works that support representation learning for dynamic heterogeneous net- works. The work presented in this demonstration paper attempts to fill the gap in this space by developing and publicly releasing an open-source Python library known as, PyDHNet,a Python Library for Dynamic Heterogeneous Network Representation Learning and Evaluation. PyDHNet consists of two main components: dynamic heterogeneous network representation learning and task-specific evaluation. In our paper, we demonstrate that PyDHNet has an ex- tensible architecture, is easy to install (through PIP) and use, and integrates quite seamlessly with other Python libraries. We also show that the implementation for PyDHNet is efficient and enjoys a competitive execution time. CCS CONCEPTS Computing methodologies Learning latent representa- tions;• Mathematics of computing Graph algorithms;• In- formation systems Retrieval models and ranking. KEYWORDS Network Representation Learning, Dynamic Heterogeneous Net- work, Network Application ACM Reference Format: Hoang Nguyen, Radin Hamidi Rad, and Ebrahim Bagheri. 2022. PyDHNet: A Python Library for Dynamic Heterogeneous Network Representation Learning and Evaluation. In Proceedings of the 31st ACM International Conference on Information and Knowledge Management (CIKM ’22), Oc- tober 17–21, 2022, Atlanta, GA, USA. ACM, New York, NY, USA, 5 pages. https://doi.org/10.1145/3511808.3557181 1 INTRODUCTION Network representation learning is the task of mapping a graphi- cal network structure into a lower dimensional embedding vector Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from permissions@acm.org. CIKM ’22, October 17–21, 2022, Atlanta, GA, USA © 2022 Association for Computing Machinery. ACM ISBN 978-1-4503-9236-5/22/10. . . $15.00 https://doi.org/10.1145/3511808.3557181 space. The embedded vectors should be compact to practically effi- cient while still capturing and maintaining network properties for various downstream network tasks. With the increasing importance of the network representation learning task, several open-source libraries and tools have been progressively developed and shared in the community [7, 11, 12, 17, 22, 25]. We summarize some of the main libraries for this task in Table 1. As shown in the table, the majority of existing libraries are designed for learning network representation for static networks. In other words, they consider the graph to be a single snapshot and do not support for evolving graphs over time. Furthermore, these libraries often overlook the need for more complex network representations by only allowing for homogeneous node and edge types in the network. From the existing libraries, DynamicGEM and CTGCN are among the first to allow representations to be learnt for dynamically evolv- ing graphs. However, both of these libraries are limited by only supporting homogeneous networks. In contrast, OpenAttHetRL and Space4HGNN are the only two libraries that support for net- work heterogeneity; however, they do not support for network dynamism. The work in this paper illustrates our work on an open-source python-based network representation library, called PyDHNet, which supports both network heterogeneity and network dynamism. Mentioned features are not currently supported by any other available libraries. We believe that PyDHNet is an extremely valuable contribution to the community in many application do- mains, such as social networks, biological dataset and traffic moni- toring data, to name just a few, deal with graphs that rely on efficient representations through dynamic heterogeneous graphs. The purpose of this demonstration can be enumerated as follows: (1) we will introduce PyDHNet, which allows users to both ef- ficiently and effectively learn network representations for dynamic heterogeneous networks; (2) we will show how the structure of PyDHNet has been de- signed based on software engineering principles make it easily extensible for adding new features. Our developed software library is modularized and hence easy to maintain and work with; (3) we will demonstrate the PyDHNet consists of a standalone evaluation library that supports for the testing the perfor- mance of the learnt representations on different downstream tasks such as node classification and link prediction, which makes it ideal for comparative analysis and replicable re- search. The rest of this demonstration paper is organized as follows: We will first provide an overview of our representation learning technique and how it differentiates itself from other existing work in Section 2. Next, the software architecture of PyDHNet is briefly 4936