All Projects → jyh2986 → Active-Shift-TF

jyh2986 / Active-Shift-TF

Licence: Apache-2.0 license
Tensorflow implementation for Active Shift Layer(ASL)

Programming Languages

C++
36643 projects - #6 most used programming language
Cuda
1817 projects
python
139335 projects - #7 most used programming language
shell
77523 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Active-Shift-TF

Learning-Lab-C-Library
This library provides a set of basic functions for different type of deep learning (and other) algorithms in C.This deep learning library will be constantly updated
Stars: ✭ 20 (-9.09%)
Mutual labels:  convolutional-layers, deeplearning
Yolo-v2-pytorch
YOLO for object detection tasks
Stars: ✭ 327 (+1386.36%)
Mutual labels:  deeplearning
Implicit-Internal-Video-Inpainting
[ICCV 2021]: IIVI: Internal Video Inpainting by Implicit Long-range Propagation
Stars: ✭ 190 (+763.64%)
Mutual labels:  deeplearning
DeepPixel
An open-source Python package for making computer vision and image processing simpler
Stars: ✭ 21 (-4.55%)
Mutual labels:  deeplearning
type4py
Type4Py: Deep Similarity Learning-Based Type Inference for Python
Stars: ✭ 41 (+86.36%)
Mutual labels:  deeplearning
machine-learning-notebook-series
Jupyter notebook series for machine learning and deep learning.
Stars: ✭ 14 (-36.36%)
Mutual labels:  deeplearning
datascience-mashup
In this repo I will try to gather all of the projects related to data science with clean datasets and high accuracy models to solve real world problems.
Stars: ✭ 36 (+63.64%)
Mutual labels:  deeplearning
kaggle
Kaggle solutions
Stars: ✭ 17 (-22.73%)
Mutual labels:  deeplearning
Paddle-SEQ
低代码序列数据处理框架,最短两行即可完成训练任务!
Stars: ✭ 13 (-40.91%)
Mutual labels:  deeplearning
Deep-Reinforcement-Learning-for-Boardgames
Master Thesis project that provides a training framework for two player games. TicTacToe and Othello have already been implemented.
Stars: ✭ 17 (-22.73%)
Mutual labels:  deeplearning
Groundbreaking-Papers
ML Research paper summaries, annotated papers and implementation walkthroughs
Stars: ✭ 90 (+309.09%)
Mutual labels:  deeplearning
autodeepnet
Automated deep learning!
Stars: ✭ 24 (+9.09%)
Mutual labels:  deeplearning
knime-deeplearning
KNIME Deep Learning Integration
Stars: ✭ 19 (-13.64%)
Mutual labels:  deeplearning
godpaper
🐵 An AI chess-board-game framework(by many programming languages) implementations.
Stars: ✭ 40 (+81.82%)
Mutual labels:  deeplearning
dst
yet another custom data science template via cookiecutter
Stars: ✭ 59 (+168.18%)
Mutual labels:  deeplearning
blockchain-predictor
Deep leraning cryptocurrency prediction with blockchain-based dataset
Stars: ✭ 34 (+54.55%)
Mutual labels:  deeplearning
continuous Bernoulli
There are C language computer programs about the simulator, transformation, and test statistic of continuous Bernoulli distribution. More than that, the book contains continuous Binomial distribution and continuous Trinomial distribution.
Stars: ✭ 22 (+0%)
Mutual labels:  deeplearning
air writing
Online Hand Writing Recognition using BLSTM
Stars: ✭ 26 (+18.18%)
Mutual labels:  deeplearning
BMW-IntelOpenVINO-Segmentation-Inference-API
This is a repository for a semantic segmentation inference API using the OpenVINO toolkit
Stars: ✭ 31 (+40.91%)
Mutual labels:  deeplearning
3-D-Scene-Graph
3D scene graph generator implemented in Pytorch.
Stars: ✭ 52 (+136.36%)
Mutual labels:  deeplearning

Active Shift Layer

This repository contains the implementation for Active Shift Layer (ASL).

Please see the paper Constructing Fast Network through Deconstruction of Convolution.

This paper is accepted in NIPS 2018 as spotlight session (slide, poster)

The code is based on Tensorflow
Caffe implementation is also available at ASL-Caffe

Introduction

Deconstruction

Naive spatial convolution can be deconstructed into a shift layer and a 1x1 convolution.

This figure shows the basic concept of deconstruction. Basic Concept

Active Shift Layer (ASL)

For the efficient shift, we proposed active shift layer.

  • Uses depthwise shift
  • Introduced new shift parameters for each channel
  • New shift parameters(alpha, beta) are learnable

Prerequisite

Note that this code is tested only in the environment decribed below. Mismatched versions does not guarantee correct execution.

  • Tensorflow 1.4.1
  • Cuda 8.0
  • g++ 4.9.3

Build

  1. Edit CUDA_HOME in build.sh and build-spec for your GPU
  2. run >./build.sh
  3. If there is an error with cuda_config.h, run "cp ./lib/cuda_config.h $TF_INC/tensorflow/stream_executor/cuda/"

Testing

  1. run >python test_forward_ASL.py

    • It just shows the results of forwarding random tensor. You should not have any error message.
  2. run >python test_backward_ASL.py

    • You should get "OK" for 3 tests.

Usage

  1. import lib.active_shift2d_op as active_shift2d_op
  2. use active_shift2d_op.active_shift2d_op(input_tensor, shift_tensor, strides, paddings)
    • Please see test_forward_ASL.py
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].