Deep learning step selection functions for predicting animal movement.
Project description
deepSSF
Deep learning step selection functions for predicting animal movement.
This package provides the reusable, installable implementation of the deepSSF method. The accompanying paper, tutorials, and reproducibility code live at the deepSSF project site.
Installation (pip only)
If you manage your own Python environment, install deepSSF with:
pip install deepssf
Development install (editable, with linting and testing tools):
git clone https://github.com/swforrest/deepssf
cd deepssf
pip install -e ".[dev]"
Quick start
import deepssf
print(deepssf.__version__)
Setting up (for users new to Python)
If you are coming from R, think of a conda environment the way you think of
an renv project library — it is a self-contained Python installation that
keeps this project's packages separate from everything else on your computer.
The steps below create one for deepssf and should take about five minutes.
1. Install Miniconda (once, system-wide)
Download and run the installer from the official Miniconda page.
- Windows: use the Anaconda Prompt for all subsequent commands, and
choose an install path that contains no spaces (e.g.
C:\miniconda3). - macOS / Linux: a normal terminal works fine.
Miniforge alternative: if you prefer to avoid Anaconda's default channel entirely, Miniforge is a drop-in replacement that ships with
conda-forgeas the only channel.
2. Create the environment
git clone https://github.com/swforrest/deepssf
cd deepssf
conda env create -f environment.yml
This installs Python 3.11, the geospatial libraries (rasterio / GDAL / PROJ), Jupyter Lab, and the deepSSF package itself with all of its dependencies. PyTorch is installed via pip with no extra flags — pip automatically picks the right build for your hardware: MPS on Apple Silicon, CUDA on NVIDIA GPUs, CPU everywhere else. No configuration is needed; the package selects the correct backend at runtime.
3. Activate the environment
conda activate deepssf
You will need to run this once per terminal session before using deepSSF.
4. (Optional) Register the Jupyter kernel
If you use VS Code or another editor that manages its own Jupyter kernel list, register the environment so it appears as a kernel option:
python -m ipykernel install --user --name deepssf --display-name "Python (deepssf)"
5. Launch Jupyter Lab
jupyter lab
Then open examples/deepssf_train_validate_example.ipynb to get started.
Documentation
Tutorials and walkthroughs: https://swforrest.github.io/deepSSF/
Citation
If you use deepssf in your research, please cite the paper. See CITATION.cff or use the citation and link to paper below.
Forrest, S. W., Pagendam, D., Hassan, C., Potts, J. R., Drovandi, C., Bode, M., & Hoskins, A. J. (2026). Predicting animal movement with deepSSF : A deep learning step selection framework. Methods in Ecology and Evolution, 17(2), 371–391. https://doi.org/10.1111/2041-210x.70136
License
MIT — see LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deepssf-0.1.1.tar.gz.
File metadata
- Download URL: deepssf-0.1.1.tar.gz
- Upload date:
- Size: 10.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82181e376d4d06aea1f87ece3ee972ecd5cee9ac437883a189dab27b186d7555
|
|
| MD5 |
b0d3cd94b44a3a621418506eab058167
|
|
| BLAKE2b-256 |
b1f2ca7beb265d7f56048df21c6919972c2e34fe6efae05a7b7fdfe47444e1e9
|
Provenance
The following attestation bundles were made for deepssf-0.1.1.tar.gz:
Publisher:
publish.yml on swforrest/deepSSF_package
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deepssf-0.1.1.tar.gz -
Subject digest:
82181e376d4d06aea1f87ece3ee972ecd5cee9ac437883a189dab27b186d7555 - Sigstore transparency entry: 1635546578
- Sigstore integration time:
-
Permalink:
swforrest/deepSSF_package@93348f0d48060a59fe580657d9900283b3ae342d -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/swforrest
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@93348f0d48060a59fe580657d9900283b3ae342d -
Trigger Event:
release
-
Statement type:
File details
Details for the file deepssf-0.1.1-py3-none-any.whl.
File metadata
- Download URL: deepssf-0.1.1-py3-none-any.whl
- Upload date:
- Size: 7.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f77651fc0cafe31fb033b1742755e911cd2d0a590ca78d1668ef255f09a1a40e
|
|
| MD5 |
a71998af164b5d33b8f579befe7977d6
|
|
| BLAKE2b-256 |
55cbd137cdf207edbc257fe94145358e72b4993dd151126b89d580ec5893a4a1
|
Provenance
The following attestation bundles were made for deepssf-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on swforrest/deepSSF_package
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deepssf-0.1.1-py3-none-any.whl -
Subject digest:
f77651fc0cafe31fb033b1742755e911cd2d0a590ca78d1668ef255f09a1a40e - Sigstore transparency entry: 1635546605
- Sigstore integration time:
-
Permalink:
swforrest/deepSSF_package@93348f0d48060a59fe580657d9900283b3ae342d -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/swforrest
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@93348f0d48060a59fe580657d9900283b3ae342d -
Trigger Event:
release
-
Statement type: