All Projects → pathak22 → Zeroshot Imitation

pathak22 / Zeroshot Imitation

Licence: bsd-2-clause
[ICLR 2018] TensorFlow code for zero-shot visual imitation by self-supervised exploration

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Zeroshot Imitation

React Site Nav
A kick ass site menu powered by styled components inspired by Stripe.
Stars: ✭ 155 (-17.11%)
Mutual labels:  navigation
Rtrootnavigationcontroller
Implicitly make every view controller has its own navigation bar
Stars: ✭ 2,066 (+1004.81%)
Mutual labels:  navigation
Onenav
使用PHP开发的简约导航/书签管理系统。
Stars: ✭ 160 (-14.44%)
Mutual labels:  navigation
Locationsimulator
MacOS 10.15 / 11.0 application to spoof your iOS / iPadOS or iPhoneSimulator device location. WatchOS and TvOS are partially supported.
Stars: ✭ 157 (-16.04%)
Mutual labels:  navigation
Motion
Navigation and insight in Go
Stars: ✭ 163 (-12.83%)
Mutual labels:  navigation
React Router Native Stack
A stack navigation component for react-router-native
Stars: ✭ 171 (-8.56%)
Mutual labels:  navigation
Redux Saga Router
A router for Redux Saga
Stars: ✭ 153 (-18.18%)
Mutual labels:  navigation
Cucco
Text normalization library for Python
Stars: ✭ 185 (-1.07%)
Mutual labels:  manipulation
Persistentbottomnavbar
A highly customizable persistent bottom navigation bar for Flutter
Stars: ✭ 165 (-11.76%)
Mutual labels:  navigation
The Movie Db Kotlin
The Movie DB app using Kotlin with updated Android features
Stars: ✭ 176 (-5.88%)
Mutual labels:  navigation
Image
PHP Image Manipulation
Stars: ✭ 12,298 (+6476.47%)
Mutual labels:  manipulation
Gallerit
A sample Android gallery to search images posted on Reddit built using modern Android development tools (Architecture Components, MVVM, Coroutines, Flow, Navigation, Retrofit, Room, Koin)
Stars: ✭ 153 (-18.18%)
Mutual labels:  navigation
Advio
An Authentic Dataset for Visual-Inertial Odometry
Stars: ✭ 170 (-9.09%)
Mutual labels:  navigation
Dagon
Advanced Hash Manipulation
Stars: ✭ 155 (-17.11%)
Mutual labels:  manipulation
Acorn
Mastering Android navigation 🐿
Stars: ✭ 179 (-4.28%)
Mutual labels:  navigation
React Native Nav Transition
React Native Nav Transition
Stars: ✭ 154 (-17.65%)
Mutual labels:  navigation
React Native Navigation
A complete native navigation solution for React Native
Stars: ✭ 12,387 (+6524.06%)
Mutual labels:  navigation
Arouter
💪 A framework for assisting in the renovation of Android componentization (帮助 Android App 进行组件化改造的路由框架)
Stars: ✭ 13,587 (+7165.78%)
Mutual labels:  navigation
Trailersapp
A simple demo project for The Movie DB based on MVVM clean architecture.
Stars: ✭ 180 (-3.74%)
Mutual labels:  navigation
Marine Api
Java Marine API - NMEA 0183 library for Java
Stars: ✭ 174 (-6.95%)
Mutual labels:  navigation

Zero-Shot Visual Imitation

In ICLR 2018 [Project Website] [Videos]

Deepak Pathak*, Parsa Mahmoudieh*, Guanghao Luo*, Pulkit Agrawal*, Dian Chen,
Yide Shentu, Evan Shelhamer, Jitendra Malik, Alexei A. Efros, Trevor Darrell
University of California, Berkeley

This is the implementation for the ICLR 2018 paper Zero Shot Visual Imitation. We propose an alternative paradigm wherein an agent first explores the world without any expert supervision and then distills its experience into a goal-conditioned skill policy with a novel forward consistency loss. The key insight is the intuition that, for most tasks, reaching the goal is more important than how it is reached.

@inproceedings{pathakICLR18zeroshot,
    Author = {Pathak, Deepak and
    Mahmoudieh, Parsa and Luo, Guanghao and
    Agrawal, Pulkit and Chen, Dian and
    Shentu, Yide and Shelhamer, Evan and
    Malik, Jitendra and Efros, Alexei A. and
    Darrell, Trevor},
    Title = {Zero-Shot Visual Imitation},
    Booktitle = {ICLR},
    Year = {2018}
}

1) Installation and Usage

Requirements

git clone -b master --single-branch https://github.com/pathak22/zeroshot-imitation.git
cd zeroshot-imitation/

# (1) Install requirements:
sudo apt-get install python-tk
virtualenv venv
source $PWD/venv/bin/activate
pip install --upgrade pip
pip install numpy
pip install -r src/requirements.txt

# (2) Install Caffe: http://caffe.berkeleyvision.org/install_apt.html
git clone https://github.com/BVLC/caffe.git
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install --no-install-recommends libboost-all-dev
cd caffe/  # edit Makefile.config
make all -j
make pycaffe
make test -j
make runtest -j
# Note: If you are using conda, then its easy:
# $ conda install -c conda-forge caffe
# $ conda install -c conda-forge opencv=3.2.0

Data setup

Data can be downloaded at google drive link. This is the same data as used in Combining Self-Supervised Learning and Imitation for Vision-Based Rope Manipulation.

You will need the rope dataset from this download.

Then, download the AlexNet weights, bvlc_alexnet.npy from here

  • put rope data in data/datasets/rope9
  • it is important to name it rope9!
  • put bvlc_alexnet.npy in nets/bvlc_alexnet.npy

Training

python -i train.py

# fwd_consist=True to turn foward consistency loss on,
# or leave it False for to just learn the inverse model
r = RopeImitator('name', fwd_consist=True)

# to train baseline, turn baseline_reg=True. note that fwd_consist should be turned on as well (historical accident)
r = RopeImitator('name', fwd_consist=True, baseline_reg=True)

# Restore old models, if any. default of model_name is just current model name
r.restore(iteration, model_name='name of old model')

# training
r.train(num_iters)

Note that the accuracies presented is not a good measure of real world performance. The purpose of forward consistency is to learn actions consistent with state transistions, which don't necessarily have to be the ground truth actions.

2) Other resources

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].