Collection of common code that's shared among different research projects in FAIR computer vision team.

Related tags

Deep Learning fvcore
Overview

fvcore

fvcore is a light-weight core library that provides the most common and essential functionality shared in various computer vision frameworks developed in FAIR, such as Detectron2, PySlowFast, and ClassyVision. All components in this library are type-annotated, tested, and benchmarked.

The computer vision team in FAIR is responsible for maintaining this library.

Features:

Besides some basic utilities, fvcore includes the following features:

  • Common pytorch layers, functions and losses in fvcore.nn.
  • A hierarchical per-operator flop counting tool: see this note for details.
  • Recursive parameter counting: see API doc.
  • Recompute BatchNorm population statistics: see its API doc.
  • A stateless, scale-invariant hyperparameter scheduler: see its API doc.

Install:

fvcore requires pytorch and python >= 3.6.

Use one of the following ways to install:

1. Install from PyPI (updated nightly)

pip install -U fvcore

2. Install from Anaconda Cloud (updated nightly)

conda install -c fvcore -c iopath -c conda-forge fvcore

3. Install latest from GitHub

pip install -U 'git+https://github.com/facebookresearch/fvcore'

4. Install from a local clone

git clone https://github.com/facebookresearch/fvcore
pip install -e fvcore

License

This library is released under the Apache 2.0 license.

