scikit-network 0.28.3__cp39-cp39-macosx_12_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of scikit-network might be problematic. Click here for more details.

Files changed (240) hide show
  1. scikit_network-0.28.3.dist-info/AUTHORS.rst +41 -0
  2. scikit_network-0.28.3.dist-info/LICENSE +34 -0
  3. scikit_network-0.28.3.dist-info/METADATA +457 -0
  4. scikit_network-0.28.3.dist-info/RECORD +240 -0
  5. scikit_network-0.28.3.dist-info/WHEEL +5 -0
  6. scikit_network-0.28.3.dist-info/top_level.txt +1 -0
  7. sknetwork/__init__.py +21 -0
  8. sknetwork/classification/__init__.py +8 -0
  9. sknetwork/classification/base.py +84 -0
  10. sknetwork/classification/base_rank.py +143 -0
  11. sknetwork/classification/diffusion.py +134 -0
  12. sknetwork/classification/knn.py +162 -0
  13. sknetwork/classification/metrics.py +205 -0
  14. sknetwork/classification/pagerank.py +66 -0
  15. sknetwork/classification/propagation.py +152 -0
  16. sknetwork/classification/tests/__init__.py +1 -0
  17. sknetwork/classification/tests/test_API.py +35 -0
  18. sknetwork/classification/tests/test_diffusion.py +37 -0
  19. sknetwork/classification/tests/test_knn.py +24 -0
  20. sknetwork/classification/tests/test_metrics.py +53 -0
  21. sknetwork/classification/tests/test_pagerank.py +20 -0
  22. sknetwork/classification/tests/test_propagation.py +24 -0
  23. sknetwork/classification/vote.cpython-39-darwin.so +0 -0
  24. sknetwork/classification/vote.pyx +58 -0
  25. sknetwork/clustering/__init__.py +7 -0
  26. sknetwork/clustering/base.py +102 -0
  27. sknetwork/clustering/kmeans.py +142 -0
  28. sknetwork/clustering/louvain.py +255 -0
  29. sknetwork/clustering/louvain_core.cpython-39-darwin.so +0 -0
  30. sknetwork/clustering/louvain_core.pyx +134 -0
  31. sknetwork/clustering/metrics.py +91 -0
  32. sknetwork/clustering/postprocess.py +66 -0
  33. sknetwork/clustering/propagation_clustering.py +108 -0
  34. sknetwork/clustering/tests/__init__.py +1 -0
  35. sknetwork/clustering/tests/test_API.py +37 -0
  36. sknetwork/clustering/tests/test_kmeans.py +47 -0
  37. sknetwork/clustering/tests/test_louvain.py +104 -0
  38. sknetwork/clustering/tests/test_metrics.py +50 -0
  39. sknetwork/clustering/tests/test_post_processing.py +23 -0
  40. sknetwork/clustering/tests/test_postprocess.py +39 -0
  41. sknetwork/data/__init__.py +5 -0
  42. sknetwork/data/load.py +408 -0
  43. sknetwork/data/models.py +459 -0
  44. sknetwork/data/parse.py +621 -0
  45. sknetwork/data/test_graphs.py +84 -0
  46. sknetwork/data/tests/__init__.py +1 -0
  47. sknetwork/data/tests/test_API.py +30 -0
  48. sknetwork/data/tests/test_load.py +95 -0
  49. sknetwork/data/tests/test_models.py +52 -0
  50. sknetwork/data/tests/test_parse.py +253 -0
  51. sknetwork/data/tests/test_test_graphs.py +30 -0
  52. sknetwork/data/tests/test_toy_graphs.py +68 -0
  53. sknetwork/data/toy_graphs.py +619 -0
  54. sknetwork/embedding/__init__.py +10 -0
  55. sknetwork/embedding/base.py +90 -0
  56. sknetwork/embedding/force_atlas.py +197 -0
  57. sknetwork/embedding/louvain_embedding.py +174 -0
  58. sknetwork/embedding/louvain_hierarchy.py +142 -0
  59. sknetwork/embedding/metrics.py +66 -0
  60. sknetwork/embedding/random_projection.py +133 -0
  61. sknetwork/embedding/spectral.py +214 -0
  62. sknetwork/embedding/spring.py +198 -0
  63. sknetwork/embedding/svd.py +363 -0
  64. sknetwork/embedding/tests/__init__.py +1 -0
  65. sknetwork/embedding/tests/test_API.py +73 -0
  66. sknetwork/embedding/tests/test_force_atlas.py +35 -0
  67. sknetwork/embedding/tests/test_louvain_embedding.py +33 -0
  68. sknetwork/embedding/tests/test_louvain_hierarchy.py +19 -0
  69. sknetwork/embedding/tests/test_metrics.py +29 -0
  70. sknetwork/embedding/tests/test_random_projection.py +28 -0
  71. sknetwork/embedding/tests/test_spectral.py +84 -0
  72. sknetwork/embedding/tests/test_spring.py +50 -0
  73. sknetwork/embedding/tests/test_svd.py +37 -0
  74. sknetwork/flow/__init__.py +3 -0
  75. sknetwork/flow/flow.py +73 -0
  76. sknetwork/flow/tests/__init__.py +1 -0
  77. sknetwork/flow/tests/test_flow.py +17 -0
  78. sknetwork/flow/tests/test_utils.py +69 -0
  79. sknetwork/flow/utils.py +91 -0
  80. sknetwork/gnn/__init__.py +10 -0
  81. sknetwork/gnn/activation.py +117 -0
  82. sknetwork/gnn/base.py +155 -0
  83. sknetwork/gnn/base_activation.py +89 -0
  84. sknetwork/gnn/base_layer.py +109 -0
  85. sknetwork/gnn/gnn_classifier.py +381 -0
  86. sknetwork/gnn/layer.py +153 -0
  87. sknetwork/gnn/layers.py +127 -0
  88. sknetwork/gnn/loss.py +180 -0
  89. sknetwork/gnn/neighbor_sampler.py +65 -0
  90. sknetwork/gnn/optimizer.py +163 -0
  91. sknetwork/gnn/tests/__init__.py +1 -0
  92. sknetwork/gnn/tests/test_activation.py +56 -0
  93. sknetwork/gnn/tests/test_base.py +79 -0
  94. sknetwork/gnn/tests/test_base_layer.py +37 -0
  95. sknetwork/gnn/tests/test_gnn_classifier.py +192 -0
  96. sknetwork/gnn/tests/test_layers.py +80 -0
  97. sknetwork/gnn/tests/test_loss.py +33 -0
  98. sknetwork/gnn/tests/test_neigh_sampler.py +23 -0
  99. sknetwork/gnn/tests/test_optimizer.py +43 -0
  100. sknetwork/gnn/tests/test_utils.py +93 -0
  101. sknetwork/gnn/utils.py +219 -0
  102. sknetwork/hierarchy/__init__.py +7 -0
  103. sknetwork/hierarchy/base.py +69 -0
  104. sknetwork/hierarchy/louvain_hierarchy.py +264 -0
  105. sknetwork/hierarchy/metrics.py +234 -0
  106. sknetwork/hierarchy/paris.cpython-39-darwin.so +0 -0
  107. sknetwork/hierarchy/paris.pyx +317 -0
  108. sknetwork/hierarchy/postprocess.py +350 -0
  109. sknetwork/hierarchy/tests/__init__.py +1 -0
  110. sknetwork/hierarchy/tests/test_API.py +25 -0
  111. sknetwork/hierarchy/tests/test_algos.py +29 -0
  112. sknetwork/hierarchy/tests/test_metrics.py +62 -0
  113. sknetwork/hierarchy/tests/test_postprocess.py +57 -0
  114. sknetwork/hierarchy/tests/test_ward.py +25 -0
  115. sknetwork/hierarchy/ward.py +94 -0
  116. sknetwork/linalg/__init__.py +9 -0
  117. sknetwork/linalg/basics.py +37 -0
  118. sknetwork/linalg/diteration.cpython-39-darwin.so +0 -0
  119. sknetwork/linalg/diteration.pyx +49 -0
  120. sknetwork/linalg/eig_solver.py +93 -0
  121. sknetwork/linalg/laplacian.py +15 -0
  122. sknetwork/linalg/normalization.py +66 -0
  123. sknetwork/linalg/operators.py +225 -0
  124. sknetwork/linalg/polynome.py +76 -0
  125. sknetwork/linalg/ppr_solver.py +170 -0
  126. sknetwork/linalg/push.cpython-39-darwin.so +0 -0
  127. sknetwork/linalg/push.pyx +73 -0
  128. sknetwork/linalg/sparse_lowrank.py +142 -0
  129. sknetwork/linalg/svd_solver.py +91 -0
  130. sknetwork/linalg/tests/__init__.py +1 -0
  131. sknetwork/linalg/tests/test_eig.py +44 -0
  132. sknetwork/linalg/tests/test_laplacian.py +18 -0
  133. sknetwork/linalg/tests/test_normalization.py +38 -0
  134. sknetwork/linalg/tests/test_operators.py +70 -0
  135. sknetwork/linalg/tests/test_polynome.py +38 -0
  136. sknetwork/linalg/tests/test_ppr.py +50 -0
  137. sknetwork/linalg/tests/test_sparse_lowrank.py +61 -0
  138. sknetwork/linalg/tests/test_svd.py +38 -0
  139. sknetwork/linkpred/__init__.py +4 -0
  140. sknetwork/linkpred/base.py +80 -0
  141. sknetwork/linkpred/first_order.py +508 -0
  142. sknetwork/linkpred/first_order_core.cpython-39-darwin.so +0 -0
  143. sknetwork/linkpred/first_order_core.pyx +315 -0
  144. sknetwork/linkpred/postprocessing.py +98 -0
  145. sknetwork/linkpred/tests/__init__.py +1 -0
  146. sknetwork/linkpred/tests/test_API.py +49 -0
  147. sknetwork/linkpred/tests/test_postprocessing.py +21 -0
  148. sknetwork/path/__init__.py +4 -0
  149. sknetwork/path/metrics.py +148 -0
  150. sknetwork/path/search.py +65 -0
  151. sknetwork/path/shortest_path.py +186 -0
  152. sknetwork/path/tests/__init__.py +1 -0
  153. sknetwork/path/tests/test_metrics.py +29 -0
  154. sknetwork/path/tests/test_search.py +25 -0
  155. sknetwork/path/tests/test_shortest_path.py +45 -0
  156. sknetwork/ranking/__init__.py +9 -0
  157. sknetwork/ranking/base.py +56 -0
  158. sknetwork/ranking/betweenness.cpython-39-darwin.so +0 -0
  159. sknetwork/ranking/betweenness.pyx +99 -0
  160. sknetwork/ranking/closeness.py +95 -0
  161. sknetwork/ranking/harmonic.py +82 -0
  162. sknetwork/ranking/hits.py +94 -0
  163. sknetwork/ranking/katz.py +81 -0
  164. sknetwork/ranking/pagerank.py +107 -0
  165. sknetwork/ranking/postprocess.py +25 -0
  166. sknetwork/ranking/tests/__init__.py +1 -0
  167. sknetwork/ranking/tests/test_API.py +34 -0
  168. sknetwork/ranking/tests/test_betweenness.py +38 -0
  169. sknetwork/ranking/tests/test_closeness.py +34 -0
  170. sknetwork/ranking/tests/test_hits.py +20 -0
  171. sknetwork/ranking/tests/test_pagerank.py +69 -0
  172. sknetwork/regression/__init__.py +4 -0
  173. sknetwork/regression/base.py +56 -0
  174. sknetwork/regression/diffusion.py +190 -0
  175. sknetwork/regression/tests/__init__.py +1 -0
  176. sknetwork/regression/tests/test_API.py +34 -0
  177. sknetwork/regression/tests/test_diffusion.py +48 -0
  178. sknetwork/sknetwork.py +3 -0
  179. sknetwork/topology/__init__.py +9 -0
  180. sknetwork/topology/dag.py +74 -0
  181. sknetwork/topology/dag_core.cpython-39-darwin.so +0 -0
  182. sknetwork/topology/dag_core.pyx +38 -0
  183. sknetwork/topology/kcliques.cpython-39-darwin.so +0 -0
  184. sknetwork/topology/kcliques.pyx +193 -0
  185. sknetwork/topology/kcore.cpython-39-darwin.so +0 -0
  186. sknetwork/topology/kcore.pyx +120 -0
  187. sknetwork/topology/structure.py +234 -0
  188. sknetwork/topology/tests/__init__.py +1 -0
  189. sknetwork/topology/tests/test_cliques.py +28 -0
  190. sknetwork/topology/tests/test_cores.py +21 -0
  191. sknetwork/topology/tests/test_dag.py +26 -0
  192. sknetwork/topology/tests/test_structure.py +99 -0
  193. sknetwork/topology/tests/test_triangles.py +42 -0
  194. sknetwork/topology/tests/test_wl_coloring.py +49 -0
  195. sknetwork/topology/tests/test_wl_kernel.py +31 -0
  196. sknetwork/topology/triangles.cpython-39-darwin.so +0 -0
  197. sknetwork/topology/triangles.pyx +166 -0
  198. sknetwork/topology/weisfeiler_lehman.py +163 -0
  199. sknetwork/topology/weisfeiler_lehman_core.cpython-39-darwin.so +0 -0
  200. sknetwork/topology/weisfeiler_lehman_core.pyx +116 -0
  201. sknetwork/utils/__init__.py +40 -0
  202. sknetwork/utils/base.py +35 -0
  203. sknetwork/utils/check.py +354 -0
  204. sknetwork/utils/co_neighbor.py +71 -0
  205. sknetwork/utils/format.py +219 -0
  206. sknetwork/utils/kmeans.py +89 -0
  207. sknetwork/utils/knn.py +166 -0
  208. sknetwork/utils/knn1d.cpython-39-darwin.so +0 -0
  209. sknetwork/utils/knn1d.pyx +80 -0
  210. sknetwork/utils/membership.py +82 -0
  211. sknetwork/utils/minheap.cpython-39-darwin.so +0 -0
  212. sknetwork/utils/minheap.pxd +22 -0
  213. sknetwork/utils/minheap.pyx +111 -0
  214. sknetwork/utils/neighbors.py +115 -0
  215. sknetwork/utils/seeds.py +75 -0
  216. sknetwork/utils/simplex.py +140 -0
  217. sknetwork/utils/tests/__init__.py +1 -0
  218. sknetwork/utils/tests/test_base.py +28 -0
  219. sknetwork/utils/tests/test_bunch.py +16 -0
  220. sknetwork/utils/tests/test_check.py +190 -0
  221. sknetwork/utils/tests/test_co_neighbor.py +43 -0
  222. sknetwork/utils/tests/test_format.py +61 -0
  223. sknetwork/utils/tests/test_kmeans.py +21 -0
  224. sknetwork/utils/tests/test_knn.py +32 -0
  225. sknetwork/utils/tests/test_membership.py +24 -0
  226. sknetwork/utils/tests/test_neighbors.py +41 -0
  227. sknetwork/utils/tests/test_projection_simplex.py +33 -0
  228. sknetwork/utils/tests/test_seeds.py +67 -0
  229. sknetwork/utils/tests/test_verbose.py +15 -0
  230. sknetwork/utils/tests/test_ward.py +20 -0
  231. sknetwork/utils/timeout.py +38 -0
  232. sknetwork/utils/verbose.py +37 -0
  233. sknetwork/utils/ward.py +60 -0
  234. sknetwork/visualization/__init__.py +4 -0
  235. sknetwork/visualization/colors.py +34 -0
  236. sknetwork/visualization/dendrograms.py +229 -0
  237. sknetwork/visualization/graphs.py +819 -0
  238. sknetwork/visualization/tests/__init__.py +1 -0
  239. sknetwork/visualization/tests/test_dendrograms.py +53 -0
  240. sknetwork/visualization/tests/test_graphs.py +167 -0
