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
Copy file name to clipboardExpand all lines: README.md
+29-21Lines changed: 29 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,7 +22,7 @@ It provides an efficient and scalable implementation of **Self-Organizing Maps (
22
22
-[Installation](#installation)
23
23
<!-- - [Using pip](#using-pip)
24
24
- [Manually](#manually) -->
25
-
-[Dependencies](#dependencies)
25
+
<!-- - [Dependencies](#dependencies)-->
26
26
<!-- - [Documentation](#documentation) -->
27
27
-[Citation](#citation)
28
28
-[Acknowledgement](#acknowledgement)
@@ -38,41 +38,49 @@ It provides an efficient and scalable implementation of **Self-Organizing Maps (
38
38
39
39
Also, this **repository is highly documented and commented**, which makes it easy to use, understand, deploy, and which offers endless possibilities for improvements.
40
40
To help you explore and experiment with **TorchSOM**, we provide Jupyter notebooks in the [`notebooks/`](notebooks) directory. There are multiples datasets and the corresponding results respectively in the [`data/`](data) and [`notebooks/results/`](notebooks/results) directories.
41
-
<!-- First, execute [`get_data.ipynb`](notebooks/get_data.ipynb) to retrieve the datasets in a `data/` folder. Then you'll be able to run different TorchSOM examples: -->
42
41
-[`iris.ipynb`](notebooks/iris.ipynb): A multiclass classification example.
43
42
-[`wine.ipynb`](notebooks/wine.ipynb): Another multiclass classification example.
44
43
-[`boston_housing.ipynb`](notebooks/boston_housing.ipynb): A regression example.
45
44
-[`energy_efficiency.ipynb`](notebooks/energy_efficiency.ipynb): A multi-regression example.
45
+
-[`get_data.ipynb`](notebooks/get_data.ipynb): The notebook used to generated the datasets provided in the [`data/`](data) directory.
46
46
47
47
If you find this project interesting, we would be grateful for your support by starring ⭐ this [`GitHub repository`](https://github.com/LouisTier/TorchSOM).
48
48
49
49
50
50
51
51
## Installation
52
52
53
-
You can install the package using pip following this command:
53
+
You can install the package using pip following this command (not available yet):
54
54
55
55
```bash
56
-
pip install torchsom
56
+
pip install torchsom# Requires the dependencies from the requirements.txt file
57
57
```
58
58
59
-
If you want to use the latest version, or if you prefer the command line interface, you can use it locally by cloning or forking this repository to your local machine.
59
+
If you want to use the latest version, or if you prefer the command line interface, you can use it locally by cloning or forking this repository to your local machine. TorchSOM requires a recent version of Python, preferably **3.11 or higher**.
git clone https://github.com/LouisTier/TorchSOM.git# Retrieve the GitHub repository
63
63
```
64
64
65
+
If you want to develop the package and run the notebooks after cloning the repository, make sure you have the required dependencies installed before using it:
65
66
67
+
```bash
68
+
python3.11 -m venv .torchsom_env # Create a virtual environment
69
+
source .torchsom_env/bin/activate # Activate the environment
70
+
pip install -r dev-requirements.txt # Install the required dependencies
71
+
pip install -e .# Install the torchsom package
72
+
```
66
73
67
-
## Dependencies
68
-
69
-
TorchSOM requires a recent version of Python, preferably **3.10 or higher**. Also, make sure you have the required dependencies installed before using it.
70
-
You can these dependencies by running the command:
74
+
You can also run:
71
75
72
76
```bash
73
-
pip install -r requirements.txt
77
+
pip install .# Install the required dependencies from setup.py
78
+
pip install .[dev] # Install the required dependencies from setup.py and "extras_require"
74
79
```
75
80
81
+
[`requirements.txt`](requirements.txt) stands for the dependencies that are required when importing `torchsom`.
82
+
[`dev-requirements.txt`](dev-requirements.txt) stands for the dependencies that are required when cloning the GitHub repository and developing the `torchsom` package or running `notebooks`.
83
+
76
84
77
85
78
86
<!-- ## Documentation
@@ -88,21 +96,21 @@ If you use TorchSOM in your research or work, please consider citing it using th
88
96
1.**Paper**
89
97
```bibtex
90
98
@inproceedings{Berthier2025TorchSOM_paper,
91
-
title = {TorchSOM: A Scalable PyTorch-Compatible Library for Self-Organizing Maps},
92
-
author = {Berthier, Louis},
93
-
year = {2025},
99
+
title = {TorchSOM: A Scalable PyTorch-Compatible Library for Self-Organizing Maps},
100
+
author = {Berthier, Louis},
101
+
year = {2025},
94
102
}
95
103
```
96
104
97
105
2. **Software**
98
106
```bibtex
99
107
@software{Berthier2025TorchSOM_software,
100
-
author = {Louis Berthier},
101
-
title = {TorchSOM: A Scalable PyTorch-Compatible Library for Self-Organizing Maps},
102
-
version = {1.0.0},
103
-
year = {2025},
104
-
url = {https://github.com/LouisTier/TorchSOM},
105
-
license = {Apache-2.0},
108
+
author = {Louis Berthier},
109
+
title = {TorchSOM: A Scalable PyTorch-Compatible Library for Self-Organizing Maps},
110
+
version = {1.0.0},
111
+
year = {2025},
112
+
url = {https://github.com/LouisTier/TorchSOM},
113
+
license = {Apache-2.0},
106
114
}
107
115
```
108
116
@@ -130,7 +138,7 @@ Please take a moment to read our [`Code of Conduct`](CODE_OF_CONDUCT.md) if you'
130
138
131
139
## License
132
140
133
-
TorchSOM is licensed under the [Apache License, Version 2.0](https://opensource.org/license/apache-2-0). Feel free to use and modify the code as per the terms of the [`LICENSE`](LICENSE) file.
141
+
TorchSOM is licensed under the [Apache License, Version 2.0](https://opensource.org/license/apache-2-0). Feel free to use and modify the code as per the terms of the [`LICENSE`](LICENSE).
0 commit comments