Comments
  • support specifying matching_heuristics from filename

    support specifying matching_heuristics from filename

    Summary: D35519683 changed the default matching_heuristics from False to True, it may cause some issues:

    • potential bug report: https://fb.workplace.com/groups/2240361332735959/posts/5264606250311437/?comment_id=5265167493588646
    • bloated logging: https://github.com/facebookresearch/detectron2/issues/4364

    This diff reverts the default value back to False, and introduce a way to specify this option via filename url.

    Differential Revision: D41145857

    CLA Signed Merged fb-exported 
    opened by wat3rBro 9
  • BUG: ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization'

    BUG: ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization'

    After your recent release, I got this error from my code. I can only use my code by downgrading fvcore version to previous one.

    Error Traceback:

    2021-10-15T09:46:49.0347680Z ==================================== ERRORS ====================================
    2021-10-15T09:46:49.0350615Z ________________________ ERROR collecting test session _________________________
    2021-10-15T09:46:49.0352801Z /usr/local/lib/python3.8/dist-packages/_pytest/config/__init__.py:495: in _importconftest
    2021-10-15T09:46:49.0358791Z     return self._conftestpath2mod[key]
    2021-10-15T09:46:49.0360317Z E   KeyError: PosixPath('/app/cv_ner_detectron/tests/conftest.py')
    2021-10-15T09:46:49.0360877Z 
    2021-10-15T09:46:49.0362075Z During handling of the above exception, another exception occurred:
    2021-10-15T09:46:49.0363832Z /usr/local/lib/python3.8/dist-packages/_pytest/config/__init__.py:501: in _importconftest
    2021-10-15T09:46:49.0364711Z     mod = conftestpath.pyimport()
    2021-10-15T09:46:49.0365834Z /usr/local/lib/python3.8/dist-packages/py/_path/local.py:704: in pyimport
    2021-10-15T09:46:49.0368988Z     __import__(modname)
    2021-10-15T09:46:49.0370340Z /usr/local/lib/python3.8/dist-packages/_pytest/assertion/rewrite.py:152: in exec_module
    2021-10-15T09:46:49.0372267Z     exec(co, module.__dict__)
    2021-10-15T09:46:49.0373441Z cv_ner_detectron/tests/conftest.py:11: in <module>
    2021-10-15T09:46:49.0377209Z     from cv_ner_detectron.detectron.datamodels import CvNerExample
    2021-10-15T09:46:49.0378686Z cv_ner_detectron/detectron/datamodels.py:7: in <module>
    2021-10-15T09:46:49.0380548Z     from detectron2.structures import BoxMode
    2021-10-15T09:46:49.0382497Z /usr/local/lib/python3.8/dist-packages/detectron2/structures/__init__.py:6: in <module>
    2021-10-15T09:46:49.0385934Z     from .keypoints import Keypoints, heatmaps_to_keypoints
    2021-10-15T09:46:49.0387443Z /usr/local/lib/python3.8/dist-packages/detectron2/structures/keypoints.py:6: in <module>
    2021-10-15T09:46:49.0389906Z     from detectron2.layers import interpolate
    2021-10-15T09:46:49.0391270Z /usr/local/lib/python3.8/dist-packages/detectron2/layers/__init__.py:10: in <module>
    2021-10-15T09:46:49.0397234Z     from .blocks import CNNBlockBase, DepthwiseSeparableConv2d
    2021-10-15T09:46:49.0402621Z /usr/local/lib/python3.8/dist-packages/detectron2/layers/blocks.py:4: in <module>
    2021-10-15T09:46:49.0406940Z     import fvcore.nn.weight_init as weight_init
    2021-10-15T09:46:49.0408469Z /usr/local/lib/python3.8/dist-packages/fvcore/nn/__init__.py:2: in <module>
    2021-10-15T09:46:49.0409904Z     from .activation_count import ActivationCountAnalysis, activation_count
    2021-10-15T09:46:49.0411437Z /usr/local/lib/python3.8/dist-packages/fvcore/nn/activation_count.py:10: in <module>
    2021-10-15T09:46:49.0414217Z     from .jit_analysis import JitModelAnalysis
    2021-10-15T09:46:49.0415640Z /usr/local/lib/python3.8/dist-packages/fvcore/nn/jit_analysis.py:15: in <module>
    2021-10-15T09:46:49.0417905Z     from fvcore.common.checkpoint import _named_modules_with_dup
    2021-10-15T09:46:49.0419295Z /usr/local/lib/python3.8/dist-packages/fvcore/common/checkpoint.py:23: in <module>
    2021-10-15T09:46:49.0422403Z     from torch.quantization import ObserverBase, FakeQuantizeBase
    2021-10-15T09:46:49.0424633Z E   ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization' (/usr/local/lib/python3.8/dist-packages/torch/quantization/__init__.py)
    2021-10-15T09:46:49.0425328Z 
    
    opened by hasansalimkanmaz 9
  • CropTransform leaves boxes hanging over the edge of the image

    CropTransform leaves boxes hanging over the edge of the image

    The CropTransform currently leaves boxes hanging over the edge of the images. I think in most object detection pipelines I would want the boxes cropped just like the image.

    import numpy as np
    
    from fvcore.transforms import CropTransform
    
    transform = CropTransform(5, 5, 5, 5)
    box = np.array([[0, 0, 10, 10]])
    transform.apply_box(box)
    # get: array([[-5, -5,  5,  5]])
    # wanted: array([[0, 0, 5, 5]])
    
    opened by alekseynp 6
  • Added option to keep only the last n checkpoints in PeriodicCheckpointer.

    Added option to keep only the last n checkpoints in PeriodicCheckpointer.

    🚀 Feature

    Add option to keep only the most recent n checkpoints in PeriodicCheckpointer.

    Motivation

    Checkpoints are quite large and often only the most recent one is of interest.

    CLA Signed Merged 
    opened by maxfrei750 6
  • May I ask you a question about precise-bn ?

    May I ask you a question about precise-bn ?

    Hi,

    Thanks for releasing this helpful codebase. After reading the part of precise-bn, a question comes to me: Do I need to enlarge the batch size when I do precise bn? I noticed that the performance of bn becomes bad when the batch size is small. People say that the bad performance is due to the noisy estimation of running mean/var of the bn layers. When batch size is small, there will be more noise in each batch's mean/var which brings bad estimation for the running mean/var. So in order to cope with the problem of small batch, do I need to enlarge the batch size when I use precise bn, or is there other explanations of the bn performance drop?

    opened by CoinCheung 6
  • Getting:-  ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization'

    Getting:- ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization'

    Hey, I am using torch version 1.7.1 CPU and detectron2 along with torch 1.7 but when I used it through my own package, I started getting this error. Please tell me how should I fix this?

    ImportError                               Traceback (most recent call last)
    <ipython-input-4-d3af5af0e43a> in <module>()
    ----> 1 from INPR import inpr
          2 import matplotlib.pyplot as plt
          3 get_ipython().magic('matplotlib inline')
    
    4 frames
    /usr/local/lib/python3.7/dist-packages/INPR/inpr.py in <module>()
          4 from PIL import Image
          5 import numpy as np
    ----> 6 from .utils import Load_model
          7 from .get_num_plate import get_number_plate
          8 from .get_details import fetch
    
    /usr/local/lib/python3.7/dist-packages/INPR/utils.py in <module>()
    ----> 1 from detectron2.engine import DefaultPredictor
          2 from detectron2.data import MetadataCatalog
          3 from detectron2.config import get_cfg
          4 from detectron2.utils.visualizer import ColorMode, Visualizer
          5 from detectron2 import model_zoo
    
    /usr/local/lib/python3.7/dist-packages/detectron2/engine/__init__.py in <module>()
          9 # prefer to let hooks and defaults live in separate namespaces (therefore not in __all__)
         10 # but still make them available here
    ---> 11 from .hooks import *
         12 from .defaults import *
    
    /usr/local/lib/python3.7/dist-packages/detectron2/engine/hooks.py in <module>()
         11 from collections import Counter
         12 import torch
    ---> 13 from fvcore.common.checkpoint import PeriodicCheckpointer as _PeriodicCheckpointer
         14 from fvcore.common.param_scheduler import ParamScheduler
         15 from fvcore.common.timer import Timer
    
    /usr/local/lib/python3.7/dist-packages/fvcore/common/checkpoint.py in <module>()
         21 else:
         22     from torch import quantization
    ---> 23     from torch.quantization import ObserverBase, FakeQuantizeBase
         24 
         25 __all__ = ["Checkpointer", "PeriodicCheckpointer"]
    
    ImportError: cannot import name 'FakeQuantizeBase' from 'torch.quantization' (/usr/local/lib/python3.7/dist-packages/torch/quantization/__init__.py)
    
    
    duplicate 
    opened by patrickn699 5
  • Overall Flops are less than the modules

    Overall Flops are less than the modules

    Hi, Thank you for this super-cool code. I am using this code to calculate the flops of my model. However, I encountered a very strange problem as below. It seems that the overall flops of the whole model is less than, even some modules. Also, it seems that some conv layers don't calculate the flops. Why does this situation happen? I am wondering if there is any solution to help with this so strange problem. Thank you very much.

    D:\anaconda3\envs\PyTorch_py3\lib\site-packages\fvcore\nn\jit_handles.py:139: RuntimeWarning: overflow encountered in long_scalars flop = batch_size * out_size * Cout_dim * Cin_dim * kernel_size D:\anaconda3\envs\PyTorch_py3\lib\collections_init_.py:802: RuntimeWarning: overflow encountered in long_scalars self[elem] += count | module | #parameters or shape | #flops | |:-----------------------------|:-----------------------|:----------| | model | 6.789M | 1.09G | | conv1.conv2d | 0.379M | 1.904G | | conv1.conv2d.weight | (256, 1478, 1, 1) | | | conv1.conv2d.bias | (256,) | | | conv2.conv2d | 0.59M | 1.074G | | conv2.conv2d.weight | (256, 256, 3, 3) | | | conv2.conv2d.bias | (256,) | | | conv3.conv2d | 0.59M | 0 | | conv3.conv2d.weight | (256, 256, 3, 3) | | | conv3.conv2d.bias | (256,) | | | res_module | 3.59M | 3.195M | | res_module.0 | 1.197M | 1.065M | | res_module.0.conv1.conv2d | 0.59M | 0 | | res_module.0.conv2.conv2d | 0.59M | 0 | | res_module.0.se_layer | 16.672K | 1.065M | | res_module.1 | 1.197M | 1.065M | | res_module.1.conv1.conv2d | 0.59M | 0 | | res_module.1.conv2.conv2d | 0.59M | 0 | | res_module.1.se_layer | 16.672K | 1.065M | | res_module.2 | 1.197M | 1.065M | | res_module.2.conv1.conv2d | 0.59M | 0 | | res_module.2.conv2.conv2d | 0.59M | 0 | | res_module.2.se_layer | 16.672K | 1.065M | | deconv1.conv2d | 1.049M | 0 | | deconv1.conv2d.weight | (256, 256, 4, 4) | | | deconv1.conv2d.bias | (256,) | | | deconv2.conv2d | 0.59M | 1.074G | | deconv2.conv2d.weight | (256, 256, 3, 3) | | | deconv2.conv2d.bias | (256,) | | | deconv3.conv2d | 0.771K | 12.583M | | deconv3.conv2d.weight | (3, 256, 1, 1) | | | deconv3.conv2d.bias | (3,) | |

    opened by DuanHuiyu 5
  • fix pypi package release

    fix pypi package release

    The pypi package https://pypi.org/project/fvcore/ has not been updated for a while. This is because CI creates package with invalid name, e.g. https://app.circleci.com/pipelines/github/facebookresearch/fvcore/920/workflows/651c790b-758d-4fa0-9471-3317d0280868/jobs/3059/parallel-runs/0/steps/0-106 has fvcore-0.1.5.post20220106.post20220106.post20220106/.

    The name is now normal with this commit, shown in https://app.circleci.com/pipelines/github/facebookresearch/fvcore/921/workflows/cb411117-6c4a-48b8-b5d0-486322b0d952/jobs/3064.

    The gpu tests are failing due to pre-existing docker error (there is an internal task on it).

    CLA Signed 
    opened by ppwwyyxx 4
  • fixing import bug and gating by torch version

    fixing import bug and gating by torch version

    Summary: caused https://github.com/facebookresearch/fvcore/issues/87 when trying to migrate fvcore to ao, this fixes by gating before importing

    Differential Revision: D31706627

    CLA Signed Merged fb-exported 
    opened by HDCharles 4
  • Fix Shapely deprecation

    Fix Shapely deprecation

    Directly iterating over multipart geometries is being removed in an upcoming version of Shapely and triggers excessive warnings with current versions of Shapely. Switching to iterating over the .geoms field as suggested by the migration guide: https://shapely.readthedocs.io/en/stable/migration.html#multi-part-geometries-will-no-longer-be-sequences-length-iterable-indexable

    CLA Signed Merged 
    opened by normster 3
  • support multiple files as _BASE_ in CfgNode

    support multiple files as _BASE_ in CfgNode

    Summary: Make _BASE_ works for a list of files, loaded in natural order (latter base will overwrite the earlier ones)

    Differential Revision: D31842473

    CLA Signed Merged fb-exported 
    opened by wat3rBro 3
  • This error occurred when I calculated flops. What is the reason?

    This error occurred when I calculated flops. What is the reason?

    [12/11 22:09:15 adet.trainer]: Starting training from iteration 0 Traceback (most recent call last): File "C:\Users\lin\Desktop\Cross_custom_dataset\tools\train_net.py", line 235, in args=(args, ), File "C:\Users\lin\Desktop\Cross_custom_dataset\detectron2\detectron2\engine\launch.py", line 82, in launch main_func(*args) File "C:\Users\lin\Desktop\Cross_custom_dataset\tools\train_net.py", line 223, in main return trainer.train() File "C:\Users\lin\Desktop\Cross_custom_dataset\tools\train_net.py", line 97, in train self.train_loop(self.start_iter, self.max_iter) File "C:\Users\lin\Desktop\Cross_custom_dataset\tools\train_net.py", line 87, in train_loop self.run_step() File "C:\Users\lin\Desktop\Cross_custom_dataset\detectron2\detectron2\engine\defaults.py", line 495, in run_step self._trainer.run_step() File "C:\Users\lin\Desktop\Cross_custom_dataset\detectron2\detectron2\engine\train_loop.py", line 274, in run_step loss_dict = self.model(data) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "C:\Users\lin\Desktop\Cross_custom_dataset\adet\modeling\condinst\crossvis.py", line 140, in forward return self.forward_train(batched_inputs) File "C:\Users\lin\Desktop\Cross_custom_dataset\adet\modeling\condinst\crossvis.py", line 148, in forward_train print("FLOPs: ", flops.total()) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 248, in total stats = self._analyze() File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 551, in _analyze graph = _get_scoped_trace_graph(self._model, self._inputs, self._aliases) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 176, in _get_scoped_trace_graph graph, _ = _get_trace_graph(module, inputs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\jit_trace.py", line 1139, in _get_trace_graph outs = ONNXTracedModule(f, strict, _force_outplace, return_inputs, _return_inputs_states)(*args, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\jit_trace.py", line 130, in forward self._force_outplace, File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\jit_trace.py", line 116, in wrapper outs.append(self.inner(*trace_inputs)) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 887, in _call_impl result = self._slow_forward(*input, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 860, in _slow_forward result = self.forward(*input, **kwargs) File "C:\Users\lin\Desktop\Cross_custom_dataset\adet\modeling\condinst\crossvis.py", line 140, in forward return self.forward_train(batched_inputs) File "C:\Users\lin\Desktop\Cross_custom_dataset\adet\modeling\condinst\crossvis.py", line 148, in forward_train print("FLOPs: ", flops.total()) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 248, in total stats = self._analyze() File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 551, in _analyze graph = _get_scoped_trace_graph(self._model, self._inputs, self._aliases) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\fvcore\nn\jit_analysis.py", line 176, in _get_scoped_trace_graph graph, _ = _get_trace_graph(module, inputs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\jit_trace.py", line 1139, in _get_trace_graph outs = ONNXTracedModule(f, strict, _force_outplace, return_inputs, _return_inputs_states)(*args, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 887, in _call_impl result = self._slow_forward(*input, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\nn\modules\module.py", line 860, in _slow_forward result = self.forward(*input, **kwargs) File "C:\Users\lin\anaconda3\envs\cross\lib\site-packages\torch\jit_trace.py", line 130, in forward self._force_outplace, RuntimeError: Tracing can't be nested

    opened by fxooooooooo 0
  • DeformConv2d not supported in FLOPs counting?

    DeformConv2d not supported in FLOPs counting?

    I tested flop counting for DeformConv2d and I am getting 0 for flops. The code to reproduce is as follows. Please kindly advise how to get the correct FLOPs.

    import torch
    from fvcore.nn import FlopCountAnalysis, flop_count_table
    from torchvision.ops import DeformConv2d
    
    kernel_size = 3
    conv = DeformConv2d(64, 64, kernel_size=kernel_size, padding=1)
    x = torch.randn(1, 64, 64, 64)
    offset = torch.randn(1, 2 * kernel_size * kernel_size, 64, 64)
    
    flops = FlopCountAnalysis(conv, (x, offset))
    print(flop_count_table(flops, max_depth=1))
    
    | module   | #parameters or shape   | #flops   |
    |:---------|:-----------------------|:---------|
    | model    | 36.928K                | 0        |
    |  weight  |  (64, 64, 3, 3)        |          |
    |  bias    |  (64,)                 |          |
    
    opened by kenmbkr 2
  • baddbmm not supported

    baddbmm not supported

    As per title, baddbmm is not supported and is quite common

    Can submit PR with below unless any issues/concerns...

    def baddbmm_flop_jit(inputs: List[Any], outputs: List[Any]) -> Number:
        """
        Count flops for fully connected layers.
        """
        input_shapes = [get_shape(v) for v in inputs[1:3]]
        n, c, t = input_shapes[0]
        d = input_shapes[-1][-1]
        flop = n * c * t * d
        return flop
    
    opened by rwightman 0
  • fix shapely deprecation warning

    fix shapely deprecation warning

    Fixes deprecation warning as per https://github.com/facebookresearch/fvcore/issues/103.

    Linted/blacked + tests pass locally, although I don't believe there is a test case that covers this anyway (the existing transform works, but it will print a warning every time).

    CLA Signed 
    opened by jveitchmichaelis 0
  • Memory leak?

    Memory leak?

    Hello, thank you so much for your work.

    I'm trying to use the FlopCountAnalysis class but I'm not able to free the GPU memory used.

    As a minimal example, without the FlopCountAnalysis I can do something like:

    from transformers import AutoModel
    import torch
    
    model = AutoModel.from_pretrained('dccuchile/bert-base-spanish-wwm-uncased')
    query = torch.randint(low=0, high=20, size=(8, 16))
    
    print(torch.cuda.memory_allocated())
    
    model.to("cuda:0")
    query = query.to("cuda:0")
    
    print(torch.cuda.memory_allocated())
    
    del model
    del query
    
    print(torch.cuda.memory_allocated())
    

    And that prints "0", "439937024", "0".

    When using the FlopCountAnalysis:

    from transformers import AutoModel
    import torch
    from fvcore.nn import FlopCountAnalysis
    
    model = AutoModel.from_pretrained('dccuchile/bert-base-spanish-wwm-uncased')
    query = torch.randint(low=0, high=20, size=(8, 16))
    
    print(torch.cuda.memory_allocated())
    
    model.to("cuda:0")
    query = query.to("cuda:0")
    
    print(torch.cuda.memory_allocated())
    
    counter = FlopCountAnalysis(model, inputs=query)
    total = counter.total()
    
    print(torch.cuda.memory_allocated())
    
    del model
    del query
    del counter
    del total
    
    print(torch.cuda.memory_allocated())
    

    It shows "0", "439937024", "530033664", "530033664". I expect the final memory allocated to be 0 again.

    I also tried with:

    gc.collect()
    torch.cuda.empty_cache()
    

    at the end, but the result was the same.

    Is there a proper way to free the memory?

    Thank you.

    opened by josecannete 1
Owner
Meta Research
Meta Research
MMdnn is a set of tools to help users inter-operate among different deep learning frameworks. E.g. model conversion and visualization. Convert models between Caffe, Keras, MXNet, Tensorflow, CNTK, PyTorch Onnx and CoreML.

MMdnn MMdnn is a comprehensive and cross-framework tool to convert, visualize and diagnose deep learning (DL) models. The "MM" stands for model manage

Microsoft 5.7k Jan 9, 2023
A collection of pre-trained StyleGAN2 models trained on different datasets at different resolution.

Awesome Pretrained StyleGAN2 A collection of pre-trained StyleGAN2 models trained on different datasets at different resolution. Note the readme is a

Justin 1.1k Dec 24, 2022
HackBMU-5.0-Team-Ctrl-Alt-Elite - HackBMU 5.0 Team Ctrl Alt Elite

HackBMU-5.0-Team-Ctrl-Alt-Elite The search is over. We present to you ‘Health-A-

null 3 Feb 19, 2022
GluonMM is a library of transformer models for computer vision and multi-modality research

GluonMM is a library of transformer models for computer vision and multi-modality research. It contains reference implementations of widely adopted baseline models and also research work from Amazon Research.

null 42 Dec 2, 2022
Official codebase for ICLR oral paper Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling

CLIORA This is the official codebase for ICLR oral paper: Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling. We introduce

Bo Wan                                             32 Dec 23, 2022
Reference implementation of code generation projects from Facebook AI Research. General toolkit to apply machine learning to code, from dataset creation to model training and evaluation. Comes with pretrained models.

This repository is a toolkit to do machine learning for programming languages. It implements tokenization, dataset preprocessing, model training and m

Facebook Research 408 Jan 1, 2023
This repo contains research materials released by members of the Google Brain team in Tokyo.

Brain Tokyo Workshop ?? ?? This repo contains research materials released by members of the Google Brain team in Tokyo. Past Projects Weight Agnostic

Google 1.2k Jan 2, 2023
TianyuQi 10 Dec 11, 2022
Code for Private Recommender Systems: How Can Users Build Their Own Fair Recommender Systems without Log Data? (SDM 2022)

Private Recommender Systems: How Can Users Build Their Own Fair Recommender Systems without Log Data? (SDM 2022) We consider how a user of a web servi

joisino 20 Aug 21, 2022
A python script to convert images to animated sus among us crewmate twerk jifs as seen on r/196

img_sussifier A python script to convert images to animated sus among us crewmate twerk jifs as seen on r/196 Examples How to use install python pip i

null 41 Sep 30, 2022
Template repository for managing machine learning research projects built with PyTorch-Lightning

Tutorial Repository with a minimal example for showing how to deploy training across various compute infrastructure.

Sidd Karamcheti 3 Feb 11, 2022
Detectron2 is FAIR's next-generation platform for object detection and segmentation.

Detectron2 is Facebook AI Research's next generation software system that implements state-of-the-art object detection algorithms. It is a ground-up r

Facebook Research 23.3k Jan 8, 2023
ICLR 2021, Fair Mixup: Fairness via Interpolation

Fair Mixup: Fairness via Interpolation Training classifiers under fairness constraints such as group fairness, regularizes the disparities of predicti

Ching-Yao Chuang 49 Nov 22, 2022
PyTorch3D is FAIR's library of reusable components for deep learning with 3D data

Introduction PyTorch3D provides efficient, reusable components for 3D Computer Vision research with PyTorch. Key features include: Data structure for

Facebook Research 6.8k Jan 1, 2023
Fair Recommendation in Two-Sided Platforms

Fair Recommendation in Two-Sided Platforms

gourabgggg 1 Nov 10, 2021
PySlowFast: video understanding codebase from FAIR for reproducing state-of-the-art video models.

PySlowFast PySlowFast is an open source video understanding codebase from FAIR that provides state-of-the-art video classification models with efficie

Meta Research 5.3k Jan 3, 2023
A FAIR dataset of TCV experimental results for validating edge/divertor turbulence models.

TCV-X21 validation for divertor turbulence simulations Quick links Intro Welcome to TCV-X21. We're glad you've found us! This repository is designed t

null 0 Dec 18, 2021
Regulatory Instruments for Fair Personalized Pricing.

Fair pricing Source code for WWW 2022 paper Regulatory Instruments for Fair Personalized Pricing. Installation Requirements Linux with Python >= 3.6 p

Renzhe Xu 6 Oct 26, 2022