@@ -0,0 +1,41 @@
1
+ =======
2
+ Credits
3
+ =======
4
+
5
+ The project started with the Master internship of Bertrand Charpentier and
6
+ the PhD theses of Nathan de Lara and Quentin Lutz, under the supervision of Thomas Bonald at Télécom Paris,
7
+ Institut Polytechnique de Paris.
8
+
9
+ Development Lead
10
+ ----------------
11
+
12
+ * Thomas Bonald <thomas.bonald@telecom-paris.fr>
13
+ * Simon Delarue <simon.delarue@telecom-paris.fr>
14
+ * Marc Jeanmougin <marc.jeanmougin@telecom-paris.fr>
15
+
16
+
17
+ Former lead
18
+ -----------
19
+
20
+ * Quentin Lutz <quentin.lutz@telecom-paris-alumni.fr>
21
+ * Nathan de Lara <nathan.de-lara@polytechnique.org>
22
+
23
+ Contributors
24
+ ------------
25
+
26
+ * Bertrand Charpentier
27
+ * Maximilien Danisch
28
+ * François Durand
29
+ * Alexandre Hollocou
30
+ * Fabien Mathieu
31
+ * Yohann Robert
32
+ * Julien Simonnet
33
+ * Alexis Barreaux
34
+ * Rémi Jaylet
35
+ * Victor Manach
36
+ * Pierre Pébereau
37
+ * Armand Boschin
38
+ * Tiphaine Viard
39
+ * Flávio Juvenal
40
+ * Wenzhuo Zhao
41
+ * Henry Carscadden
@@ -0,0 +1,34 @@
1
+
2
+
3
+ BSD License
4
+
5
+ Copyright (c) 2018, Scikit-network Developers
6
+ Bertrand Charpentier <bertrand.charpentier@live.fr>
7
+ Thomas Bonald <thomas.bonald@telecom-paristech.fr>
8
+ All rights reserved.
9
+
10
+ Redistribution and use in source and binary forms, with or without modification,
11
+ are permitted provided that the following conditions are met:
12
+
13
+ * Redistributions of source code must retain the above copyright notice, this
14
+ list of conditions and the following disclaimer.
15
+
16
+ * Redistributions in binary form must reproduce the above copyright notice, this
17
+ list of conditions and the following disclaimer in the documentation and/or
18
+ other materials provided with the distribution.
19
+
20
+ * Neither the name of the copyright holder nor the names of its
21
+ contributors may be used to endorse or promote products derived from this
22
+ software without specific prior written permission.
23
+
24
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
25
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
26
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
27
+ IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
28
+ INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
31
+ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
32
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
33
+ OF THE POSSIBILITY OF SUCH DAMAGE.
34
+
@@ -0,0 +1,457 @@
1
+ Metadata-Version: 2.1
2
+ Name: scikit-network
3
+ Version: 0.28.3
4
+ Summary: Graph algorithms
5
+ Home-page: https://github.com/sknetwork-team/scikit-network
6
+ Author: Scikit-network team
7
+ Author-email: bonald@enst.fr
8
+ License: BSD license
9
+ Keywords: sknetwork
10
+ Platform: UNKNOWN
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Intended Audience :: Information Technology
14
+ Classifier: Intended Audience :: Education
15
+ Classifier: Intended Audience :: Science/Research
16
+ Classifier: License :: OSI Approved :: BSD License
17
+ Classifier: Natural Language :: English
18
+ Classifier: Programming Language :: Cython
19
+ Classifier: Programming Language :: Python :: 3.8
20
+ Classifier: Programming Language :: Python :: 3.9
21
+ Classifier: Programming Language :: Python :: 3.10
22
+ Requires-Python: >=3.8
23
+ Description-Content-Type: text/x-rst
24
+ License-File: LICENSE
25
+ License-File: AUTHORS.rst
26
+ Requires-Dist: numpy (>=1.22.0)
27
+ Requires-Dist: scipy (>=1.7.3)
28
+
29
+ .. image:: https://perso.telecom-paristech.fr/bonald/logo_sknetwork.png
30
+ :align: right
31
+ :width: 100px
32
+ :alt: logo sknetwork
33
+
34
+
35
+
36
+ .. image:: https://img.shields.io/pypi/v/scikit-network.svg
37
+ :target: https://pypi.python.org/pypi/scikit-network
38
+
39
+ .. image:: https://github.com/sknetwork-team/scikit-network/actions/workflows/ci_checks.yml/badge.svg
40
+ :target: https://github.com/sknetwork-team/scikit-network/actions/workflows/ci_checks.yml
41
+
42
+ .. image:: https://readthedocs.org/projects/scikit-network/badge/?version=latest
43
+ :target: https://scikit-network.readthedocs.io/en/latest/?badge=latest
44
+ :alt: Documentation Status
45
+
46
+ .. image:: https://codecov.io/gh/sknetwork-team/scikit-network/branch/master/graph/badge.svg
47
+ :target: https://codecov.io/gh/sknetwork-team/scikit-network
48
+
49
+ .. image:: https://img.shields.io/pypi/pyversions/scikit-network.svg
50
+ :target: https://pypi.python.org/pypi/scikit-network
51
+
52
+ Python package for the analysis of large graphs:
53
+
54
+ * Memory-efficient representation of graphs as sparse matrices in scipy_ format
55
+ * Fast algorithms
56
+ * Simple API inspired by scikit-learn_
57
+
58
+ .. _scipy: https://www.scipy.org
59
+ .. _scikit-learn: https://scikit-learn.org/
60
+
61
+ Resources
62
+ ---------
63
+
64
+ * Free software: BSD license
65
+ * GitHub: https://github.com/sknetwork-team/scikit-network
66
+ * Documentation: https://scikit-network.readthedocs.io
67
+
68
+
69
+ Quick Start
70
+ -----------
71
+
72
+ Install scikit-network:
73
+
74
+ .. code-block:: console
75
+
76
+ $ pip install scikit-network
77
+
78
+ Import scikit-network::
79
+
80
+ import sknetwork
81
+
82
+ See our `tutorials <https://scikit-network.readthedocs.io/en/latest/tutorials/data/index.html>`_;
83
+ the notebooks are available `here <https://github.com/sknetwork-team/scikit-network/tree/master/docs/tutorials>`_.
84
+
85
+ You can also have a look at some `use cases <https://scikit-network.readthedocs.io/en/latest/use_cases/text.html>`_.
86
+
87
+ Citing
88
+ ------
89
+
90
+ If you want to cite scikit-network, please refer to the publication in
91
+ the `Journal of Machine Learning Research <https://jmlr.org>`_:
92
+
93
+ .. code::
94
+
95
+ @article{JMLR:v21:20-412,
96
+ author = {Thomas Bonald and Nathan de Lara and Quentin Lutz and Bertrand Charpentier},
97
+ title = {Scikit-network: Graph Analysis in Python},
98
+ journal = {Journal of Machine Learning Research},
99
+ year = {2020},
100
+ volume = {21},
101
+ number = {185},
102
+ pages = {1-6},
103
+ url = {http://jmlr.org/papers/v21/20-412.html}
104
+ }
105
+
106
+
107
+ =======
108
+ History
109
+ =======
110
+
111
+ 0.28.3 (2023-01-06)
112
+ -------------------
113
+
114
+ * Drop Python 3.7
115
+ * Update Numpy requirement
116
+
117
+ 0.28.2 (2022-11-30)
118
+ -------------------
119
+
120
+ * Allow Python 3.7, by Thomas Bonald
121
+ * Fix input format for KMeans, issue #548 raised by @sgerbe
122
+
123
+ 0.28.1 (2022-11-22)
124
+ -------------------
125
+
126
+ * Fix sampling for GraphSage, by Simon Delarue
127
+ * Fix leakage on GNNs, by Thomas Bonald and Simon Delarue
128
+ * Update tutorial on GNNs with node inference, by Thomas Bonald and Simon Delarue
129
+
130
+ 0.28.0 (2022-11-16)
131
+ -------------------
132
+
133
+ * Update Graph neural networks (e.g., add GraphSAGE), by Simon Delarue
134
+ * Clean data home folder (set one folder per dataset collection, NetSet, Konect, ...), by Thomas Bonald
135
+ * Improve classification by diffusion, setting -1 to unreached nodes, by Thomas Bonald
136
+ * Fix bug on modularity, raised by Alessandro (#543)
137
+ * Clean up source distribution, by Nicholas Bollweg (#544)
138
+ * Safe file extraction, by TrellixVulnTeam
139
+ * Fix bug on dendrogram cut, raised by Nina Sachdev (#546)
140
+ * Add a function to aggregate a graph per label, by Thomas Bonald
141
+
142
+ 0.27.1 (2022-07-29)
143
+ -------------------
144
+
145
+ * Fix documentation
146
+
147
+ 0.27.0 (2022-07-29)
148
+ -------------------
149
+
150
+ * Drop Python 3.7
151
+ * Update NumPy and SciPy requirements
152
+ * Add graph neural networks, by Simon Delarue (#533)
153
+ * Add fit_predict / fit_transform where appropriate, by Thomas Bonald
154
+ * Add Louvain hierarchical clustering (bottom-up), by Thomas Bonald
155
+ * Improve classification by diffusion (vectorial), by Thomas Bonald
156
+ * Add F1 scores for classification, by Thomas Bonald
157
+ * Add cosine similarity metric for embeddings, by Thomas Bonald
158
+ * Add acyclic test for undirected graphs, by Thomas Bonald
159
+ * Update algorithms to accept all sparse matrix formats of scipy, by Thomas Bonald
160
+
161
+ 0.26.0 (2022-05-03)
162
+ -------------------
163
+
164
+ * Add module on regression, by Thomas Bonald
165
+ * Add connected components for bipartite graphs, by Thomas Bonald
166
+ * Update functions for loading graphs, by Thomas Bonald
167
+ * Fix shuffling nodes in Louvain (issue #521), by Thomas Bonald
168
+ * Add radius and eccentricity metrics, by Henry Carscadden (#522)
169
+ * Add new use case (recommendation), by Thomas Bonald
170
+
171
+ 0.25.0 (2022-03-15)
172
+ -------------------
173
+
174
+ * Add use cases as notebooks, by Thomas Bonald
175
+ * Add list/dict of neighbors for building graphs, by Thomas Bonald
176
+ * Update Spectral embedding, by Thomas Bonald
177
+ * Update Block models, by Thomas Bonald (#507)
178
+ * Fix Tree sampling divergence, by Thomas Bonald (#505)
179
+ * Allow parsers to return weighted graphs, by Thomas Bonald
180
+ * Add Apple Silicon and Python 3.10 wheels, by Quentin Lutz (#503)
181
+
182
+ 0.24.0 (2021-07-27)
183
+ -------------------
184
+
185
+ * Merge Bi* algorithms (e.g., BiLouvain -> Louvain) by Thomas Bonald (#490)
186
+ * Transition from Travis to Github actions by Quentin Lutz (#488)
187
+ * Added sdist build for conda recipes
188
+ * Added name position for graph visualization
189
+ * Removed randomized algorithms
190
+
191
+ 0.23.1 (2021-04-24)
192
+ -------------------
193
+
194
+ * Updated NumPy and SciPy requirements
195
+
196
+ 0.23.0 (2021-04-23)
197
+ -------------------
198
+
199
+ * New push-based implementation of PageRank by Wenzhuo Zhao (#475)
200
+ * Fixed cut_balanced in hierarchy
201
+ * Dropped Python 3.6, wheels for Python 3.9 (switched to manylinux2014)
202
+
203
+ 0.22.0 (2021-02-09)
204
+ -------------------
205
+
206
+ * Added hierarchical Louvain embedding by Quentin Lutz (#468)
207
+ * Doc fixes and updates
208
+ * Requirements update
209
+
210
+ 0.21.0 (2021-01-29)
211
+ -------------------
212
+
213
+ * Added random projection embedding by Thomas Bonald (#461)
214
+ * Added PCA-based embedding by Thomas Bonald (#461)
215
+ * Added 64-bit support for Louvain by Flávio Juvenal (#450)
216
+ * Added verbosity options for dataset loaders
217
+ * Fixed Louvain embedding
218
+ * Various doc and tutorial updates
219
+
220
+ 0.20.0 (2020-10-20)
221
+ -------------------
222
+
223
+ * Added betweenness algorithm by Tiphaine Viard (#444)
224
+
225
+ 0.19.3 (2020-09-17)
226
+ -------------------
227
+
228
+ * Added Louvain-based embedding
229
+ * Fix documentation with new dataset website URLs
230
+
231
+ 0.19.2 (2020-09-14)
232
+ -------------------
233
+
234
+ * Fix documentation with new dataset website URLs.
235
+
236
+ 0.19.1 (2020-09-09)
237
+ -------------------
238
+
239
+ * Fix visualization features
240
+ * Fix documentation
241
+
242
+ 0.19.0 (2020-09-02)
243
+ -------------------
244
+
245
+ * Added link prediction module
246
+ * Added pie-node visualization of memberships
247
+ * Added Weisfeiler-Lehman graph coloring by Pierre Pebereau and Alexis Barreaux (#394)
248
+ * Added Force Atlas 2 graph layout by Victor Manach and Rémi Jaylet (#396)
249
+ * Added triangle listing algorithm for directed and undirected graph by Julien Simonnet and Yohann Robert (#376)
250
+ * Added k-core decomposition algorithm by Julien Simonnet and Yohann Robert (#377)
251
+ * Added k-clique listing algorithm by Julien Simonnet and Yohann Robert (#377)
252
+ * Added color map option in visualization module
253
+ * Updated NetSet URL
254
+
255
+ 0.18.0 (2020-06-08)
256
+ -------------------
257
+
258
+ * Added Katz centrality
259
+ * Refactor connectivity module into paths and topology
260
+ * Refactor Diffusion into Dirichlet
261
+ * Added parsers for adjacency list TSV and GraphML
262
+ * Added shortest paths and distances
263
+
264
+ 0.17.0 (2020-05-07)
265
+ -------------------
266
+
267
+ * Add clustering by label propagation
268
+ * Add models
269
+ * Add function to build graph from edge list
270
+ * Change a parameter in SVG visualization functions
271
+ * Minor corrections
272
+
273
+ 0.16.0 (2020-04-30)
274
+ -------------------
275
+
276
+ * Refactor basics module into connectivity
277
+ * Cython version for label propagation
278
+ * Minor corrections
279
+
280
+ 0.15.2 (2020-04-24)
281
+ -------------------
282
+
283
+ * Clarified requirements
284
+ * Minor corrections
285
+
286
+ 0.15.1 (2020-04-21)
287
+ -------------------
288
+
289
+ * Added OpenMP support for all platforms
290
+
291
+ 0.15.0 (2020-04-20)
292
+ -------------------
293
+
294
+ * Updated ranking module : new pagerank solver, new HITS params, post-processing
295
+ * Polynomes in linear algebra
296
+ * Added meta.name attribute for Bunch
297
+ * Minor corrections
298
+
299
+ 0.14.0 (2020-04-17)
300
+ -------------------
301
+
302
+ * Added spring layout in embedding
303
+ * Added label propagation in classification
304
+ * Added save / load functions in data
305
+ * Added display edges parameter in svg graph exports
306
+ * Corrected typos in documentation
307
+
308
+ 0.13.3 (2020-04-13)
309
+ -------------------
310
+
311
+ * Minor bug
312
+
313
+ 0.13.2 (2020-04-13)
314
+ -------------------
315
+
316
+ * Added wheels for multiple platforms (OSX, Windows (32 & 64 bits) and many Linux) and Python version (3.6/3.7/3.8)
317
+ * Documentation update (SVG dendrograms, tutorial updates)
318
+
319
+ 0.13.1a (2020-04-09)
320
+ --------------------
321
+
322
+ * Minor bug
323
+
324
+ 0.13.0a (2020-04-09)
325
+ --------------------
326
+
327
+ * Changed from Numba to Cython for better performance
328
+ * Added visualization module
329
+ * Added k-nearest neighbors classifier
330
+ * Added Louvain hierarchy
331
+ * Added predict method in embedding
332
+ * Added soft clustering to clustering algorithms
333
+ * Added soft classification to classification algorithms
334
+ * Added graphs in data module
335
+ * Various API change
336
+
337
+ 0.12.1 (2020-01-20)
338
+ -------------------
339
+
340
+ * Added heat kernel based node classifier
341
+ * Updated loaders for WikiLinks
342
+ * Fixed file-related issues for Windows
343
+
344
+ 0.12.0 (2019-12-10)
345
+ -------------------
346
+
347
+ * Added VerboseMixin for verbosity features
348
+ * Added Loaders for WikiLinks & Konect databases
349
+
350
+ 0.11.0 (2019-11-28)
351
+ -------------------
352
+
353
+ * sknetwork: new API for bipartite graphs
354
+ * new module: Soft node classification
355
+ * new module: Node classification
356
+ * new module: data (merge toy graphs + loader)
357
+ * clustering: Spectral Clustering
358
+ * ranking: new algorithms
359
+ * utils: K-neighbors
360
+ * hierarchy: Spectral WardDense
361
+ * data: loader (Vital Wikipedia)
362
+
363
+ 0.10.1 (2019-08-26)
364
+ -------------------
365
+
366
+ * Minor bug
367
+
368
+ 0.10.0 (2019-08-26)
369
+ -------------------
370
+
371
+ * Clustering (and related metrics) for directed and bipartite graphs
372
+ * Hierarchical clustering (and related metrics) for directed and bipartite graphs
373
+ * Fix bugs on embedding algorithms
374
+
375
+
376
+ 0.9.0 (2019-07-24)
377
+ ------------------
378
+
379
+ * Change parser output
380
+ * Fix bugs in ranking algorithms (zero-degree nodes)
381
+ * Add notebooks
382
+ * Import algorithms from scipy (shortest path, connected components, bfs/dfs)
383
+ * Change SVD embedding (now in decreasing order of singular values)
384
+
385
+ 0.8.2 (2019-07-19)
386
+ ------------------
387
+
388
+ * Minor bug
389
+
390
+ 0.8.1 (2019-07-18)
391
+ ------------------
392
+
393
+ * Added diffusion ranking
394
+ * Minor fixes
395
+ * Minor doc tweaking
396
+
397
+ 0.8.0 (2019-07-17)
398
+ ------------------
399
+
400
+ * Changed Louvain, BiLouvain, Paris and PageRank APIs
401
+ * Changed PageRank method
402
+ * Documentation overhaul
403
+ * Improved Jupyter tutorials
404
+
405
+ 0.7.1 (2019-07-04)
406
+ ------------------
407
+
408
+ * Added Algorithm class for nicer repr of some classes
409
+ * Added Jupyter notebooks as tutorials in the docs
410
+ * Minor fixes
411
+
412
+ 0.7.0 (2019-06-24)
413
+ ------------------
414
+
415
+ * Updated PageRank
416
+ * Added tests for Numba versioning
417
+
418
+ 0.6.1 (2019-06-19)
419
+ ------------------
420
+
421
+ * Minor bug
422
+
423
+ 0.6.0 (2019-06-19)
424
+ ------------------
425
+
426
+ * Largest connected component
427
+ * Simplex projection
428
+ * Sparse Low Rank Decomposition
429
+ * Numba support for Paris
430
+ * Various fixes and updates
431
+
432
+ 0.5.0 (2019-04-18)
433
+ ------------------
434
+
435
+ * Unified Louvain.
436
+
437
+ 0.4.0 (2019-04-03)
438
+ ------------------
439
+
440
+ * Added Louvain for directed graphs and ComboLouvain for bipartite graphs.
441
+
442
+ 0.3.0 (2019-03-29)
443
+ ------------------
444
+
445
+ * Updated clustering module and documentation.
446
+
447
+ 0.2.0 (2019-03-21)
448
+ ------------------
449
+
450
+ * First real release on PyPI.
451
+
452
+ 0.1.1 (2018-05-29)
453
+ ------------------
454
+
455
+ * First release on PyPI.
456
+
457
+