From 185af45a7ee3620398c75a835b8a48bf639631e4 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Fri, 7 Jun 2024 14:16:56 +0100 Subject: [PATCH 01/31] Lint with black --- docs/conf.py | 21 ++++++++------------- src/sceptr/__init__.py | 1 - src/sceptr/model.py | 2 +- src/sceptr/sceptr/__init__.py | 1 - src/sceptr/variant.py | 3 +-- tox.ini | 8 ++++++++ 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index ad0217e..39814de 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -8,27 +8,22 @@ # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information -project = 'sceptr' -copyright = '2024, Yuta Nagano' -author = 'Yuta Nagano' +project = "sceptr" +copyright = "2024, Yuta Nagano" +author = "Yuta Nagano" version = sceptr.VERSION # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration -extensions = [ - "sphinx.ext.autodoc", - "sphinx.ext.autosummary", - "sphinx.ext.napoleon" -] - -templates_path = ['_templates'] -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +extensions = ["sphinx.ext.autodoc", "sphinx.ext.autosummary", "sphinx.ext.napoleon"] +templates_path = ["_templates"] +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] # -- Options for HTML output ------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output -html_theme = 'sphinx_book_theme' -html_static_path = ['_static'] +html_theme = "sphinx_book_theme" +html_static_path = ["_static"] diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 08c6dfe..8d8dc1d 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -4,5 +4,4 @@ SCEPTR is a small, fast, and performant TCR representation model for alignment-free TCR analysis. """ - VERSION = "1.0.0-beta.1" diff --git a/src/sceptr/model.py b/src/sceptr/model.py index 86f6868..3e65d6e 100644 --- a/src/sceptr/model.py +++ b/src/sceptr/model.py @@ -23,7 +23,7 @@ class Sceptr: name : str The name of the model variant. """ - + name: str = None distance_bins = np.linspace(0, 2, num=21) diff --git a/src/sceptr/sceptr/__init__.py b/src/sceptr/sceptr/__init__.py index 364d715..c84e701 100644 --- a/src/sceptr/sceptr/__init__.py +++ b/src/sceptr/sceptr/__init__.py @@ -3,7 +3,6 @@ The functional API uses the default SCEPTR model. """ - from sceptr import variant from numpy import ndarray from pandas import DataFrame diff --git a/src/sceptr/variant.py b/src/sceptr/variant.py index 81d5e92..6fe8125 100644 --- a/src/sceptr/variant.py +++ b/src/sceptr/variant.py @@ -5,7 +5,6 @@ Each of their function signatures are equivalent to the functional API, so you can just plug and play! """ - from sceptr._model_saves import load_variant @@ -186,7 +185,7 @@ def finetuned(): .. note :: This model is fine-tuned explicity for discriminating between the pMHC specificities listed above. While it does indeed become much better than the default model at that specific task, its general performance is otherwise *demonstrably worse* compared to the default. - + Returns ------- :py:class:`~sceptr.model.Sceptr` diff --git a/tox.ini b/tox.ini index 95ab726..0425e01 100644 --- a/tox.ini +++ b/tox.ini @@ -22,3 +22,11 @@ skip_install = true deps = black>=23 commands = black . + +[testenv:docs] +description = build sphinx docs +deps = + sphinx>=6 + sphinx-book-theme +commands = + sphinx-build docs docs/_build From 799fb33a3d5a458f2357d7d5e4e6436ec1ae3881 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Fri, 7 Jun 2024 15:38:01 +0100 Subject: [PATCH 02/31] Add license --- LICENSE.txt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 LICENSE.txt diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..8c7ba7b --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Yuta Nagano + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. From 3de04e0f2cd3c4692ae6ae63f27ed0e27260ac6c Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Fri, 7 Jun 2024 15:38:10 +0100 Subject: [PATCH 03/31] Add some badges --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 2dd78b3..44f5154 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ # SCEPTR +![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) + +[![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) + + > [!NOTE] > The latest version of SCEPTR no longer supports Python versions earlier than 3.9. From 0e90e133297508291c245a7dfbbad8fc8af57e49 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Fri, 7 Jun 2024 15:40:25 +0100 Subject: [PATCH 04/31] Remove unnecessary badges --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 44f5154..113544c 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,7 @@ # SCEPTR ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) - [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) - > [!NOTE] > The latest version of SCEPTR no longer supports Python versions earlier than 3.9. From 0b03411a769b274af071fe464a68ecb88d176a16 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 20:57:50 +0100 Subject: [PATCH 05/31] Further polish the documentation --- docs/index.rst | 15 +++++++--- docs/installation.rst | 16 +++++----- docs/sceptr_sceptr.rst | 2 ++ docs/usage.rst | 55 ++++++++++++++++++----------------- src/sceptr/model.py | 8 ++--- src/sceptr/sceptr/__init__.py | 8 ++--- src/sceptr/variant.py | 4 +-- 7 files changed, 59 insertions(+), 49 deletions(-) diff --git a/docs/index.rst b/docs/index.rst index 6e7d705..65a444c 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,11 +3,18 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -SCEPTR: A fast and performant TCR representation model -====================================================== +SCEPTR +====== -SCEPTR (Simple Contrastive Embedding of the Primary sequence of T cell Receptors) is a BERT-like attention model trained on T cell receptor (TCR) data. -It maps TCRs to vector representations, which enables alignment-free downstream TCR and TCR repertoire analysis such as TCR clustering or classification. +**SCEPTR** (\ **S**\ imple **C**\ ontrastive **E**\ mbedding of the **P**\ rimary sequence of **T** cell **R**\ eceptors) is a small, fast, and performant TCR representation model that can be used for alignment-free downstream TCR and TCR repertoire analysis such as TCR clustering or classification. +Our `manuscript (coming soon) `_ demonstrates SCEPTR's state-of-the-art performance (as of 2024) on downstream TCR specificity prediction. + +SCEPTR is a BERT-like transformer-based neural network implemented in `Pytorch `_. +With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! +And if your computer does have a `CUDA-enabled GPU `_, the ``sceptr`` package will automatically detect and use it, giving you blazingly fast performance without the hassle. + +``sceptr``'s :ref:`API ` exposes three intuitive functions: :py:func:`~sceptr.sceptr.calc_vector_representations`, :py:func:`~sceptr.sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. +What's even better is that they are fully compliant with `pyrepseq `_'s `tcr_metric `_ API, so ``sceptr`` will fit snugly into the rest of your repertoire analysis toolkit. .. toctree:: :maxdepth: 2 diff --git a/docs/installation.rst b/docs/installation.rst index 2e655ff..755af80 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -12,13 +12,13 @@ From `Source `_ ----------------------------------------------------- .. important:: - To install `sceptr` from source, you must have `git-lfs `_ installed and set up on your system. + To install ``sceptr`` from source, you must have `git-lfs `_ installed and set up on your system. This is because you must be able to download the trained model weights directly from the Git LFS servers during your install. -Using `pip` -........... +Using ``pip`` +............. -From your Python environment, run the following replacing `` with the appropriate version specifier (e.g. `v1.0.0-beta.1`). +From your Python environment, run the following replacing ```` with the appropriate version specifier (e.g. ``v1.0.0-beta.1``). The latest release tags can be found by checking the 'releases' section on the github repository page. .. code-block:: bash @@ -34,22 +34,22 @@ You can also clone the repository, and from within your Python environment, navi $ pip install . -Note that even for manual installation, you still need `git-lfs` to properly de-reference the stub files at `git-clone`-ing time. +Note that even for manual installation, you still need ``git-lfs`` to properly de-reference the stub files at `git-clone`-ing time. Troubleshooting ............... -A recent security update to `git` has resulted in some difficulties cloning repositories that rely on `git-lfs`. +A recent security update to ``git`` has resulted in some difficulties cloning repositories that rely on ``git-lfs``. This can result in an error message with a message along the lines of: .. code-block:: bash $ fatal: active `post-checkout` hook found during `git clone` -If this happens, you can temporarily set the `GIT_CLONE_PROTECTION_ACTIVE` environment variable to `false` by prepending `GIT_CLONE_PROTECTION_ACTIVE=false` before the install command like below: +If this happens, you can temporarily set the ``GIT_CLONE_PROTECTION_ACTIVE`` environment variable to ``false`` by prepending ``GIT_CLONE_PROTECTION_ACTIVE=false`` before the install command like below: .. code-block:: bash $ GIT_CLONE_PROTECTION_ACTIVE=false pip install git+https://github.com/yutanagano/sceptr.git@ -This is `a known issue `_ for `git` version `2.45.1` and is fixed from version `2.45.2`. +This is `a known issue `_ for ``git`` version ``2.45.1`` and is fixed from version ``2.45.2``. diff --git a/docs/sceptr_sceptr.rst b/docs/sceptr_sceptr.rst index 7465ff7..67d8d28 100644 --- a/docs/sceptr_sceptr.rst +++ b/docs/sceptr_sceptr.rst @@ -1,3 +1,5 @@ +.. _api: + `sceptr.sceptr` =============== diff --git a/docs/usage.rst b/docs/usage.rst index 0ad2e0b..27d7bf6 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -1,6 +1,34 @@ Usage ===== +Functional API (:py:mod:`sceptr.sceptr`) +---------------------------------------- + +.. tip:: + To use the functional API, import the `sceptr` submodule like so: + + >>> from sceptr import sceptr + + Attempting to access the submodule as an attribute of the top level module + + >>> import sceptr + >>> # ... load data, etc ... + >>> sceptr.sceptr.calc_vector_representations(df) + + will result in an error. + +The eponymous :py:mod:`sceptr.sceptr` submodule is the easiest way to use SCEPTR. +It loads the default SCEPTR variant and exposes its methods directly as module-level functions. + +Model Variants (:py:mod:`sceptr.variant`) +----------------------------------------- + +For more curious users, model variants are available to load and use through the :py:mod:`sceptr.variant` submodule. +The module exposes functions, each named after a particular model variant, which when called, will return a :py:class:`~sceptr.model.Sceptr` object corresponding to the selected model variant. +This :py:class:`~sceptr.model.Sceptr` object will then have the methods: `calc_pdist_vector`, `calc_cdist_matrix`, and `calc_vector_representations` available to use, with function signatures exactly as defined above for the functional API in the :py:mod:`sceptr.sceptr` submodule. + +.. _data_format: + Prescribed data format ---------------------- @@ -29,30 +57,3 @@ Incomplete rows are allowed (e.g. only beta chain data available) as long as the +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ |TRBJ |`str` |IMGT symbol for the beta chain J gene | +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ - - -Functional API (:py:mod:`sceptr.sceptr`) ----------------------------------------- - -.. tip:: - To use the functional API, import the `sceptr` submodule like so: - - >>> from sceptr import sceptr - - Attempting to access the submodule as an attribute of the top level module - - >>> import sceptr - >>> # ... load data, etc ... - >>> sceptr.sceptr.calc_vector_representations(df) - - will result in an error. - -The eponymous :py:mod:`sceptr.sceptr` submodule is the easiest way to use SCEPTR. -It loads the default SCEPTR variant and exposes its methods directly as module-level functions. - -Model Variants (:py:mod:`sceptr.variant`) ------------------------------------------ - -For more curious users, model variants are available to load and use through the :py:mod:`sceptr.variant` submodule. -The module exposes functions, each named after a particular model variant, which when called, will return a :py:class:`~sceptr.model.Sceptr` object corresponding to the selected model variant. -This :py:class:`~sceptr.model.Sceptr` object will then have the methods: `calc_pdist_vector`, `calc_cdist_matrix`, and `calc_vector_representations` available to use, with function signatures exactly as defined above for the functional API in the :py:mod:`sceptr.sceptr` submodule. diff --git a/src/sceptr/model.py b/src/sceptr/model.py index 3e65d6e..50b6055 100644 --- a/src/sceptr/model.py +++ b/src/sceptr/model.py @@ -42,7 +42,7 @@ def calc_vector_representations(self, instances: DataFrame) -> ndarray: Parameters ---------- instances : DataFrame - DataFrame in the presribed format. + DataFrame in the :ref:`prescribed format `. Returns ------- @@ -86,9 +86,9 @@ def calc_cdist_matrix(self, anchors: DataFrame, comparisons: DataFrame) -> ndarr Parameters ---------- anchors : DataFrame - DataFrame in the prescribed format, representing TCRs from collection A. + DataFrame in the :ref:`prescribed format `. comparisons : DataFrame - DataFrame in the prescribed format, representing TCRs from collection B. + DataFrame in the :ref:`prescribed format `. Returns ------- @@ -110,7 +110,7 @@ def calc_pdist_vector(self, instances: DataFrame) -> ndarray: Parameters ---------- instances : DataFrame - DataFrame in the prescribed format. + DataFrame in the :ref:`prescribed format `. Returns ------- diff --git a/src/sceptr/sceptr/__init__.py b/src/sceptr/sceptr/__init__.py index c84e701..45ed16b 100644 --- a/src/sceptr/sceptr/__init__.py +++ b/src/sceptr/sceptr/__init__.py @@ -18,9 +18,9 @@ def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: Parameters ---------- anchors : DataFrame - DataFrame in the prescribed format, representing TCRs from collection A. + DataFrame in the :ref:`prescribed format `. comparisons : DataFrame - DataFrame in the prescribed format, representing TCRs from collection B. + DataFrame in the :ref:`prescribed format `. Returns ------- @@ -38,7 +38,7 @@ def calc_pdist_vector(instances: DataFrame) -> ndarray: Parameters ---------- instances : DataFrame - DataFrame in the prescribed format. + DataFrame in the :ref:`prescribed format `. Returns ------- @@ -56,7 +56,7 @@ def calc_vector_representations(instances: DataFrame) -> ndarray: Parameters ---------- instances : DataFrame - DataFrame in the presribed format. + DataFrame in the :ref:`prescribed format `. Returns ------- diff --git a/src/sceptr/variant.py b/src/sceptr/variant.py index 6fe8125..99cea3e 100644 --- a/src/sceptr/variant.py +++ b/src/sceptr/variant.py @@ -1,7 +1,7 @@ """ For the curious/power users, several model variants are available to load and use through this submodule. The submodule exposes functions, each named after a particular variant, which when called will return a :py:class:`~sceptr.model.Sceptr` instance corresponding to the selected model variant. -:py:class:`~sceptr.model.Sceptr` instances expose the same methods as in the functional API: namely `calc_pdist_vector`, `calc_cdist_matrix`, and `calc_vector_representations`. +:py:class:`~sceptr.model.Sceptr` instances expose the same methods as in the functional API: namely :py:func:`~sceptr.model.Sceptr.calc_pdist_vector`, :py:func:`~sceptr.model.Sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.model.Sceptr.calc_vector_representations`. Each of their function signatures are equivalent to the functional API, so you can just plug and play! """ @@ -180,7 +180,7 @@ def dropout_noise_only(): def finetuned(): """ Load the fine-tuned variant of SCEPTR. - This variant is fine-tuned using supervised contrastive learning for six pMHCs with peptides GILGFVFTL, NLVPMVATV, SPRWYFYYL, TFEYVSQPFLMDLE, TTDPSFLGRY and YLQPRTFLL (from [VDJdb](https://vdjdb.cdr3.net/))| + This variant is fine-tuned using supervised contrastive learning for six pMHCs with peptides GILGFVFTL, NLVPMVATV, SPRWYFYYL, TFEYVSQPFLMDLE, TTDPSFLGRY and YLQPRTFLL (from `VDJdb `_) .. note :: This model is fine-tuned explicity for discriminating between the pMHC specificities listed above. From 9273f16851619f41f4ebfc8549ffbc9b1c02de57 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:09:50 +0100 Subject: [PATCH 06/31] Move functional API into root module --- src/sceptr/__init__.py | 67 +++++++++++++++++++++++++++++++++-- src/sceptr/sceptr/__init__.py | 67 ----------------------------------- tests/test_functional_api.py | 2 +- 3 files changed, 66 insertions(+), 70 deletions(-) delete mode 100644 src/sceptr/sceptr/__init__.py diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 8d8dc1d..91ec496 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -1,7 +1,70 @@ """ -Simple Contrastive Embedding of the Primary sequence of T cell Receptors -======================================================================== SCEPTR is a small, fast, and performant TCR representation model for alignment-free TCR analysis. +The top module provides easy access to SCEPTR through a functional API which uses the default :py:class:`~sceptr.model.Sceptr` model. """ +from sceptr import variant +from numpy import ndarray +from pandas import DataFrame + + VERSION = "1.0.0-beta.1" + + +default_model = variant.default() + + +def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: + """ + Generate a cdist matrix between two collections of TCRs. + + Parameters + ---------- + anchors : DataFrame + DataFrame in the :ref:`prescribed format `. + comparisons : DataFrame + DataFrame in the :ref:`prescribed format `. + + Returns + ------- + ndarray + A 2D numpy ndarray representing a cdist matrix between TCRs from `anchors` and `comparisons`. + The returned array will have shape (X, Y) where X is the number of TCRs in `anchors` and Y is the number of TCRs in `comparisons`. + """ + return default_model.calc_cdist_matrix(anchors, comparisons) + + +def calc_pdist_vector(instances: DataFrame) -> ndarray: + """ + Generate a pdist set of distances between each pair of TCRs in the input data. + + Parameters + ---------- + instances : DataFrame + DataFrame in the :ref:`prescribed format `. + + Returns + ------- + ndarray + A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`. + The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in `instances`. + """ + return default_model.calc_pdist_vector(instances) + + +def calc_vector_representations(instances: DataFrame) -> ndarray: + """ + Map a table of TCRs provided as a pandas DataFrame in the above format to a set of vector representations. + + Parameters + ---------- + instances : DataFrame + DataFrame in the :ref:`prescribed format `. + + Returns + ------- + ndarray + A 2D numpy ndarray object where every row vector corresponds to a row in `instances`. + The returned array will have shape (N, D) where N is the number of TCRs in `instances` and D is the dimensionality of the SCEPTR model. + """ + return default_model.calc_vector_representations(instances) diff --git a/src/sceptr/sceptr/__init__.py b/src/sceptr/sceptr/__init__.py deleted file mode 100644 index 45ed16b..0000000 --- a/src/sceptr/sceptr/__init__.py +++ /dev/null @@ -1,67 +0,0 @@ -""" -This submodule provides easy access to SCEPTR's functional API. -The functional API uses the default SCEPTR model. -""" - -from sceptr import variant -from numpy import ndarray -from pandas import DataFrame - - -default_model = variant.default() - - -def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: - """ - Generate a cdist matrix between two collections of TCRs. - - Parameters - ---------- - anchors : DataFrame - DataFrame in the :ref:`prescribed format `. - comparisons : DataFrame - DataFrame in the :ref:`prescribed format `. - - Returns - ------- - ndarray - A 2D numpy ndarray representing a cdist matrix between TCRs from `anchors` and `comparisons`. - The returned array will have shape (X, Y) where X is the number of TCRs in `anchors` and Y is the number of TCRs in `comparisons`. - """ - return default_model.calc_cdist_matrix(anchors, comparisons) - - -def calc_pdist_vector(instances: DataFrame) -> ndarray: - """ - Generate a pdist set of distances between each pair of TCRs in the input data. - - Parameters - ---------- - instances : DataFrame - DataFrame in the :ref:`prescribed format `. - - Returns - ------- - ndarray - A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`. - The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in `instances`. - """ - return default_model.calc_pdist_vector(instances) - - -def calc_vector_representations(instances: DataFrame) -> ndarray: - """ - Map a table of TCRs provided as a pandas DataFrame in the above format to a set of vector representations. - - Parameters - ---------- - instances : DataFrame - DataFrame in the :ref:`prescribed format `. - - Returns - ------- - ndarray - A 2D numpy ndarray object where every row vector corresponds to a row in `instances`. - The returned array will have shape (N, D) where N is the number of TCRs in `instances` and D is the dimensionality of the SCEPTR model. - """ - return default_model.calc_vector_representations(instances) diff --git a/tests/test_functional_api.py b/tests/test_functional_api.py index bf4bc7a..c9397f3 100644 --- a/tests/test_functional_api.py +++ b/tests/test_functional_api.py @@ -1,4 +1,4 @@ -from sceptr import sceptr +import sceptr import numpy as np import pandas as pd import pytest From 7e2667d56001960df7fe469c60bd24d3ffa8ea59 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:26:38 +0100 Subject: [PATCH 07/31] Defer default model loading in the root module until necessary --- src/sceptr/__init__.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 91ec496..02a822e 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -1,9 +1,11 @@ """ SCEPTR is a small, fast, and performant TCR representation model for alignment-free TCR analysis. -The top module provides easy access to SCEPTR through a functional API which uses the default :py:class:`~sceptr.model.Sceptr` model. +The root module provides easy access to SCEPTR through a functional API which uses the default :py:class:`~sceptr.model.Sceptr` model. """ from sceptr import variant +from sceptr.model import Sceptr +import sys from numpy import ndarray from pandas import DataFrame @@ -11,9 +13,6 @@ VERSION = "1.0.0-beta.1" -default_model = variant.default() - - def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: """ Generate a cdist matrix between two collections of TCRs. @@ -31,7 +30,7 @@ def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: A 2D numpy ndarray representing a cdist matrix between TCRs from `anchors` and `comparisons`. The returned array will have shape (X, Y) where X is the number of TCRs in `anchors` and Y is the number of TCRs in `comparisons`. """ - return default_model.calc_cdist_matrix(anchors, comparisons) + return get_default_model().calc_cdist_matrix(anchors, comparisons) def calc_pdist_vector(instances: DataFrame) -> ndarray: @@ -49,7 +48,7 @@ def calc_pdist_vector(instances: DataFrame) -> ndarray: A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`. The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in `instances`. """ - return default_model.calc_pdist_vector(instances) + return get_default_model().calc_pdist_vector(instances) def calc_vector_representations(instances: DataFrame) -> ndarray: @@ -67,4 +66,10 @@ def calc_vector_representations(instances: DataFrame) -> ndarray: A 2D numpy ndarray object where every row vector corresponds to a row in `instances`. The returned array will have shape (N, D) where N is the number of TCRs in `instances` and D is the dimensionality of the SCEPTR model. """ - return default_model.calc_vector_representations(instances) + return get_default_model().calc_vector_representations(instances) + + +def get_default_model() -> Sceptr: + if "_DEFAULT_MODEL" not in dir(sys.modules[__name__]): + setattr(sys.modules[__name__], "_DEFAULT_MODEL", variant.default()) + return _DEFAULT_MODEL From e61f15f15de6ef567b964063a76545f0a1097aec Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:27:55 +0100 Subject: [PATCH 08/31] Rename VERSION attribute to __version__ --- docs/conf.py | 2 +- pyproject.toml | 2 +- src/sceptr/__init__.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 39814de..b24fffc 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -11,7 +11,7 @@ project = "sceptr" copyright = "2024, Yuta Nagano" author = "Yuta Nagano" -version = sceptr.VERSION +version = sceptr.__version__ # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/pyproject.toml b/pyproject.toml index f78309f..5654f14 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -47,7 +47,7 @@ dev = [ include-package-data = true [tool.setuptools.dynamic] -version = {attr = "sceptr.VERSION"} +version = {attr = "sceptr.__version__"} [tool.pytest.ini_options] filterwarnings = [ diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 02a822e..61725d2 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -10,7 +10,7 @@ from pandas import DataFrame -VERSION = "1.0.0-beta.1" +__version__ = "1.0.0-beta.1" def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: From 59a50e6f5db1e3d2f2fb44e3e1f2175d1577a45b Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:35:43 +0100 Subject: [PATCH 09/31] Update documentation to reflect refactor --- docs/api.rst | 2 +- docs/index.rst | 2 +- docs/sceptr.rst | 7 +++++++ docs/sceptr_sceptr.rst | 7 ------- docs/usage.rst | 21 +++------------------ 5 files changed, 12 insertions(+), 27 deletions(-) create mode 100644 docs/sceptr.rst delete mode 100644 docs/sceptr_sceptr.rst diff --git a/docs/api.rst b/docs/api.rst index 15c1396..644a09d 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -4,5 +4,5 @@ API reference .. toctree:: :maxdepth: 2 - sceptr_sceptr + sceptr sceptr_variant diff --git a/docs/index.rst b/docs/index.rst index 65a444c..626ca57 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -13,7 +13,7 @@ SCEPTR is a BERT-like transformer-based neural network implemented in `Pytorch < With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! And if your computer does have a `CUDA-enabled GPU `_, the ``sceptr`` package will automatically detect and use it, giving you blazingly fast performance without the hassle. -``sceptr``'s :ref:`API ` exposes three intuitive functions: :py:func:`~sceptr.sceptr.calc_vector_representations`, :py:func:`~sceptr.sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. +``sceptr``'s :ref:`API ` exposes three intuitive functions: :py:func:`~sceptr.calc_vector_representations`, :py:func:`~sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. What's even better is that they are fully compliant with `pyrepseq `_'s `tcr_metric `_ API, so ``sceptr`` will fit snugly into the rest of your repertoire analysis toolkit. .. toctree:: diff --git a/docs/sceptr.rst b/docs/sceptr.rst new file mode 100644 index 0000000..8006793 --- /dev/null +++ b/docs/sceptr.rst @@ -0,0 +1,7 @@ +.. _api: + +`sceptr` +=============== + +.. automodule:: sceptr + :members: diff --git a/docs/sceptr_sceptr.rst b/docs/sceptr_sceptr.rst deleted file mode 100644 index 67d8d28..0000000 --- a/docs/sceptr_sceptr.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. _api: - -`sceptr.sceptr` -=============== - -.. automodule:: sceptr.sceptr - :members: diff --git a/docs/usage.rst b/docs/usage.rst index 27d7bf6..8144d32 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -1,31 +1,16 @@ Usage ===== -Functional API (:py:mod:`sceptr.sceptr`) ----------------------------------------- +Functional API (Recommended) +---------------------------- -.. tip:: - To use the functional API, import the `sceptr` submodule like so: - - >>> from sceptr import sceptr - - Attempting to access the submodule as an attribute of the top level module - - >>> import sceptr - >>> # ... load data, etc ... - >>> sceptr.sceptr.calc_vector_representations(df) - - will result in an error. - -The eponymous :py:mod:`sceptr.sceptr` submodule is the easiest way to use SCEPTR. -It loads the default SCEPTR variant and exposes its methods directly as module-level functions. +The functional API is accessible from the root module, and is the easiest way to use SCEPTR. Model Variants (:py:mod:`sceptr.variant`) ----------------------------------------- For more curious users, model variants are available to load and use through the :py:mod:`sceptr.variant` submodule. The module exposes functions, each named after a particular model variant, which when called, will return a :py:class:`~sceptr.model.Sceptr` object corresponding to the selected model variant. -This :py:class:`~sceptr.model.Sceptr` object will then have the methods: `calc_pdist_vector`, `calc_cdist_matrix`, and `calc_vector_representations` available to use, with function signatures exactly as defined above for the functional API in the :py:mod:`sceptr.sceptr` submodule. .. _data_format: From 3c07879059fc3809390cefd46d69ebf5b23742aa Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:48:27 +0100 Subject: [PATCH 10/31] Move Sceptr model class documentation to its own page --- docs/api.rst | 1 + docs/sceptr.rst | 4 ++-- docs/sceptr_variant.rst | 10 ++-------- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/docs/api.rst b/docs/api.rst index 644a09d..ce011cb 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -6,3 +6,4 @@ API reference sceptr sceptr_variant + sceptr_model diff --git a/docs/sceptr.rst b/docs/sceptr.rst index 8006793..10492bb 100644 --- a/docs/sceptr.rst +++ b/docs/sceptr.rst @@ -1,7 +1,7 @@ .. _api: -`sceptr` -=============== +``sceptr`` +========== .. automodule:: sceptr :members: diff --git a/docs/sceptr_variant.rst b/docs/sceptr_variant.rst index d86da58..bdb5342 100644 --- a/docs/sceptr_variant.rst +++ b/docs/sceptr_variant.rst @@ -1,11 +1,5 @@ -`sceptr.variant` -================ +``sceptr.variant`` +================== .. automodule:: sceptr.variant :members: - -`Sceptr` object API -------------------- - -.. autoclass:: sceptr.model.Sceptr - :members: From b0fbd8dde567cccb253a270249029b45e53be3f7 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 21:49:06 +0100 Subject: [PATCH 11/31] Make separate page for model submodule --- docs/sceptr_model.rst | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 docs/sceptr_model.rst diff --git a/docs/sceptr_model.rst b/docs/sceptr_model.rst new file mode 100644 index 0000000..d348a6c --- /dev/null +++ b/docs/sceptr_model.rst @@ -0,0 +1,5 @@ +``sceptr.model`` +================ + +.. automodule:: sceptr.model + :members: From 5250991b9de50c3fdbe27823a9c9ba2b3b072ce0 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sat, 8 Jun 2024 22:24:15 +0100 Subject: [PATCH 12/31] Further polish documentation --- docs/api.rst | 2 +- docs/conf.py | 2 +- docs/index.rst | 11 +++-------- docs/installation.rst | 8 +------- src/sceptr/model.py | 2 +- 5 files changed, 7 insertions(+), 18 deletions(-) diff --git a/docs/api.rst b/docs/api.rst index ce011cb..f4164d7 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -2,7 +2,7 @@ API reference ============= .. toctree:: - :maxdepth: 2 + :maxdepth: 1 sceptr sceptr_variant diff --git a/docs/conf.py b/docs/conf.py index b24fffc..f1d36a2 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -11,7 +11,7 @@ project = "sceptr" copyright = "2024, Yuta Nagano" author = "Yuta Nagano" -version = sceptr.__version__ +release = sceptr.__version__ # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/docs/index.rst b/docs/index.rst index 626ca57..730e31b 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,8 +1,3 @@ -.. sceptr documentation master file, created by - sphinx-quickstart on Fri Jun 7 10:32:22 2024. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - SCEPTR ====== @@ -11,10 +6,10 @@ Our `manuscript (coming soon) `_ demonstrates SCEPTR's state-of-the SCEPTR is a BERT-like transformer-based neural network implemented in `Pytorch `_. With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! -And if your computer does have a `CUDA-enabled GPU `_, the ``sceptr`` package will automatically detect and use it, giving you blazingly fast performance without the hassle. +And if your computer does have a `CUDA-enabled GPU `_, the sceptr package will automatically detect and use it, giving you blazingly fast performance without the hassle. -``sceptr``'s :ref:`API ` exposes three intuitive functions: :py:func:`~sceptr.calc_vector_representations`, :py:func:`~sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. -What's even better is that they are fully compliant with `pyrepseq `_'s `tcr_metric `_ API, so ``sceptr`` will fit snugly into the rest of your repertoire analysis toolkit. +sceptr's :ref:`API ` exposes three intuitive functions: :py:func:`~sceptr.calc_vector_representations`, :py:func:`~sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. +What's even better is that they are fully compliant with `pyrepseq `_'s `tcr_metric `_ API, so sceptr will fit snugly into the rest of your repertoire analysis toolkit. .. toctree:: :maxdepth: 2 diff --git a/docs/installation.rst b/docs/installation.rst index 755af80..92bc502 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -15,9 +15,6 @@ From `Source `_ To install ``sceptr`` from source, you must have `git-lfs `_ installed and set up on your system. This is because you must be able to download the trained model weights directly from the Git LFS servers during your install. -Using ``pip`` -............. - From your Python environment, run the following replacing ```` with the appropriate version specifier (e.g. ``v1.0.0-beta.1``). The latest release tags can be found by checking the 'releases' section on the github repository page. @@ -25,16 +22,13 @@ The latest release tags can be found by checking the 'releases' section on the g $ pip install git+https://github.com/yutanagano/sceptr.git@ -Manual install -.............. - You can also clone the repository, and from within your Python environment, navigate to the project root directory and run: .. code-block:: bash $ pip install . -Note that even for manual installation, you still need ``git-lfs`` to properly de-reference the stub files at `git-clone`-ing time. +Note that even for manual installation, you still need ``git-lfs`` to properly de-reference the stub files at ``git-clone``-ing time. Troubleshooting ............... diff --git a/src/sceptr/model.py b/src/sceptr/model.py index 50b6055..11bd265 100644 --- a/src/sceptr/model.py +++ b/src/sceptr/model.py @@ -16,7 +16,7 @@ class Sceptr: """ Loads a trained state of a SCEPTR (variant) and provides an easy interface for generating TCR representations and making inferences from them. - Instances can be obtained through the variants submodule. + Instances can be obtained through the :py:mod:`sceptr.variant` submodule. Attributes ---------- From e946f2d0ae3d14084979b6ff99608157a3be559f Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 14:54:07 +0100 Subject: [PATCH 13/31] Flesh out usage page of docs --- docs/sceptr_model.rst | 2 +- docs/usage.rst | 85 +++++++++++++++++++++++++++++++++--------- src/sceptr/__init__.py | 14 +++---- src/sceptr/model.py | 12 +++--- 4 files changed, 82 insertions(+), 31 deletions(-) diff --git a/docs/sceptr_model.rst b/docs/sceptr_model.rst index d348a6c..be1c3fc 100644 --- a/docs/sceptr_model.rst +++ b/docs/sceptr_model.rst @@ -1,5 +1,5 @@ ``sceptr.model`` ================ -.. automodule:: sceptr.model +.. autoclass:: sceptr.model.Sceptr() :members: diff --git a/docs/usage.rst b/docs/usage.rst index 8144d32..1bf0bd5 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -4,41 +4,92 @@ Usage Functional API (Recommended) ---------------------------- -The functional API is accessible from the root module, and is the easiest way to use SCEPTR. +The functional :ref:`API ` is accessible from the root module, and is the easiest way to use SCEPTR. +When using the functional API, you will be using the default SCEPTR model (see the :ref:`model variants ` section below). +To begin analysing TCR data with sceptr, you must first load the TCR data into memory in the :ref:`prescribed format ` using `pandas `_. + +.. tip:: + SCEPTR only recognises TCR V gene symbols that are IMGT-compliant, and also known to be functional (i.e. known pseudogenes or ORFs are not allowed). + For easy standardisation of TCR gene nomenclature in your data, as well as filtering your data for functional V/J genes, check out `tidytcells `_. + +>>> from pandas import DataFrame +>>> tcrs = DataFrame( +... data = { +... "TRAV": ["TRAV38-1*01", "TRAV3*01", "TRAV13-2*01", "TRAV38-2/DV8*01"], +... "CDR3A": ["CAHRSAGGGTSYGKLTF", "CAVDNARLMF", "CAERIRKGQVLTGGGNKLTF", "CAYRSAGGGTSYGKLTF"], +... "TRBV": ["TRBV2*01", "TRBV25-1*01", "TRBV9*01", "TRBV2*01"], +... "CDR3B": ["CASSEFQGDNEQFF", "CASSDGSFNEQFF", "CASSVGDLLTGELFF", "CASSPGTGGNEQYF"], +... }, +... index = [0,1,2,3] +... ) +>>> print(tcrs) + TRAV CDR3A TRBV CDR3B +0 TRAV38-1*01 CAHRSAGGGTSYGKLTF TRBV2*01 CASSEFQGDNEQFF +1 TRAV3*01 CAVDNARLMF TRBV25-1*01 CASSDGSFNEQFF +2 TRAV13-2*01 CAERIRKGQVLTGGGNKLTF TRBV9*01 CASSVGDLLTGELFF +3 TRAV38-2/DV8*01 CAYRSAGGGTSYGKLTF TRBV2*01 CASSPGTGGNEQYF + +:py:mod:`sceptr` exposes three intuitive functions: :py:func:`~sceptr.calc_cdist_matrix`, :py:func:`~sceptr.calc_pdist_vector`, and :py:func:`~sceptr.calc_vector_representations`. +As the name suggests, :py:func:`~sceptr.calc_cdist_matrix` gives you an easy way to calculate a cross-distance matrix between two sets of TCRs. + +>>> import sceptr +>>> cdist_matrix = sceptr.calc_cdist_matrix(tcrs.iloc[:2], tcrs.iloc[2:]) +>>> print(cdist_matrix) +[[1.2849896 0.75219345] + [1.4653426 1.4646543 ]] + +If you're only interested in calculating distances within a set, :py:func:`~sceptr.calc_pdist_vector` gives you a one-dimensional array of within-set distances. + +>>> pdist_vector = sceptr.calc_pdist_vector(tcrs) +>>> print(pdist_vector) +[1.4135991 1.2849895 0.7521934 1.4653426 1.4646543 1.287208 ] + +.. tip:: + The end result of using the :py:func:`~sceptr.calc_cdist_matrix` and :py:func:`~sceptr.calc_pdist_vector` functions are equivalent to generating sceptr's TCR representations first with :py:func:`~sceptr.calc_vector_representations`, then using `scipy `_'s `cdist `_ or `pdist `_ functions to get the corresponding matrix or vector, respectively. + But on machines with `CUDA-enabled GPUs `_, directly using sceptr's :py:func:`~sceptr.calc_cdist_matrix` and :py:func:`~sceptr.calc_pdist_vector` functions will run faster, as it internally runs all computations on the GPU. + +If you want to directly operate on sceptr's TCR representations, you can use :py:func:`~sceptr.calc_vector_representations`. + +>>> reps = sceptr.calc_vector_representations(tcrs) +>>> print(reps.shape) +(4,64) + +.. _model_variants: Model Variants (:py:mod:`sceptr.variant`) ----------------------------------------- -For more curious users, model variants are available to load and use through the :py:mod:`sceptr.variant` submodule. -The module exposes functions, each named after a particular model variant, which when called, will return a :py:class:`~sceptr.model.Sceptr` object corresponding to the selected model variant. +The :py:mod:`sceptr.variant` submodule allows users access a variety of non-default SCEPTR model variants, and use them for TCR analysis. +The submodule exposes functions which return :py:class:`~sceptr.model.Sceptr` objects with the model state of the chosen variant loaded. +These model instances expose the same functions as those used in the functional API, so you can just plug and play. +For example: + +>>> from sceptr import variant +>>> sceptr_tiny = variant.tiny() +>>> tiny_reps = sceptr_tiny.calc_vector_representations(tcrs) +>>> print(tiny_reps.shape) +(4, 16) .. _data_format: Prescribed data format ---------------------- -.. important:: - SCEPTR only recognises TCR V/J gene symbols that are IMGT-compliant, and also known to be functional (i.e. known pseudogenes or ORFs are not allowed). - For easy standardisation of TCR gene nomenclature in your data, as well as filtering your data for functional V/J genes, check out `tidytcells `_. - -SCEPTR expects to receive TCR data in the form of `pandas `_ `DataFrame `_ instances. -Therefore, all TCR data should be represented as a `DataFrame` with the following structure and data types. +SCEPTR expects to receive TCR data in the form of `pyrepseq standard format `_-compliant `pandas `_ `DataFrame `_\ s. +All TCR data should be represented as a DataFrame with the following structure and data types. The column order is irrelevant. Each row should represent one TCR. Incomplete rows are allowed (e.g. only beta chain data available) as long as the SCEPTR :py:mod:`~sceptr.variant` that is being used has at least some partial information to go on. +Extra columns are also allowed. +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ | Column name | Column datatype | Column contents | +=============+=================+=====================================================================================================+ -|TRAV |`str` |IMGT symbol for the alpha chain V gene | -+-------------+-----------------+-----------------------------------------------------------------------------------------------------+ -|CDR3A |`str` |Amino acid sequence of the alpha chain CDR3, including the first C and last W/F residues, in all caps| -+-------------+-----------------+-----------------------------------------------------------------------------------------------------+ -|TRAJ |`str` |IMGT symbol for the alpha chain J gene | +|TRAV |str |IMGT symbol for the alpha chain V gene | +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ -|TRBV |`str` |IMGT symbol for the beta chain V gene | +|CDR3A |str |Amino acid sequence of the alpha chain CDR3, including the first C and last W/F residues, in all caps| +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ -|CDR3B |`str` |Amino acid sequence of the beta chain CDR3, including the first C and last W/F residues, in all caps | +|TRBV |str |IMGT symbol for the beta chain V gene | +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ -|TRBJ |`str` |IMGT symbol for the beta chain J gene | +|CDR3B |str |Amino acid sequence of the beta chain CDR3, including the first C and last W/F residues, in all caps | +-------------+-----------------+-----------------------------------------------------------------------------------------------------+ diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 61725d2..88537a7 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -1,6 +1,6 @@ """ SCEPTR is a small, fast, and performant TCR representation model for alignment-free TCR analysis. -The root module provides easy access to SCEPTR through a functional API which uses the default :py:class:`~sceptr.model.Sceptr` model. +The root module provides easy access to SCEPTR through a functional API which uses the default model. """ from sceptr import variant @@ -28,14 +28,14 @@ def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: ------- ndarray A 2D numpy ndarray representing a cdist matrix between TCRs from `anchors` and `comparisons`. - The returned array will have shape (X, Y) where X is the number of TCRs in `anchors` and Y is the number of TCRs in `comparisons`. + The returned array will have shape :math:`(X, Y)` where :math:`X` is the number of TCRs in `anchors` and :math:`Y` is the number of TCRs in `comparisons`. """ return get_default_model().calc_cdist_matrix(anchors, comparisons) def calc_pdist_vector(instances: DataFrame) -> ndarray: - """ - Generate a pdist set of distances between each pair of TCRs in the input data. + r""" + Generate a pdist vector of distances between each pair of TCRs in the input data. Parameters ---------- @@ -46,14 +46,14 @@ def calc_pdist_vector(instances: DataFrame) -> ndarray: ------- ndarray A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`. - The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in `instances`. + The returned array will have shape :math:`(\frac{1}{2}N(N-1),)`, where :math:`N` is the number of TCRs in `instances`. """ return get_default_model().calc_pdist_vector(instances) def calc_vector_representations(instances: DataFrame) -> ndarray: """ - Map a table of TCRs provided as a pandas DataFrame in the above format to a set of vector representations. + Map a table of TCRs provided as a pandas DataFrame in the above format to their corresponding vector representations. Parameters ---------- @@ -64,7 +64,7 @@ def calc_vector_representations(instances: DataFrame) -> ndarray: ------- ndarray A 2D numpy ndarray object where every row vector corresponds to a row in `instances`. - The returned array will have shape (N, D) where N is the number of TCRs in `instances` and D is the dimensionality of the SCEPTR model. + The returned array will have shape :math:`(N, 64)` where :math:`N` is the number of TCRs in `instances`. """ return get_default_model().calc_vector_representations(instances) diff --git a/src/sceptr/model.py b/src/sceptr/model.py index 11bd265..1f7c7fa 100644 --- a/src/sceptr/model.py +++ b/src/sceptr/model.py @@ -37,7 +37,7 @@ def __init__( def calc_vector_representations(self, instances: DataFrame) -> ndarray: """ - Map a table of TCRs provided as a pandas DataFrame in the above format to a set of vector representations. + Map a table of TCRs provided as a pandas DataFrame in the above format to their corresponding vector representations. Parameters ---------- @@ -48,7 +48,7 @@ def calc_vector_representations(self, instances: DataFrame) -> ndarray: ------- ndarray A 2D numpy ndarray object where every row vector corresponds to a row in `instances`. - The returned array will have shape (N, D) where N is the number of TCRs in `instances` and D is the dimensionality of the SCEPTR model. + The returned array will have shape :math:`(N, D)` where :math:`N` is the number of TCRs in `instances` and :math:`D` is the dimensionality of the current model variant. """ torch_representations = self._calc_torch_representations(instances) return torch_representations.cpu().numpy() @@ -94,7 +94,7 @@ def calc_cdist_matrix(self, anchors: DataFrame, comparisons: DataFrame) -> ndarr ------- ndarray A 2D numpy ndarray representing a cdist matrix between TCRs from `anchors` and `comparisons`. - The returned array will have shape (X, Y) where X is the number of TCRs in `anchors` and Y is the number of TCRs in `comparisons`. + The returned array will have shape :math:`(X, Y)` where :math:`X` is the number of TCRs in `anchors` and :math:`Y` is the number of TCRs in `comparisons`. """ anchor_representations = self._calc_torch_representations(anchors) comparison_representations = self._calc_torch_representations(comparisons) @@ -104,8 +104,8 @@ def calc_cdist_matrix(self, anchors: DataFrame, comparisons: DataFrame) -> ndarr return cdist_matrix.cpu().numpy() def calc_pdist_vector(self, instances: DataFrame) -> ndarray: - """ - Generate a pdist set of distances between each pair of TCRs in the input data. + r""" + Generate a pdist vector of distances between each pair of TCRs in the input data. Parameters ---------- @@ -116,7 +116,7 @@ def calc_pdist_vector(self, instances: DataFrame) -> ndarray: ------- ndarray A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`. - The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in `instances`. + The returned array will have shape :math:`(\frac{1}{2}N(N-1),)`, where :math:`N` is the number of TCRs in `instances`. """ representations = self._calc_torch_representations(instances) pdist_vector = torch.pdist(representations, p=2) From 8c7a5de1792dc18db24e034b31894057343f20c7 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:02:32 +0100 Subject: [PATCH 14/31] Update README --- README.md | 182 ++++-------------------------------------------------- 1 file changed, 13 insertions(+), 169 deletions(-) diff --git a/README.md b/README.md index 113544c..bafdc84 100644 --- a/README.md +++ b/README.md @@ -1,182 +1,26 @@ # SCEPTR +
+ ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) -> [!NOTE] -> The latest version of SCEPTR no longer supports Python versions earlier than 3.9. - -**S**imple **C**ontrastive **E**mbedding of the **P**rimary sequence of **T** cell **R**eceptors (**SCEPTR**) is a BERT-like attention model trained on T cell receptor (TCR) data. -It maps TCRs to vector representations, which can be used for downstream TCR and TCR repertoire analysis such as TCR clustering or classification. - -## Installation - -### From [PyPI](https://pypi.org/project/sceptr/) (Recommended) - -```bash -pip install sceptr -``` - -### From Source - -> [!IMPORTANT] -> To install `sceptr` from source, you must have [`git-lfs`](https://git-lfs.com/) installed and set up on your system. -> This is because you must be able to download the trained model weights directly from the Git LFS servers during your install. - -#### Using `pip` - -From your Python environment, run the following replacing `` with the appropriate version specifier (e.g. `v1.0.0-alpha.1`). -The latest release tags can be found by checking the 'releases' section on the github repository page. - -```bash -pip install git+https://github.com/yutanagano/sceptr.git@ -``` - -#### Manual install - -You can also clone the repository, and from within your Python environment, navigate to the project root directory and run: - -```bash -pip install . -``` +Check out the [documentation page](about:blank). -Note that even for manual installation, you still need `git-lfs` to properly de-reference the stub files at `git-clone`-ing time. +
-#### Troubleshooting +**SCEPTR** (**S**imple **C**ontrastive **E**mbedding of the **P**rimary sequence of **T** cell **R**eceptors) is a small, fast, and performant TCR representation model that can be used for alignment-free downstream TCR and TCR repertoire analysis such as TCR clustering or classification. +Our [manuscript (coming soon)](about:blank) demonstrates SCEPTR's state-of-the-art performance (as of 2024) on downstream TCR specificity prediction. -A recent security update to `git` has resulted in some difficulties cloning repositories that rely on `git-lfs`. -This can result in an error message with a message along the lines of: +SCEPTR is a BERT-like transformer-based neural network implemented in [Pytorch](https://pytorch.org). +With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! +And if your computer does have a [CUDA-enabled GPU](https://en.wikipedia.org/wiki/CUDA), the sceptr package will automatically detect and use it, giving you blazingly fast performance without the hassle. -``` -fatal: active `post-checkout` hook found during `git clone` -``` +sceptr's API exposes three intuitive functions: `calc_vector_representations`, `calc_cdist_matrix`, and `calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. +What's even better is that they are fully compliant with [pyrepseq](https://pyrepseq.readthedocs.io)'s [tcr_metric](https://pyrepseq.readthedocs.io/en/latest/api.html#pyrepseq.metric.tcr_metric.TcrMetric) API, so sceptr will fit snugly into the rest of your repertoire analysis toolkit. -If this happens, you can temporarily set the `GIT_CLONE_PROTECTION_ACTIVE` environment variable to `false` by prepending `GIT_CLONE_PROTECTION_ACTIVE=false` before the install command like below: +## Installation ```bash -GIT_CLONE_PROTECTION_ACTIVE=false pip install git+https://github.com/yutanagano/sceptr.git@ +pip install sceptr ``` - -This is [a known issue](https://github.com/git-lfs/git-lfs/issues/5749) for `git` version `2.45.1` and [is fixed](https://lore.kernel.org/git/xmqqr0dheuw5.fsf@gitster.g/T/#u) from version `2.45.2`. - -## Prescribed data format - -> [!IMPORTANT] -> SCEPTR only recognises TCR V/J gene symbols that are IMGT-compliant, and also known to be functional (i.e. known pseudogenes or ORFs are not allowed). -> For easy standardisation of TCR gene nomenclature in your data, as well as filtering your data for functional V/J genes, check out [tidytcells](https://pypi.org/project/tidytcells/). - -SCEPTR expects to receive TCR data in the form of [pandas](https://pandas.pydata.org/) [`DataFrame`](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html?highlight=dataframe#pandas.DataFrame) instances. -Therefore, all TCR data should be represented as a `DataFrame` with the following structure and data types. -The column order is irrelevant. -Each row should represent one TCR. -Incomplete rows are allowed (e.g. only beta chain data available) as long as the SCEPTR variant that is being used has at least some partial information to go on. - -| Column name | Column datatype | Column contents | -|---|---|---| -|TRAV|`str`|IMGT symbol for the alpha chain V gene| -|CDR3A|`str`|Amino acid sequence of the alpha chain CDR3, including the first C and last W/F residues, in all caps| -|TRAJ|`str`|IMGT symbol for the alpha chain J gene| -|TRBV|`str`|IMGT symbol for the beta chain V gene| -|CDR3B|`str`|Amino acid sequence of the beta chain CDR3, including the first C and last W/F residues, in all caps| -|TRBJ|`str`|IMGT symbol for the beta chain J gene| - -## Usage - -### Functional API (`sceptr.sceptr`) - -The eponymous `sceptr` submodule is the easiest way to use SCEPTR. -It loads the default SCEPTR variant (currently `ab_sceptr`) and exposes its methods directly as module-level functions. - -> [!TIP] -> To use the functional API, import the `sceptr` submodule like so: -> ``` -> from sceptr import sceptr -> ``` -> Attempting to access the submodule as an attribute of the top level module -> ``` -> import sceptr -> -> sceptr.sceptr.calc_vector_representations() #...do something... -> ``` -> will result in an error. - ---- - -#### `sceptr.sceptr.calc_vector_representations(instances: DataFrame) -> ndarray` - -Map a table of TCRs provided as a pandas `DataFrame` in the above format to a set of vector representations. - -Parameters: - -- tcrs (`DataFrame`): DataFrame in the presribed format. - -Returns: - -A 2D [numpy](https://numpy.org/) [`ndarray`](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html) object where every row vector corresponds to a row in the original TCR `DataFrame`. -The returned array will have shape (N, D) where N is the number of TCRs in the input data and D is the dimensionality of the SCEPTR model. - ---- - -#### `sceptr.sceptr.calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray` - -Generate a cdist matrix between two collections of TCRs. - -Parameters: - -- anchor_tcrs (`DataFrame`): DataFrame in the prescribed format, representing TCRs from collection A. -- comparison_tcrs (`DataFrame`): DataFrame in the prescribed format, representing TCRs from collection B. - -Returns: - -A 2D numpy `ndarray` representing a cdist matrix between TCRs from collection A and B. -The returned array will have shape (X, Y) where X is the number of TCRs in collection A and Y is the number of TCRs in collection B. - ---- - -#### `sceptr.sceptr.calc_pdist_vector(instances: DataFrame) -> ndarray` - -Generate a pdist set of distances between each pair of TCRs in the input data. - -Parameters: - -- tcrs (`DataFrame`): DataFrame in the prescribed format. - -Returns - -A 2D numpy `ndarray` representing a pdist vector of distances between each pair of TCRs in the input data. -The returned array will have shape (1/2 * N * (N-1),), where N is the number of TCRs in the input data. - ---- - -### Loading specific SCEPTR variants (`sceptr.variant`) - -For more curious users, model variants are available to load and use through the `sceptr.variant` submodule. - -The module exposes functions, each named after a particular model variant, which when called, will return a `Sceptr` object corresponding to the selected model variant. -This `Sceptr` object will then have the methods: `calc_pdist_vector`, `calc_cdist_matrix`, and `calc_vector_representations` available to use, with function signatures exactly as defined above for the functional API in the `sceptr.sceptr` submodule. - -#### Paired-chain variants - -|Name|Description| -|---|---| -|`sceptr.variant.default`|default model used by the functional API| -|`sceptr.variant.mlm_only`|default model trained without autocontrastive learning| -|`sceptr.variant.left_aligned`|similar to default model but with learnable token embeddings and a sinusoidal position information embedding method more similar to the original NLP BERT/transformer models| -|`sceptr.variant.cdr3_only`|only uses the CDR3 loops as input| -|`sceptr.variant.cdr3_only_mlm_only`|only uses CDR3 loops as input, and did not receive autocontrastive learning| -|`sceptr.variant.large`|larger variant with model dimensionality 128| -|`sceptr.variant.small`|smaller variant with model dimensionality 32| -|`sceptr.variant.tiny`|smaller variant with model dimensionality 16| -|`sceptr.variant.blosum`|variant using BLOSUM62 embeddings instead of one-hot| -|`sceptr.variant.average_pooling`|variant using the average-pooling method to generate the TCR representation vector| -|`sceptr.variant.shuffled_data`|variant trained on the Tanno et al. dataset with randomised alpha/beta pairing| -|`sceptr.variant.synthetic_data`|variant trained using synthetic TCR sequences generated by OLGA| -|`sceptr.variant.dropout_noise_only`|variant trained without residue/chain dropping during autocontrastive learning| -|`sceptr.variant.finetuned`|variant fine-tuned using supervised contrastive learning for six pMHCs with peptides GILGFVFTL, NLVPMVATV, SPRWYFYYL, TFEYVSQPFLMDLE, TTDPSFLGRY and YLQPRTFLL (from [VDJdb](https://vdjdb.cdr3.net/))| - -#### Single-chain variants - -|Name|Description -|---|---| -|`sceptr.variant.a_sceptr`|alpha-chain only variant| -|`sceptr.variant.b_sceptr`|beta-chain only variant| From 4816fa7d1cc86453c8fbdbc12796a19bebf9171b Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:04:04 +0100 Subject: [PATCH 15/31] Center badges and documentation link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bafdc84..af7672e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # SCEPTR -
+
![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) From ce6fde7e77c3877262d8e8ea4b8cc1388d59cfd5 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:05:13 +0100 Subject: [PATCH 16/31] Improve readme heading --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index af7672e..1df894b 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -# SCEPTR -
+# SCEPTR + ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) -Check out the [documentation page](about:blank). +### Check out the [documentation page](about:blank).
From 8a5349170066907cf36e0c349361cd0788c15c27 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:16:27 +0100 Subject: [PATCH 17/31] Add pypi version badge to README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1df894b..a207bd5 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ # SCEPTR +[![Latest release](https://img.shields.io/pypi/v/sceptr)](https://pypi.org/p/sceptr) ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) From 7e27a7a2ba309bedaeb2e1a6f619d54430f373a8 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:18:30 +0100 Subject: [PATCH 18/31] Add $ to beginning of pip install line on README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a207bd5..223dc17 100644 --- a/README.md +++ b/README.md @@ -23,5 +23,5 @@ What's even better is that they are fully compliant with [pyrepseq](https://pyre ## Installation ```bash -pip install sceptr +$ pip install sceptr ``` From abedb48362e561ebd8968d2f71ecdad78ca14aff Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 15:20:22 +0100 Subject: [PATCH 19/31] Remove back $ from pip install line to make it directly copyable --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 223dc17..a207bd5 100644 --- a/README.md +++ b/README.md @@ -23,5 +23,5 @@ What's even better is that they are fully compliant with [pyrepseq](https://pyre ## Installation ```bash -$ pip install sceptr +pip install sceptr ``` From 5da0065869015258f2259219d4c77725ea46b416 Mon Sep 17 00:00:00 2001 From: yutanagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 21:05:51 +0100 Subject: [PATCH 20/31] Pre-emptively link to documentation in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a207bd5..9027bdb 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) -### Check out the [documentation page](about:blank). +### Check out the [documentation page](https://sceptr.readthedocs.io).
From a64495966018160cb986af46d8219efa76ee8bd2 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 21:18:37 +0100 Subject: [PATCH 21/31] Add links to repository in sphinx documentation --- docs/conf.py | 6 ++++++ pyproject.toml | 2 ++ 2 files changed, 8 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index f1d36a2..6b2f58f 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -26,4 +26,10 @@ # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output html_theme = "sphinx_book_theme" +html_theme_options = { + "repository_url": "https://github.com/yutanagano/sceptr", + "path_to_docs": "docs", + "use_repository_button": True, + "use_issues_button": True, +} html_static_path = ["_static"] diff --git a/pyproject.toml b/pyproject.toml index 5654f14..31446a8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,8 @@ dependencies = [ dynamic = ["version"] [project.urls] +Homepage = "https://sceptr.readthedocs.io" +Documentation = "https://sceptr.readthedocs.io" Repository = "https://github.com/yutanagano/sceptr" Issues = "https://github.com/yutanagano/sceptr/issues" From b4453035ba2b3114d9d19f3f463e434d17ac4305 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Sun, 9 Jun 2024 21:50:19 +0100 Subject: [PATCH 22/31] Add schematic figure from preprint onto home page --- docs/about_sceptr.png | Bin 0 -> 301854 bytes docs/index.rst | 9 +++++++++ 2 files changed, 9 insertions(+) create mode 100644 docs/about_sceptr.png diff --git a/docs/about_sceptr.png b/docs/about_sceptr.png new file mode 100644 index 0000000000000000000000000000000000000000..fb996c1b0363b99fbfa88d0f9968ae68261616cd GIT binary patch literal 301854 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 NXJ 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

