Installation
This guide covers the installation of the SNN2 framework on various platforms.
Prerequisites
System Requirements
Python: 3.7 or higher
Operating System: Linux, macOS (Not tested), or Windows (Not tensted)
Memory: Depends on the datasets used, suggested at least 16GB RAM
GPU: NVIDIA GPU with CUDA support (optional but recommended)
Required Dependencies
The framework relies on several key libraries:
TensorFlow: 2.x (for neural network operations)
NumPy: For numerical computations
Pandas: For data manipulation
Matplotlib/Seaborn: For visualization
scikit-learn: For machine learning utilities
UMAP: For dimensionality reduction
FastDTW: For dynamic time warping
Installation Methods
From Source (Recommended)
Clone the Repository
git clone <repository-url> cd SNN2
Create Virtual Environment (Recommended)
# Install the required applications (linux system) make install # Create the virtual environment automatically manages the installation of the latest requirements make virtualenv
Install the Package
# Development installation (editable) pip install -e . # Or regular installation pip install .
GPU Support
CUDA Setup
For GPU acceleration, ensure you have:
NVIDIA Drivers: Latest drivers for your GPU
CUDA Toolkit: Compatible version with TensorFlow
cuDNN: NVIDIA Deep Neural Network library
# Verify GPU detection
python -c "import tensorflow as tf; print('GPU Available:', tf.config.list_physical_devices('GPU'))"
TensorFlow GPU
Install TensorFlow with GPU support:
pip install tensorflow-gpu
Or use the unified TensorFlow package (TF 2.1+):
pip install tensorflow
Verification
Test Installation
Basic Import Test
python -c "import SNN2; print('SNN2 imported successfully')"
Run Help Command
python SNN2/main.py --help
Development Setup
Up to now the development setup is identically to the main setup. The following sections will be updated once there will be a differentiation between the two setups.
Next Steps
After successful installation:
Review Command Line Arguments: Command Line Arguments
Explore Configuration Options: Configuration Settings