Distilling Knowledge via Knowledge Review, CVPR 2021

Overview

ReviewKD

Distilling Knowledge via Knowledge Review

Pengguang Chen, Shu Liu, Hengshuang Zhao, Jiaya Jia

This project provides an implementation for the CVPR 2021 paper "Distilling Knowledge via Knowledge Review"

CIFAR-100 Classification

Please refer to CIFAR-100 for more details.

ImageNet Classification

Please refer to ImageNet for more details.

COCO Detection

Coming soon

COCO Instance Segmentation

Coming soon

Citation

Please consider citing ReviewKD in your publications if it helps your research.

@inproceedings{chen2021reviewkd,
    title={Distilling Knowledge via Knowledge Review},
    author={Pengguang Chen, Shu Liu, Hengshuang Zhao, and Jiaya Jia},
    booktitle={IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
    year={2021},
}
Comments
  • Questions about detection pretrained weights

    Questions about detection pretrained weights

    I want to make sure that the file mv2-r50.pth in the detection pretrained weights you provided contains both teacher's and student's weights.

    Thank you!

    opened by Coldfire93 7
  • Log file of loss values

    Log file of loss values

    Hi Author, thanks for your excellent work. I want to ask whether you can release a log file that includes loss values. Based on this file, I can check what‘s the loss change? It is better for the detection model. It would be the best for retinanet. Thank you!

    opened by hdjsjyl 2
  • Can we find the teacher_weights somewhere?

    Can we find the teacher_weights somewhere?

    When I run your scripts "reviewKD.sh" and "baseline.sh" in Cifar100. There's FileNotFoundError:

    FileNotFoundError: [Errno 2] No such file or directory: 'checkpoints/cifar100_wrn-40-2__baseline1_best.pt'
    Namespace(T=4.0, batch_size=128, ce_loss_weight=1.0, dataset='cifar100', epochs=240, gamma=0.1, kd_loss_weight=5.0, kd_warm_up=20.0, kl_loss_weight=1.0, lr=0.1, lr_adjust_step=[150, 180, 210], model='wrn-40-1', resume='', seed=148, suffix='reviewkd1', teacher='wrn-40-2', teacher_weight='checkpoints/cifar100_wrn-40-2__baseline1_best.pt', test=False, use_kl=False, wd=0.0005)
    

    Where could I find those weights or can you release the related teacher weights so that we can download and better configure our experiment environment.

    opened by Luodian 2
  • Realization of the knowledge review

    Realization of the knowledge review

    Hi, thanks for your great job! I wrote a kr version using paddle, could you please help see is there any problems? thank you!

    https://github.com/littletomatodonkey/code_scipts/blob/main/knowledge_review/knowledge_review.py

    I used conv_1x1 for all the channel transform and adaptative avg pool for the size transform.

    opened by littletomatodonkey 2
  • about teacher net

    about teacher net

    Thank you very much for your work!

    I have noticed that before distillation, the teacher networks are loaded with a pre-trained model. Is the teacher network fixed during distillation, I didn't find where this part of the code (like detach or i.requires_grad = False)

    opened by yyuxin 1
  • Knowledge distillation on RetinaNet

    Knowledge distillation on RetinaNet

    Hi authors, thanks for the great work. But the repository only includes object detectors on Faster RCNN. I want to know when the knowledge distillation of the object detector based on RetinaNet will be released? Thank you!

    opened by hdjsjyl 1
  • Where is the mobilenet baseline from

    Where is the mobilenet baseline from

    Hi, thanks for your great job! Where is the mobilenet baseline from? I train the mobilenet for 100epochs and the top1-acc is 69.4%, which seems higher than that provided in the article(68.8%).

    opened by littletomatodonkey 1
  • CVE-2007-4559 Patch

    CVE-2007-4559 Patch

    Patching CVE-2007-4559

    Hi, we are security researchers from the Advanced Research Center at Trellix. We have began a campaign to patch a widespread bug named CVE-2007-4559. CVE-2007-4559 is a 15 year old bug in the Python tarfile package. By using extract() or extractall() on a tarfile object without sanitizing input, a maliciously crafted .tar file could perform a directory path traversal attack. We found at least one unsantized extractall() in your codebase and are providing a patch for you via pull request. The patch essentially checks to see if all tarfile members will be extracted safely and throws an exception otherwise. We encourage you to use this patch or your own solution to secure against CVE-2007-4559. Further technical information about the vulnerability can be found in this blog.

    If you have further questions you may contact us through this projects lead researcher Kasimir Schulz.

    opened by TrellixVulnTeam 0
  • apply it on yolox

    apply it on yolox

    Thanks for your great work! Have you ever apply it on yolox? When i do like this, the loss of it is unstable.I used the output of neck(3 layers),and adapt the teacher channel with student ones.Looking for your reply.Thanks a lot. image

    opened by Thatboy7 1
  • Will KL-Divergence loss further improve the performance?

    Will KL-Divergence loss further improve the performance?

    Thank you for the nice work! I wonder if you have tried to use ReviewKD loss and KL-divergence loss together? Will the combination further improve the performance? If yes, would you like to share the results or the hyperparameters?

    opened by LiuDongyang6 1
  • shapes and out_shapes values in ReviewKD

    shapes and out_shapes values in ReviewKD

    To me, it's confusing, how to set the "shapes" and "out_shapes" when the student is ResNet18 and the teacher is ResNet34 on CIFAR-100.

    Is it shapes = out_shapes = [1, 8, 16, 32, 32]

    or, shapes = out_shapes = [1, 4, 8, 16, 32]

    opened by Nandan91 1
Owner
DV Lab
Deep Vision Lab
DV Lab
Fusion 360 Add-in that creates a pair of toothed curves that can be used to split a body and create two pieces that slide and lock together.

Fusion-360-Add-In-PuzzleSpline Fusion 360 Add-in that creates a pair of toothed curves that can be used to split a body and create two pieces that sli

Michiel van Wessem 1 Nov 15, 2021
Validate and transform various OCR file formats (hOCR, ALTO, PAGE, FineReader)

ocr-fileformat Validate and transform between OCR file formats (hOCR, ALTO, PAGE, FineReader) Installation Docker System-wide Usage CLI GUI API Transf

Universitätsbibliothek Mannheim 152 Dec 20, 2022
An advanced 2D image manipulation with features such as edge detection and image segmentation built using OpenCV

OpenCV-ToothPaint3-Advanced-Digital-Image-Editor This application named ‘Tooth Paint’ version TP_2020.3 (64-bit) or version 3 was developed within a w

JunHong 1 Nov 05, 2021
CRAFT-Pyotorch:Character Region Awareness for Text Detection Reimplementation for Pytorch

CRAFT-Reimplementation Note:If you have any problems, please comment. Or you can join us weChat group. The QR code will update in issues #49 . Reimple

453 Dec 28, 2022
OpenMMLab Text Detection, Recognition and Understanding Toolbox

Introduction English | 简体中文 MMOCR is an open-source toolbox based on PyTorch and mmdetection for text detection, text recognition, and the correspondi

OpenMMLab 3k Jan 07, 2023
Repositório para registro de estudo da biblioteca opencv (Python)

OpenCV (Python) Objetivo do Repositório: Registrar avanços no estudo da biblioteca opencv. O repositório estará aberto a qualquer pessoa e há tambem u

1 Jun 14, 2022
OCR system for Arabic language that converts images of typed text to machine-encoded text.

Arabic OCR OCR system for Arabic language that converts images of typed text to machine-encoded text. The system currently supports only letters (29 l

Hussein Youssef 144 Jan 05, 2023
基于Paddle框架的PSENet复现

PSENet-Paddle 基于Paddle框架的PSENet复现 本项目基于paddlepaddle框架复现PSENet,并参加百度第三届论文复现赛,将在2021年5月15日比赛完后提供AIStudio链接~敬请期待 AIStudio链接 参考项目: whai362-PSENet 环境配置 本项目

QuanHao Guo 4 Apr 24, 2022
OpenGait is a flexible and extensible gait recognition project

A flexible and extensible framework for gait recognition. You can focus on designing your own models and comparing with state-of-the-arts easily with the help of OpenGait.

Shiqi Yu 335 Dec 22, 2022
CellProfiler is a open-source application for biological image analysis

CellProfiler is a free open-source software designed to enable biologists without training in computer vision or programming to quantitatively measure phenotypes from thousands of images automaticall

CellProfiler 732 Dec 23, 2022
Code for generating synthetic text images as described in "Synthetic Data for Text Localisation in Natural Images", Ankush Gupta, Andrea Vedaldi, Andrew Zisserman, CVPR 2016.

SynthText Code for generating synthetic text images as described in "Synthetic Data for Text Localisation in Natural Images", Ankush Gupta, Andrea Ved

Ankush Gupta 1.8k Dec 28, 2022
Tools for manipulating and evaluating the hOCR format for representing multi-lingual OCR results by embedding them into HTML.

hocr-tools About About the code Installation System-wide with pip System-wide from source virtualenv Available Programs hocr-check -- check the hOCR f

OCRopus 285 Dec 08, 2022
Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation

This is the official implementation of "Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation". For more details, please

Pengyuan Lyu 309 Dec 06, 2022
Code for paper "Role-based network embedding via structural features reconstruction with degree-regularized constraint"

Role-based network embedding via structural features reconstruction with degree-regularized constraint Train python main.py --dataset brazil-flights

wang zhang 1 Jun 28, 2022
Handwritten Character Recognition using CNN

Handwritten Character Recognition using CNN Problem Definition The main objective of this project is to solve the problem of handwritten character rec

Mohit Kaushik 4 Mar 02, 2022
Toolbox for OCR post-correction

Ochre Ochre is a toolbox for OCR post-correction. Please note that this software is experimental and very much a work in progress! Overview of OCR pos

National Library of the Netherlands / Research 117 Nov 10, 2022
A Python script to capture images from multiple webcams at once and save them into your local machine

Capturing multiple images at once from Webcam Using OpenCV Capture multiple image by accessing the webcam of your system and save it to your machine.

Fazal ur Rehman 2 Apr 16, 2022
Code for the ACL2021 paper "Combining Static Word Embedding and Contextual Representations for Bilingual Lexicon Induction"

CSCBLI Code for our ACL Findings 2021 paper, "Combining Static Word Embedding and Contextual Representations for Bilingual Lexicon Induction". Require

Jinpeng Zhang 12 Oct 08, 2022
Convert Text-to Handwriting Using Python

Convert Text-to Handwriting Using Python Description In this project we'll use python library that's "pywhatkit" for converting text to handwriting. t

8 Nov 19, 2022
Official code for ROCA: Robust CAD Model Retrieval and Alignment from a Single Image (CVPR 2022)

ROCA: Robust CAD Model Alignment and Retrieval from a Single Image (CVPR 2022) Code release of our paper ROCA. Check out our video, paper, and website

123 Dec 25, 2022