literal 0
HcmV?d00001

diff --git a/docs/index.rst b/docs/index.rst
index 730e31b..b778f69 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -11,6 +11,15 @@ And if your computer does have a `CUDA-enabled GPU ` exposes three intuitive functions: :py:func:`~sceptr.calc_vector_representations`, :py:func:`~sceptr.calc_cdist_matrix`, and :py:func:`~sceptr.calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models.
 What's even better is that they are fully compliant with `pyrepseq `_'s `tcr_metric `_ API, so sceptr will fit snugly into the rest of your repertoire analysis toolkit.
 
+.. figure:: about_sceptr.png
+   :width: 700px
+   :alt: Schematic diagrams showing a visual introduction to the architecture of SCEPTR, as well as how it was trained-- namely, autocontrastive learning and masked-language modelling.
+
+   A visual introduction to how SCEPTR works, taken from our SCEPTR preprint.
+   SCEPTR is a TCR language model (a,b) pre-trained using masked-language modelling and autocontrastive learning (c,d).
+   \* (a) The default model uses the ```` pooling method, but there is also a variant that is trained to use average-pooling (see :py:func:`sceptr.variant.average_pooling`).
+   Please see the manuscript for more details.
+
 .. toctree::
    :maxdepth: 2
    :caption: Contents:

From d6d3455f1f61f5a31c8acb66f6c3171651156933 Mon Sep 17 00:00:00 2001
From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com>
Date: Sun, 9 Jun 2024 21:54:20 +0100
Subject: [PATCH 23/31] Fix typos in documentation

---
 docs/index.rst         | 2 +-
 src/sceptr/__init__.py | 2 +-
 src/sceptr/model.py    | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/docs/index.rst b/docs/index.rst
index b778f69..e02e573 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -17,7 +17,7 @@ What's even better is that they are fully compliant with `pyrepseq `` pooling method, but there is also a variant that is trained to use average-pooling (see :py:func:`sceptr.variant.average_pooling`).
+   (a) The default model uses the ```` pooling method, but there is also a variant that is trained to use average-pooling (see :py:func:`sceptr.variant.average_pooling`).
    Please see the manuscript for more details.
 
 .. toctree::
diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py
index 88537a7..92f9593 100644
--- a/src/sceptr/__init__.py
+++ b/src/sceptr/__init__.py
@@ -45,7 +45,7 @@ def calc_pdist_vector(instances: DataFrame) -> ndarray:
     Returns
     -------
     ndarray
-        A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`.
+        A 1D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`.
         The returned array will have shape :math:`(\frac{1}{2}N(N-1),)`, where :math:`N` is the number of TCRs in `instances`.
     """
     return get_default_model().calc_pdist_vector(instances)
diff --git a/src/sceptr/model.py b/src/sceptr/model.py
index 1f7c7fa..23bae7d 100644
--- a/src/sceptr/model.py
+++ b/src/sceptr/model.py
@@ -115,7 +115,7 @@ def calc_pdist_vector(self, instances: DataFrame) -> ndarray:
         Returns
         -------
         ndarray
-            A 2D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`.
+            A 1D numpy ndarray representing a pdist vector of distances between each pair of TCRs in `instances`.
             The returned array will have shape :math:`(\frac{1}{2}N(N-1),)`, where :math:`N` is the number of TCRs in `instances`.
         """
         representations = self._calc_torch_representations(instances)

From f5de61d2504aeefd3f0d71b19aa0be93032e1d24 Mon Sep 17 00:00:00 2001
From: Andreas Tiffeau-Mayer 
Date: Mon, 10 Jun 2024 17:01:43 +0100
Subject: [PATCH 24/31] Readme changes

