Microsoft Research Blog

Artificial intelligence

  1. Multi-Granularity Reference-Aided Attentive Feature Aggregation for Video-Based Person Re-Identification 

    June 14, 2020 | Zhizheng Zhang, Cuiling Lan, Wenjun Zeng, and Zhibo Chen

    Video-based person re-identification (reID) aims at matching the same person across video clips. It is a challenging task due to the existence of redundancy among frames, newly revealed appearance, occlusion, and motion blurs. In this paper, we propose an attentive feature aggregation module, namely Multi-Granularity…

  2. Bringing Old Photos Back to Life 

    June 13, 2020

    We propose to restore old photos that suffer from severe degradation through a deep learning approach. Unlike conventional restoration tasks that can be solved through supervised learning, the degradation in real photos is complex and the domain gap between synthetic images and real old photos…

  3. Dynamic Convolution: Attention Over Convolution Kernels 

    June 13, 2020

    Light-weight convolutional neural networks (CNNs) suffer performance degradation as their low computational budgets constrain both the depth (number of convolution layers) and the width (number of channels) of CNNs, resulting in limited representation capability. To address this issue, we present Dynamic Convolution, a new design…

  4. Self-Robust 3D Point Recognition via Gather-Vector Guidance 

    June 12, 2020

    In this paper, we look into the problem of 3D adversary attack, and propose to leverage the internal properties of the point clouds and the adversarial examples to design a new self-robust deep neural network (DNN) based 3D recognition systems. As a matter of fact,…

  5. Robust Superpixel-Guided Attentional Adversarial Attack 

    June 12, 2020

    Deep Neural Networks are vulnerable to adversarial samples, which can fool classifiers by adding small perturbations onto the original image. Since the pioneering optimization-based adversarial attack method, many following methods have been proposed in the past several years. However most of these methods add perturbations…

  6. Typilus: Neural Type Hints 

    June 11, 2020 | Miltos Allamanis, Earl T. Barr, Soline Ducousso, and Zheng Gao

    Type inference over partial contexts in dynamically typed languages is challenging. In this work, we present a graph neural network model that predicts types by probabilistically reasoning over a program’s structure, names, and patterns. The network uses deep similarity learning to learn a TypeSpace —…

  7. MC-BERT: Efficient Language Pre-Training via a Meta Controller 

    June 10, 2020

    Pre-trained contextual representations (e.g., BERT) have become the foundation to achieve state-of-the-art results on many NLP tasks. However, large-scale pre-training is computationally expensive. ELECTRA, an early attempt to accelerate pre-training, trains a discriminative model that predicts whether each input token was replaced by a generator.…

  8. 3-D Context Entropy Model for Improved Practical Image Compression 

    June 1, 2020

    In this paper, we present our image compression framework designed for CLIC 2020 competition. Our method is based on Variational AutoEncoder (VAE) architecture which is strengthened with residual structures. In short, we make three noteworthy improvements here. First, we propose a 3-D context entropy model…

  9. Learned Video Compression with Feature-level Residuals 

    June 1, 2020

    In this paper, we present an end-to-end video compression network for P-frame challenge on CLIC. We focus on deep neural network (DNN) based video compression, and improve the current frameworks from three aspects. First, we notice that pixel space residuals is sensitive to the prediction…

  10. IntelliCode Compose: Code Generation Using Transformer 

    May 15, 2020 | Alexey Svyatkovskiy, Shao Kun Deng, Shengyu Fu, and Neel Sundaresan

    In software development through integrated development environments (IDEs), code completion is one of the most widely used features. Nevertheless, majority of integrated development environments only support completion of methods and APIs, or arguments. In this paper, we introduce IntelliCode Compose - a general-purpose multilingual code…