diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f802368..f15e5a2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,7 +16,7 @@ jobs: id: set-matrix run: | FULL='["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]' - MINIMAL='["3.11"]' + MINIMAL='["3.12"]' if [[ "${{ github.event_name }}" == "push" ]]; then # Push to main: full matrix echo "python-versions=$FULL" >> "$GITHUB_OUTPUT" diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 0000000..58025dd --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,9 @@ +# Authors + +## v0.1.0 Development + +🐟iTuna was initially developed and is being maintained by Tobias Schmidt ([@TobiasSchmidtDE](https://github.com/TobiasSchmidtDE)) and Steffen Schneider ([@stes](https://github.com/stes)) in the [Dynamical Inference Lab](https://dynamical-inference.ai/) at Helmholtz Munich. + +Lilly May ([@Lilly-May](https://github.com/Lilly-May)) contributed consistency metrics for sparse autoencoders (to be released soon). + +Paul Pommer ([@ppommer](https://github.com/ppommer)) contributed demos for [piVAE](https://github.com/zhd96/pi-vae) and [FastSAE](https://github.com/dynamical-inference/fastsae) (to be released soon) and alpha-tested the package. \ No newline at end of file diff --git a/ituna/utils.py b/ituna/utils.py index d6eff38..7d627eb 100644 --- a/ituna/utils.py +++ b/ituna/utils.py @@ -1,7 +1,6 @@ from typing import Tuple import numpy as np -import torch import typeguard @@ -83,21 +82,3 @@ def dense_to_sparse(dense_array: np.ndarray, symmetric: bool = False) -> Tuple[n values = dense_array[indices[:, 0], indices[:, 1]] return indices, values - - -def l2_normalize_columns(x: torch.Tensor, y: torch.Tensor, eps: float = 1e-8) -> Tuple[torch.Tensor, torch.Tensor]: - """ - Normalize each column of x and y to unit L2 norm. - """ - x_norm = x / (x.norm(dim=0, keepdim=True) + eps) - y_norm = y / (y.norm(dim=0, keepdim=True) + eps) - return x_norm, y_norm - - -def mean_center_columns(x: torch.Tensor, y: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor]: - """ - Subtract the column-wise mean from x and y. - """ - x_centered = x - x.mean(dim=0, keepdim=True) - y_centered = y - y.mean(dim=0, keepdim=True) - return x_centered, y_centered diff --git a/pyproject.toml b/pyproject.toml index 88aa198..e5d173a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -30,12 +30,9 @@ classifiers = [ requires-python = ">=3.8" dependencies = [ "numpy", - "torch", "scipy", "scikit-learn", - "matplotlib", "pandas", - "igraph", "tqdm", "python-dotenv", "filelock>=3.0.0", @@ -47,13 +44,19 @@ datajoint = ["datajoint<2"] dev = [ "pytest>=6.0", "pytest-cov>=2.0", - "black>=21.0", - "flake8>=3.8", "pre-commit>=3.0", - "cebra>=0.5.0", - "streamlit>=1.49.1", + "cebra>=0.4.0", "ruff" ] +docs = [ + "matplotlib", + "cebra[datasets,demos]>=0.4.0", + "jupyter-book<2", + "ghp-import", +] +dashboard = [ + "streamlit>=1.49.1", +] [tool.setuptools.dynamic]