---
 README.md | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index 9027bdb..183da68 100644
--- a/README.md
+++ b/README.md
@@ -10,15 +10,16 @@
 
 
-**SCEPTR** (**S**imple **C**ontrastive **E**mbedding of the **P**rimary sequence of **T** cell **R**eceptors) is a small, fast, and performant TCR representation model that can be used for alignment-free downstream TCR and TCR repertoire analysis such as TCR clustering or classification. -Our [manuscript (coming soon)](about:blank) demonstrates SCEPTR's state-of-the-art performance (as of 2024) on downstream TCR specificity prediction. +**SCEPTR** (**S**imple **C**ontrastive **E**mbedding of the **P**rimary sequence of **T** cell **R**eceptors) is a small, fast, and accurate TCR representation model that can be used for alignment-free TCR analysis, including for TCR-pMHC interaction prediction and TCR clustering (metaclonotype discovery). + +Our [manuscript (coming soon)](about:blank) demonstrates that SCEPTR can be used for few-shot TCR specificity prediction with its accuracy exceeding prior baselines. SCEPTR is a BERT-like transformer-based neural network implemented in [Pytorch](https://pytorch.org). With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! And if your computer does have a [CUDA-enabled GPU](https://en.wikipedia.org/wiki/CUDA), the sceptr package will automatically detect and use it, giving you blazingly fast performance without the hassle. sceptr's API exposes three intuitive functions: `calc_vector_representations`, `calc_cdist_matrix`, and `calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. -What's even better is that they are fully compliant with [pyrepseq](https://pyrepseq.readthedocs.io)'s [tcr_metric](https://pyrepseq.readthedocs.io/en/latest/api.html#pyrepseq.metric.tcr_metric.TcrMetric) API, so sceptr will fit snugly into the rest of your repertoire analysis toolkit. +What's even better is that they are fully compliant with [pyrepseq](https://pyrepseq.readthedocs.io)'s [tcr_metric](https://pyrepseq.readthedocs.io/en/latest/api.html#pyrepseq.metric.tcr_metric.TcrMetric) API, so sceptr will fit snugly into the rest of your repertoire analysis workflow. ## Installation From 7f4aa4cee9968b20fa36461f29079e48a61a0820 Mon Sep 17 00:00:00 2001 From: yutanagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 17:10:12 +0100 Subject: [PATCH 25/31] Update README.md --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 183da68..c85e95a 100644 --- a/README.md +++ b/README.md @@ -11,14 +11,13 @@ **SCEPTR** (**S**imple **C**ontrastive **E**mbedding of the **P**rimary sequence of **T** cell **R**eceptors) is a small, fast, and accurate TCR representation model that can be used for alignment-free TCR analysis, including for TCR-pMHC interaction prediction and TCR clustering (metaclonotype discovery). - -Our [manuscript (coming soon)](about:blank) demonstrates that SCEPTR can be used for few-shot TCR specificity prediction with its accuracy exceeding prior baselines. +Our [manuscript (coming soon)](about:blank) demonstrates that SCEPTR can be used for few-shot TCR specificity prediction with improved accuracy over previous methods. SCEPTR is a BERT-like transformer-based neural network implemented in [Pytorch](https://pytorch.org). With the default model providing best-in-class performance with only 153,108 parameters (typical protein language models have tens or hundreds of millions), SCEPTR runs fast- even on a CPU! And if your computer does have a [CUDA-enabled GPU](https://en.wikipedia.org/wiki/CUDA), the sceptr package will automatically detect and use it, giving you blazingly fast performance without the hassle. -sceptr's API exposes three intuitive functions: `calc_vector_representations`, `calc_cdist_matrix`, and `calc_pdist_vector`-- and it's all you need to make full use of the SCEPTR models. +sceptr's API exposes three intuitive functions: `calc_vector_representations`, `calc_cdist_matrix`, and `calc_pdist_vector`- and it's all you need to make full use of the SCEPTR models. What's even better is that they are fully compliant with [pyrepseq](https://pyrepseq.readthedocs.io)'s [tcr_metric](https://pyrepseq.readthedocs.io/en/latest/api.html#pyrepseq.metric.tcr_metric.TcrMetric) API, so sceptr will fit snugly into the rest of your repertoire analysis workflow. ## Installation From 93854f599054c6fdb2155cee1363238e7e69250e Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 20:46:16 +0100 Subject: [PATCH 26/31] Add readthedocs configuration --- .readthedocs.yaml | 28 ++++++++++++++++++++++++++++ docs/requirements.txt | 1 + 2 files changed, 29 insertions(+) create mode 100644 .readthedocs.yaml create mode 100644 docs/requirements.txt diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..8e7f229 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,28 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.12" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/conf.py + +# Optionally build your docs in additional formats such as PDF and ePub +# formats: +# - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: docs/requirements.txt diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..31c781b --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1 @@ +sphinx-book-theme From 1582dae82d3c94319f5d47b1d1522513a398707f Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 20:53:31 +0100 Subject: [PATCH 27/31] Simplify rtd yaml --- .readthedocs.yaml | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 8e7f229..8e3f9ba 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -1,28 +1,13 @@ -# .readthedocs.yaml -# Read the Docs configuration file -# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required version: 2 -# Set the OS, Python version and other tools you might need build: os: ubuntu-22.04 tools: python: "3.12" -# Build documentation in the "docs/" directory with Sphinx sphinx: configuration: docs/conf.py -# Optionally build your docs in additional formats such as PDF and ePub -# formats: -# - pdf -# - epub - -# Optional but recommended, declare the Python requirements required -# to build your documentation -# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html python: install: - requirements: docs/requirements.txt From 46b91da9a9ad69c8cee696ffbde9b46cfc904450 Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 20:57:38 +0100 Subject: [PATCH 28/31] Switch to optional dependencies for rtd import --- .readthedocs.yaml | 5 ++++- docs/requirements.txt | 1 - pyproject.toml | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) delete mode 100644 docs/requirements.txt diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 8e3f9ba..962b5e9 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -10,4 +10,7 @@ sphinx: python: install: - - requirements: docs/requirements.txt + - method: pip + path: . + extra_requirements: + - docs diff --git a/docs/requirements.txt b/docs/requirements.txt deleted file mode 100644 index 31c781b..0000000 --- a/docs/requirements.txt +++ /dev/null @@ -1 +0,0 @@ -sphinx-book-theme diff --git a/pyproject.toml b/pyproject.toml index 31446a8..4ecb0d7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -44,6 +44,7 @@ dev = [ "sphinx", "sphinx_book_theme", ] +docs = ["sphinx_book_theme"] [tool.setuptools] include-package-data = true From a990d6f816c7f3893035ab0e3465198cc5b56f0a Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 20:57:48 +0100 Subject: [PATCH 29/31] Add docs badge to README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c85e95a..d5f40af 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ [![Latest release](https://img.shields.io/pypi/v/sceptr)](https://pypi.org/p/sceptr) ![Tests](https://github.com/yutanagano/sceptr/actions/workflows/tests.yaml/badge.svg) +[![Documentation Status](https://readthedocs.org/projects/sceptr/badge/?version=latest)](https://sceptr.readthedocs.io) [![License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/yutanagano/tidytcells?tab=MIT-1-ov-file#readme) ### Check out the [documentation page](https://sceptr.readthedocs.io). From 7c44f851021e2f9a1d2e224baa7ffaeb96eb796e Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 21:04:06 +0100 Subject: [PATCH 30/31] Bump version to 1.0.0 --- src/sceptr/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sceptr/__init__.py b/src/sceptr/__init__.py index 92f9593..e4be567 100644 --- a/src/sceptr/__init__.py +++ b/src/sceptr/__init__.py @@ -10,7 +10,7 @@ from pandas import DataFrame -__version__ = "1.0.0-beta.1" +__version__ = "1.0.0" def calc_cdist_matrix(anchors: DataFrame, comparisons: DataFrame) -> ndarray: From 663db2398ee623f70dfbb95970b9ab7c9305fd9e Mon Sep 17 00:00:00 2001 From: Yuta Nagano <52748151+yutanagano@users.noreply.github.com> Date: Mon, 10 Jun 2024 21:05:22 +0100 Subject: [PATCH 31/31] Bump dev status to stable on pyproject toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 4ecb0d7..d751877 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ description = "Fast and performant TCR representation model" readme = "README.md" keywords = ["TCR", "TR", "T cell", "transformer", "bert", "MLM", "immunology", "bioinformatics"] classifiers = [ - "Development Status :: 4 - Beta", + "Development Status :: 5 - Production/Stable", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent",