You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The HyperNetX library provides classes and methods for the analysis and visualization of complex network data. HyperNetX uses data structures designed to represent set systems containing nested data and/or multi-way relationships. The library generalizes traditional graph metrics to hypergraphs.
12
-
13
-
The current version is preliminary. We are actively testing and would be grateful for comments and suggestions. Expect changes in both class names and methods as many of the requirements demanded of the library are worked out.
14
-
15
-
HypernetX was developed by the Pacific Northwest National Laboratory for the Hypernets project as part of its High Performance Data Analytics (HPDA) program. PNNL is operated by Battelle Memorial Institute under Contract DE-AC05-76RL01830.
6
+
The HNX library provides classes and methods for modeling the entities and relationships
7
+
found in complex networks as hypergraphs, the natural models for multi-dimensional network data.
8
+
As strict generalizations of graphs, hyperedges can represent arbitrary multi-way relations
9
+
among entities, and in particular can distinguish cliques and simplices, and admit singleton edges.
10
+
As both vertex adjacency and edge
11
+
incidence are generalized to be quantities,
12
+
hypergraph paths and walks thereby have both length and *width* because of these multiway connections.
13
+
Most graph metrics have natural generalizations to hypergraphs, but since
14
+
hypergraphs are basically set systems, they also admit to the powerful tools of algebraic topology,
15
+
including simplicial complexes and simplicial homology, to study their structure.
16
+
17
+
This library serves as a repository of the methods and algorithms we find most useful
18
+
as we explore what hypergraphs can tell us. We have a growing community of users and contributors.
19
+
To learn more about some of our research check out our publications below:
20
+
21
+
Publications
22
+
------------
23
+
• Joslyn, Cliff A; Aksoy, Sinan; Callahan, Tiffany J; Hunter, LE; Jefferson, Brett ; Praggastis, Brenda ; Purvine, Emilie AH ; Tripodi, Ignacio J: (2020) "Hypernetwork Science: From Multidimensional Networks to Computational Topology", in: Int. Conf. Complex Systems (ICCS 2020), https://arxiv.org/abs/2003.11782, (in press)
24
+
• Feng, Song; Heath, Emily; Jefferson, Brett; Joslyn, CA; Kvinge, Henry; McDermott, Jason E ; Mitchell, Hugh D ; Praggastis, Brenda ; Eisfeld, Amie J; Sims, Amy C ; Thackray, Larissa B ; Fan, Shufang ; Walters, Kevin B; Halfmann, Peter J ; Westhoff-Smith, Danielle ; Tan, Qing ; Menachery, Vineet D ; Sheahan, Timothy P ; Cockrell, Adam S ; Kocher, Jacob F ; Stratton, Kelly G ; Heller, Natalie C ; Bramer, Lisa M ; Diamond, Michael S ; Baric, Ralph S ; Waters, Katrina M ; Kawaoka, Yoshihiro ; Purvine, Emilie: (2020) "Hypergraph Models of Biological Networks to Identify Genes Critical to Pathogenic Viral Response", in: https://arxiv.org/abs/2010.03068, BMC Bioinformatics, 22:287, doi: 10.1186/s12859-021-04197-2
25
+
• Aksoy, Sinan G; Joslyn, Cliff A; Marrero, Carlos O; Praggastis, B; Purvine, Emilie AH: (2020) "Hypernetwork Science via High-Order Hypergraph Walks", EPJ Data Science, v. 9:16, https://doi.org/10.1140/epjds/s13688-020-00231-0
26
+
• Joslyn, Cliff A; Aksoy, Sinan; Arendt, Dustin; Firoz, J; Jenkins, Louis ; Praggastis, Brenda ; Purvine, Emilie AH ; Zalewski, Marcin: (2020) "Hypergraph Analytics of Domain Name System Relationships", in: 17th Wshop. on Algorithms and Models for the Web Graph (WAW 2020), Lecture Notes in Computer Science, v. 12901, ed. Kaminski, B et al., pp. 1-15, Springer, https://doi.org/10.1007/978-3-030-48478-1_1
27
+
• Joslyn, Cliff A; Aksoy, Sinan; Arendt, Dustin; Jenkins, L; Praggastis, Brenda; Purvine, Emilie; Zalewski, Marcin: (2019) "High Performance Hypergraph Analytics of Domain Name System Relationships", in: Proc. HICSS Symp. on Cybersecurity Big Data Analytics, http://www.azsecure-hicss.org/
28
+
29
+
30
+
HNX was developed by the Pacific Northwest National Laboratory for the
31
+
Hypernets project as part of its High Performance Data Analytics (HPDA) program.
32
+
PNNL is operated by Battelle Memorial Institute under Contract DE-ACO5-76RL01830.
16
33
17
34
* Principle Developer and Designer: Brenda Praggastis
18
-
*Graphics Developer and Designer: Dustin Arendt
19
-
*Principal Investigator: Emilie Purvine
20
-
*Program Manager: Cliff Joslyn, Mark Raugas
21
-
*Mathematics, methods, and algorithms: Sinan Aksoy, Dustin Arendt, Cliff Joslyn, Brenda Praggastis, and Emilie Purvine
22
-
*Software support: Kyle Monson
35
+
*Visualization: Dustin Arendt, Ji Young Yun
36
+
*High Performance Computing: Tony Liu, Andrew Lumsdaine
37
+
*Principal Investigator: Cliff Joslyn
38
+
*Program Manager: Mark Raugas, Brian Kritzstein
39
+
*Mathematics, methods, and algorithms: Sinan Aksoy, Dustin Arendt, Cliff Joslyn, Andrew Lumsdaine, Tony Liu, Brenda Praggastis, and Emilie Purvine
23
40
24
-
For questions and comments you may contact the developers directly at:
25
-
hypernetx@pnnl.gov
41
+
The code in this repository is intended to support researchers modeling data
42
+
as hypergraphs. We have a growing community of users and contributors.
43
+
Documentation is available at: <https://pnnl.github.io/HyperNetX/>
44
+
For questions and comments contact the developers directly at:
45
+
<hypernetx@pnnl.gov>
26
46
27
-
Documentation is available at: https://pnnl.github.io/HyperNetX/
47
+
New Features of Version 1.0:
48
+
49
+
1. Hypergraph construction can be sped up by reading in all of the data at once. In particular the hypergraph constructor may read a Pandas dataframe object and create edges and nodes based on column headers. The new hypergraphs are given an attribute `static=True`.
50
+
2. A C++ addon called [NWHy](docs/build/nwhy.html) can be used in Linux environments to support optimized hypergraph methods such as s-centrality measures.
51
+
3. A JavaScript addon called [Hypernetx-Widget](docs/build/widget.html) can be used to interactively inspect hypergraphs in a Jupyter Notebook.
52
+
4. We've added four new tutorials highlighting the s-centrality metrics, static Hypergraphs, [NWHy](docs/build/nwhy.html), and [Hypernetx-Widget](docs/build/widget.html).
28
53
29
54
Tutorials may be run in your browser using Google Colab
To use [NWHy](docs/build/nwhy.html) use python=3.9 and the conda version of tbb in your environment.
119
+
**Note** that [NWHy](docs/build/nwhy.html) only works on Linux and some OSX systems. See [NWHy documentation](docs/build/nwhy.html) for more.:
120
+
121
+
>>> conda create -n <env name> python=3.9 tbb
122
+
>>> source activate <env name>
123
+
>>> pip install hypernetx
124
+
>>> pip install nwhy
83
125
84
126
To install in a virtualenv environment
85
127
--------------------------------------
86
128
87
-
>>> virtualenv --python=<path to python 3.6 executable> <path to env name>
129
+
>>> virtualenv --python=<path to python 3.7 executable> <path to env name>
88
130
89
131
This will create a virtual environment in the specified location using
90
132
the specified python executable. For example:
@@ -105,27 +147,27 @@ Otherwise use <file extension>=NULL (no file extension).
105
147
Once activated continue to follow the installation instructions below.
106
148
107
149
108
-
Install using Pip
109
-
-----------------
110
-
150
+
Install using Pip options
151
+
-------------------------
111
152
For a minimal installation:
112
153
113
154
>>> pip install hypernetx
114
155
115
-
For an editable installation with access to jupyter notebooks:
156
+
For an editable installation with access to jupyter notebooks:
116
157
117
158
>>> pip install [-e] .
118
159
119
-
To install with the tutorials:
160
+
To install with the tutorials:
120
161
121
162
>>> pip install -e .['tutorials']
122
163
123
-
To install with the documentation:
124
-
164
+
To install with the documentation:
165
+
125
166
>>> pip install -e .['documentation']
126
-
>>> sphinx-build -b html docs/source docs/build
127
-
## This will generate the documentation in /docs/build
128
-
## Open them in your browser with /docs/build/index.html
167
+
>>> chmod 755 build_docs.sh
168
+
>>> sh build_docs.sh
169
+
## This will generate the documentation in /docs/build/
170
+
## Open them in your browser with /docs/index.html
129
171
130
172
To install and test using pytest:
131
173
@@ -136,6 +178,23 @@ To install the whole shabang:
136
178
137
179
>>> pip install -e .['all']
138
180
181
+
Notice
182
+
------
183
+
This material was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor the United States Department of Energy, nor Battelle, nor any of their employees, nor any jurisdiction or organization that has cooperated in the development of these materials, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness or any information, apparatus, product, software, or process disclosed, or represents that its use would not infringe privately owned rights.
184
+
Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof, or Battelle Memorial Institute. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.
0 commit comments