TorchOk - The toolkit for fast Deep Learning experiments in Computer Vision

Overview

TorchOk

The toolkit for fast Deep Learning experiments in Computer Vision

What is it?

The toolkit consists of:

  • Popular neural network models and custom modules implementations used in our company
  • Metrics used in CV such that mIoU, mAP, etc.
  • Commonly used datasets and data loaders

The framework is based on PyTorch and utilizes PyTorch Lightning for training pipeline routines.

Installation

Docker

One of the ways to install TorchOk is to use Docker:

" . docker run -d --name _torchok --gpus=all -v :/workdir -p :22 -p :8888 -p :6006 torchok ">
docker build -t torchok --build-arg SSH_PUBLIC_KEY="
         
          "
          .
docker run -d --name <username>_torchok --gpus=all -v <path/to/workdir>:/workdir -p <ssh_port>:22 -p <jupyter_port>:8888 -p <tensorboard_port>:6006 torchok

Conda

To remove previous installation of TorchOk environment, run:

conda remove --name torchok --all

To install TorchOk locally, run:

conda env create -f environment.yml

This will create a new conda environment torchok with all dependencies.

Getting started

Training is configured by YAML configuration files which each forked project should store inside configs folder (see configs/cifar10.yml for example). The configuration supports environment variables substitution, so that you can easily change base directory paths without changing the config file for each environment. The most common environment variables are:
SM_CHANNEL_TRAINING — directory to all training data
SM_OUTPUT_DATA_DIR — directory where logs for all runs will be stored SM_NUM_CPUS - number of used CPUs for dataloader

Start training locally

Download CIFAR10 dataset running all cells in notebooks/Cifar10.ipynb, the dataset will appear in data/cifar10 folder.

docker exec -it torchok bash
cd torchok
SM_NUM_CPUS=8 SM_CHANNEL_TRAINING=./data/cifar10 SM_OUTPUT_DATA_DIR=/tmp python train.py --config config/classification_resnet_example.yml

Start SageMaker Training Jobs

Start the job using one of the AWS SageMaker instances. You have 2 ways to provide data inside your training container:

  • Slow downloaded S3 bucket: s3:// / . Volume size is needed to be set when you use S3 bucket. For other cases it can be omitted.
  • Fast FSx access: fsx:// / / . To create FSx filesystem follow this instructions

Example with S3:

python run_sagemaker.py --config configs/cifar10.yml --input_path s3://sagemaker-mlflow-main/cifar10 --instance_type ml.g4dn.xlarge --volume_size 5

Example with FSx:

python run_sagemaker.py --input_path fsx://fs-0f79df302dcbd29bd/z6duzbmv/tz_jpg --config configs/siloiz_pairwise_xbm_resnet50_512d.yml --instance_type ml.g4dn.xlarge

In case something isn't working inside the Sagemaker container you can debug your model locally. Specify local_gpu instance type when starting the job:

python run_sagemaker.py --config configs/cifar10.yml --instance_type local_gpu --volume_size 5 --input_path file://../data/cifar10

Run tests

docker exec -it torchok bash
cd torchok
python -m unittest discover -s tests/ -p "test_*.py"

Differences in configs sagemaker vs local machine

1. Path to data folder

sagemaker

data:
  dataset_name: ExampleDataset
  common_params:
    data_folder: "${SM_CHANNEL_TRAINING}"

local machine

data:
  dataset_name: ExampleDataset
  common_params:
    data_folder: "/path/to/data"

2. Path to artifacts dir

sagemaker

log_dir: '/opt/ml/checkpoints'

local machine

log_dir: '/tmp/logs'

3. Restore path

do_restore is a special indicator which was designed to be used for SageMaker spot instances training. With this indicator you can debug your model locally and be free to leave the restore_path pointing to some common directory like /opt/ml/checkpoints, where TorchOk will search the checkpoints for.

sagemaker

restore_path: '/opt/ml/checkpoints'
do_restore: '${SM_USER_ENTRY_POINT}'

local machine

restore_path: '/opt/ml/checkpoints'
do_restore: '${SM_USER_ENTRY_POINT}'

Mlflow

To have more convenient logs it is recommended to name your experiment as project_name-developer_name, so that all your experiments related to this project will be under one tag in mlflow

experiment_name: &experiment_name fips-roman

State all the model parameters in mlflow.runName in logger params

logger:
  logger: mlflow
  experiment_name: *experiment_name
  tags:
      mlflow.runName: "siloiz_contrastive_xbm_resnet50_512d"
  save_dir: "s3://sagemaker-mlflow-main/mlruns"
  secrets_manager:
      region: "eu-west-1"
      mlflow_secret: "acme/mlflow"
Comments
  • Flake8 not pass if 3.7 python version

    Flake8 not pass if 3.7 python version

    Describe the bug When i run github action with python version 3.7. Flake8 raise SyntaxError on 179 line. https://github.com/eora-ai/torchok/blob/dev/torchok/models/backbones/beit.py

    To Reproduce Replace .github/workflows/flake8_checks.yaml below code snippet.

    
    on:
      push:
        branches: [dev]
      pull_request: 
        branches: [dev]
    
    jobs:
      build:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/[email protected]
          - name: Install python
            uses: actions/[email protected]
            with:
              python-version: 3.7
          - name: Install deps
            run: |
              python -m pip install --upgrade pip
              pip install flake8
          - name: Run flake8
            run: flake8 .```
    bug 
    opened by VladislavPatrushev 1
  • SwinV2 not export to onnx.

    SwinV2 not export to onnx.

    Describe the bug When i set export_to_onnx true in yaml config, process crash on epoch end (in ModelCheckpointWithOnnx).

    To Reproduce run python -m torchok -cp ../examples/configs -cn representation_arcface_sop (before set export_to_onnx as true).

    Actual behavior Traceback (most recent call last): File "/workdir/vpatrushev/torchOKsmall2/torchok/torchok/main.py", line 38, in entrypoint trainer.fit(model, ckpt_path=config.resume_path) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 770, in fit self._call_and_handle_interrupt( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 723, in _call_and_handle_interrupt return trainer_fn(*args, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 811, in _fit_impl results = self._run(model, ckpt_path=self.ckpt_path) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1236, in _run results = self._run_stage() File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1323, in _run_stage return self._run_train() File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1353, in _run_train self.fit_loop.run() File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/loops/base.py", line 205, in run self.on_advance_end() File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/loops/fit_loop.py", line 297, in on_advance_end self.trainer._call_callback_hooks("on_train_epoch_end") File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1636, in _call_callback_hooks fn(self, self.lightning_module, *args, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/callbacks/model_checkpoint.py", line 309, in on_train_epoch_end self._save_last_checkpoint(trainer, monitor_candidates) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/callbacks/model_checkpoint.py", line 644, in _save_last_checkpoint self._save_checkpoint(trainer, filepath) File "/workdir/vpatrushev/torchOKsmall2/torchok/torchok/callbacks/model_checkpoint_with_onnx.py", line 43, in _save_checkpoint model.to_onnx(filepath + self.ONNX_EXTENSION, (*input_tensors,), **self.onnx_params) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context return func(*args, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/pytorch_lightning/core/lightning.py", line 1888, in to_onnx torch.onnx.export(self, input_sample, file_path, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/init.py", line 350, in export return utils.export( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/utils.py", line 163, in export _export( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/utils.py", line 1074, in _export graph, params_dict, torch_out = _model_to_graph( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/utils.py", line 727, in _model_to_graph graph, params, torch_out, module = _create_jit_graph(model, args) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/utils.py", line 602, in _create_jit_graph graph, torch_out = _trace_and_get_graph_from_model(model, args) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/onnx/utils.py", line 517, in _trace_and_get_graph_from_model trace_graph, torch_out, inputs_states = torch.jit._get_trace_graph( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/jit/_trace.py", line 1175, in _get_trace_graph outs = ONNXTracedModule(f, strict, _force_outplace, return_inputs, _return_inputs_states)(*args, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl return forward_call(*input, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/jit/_trace.py", line 127, in forward graph, out = torch._C._create_graph_by_tracing( File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/jit/_trace.py", line 118, in wrapper outs.append(self.inner(*trace_inputs)) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl return forward_call(*input, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1118, in _slow_forward result = self.forward(*input, **kwargs) File "/workdir/vpatrushev/torchOKsmall2/torchok/torchok/tasks/classification.py", line 51, in forward x = self.backbone(x) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl return forward_call(*input, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1118, in _slow_forward result = self.forward(*input, **kwargs) File "/workdir/vpatrushev/torchOKsmall2/torchok/torchok/models/backbones/swin.py", line 250, in forward x = self._forward_patch_emb(x) File "/workdir/vpatrushev/torchOKsmall2/torchok/torchok/models/backbones/swin.py", line 211, in _forward_patch_emb x = self.patch_embed(x) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl return forward_call(*input, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1118, in _slow_forward result = self.forward(*input, **kwargs) File "/opt/conda/envs/torchok/lib/python3.9/site-packages/timm/models/layers/patch_embed.py", line 32, in forward B, C, H, W = x.shape ValueError: not enough values to unpack (expected 4, got 3)

    Environment:

    • OS: [e.g. Ubuntu 22.04]
    • CUDA: [e.g. 11.6]
    • PyTorch: [e.g. 12.0]
    • PyTorch Lightning: [e.g. 1.6.5]
    bug 
    opened by VladislavPatrushev 1
  • Add seed everything by default

    Add seed everything by default

    Is your feature request related to a problem? Please describe. We now cannot reproduce the experiments because of the seeds not being set.

    Describe the solution you'd like Lightning has a function that allows users to seed everything: https://pytorch-lightning.readthedocs.io/en/stable/common/trainer.html#reproducibility. It should be enabled by default and be configured from the training configuration.

    Describe alternatives you've considered

    Additional context

    enhancement 
    opened by VladVin 1
  • Weight decay per group from config

    Weight decay per group from config

    Is your feature request related to a problem? Please describe. A user can specify model layers with their own weight decay parameters being set in the training configuration.

    Describe the solution you'd like In the config file it might be a dict like this:

    weight_decays:
      'head.layer1': 0.00001
      'head.layer2': 0.00005
    

    Describe alternatives you've considered

    Additional context

    enhancement 
    opened by VladVin 1
  • Remove ability to specify multiple training dataloaders

    Remove ability to specify multiple training dataloaders

    Is your feature request related to a problem? Please describe. It is impossible to use multiple training datasets according to Lightning's interface (there is no dataloader_idx parameter for training_step). But TorchOk supports a list of training datasets though it won't work - the user has to specify only one training dataloader to make it work.

    Describe the solution you'd like Remove the ability to pass multiple training dataloaders

    Describe alternatives you've considered We can also create our own wrapper around a list of datasets, but it will be confusing for a user

    Additional context

    invalid 
    opened by VladVin 0
  • Dependencies installation didn't happen in CI/CD on a multi-commit PR

    Dependencies installation didn't happen in CI/CD on a multi-commit PR

    Describe the bug Dependencies in pyproject.toml were changed in a multi-commit PR, but the CI/CD process didn't catch them, resulting to broken dependencies in main branch.

    To Reproduce

    Expected behavior Dependencies installation needs to be ran in CI/CD when one of the commits in a PR changes pyproject.toml

    Actual behavior The broken dependencies workflow in main

    Environment: See CI/CD workflow

    bug 
    opened by VladVin 0
  • Representation Metrics in DDP mode

    Representation Metrics in DDP mode

    Describe the bug In DDP mode representation metrics doesn't work. Due to in update function gpu embedding convert to cpu embedding and after that in compute method in DDP mode called all_gather() which work only with gpu tensors.

    bug 
    opened by PososikTeam 0
  • Tests for BEiT

    Tests for BEiT

    Is your feature request related to a problem? Please describe. There are no tests for BEiT backbone. The main reason is BEiT can't convert to Jit CPU model, because of BEiT has SyncBatchNorm layer which has no implementation for CPU.

    enhancement 
    opened by PososikTeam 0
  • No examples configs inside TorchOk package

    No examples configs inside TorchOk package

    Describe the bug There's a command in README for running basic example training but it doesn't work:

    python -m torchok -cn classification_cifar10 trainer.accelerator='cpu'
    

    To Reproduce

    pip install --upgrade torchok
    python -m torchok -cn classification_cifar10 trainer.accelerator='cpu'
    

    Expected behavior The example should run

    Actual behavior Error is raised:

    /usr/local/lib/python3.7/dist-packages/statsmodels/tools/_testing.py:19: FutureWarning: pandas.util.testing is deprecated. Use the functions in the public API at pandas.testing instead.
      import pandas.util.testing as tm
    Primary config directory not found.
    Check that the config directory '/usr/local/lib/python3.7/dist-packages/torchok/examples/configs' exists and readable
    
    Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.
    

    Environment:

    Additional context

    opened by VladVin 1
Releases(v0.4.12)
  • v0.4.12(Dec 23, 2022)

    What's Changed

    • Feature add new features by @Animatory in https://github.com/eora-ai/torchok/pull/152
    • Fix freeze unfreez for batch norms by @PososikTeam in https://github.com/eora-ai/torchok/pull/151
    • Feature_onnx_check_backbone by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/148
    • Update freeze_unfreeze callback by @Animatory in https://github.com/eora-ai/torchok/pull/155
    • Fix FreezeUnfreeze callback by @Animatory in https://github.com/eora-ai/torchok/pull/158
    • Feature resnets no downsample stages by @azakhtyamov in https://github.com/eora-ai/torchok/pull/144
    • Fix failure on single module at unfreeze stage by @Animatory in https://github.com/eora-ai/torchok/pull/159
    • Bug Fix checkpoint with onnx top k by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/154
    • Feature Object detection by @Animatory in https://github.com/eora-ai/torchok/pull/147
    • Fix imports for absence of mmdet by @Animatory in https://github.com/eora-ai/torchok/pull/160
    • Feature fix mlflow logger by @kristinarakova in https://github.com/eora-ai/torchok/pull/161
    • Torchmetrics retrieval metrics by @PososikTeam in https://github.com/eora-ai/torchok/pull/156
    • Update environment and configs by @Animatory in https://github.com/eora-ai/torchok/pull/163
    • Fix bag with metric and add ability to choice if use batch searching or no by @PososikTeam in https://github.com/eora-ai/torchok/pull/164
    • fix constructor attribute in base task by @kristinarakova in https://github.com/eora-ai/torchok/pull/165
    • fix memory leak by @PososikTeam in https://github.com/eora-ai/torchok/pull/166
    • Refactor Tasks by @Animatory in https://github.com/eora-ai/torchok/pull/167
    • Update environment by @Animatory in https://github.com/eora-ai/torchok/pull/170
    • Getting started docs by @VladVin in https://github.com/eora-ai/torchok/pull/157
    • Docs pairwise task by @PososikTeam in https://github.com/eora-ai/torchok/pull/171
    • Update documentation in classification and detection by @Animatory in https://github.com/eora-ai/torchok/pull/172
    • Update Detection by @Animatory in https://github.com/eora-ai/torchok/pull/168
    • Project version increment by @VladVin in https://github.com/eora-ai/torchok/pull/173

    New Contributors

    • @azakhtyamov made their first contribution in https://github.com/eora-ai/torchok/pull/144
    • @kristinarakova made their first contribution in https://github.com/eora-ai/torchok/pull/161

    Full Changelog: https://github.com/eora-ai/torchok/compare/v0.4.11...v0.4.12

    Source code(tar.gz)
    Source code(zip)
  • v0.4.11(Sep 14, 2022)

    What's Changed

    • Add CaiT and XCiT models by @Animatory in https://github.com/eora-ai/torchok/pull/1
    • Fixes & Improvements from EORA team by @VladVin in https://github.com/eora-ai/torchok/pull/6
    • Re-engineered basic folders structure by @VladVin in https://github.com/eora-ai/torchok/pull/10
    • create feature-classification_dataset by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/12
    • feature_unsupervised_contrastive_dataset by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/13
    • registry write by @PososikTeam in https://github.com/eora-ai/torchok/pull/14
    • Feature retrieval dataset by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/15
    • add flake8 by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/17
    • change api base dataset by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/27
    • Feature metric manager by @PososikTeam in https://github.com/eora-ai/torchok/pull/11
    • Constructor by @VladVin in https://github.com/eora-ai/torchok/pull/22
    • create feature hooks base model by @PososikTeam in https://github.com/eora-ai/torchok/pull/19
    • Fixed order names of tests for JointLoss by @VladVin in https://github.com/eora-ai/torchok/pull/29
    • feature-representation_metric by @PososikTeam in https://github.com/eora-ai/torchok/pull/16
    • add base task by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/18
    • Feature ResNet, SEResNet by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/26
    • Feature dataset cifar10 by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/32
    • Feature ResNet add urls by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/34
    • Config structure by @PososikTeam in https://github.com/eora-ai/torchok/pull/25
    • Hot FIX Metric test by @PososikTeam in https://github.com/eora-ai/torchok/pull/30
    • Feature arc face head by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/21
    • Feature base task bug-fix by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/33
    • SOP run by @PososikTeam in https://github.com/eora-ai/torchok/pull/36
    • Added new requierements by @VladVin in https://github.com/eora-ai/torchok/pull/37
    • CIFAR-10 run by @VladVin in https://github.com/eora-ai/torchok/pull/38
    • Updated README for the new concept by @VladVin in https://github.com/eora-ai/torchok/pull/40
    • Feature HRNet by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/41
    • Feature Segmentation Dataset by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/35
    • Sphinx documentation by @VladVin in https://github.com/eora-ai/torchok/pull/43
    • Set joint loss and optimizer as optional by @PososikTeam in https://github.com/eora-ai/torchok/pull/50
    • featue save_onnx_ckpt by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/49
    • Updated all dependencies and Dockerfile by @VladVin in https://github.com/eora-ai/torchok/pull/55
    • Fixed logging steps in test configs by @VladVin in https://github.com/eora-ai/torchok/pull/58
    • SOP training by @PososikTeam in https://github.com/eora-ai/torchok/pull/53
    • Load checkpoint by @PososikTeam in https://github.com/eora-ai/torchok/pull/39
    • hotfix-classification_task by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/66
    • BaseModel class by @PososikTeam in https://github.com/eora-ai/torchok/pull/57
    • MLFlow Logger by @PososikTeam in https://github.com/eora-ai/torchok/pull/54
    • MLFlow config by @PososikTeam in https://github.com/eora-ai/torchok/pull/67
    • Config MLFlow by @PososikTeam in https://github.com/eora-ai/torchok/pull/68
    • hotfix-onnx_save_checkpoint_callback by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/70
    • TorchOk packaging by @VladVin in https://github.com/eora-ai/torchok/pull/73
    • SwinV2 by @PososikTeam in https://github.com/eora-ai/torchok/pull/47
    • Segmentation by @PososikTeam in https://github.com/eora-ai/torchok/pull/71
    • Adapt models from TIMM by @Animatory in https://github.com/eora-ai/torchok/pull/76
    • Add efficientnet architecture by @Animatory in https://github.com/eora-ai/torchok/pull/87
    • Add mobilenetv3 backbone by @Animatory in https://github.com/eora-ai/torchok/pull/88
    • feature-onnxtask by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/48
    • Add notebooks by @PososikTeam in https://github.com/eora-ai/torchok/pull/89
    • Entrypoints by @PososikTeam in https://github.com/eora-ai/torchok/pull/77
    • hotfix_multilog_dir by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/90
    • Feature DaViT by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/56
    • Freeze by @PososikTeam in https://github.com/eora-ai/torchok/pull/75
    • feature-Unet by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/52
    • Merge Hydra and PytorchLightning logging by @Animatory in https://github.com/eora-ai/torchok/pull/104
    • Feature-forward_onnx by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/100
    • Fixed deps for Python 3.7 by @VladVin in https://github.com/eora-ai/torchok/pull/105
    • Global refactor by @Animatory in https://github.com/eora-ai/torchok/pull/107
    • Fix Hydra logging timestamp by @Animatory in https://github.com/eora-ai/torchok/pull/108
    • Add Beit backbone by @Animatory in https://github.com/eora-ai/torchok/pull/109
    • Hotfix warnings by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/113
    • Hotfix flake8 by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/111
    • Feature github actions by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/112
    • Refactor datasets by @Animatory in https://github.com/eora-ai/torchok/pull/115
    • Hot fix for run all configs without errors by @PososikTeam in https://github.com/eora-ai/torchok/pull/116
    • Feature_metric_with_utils by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/117
    • Feature detection dataset by @PososikTeam in https://github.com/eora-ai/torchok/pull/118
    • Hotfix python3.7 maintain by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/119
    • Feature Pairwise Task by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/110
    • Fix flake8 action by @VladislavPatrushev in https://github.com/eora-ai/torchok/pull/120
    • fixed metric tests by @PososikTeam in https://github.com/eora-ai/torchok/pull/125
    • Update for new lightning version by @Animatory in https://github.com/eora-ai/torchok/pull/127
    • Fixed pandas version by @VladVin in https://github.com/eora-ai/torchok/pull/128
    • Fixed numpy version by @VladVin in https://github.com/eora-ai/torchok/pull/129
    • support many validation dataloaders by @PososikTeam in https://github.com/eora-ai/torchok/pull/130
    • Fix COCO by @PososikTeam in https://github.com/eora-ai/torchok/pull/133
    • implement bce loss by @PososikTeam in https://github.com/eora-ai/torchok/pull/131
    • Dict support in MetricManager by @PososikTeam in https://github.com/eora-ai/torchok/pull/123
    • Fix bugs by @PososikTeam in https://github.com/eora-ai/torchok/pull/126
    • Fix dependencies in pyproject.toml by @VladVin in https://github.com/eora-ai/torchok/pull/134
    • tests fix by @PososikTeam in https://github.com/eora-ai/torchok/pull/136
    • Fix library versions by @PososikTeam in https://github.com/eora-ai/torchok/pull/137
    • Full CI/CD: lint, test, publish by @VladVin in https://github.com/eora-ai/torchok/pull/135
    • Fix additional tests by @PososikTeam in https://github.com/eora-ai/torchok/pull/138
    • CI/CD tests fix and package version update by @VladVin in https://github.com/eora-ai/torchok/pull/139
    • Fixed PyPI publishing trigger in CI/CD by @VladVin in https://github.com/eora-ai/torchok/pull/140
    • Split CI/CD workflows by @VladVin in https://github.com/eora-ai/torchok/pull/141
    • Update prerelease version by @VladVin in https://github.com/eora-ai/torchok/pull/142
    • Remove uploading to TestPyPI from CD process & package update by @VladVin in https://github.com/eora-ai/torchok/pull/143

    New Contributors

    • @Animatory made their first contribution in https://github.com/eora-ai/torchok/pull/1
    • @VladislavPatrushev made their first contribution in https://github.com/eora-ai/torchok/pull/12
    • @PososikTeam made their first contribution in https://github.com/eora-ai/torchok/pull/14

    Full Changelog: https://github.com/eora-ai/torchok/commits/v0.4.11

    Source code(tar.gz)
    Source code(zip)
Code for "Long Range Probabilistic Forecasting in Time-Series using High Order Statistics"

Long Range Probabilistic Forecasting in Time-Series using High Order Statistics This is the code produced as part of the paper Long Range Probabilisti

16 Dec 06, 2022
Official code repository of the paper Learning Associative Inference Using Fast Weight Memory by Schlag et al.

Learning Associative Inference Using Fast Weight Memory This repository contains the offical code for the paper Learning Associative Inference Using F

Imanol Schlag 18 Oct 12, 2022
Using modified BiSeNet for face parsing in PyTorch

face-parsing.PyTorch Contents Training Demo References Training Prepare training data: -- download CelebAMask-HQ dataset -- change file path in the pr

zll 1.6k Jan 08, 2023
LSTC: Boosting Atomic Action Detection with Long-Short-Term Context

LSTC: Boosting Atomic Action Detection with Long-Short-Term Context This Repository contains the code on AVA of our ACM MM 2021 paper: LSTC: Boosting

Tencent YouTu Research 9 Oct 11, 2022
A Pytorch implementation of "Splitter: Learning Node Representations that Capture Multiple Social Contexts" (WWW 2019).

Splitter ⠀⠀ A PyTorch implementation of Splitter: Learning Node Representations that Capture Multiple Social Contexts (WWW 2019). Abstract Recent inte

Benedek Rozemberczki 201 Nov 09, 2022
PyTorch Implementation of DSB for Score Based Generative Modeling. Experiments managed using Hydra.

Diffusion Schrödinger Bridge with Applications to Score-Based Generative Modeling This repository contains the implementation for the paper Diffusion

James Thornton 50 Jan 03, 2023
This is the official repository of the paper Stocastic bandits with groups of similar arms (NeurIPS 2021). It contains the code that was used to compute the figures and experiments of the paper.

Experiments How to reproduce experimental results of Stochastic bandits with groups of similar arms submitted paper ? Section 5 of the paper To reprod

Fabien 0 Oct 25, 2021
Official PyTorch Implementation of Hypercorrelation Squeeze for Few-Shot Segmentation, arXiv 2021

Hypercorrelation Squeeze for Few-Shot Segmentation This is the implementation of the paper "Hypercorrelation Squeeze for Few-Shot Segmentation" by Juh

Juhong Min 165 Dec 28, 2022
Semi-Supervised Learning for Fine-Grained Classification

Semi-Supervised Learning for Fine-Grained Classification This repo contains the code of: A Realistic Evaluation of Semi-Supervised Learning for Fine-G

25 Nov 08, 2022
PyTorch implementation of "Image-to-Image Translation Using Conditional Adversarial Networks".

pix2pix-pytorch PyTorch implementation of Image-to-Image Translation Using Conditional Adversarial Networks. Based on pix2pix by Phillip Isola et al.

mrzhu 383 Dec 17, 2022
Submodular Subset Selection for Active Domain Adaptation (ICCV 2021)

S3VAADA: Submodular Subset Selection for Virtual Adversarial Active Domain Adaptation ICCV 2021 Harsh Rangwani, Arihant Jain*, Sumukh K Aithal*, R. Ve

Video Analytics Lab -- IISc 13 Dec 28, 2022
Full-featured Decision Trees and Random Forests learner.

CID3 This is a full-featured Decision Trees and Random Forests learner. It can save trees or forests to disk for later use. It is possible to query tr

Alejandro Penate-Diaz 3 Aug 15, 2022
A SAT-based sudoku solver

SAT Sudoku solver A SAT-based Sudoku solver made in the context of a small project in the "Logic Problem Solving" class in the first year at the Polyt

Alexandre Malfreyt 5 Apr 15, 2022
NeurIPS 2021 Datasets and Benchmarks Track

AP-10K: A Benchmark for Animal Pose Estimation in the Wild Introduction | Updates | Overview | Download | Training Code | Key Questions | License Intr

AP-10K 82 Dec 11, 2022
Using Language Model to Bootstrap Human Activity Recognition Ambient Sensors Based in Smart Homes

Using Language Model to Bootstrap Human Activity Recognition Ambient Sensors Based in Smart Homes This repository is the official implementation of Us

Damien Bouchabou 0 Oct 18, 2021
Learning to Prompt for Vision-Language Models.

CoOp Paper: Learning to Prompt for Vision-Language Models Authors: Kaiyang Zhou, Jingkang Yang, Chen Change Loy, Ziwei Liu CoOp (Context Optimization)

Kaiyang 679 Jan 04, 2023
SCI-AIDE : High-fidelity Few-shot Histopathology Image Synthesis for Rare Cancer Diagnosis

SCI-AIDE : High-fidelity Few-shot Histopathology Image Synthesis for Rare Cancer Diagnosis Pretrained Models In this work, we created synthetic tissue

Emirhan Kurtuluş 1 Feb 07, 2022
Vector.ai assignment

fabio-tests-nisargatman Low Level Approach: ###Tables: continents: id*, name, population, area, createdAt, updatedAt countries: id*, name, population,

Ravi Pullagurla 1 Nov 09, 2021
Official pytorch implementation of Active Learning for deep object detection via probabilistic modeling (ICCV 2021)

Active Learning for Deep Object Detection via Probabilistic Modeling This repository is the official PyTorch implementation of Active Learning for Dee

NVIDIA Research Projects 130 Jan 06, 2023
Exploring Cross-Image Pixel Contrast for Semantic Segmentation

Exploring Cross-Image Pixel Contrast for Semantic Segmentation Exploring Cross-Image Pixel Contrast for Semantic Segmentation, Wenguan Wang, Tianfei Z

Tianfei Zhou 510 Jan 02, 2023