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

Installations for running keras-theano on GPU Upgrade pip and install opencv2 cd ~ pip install --upgrade pip pip install opencv-python Upgrade keras

Berat Kurar Barakat 14 Sep 30, 2022
Run tesseract with the tesserocr bindings with @OCR-D's interfaces

ocrd_tesserocr Crop, deskew, segment into regions / tables / lines / words, or recognize with tesserocr Introduction This package offers OCR-D complia

OCR-D 38 Oct 14, 2022
零样本学习测评基准,中文版

ZeroCLUE 零样本学习测评基准,中文版 零样本学习是AI识别方法之一。 简单来说就是识别从未见过的数据类别,即训练的分类器不仅仅能够识别出训练集中已有的数据类别, 还可以对于来自未见过的类别的数据进行区分。 这是一个很有用的功能,使得计算机能够具有知识迁移的能力,并无需任何训练数据, 很符合现

CLUE benchmark 27 Dec 10, 2022
QED-C: The Quantum Economic Development Consortium provides these computer programs and software for use in the fields of quantum science and engineering.

Application-Oriented Performance Benchmarks for Quantum Computing This repository contains a collection of prototypical application- or algorithm-cent

SRI International 67 Nov 30, 2022
Vietnamese Language Detection and Recognition

Table of Content Introduction (Khôi viết) Dataset (đổi link thui thành 3k5 ảnh mình) Getting Started (An Viết) Requirements Usage Example Training & E

6 May 27, 2022
Camelot: PDF Table Extraction for Humans

Camelot: PDF Table Extraction for Humans Camelot is a Python library that makes it easy for anyone to extract tables from PDF files! Note: You can als

Atlan Technologies Pvt Ltd 3.3k Dec 31, 2022
Morphological edge detection or object's boundary detection using erosion and dialation in OpenCV python

Morphologycal-edge-detection-using-erosion-and-dialation the task is to detect object boundary using erosion or dialation . Here, use the kernel or st

Tamzid hasan 3 Nov 25, 2022
The virtual calculator will be above the live streaming from your camera

The virtual calculator is above the live streaming from my camera usb , the program first detect my hand and in each frame calculate the distance between two finger ,if the distance is lower than the

gasbaoui mohammed al amine 5 Jul 01, 2022
YOLOv5 in DOTA with CSL_label.(Oriented Object Detection)(Rotation Detection)(Rotated BBox)

YOLOv5_DOTA_OBB YOLOv5 in DOTA_OBB dataset with CSL_label.(Oriented Object Detection) Datasets and pretrained checkpoint Datasets : DOTA Pretrained Ch

1.1k Dec 30, 2022
This repository provides train&test code, dataset, det.&rec. annotation, evaluation script, annotation tool, and ranking.

SCUT-CTW1500 Datasets We have updated annotations for both train and test set. Train: 1000 images [images][annos] Additional point annotation for each

Yuliang Liu 600 Dec 18, 2022
Um RPG de texto orientado a objetos.

RPG de texto Um RPG de texto orientado a objetos, sem história. Um RPG (Role-playing game) baseado em texto em que você pode viajar para alguns locais

Vinicius 3 Oct 05, 2022
A Tensorflow model for text recognition (CNN + seq2seq with visual attention) available as a Python package and compatible with Google Cloud ML Engine.

Attention-based OCR Visual attention-based OCR model for image recognition with additional tools for creating TFRecords datasets and exporting the tra

Ed Medvedev 933 Dec 29, 2022
Document blur detection based on Laplacian operator and text detection.

Document Blur Detection For general blurred image, using the variance of Laplacian operator is a good solution. But as for the blur detection of docum

JoeyLr 5 Oct 20, 2022
Contextual speed detection for python

Speed Prediction using Optical Flow and 2D CNN About the challenge: Comma.AI Speed Challenge This challenge was developed by Comma.AI to predict the s

Mahimana Bhatt 2 Dec 16, 2021
A python programusing Tkinter graphics library to randomize questions and answers contained in text files

RaffleOfQuestions Um programa simples em python, utilizando a biblioteca gráfica Tkinter para randomizar perguntas e respostas contidas em arquivos de

Gabriel Ferreira Rodrigues 1 Dec 16, 2021
The official code for the ICCV-2021 paper "Speech Drives Templates: Co-Speech Gesture Synthesis with Learned Templates".

SpeechDrivesTemplates The official repo for the ICCV-2021 paper "Speech Drives Templates: Co-Speech Gesture Synthesis with Learned Templates". [arxiv

Qian Shenhan 53 Dec 23, 2022
Train custom VR face tracking parameters

Pal Buddy Guy: The anipal's best friend This is a small script to improve upon the tracking capabilities of the Vive Pro Eye and facial tracker. You c

7 Dec 12, 2021
A little but useful tool to explore OCR data extracted with `pytesseract` and `opencv`

Screenshot OCR Tool Extracting data from screen time screenshots in iOS and Android. We are exploring 3 options: Simple OCR with no text position usin

Gabriele Marini 1 Dec 07, 2021
MeshToGeotiff - A fast Python algorithm to convert a 3D mesh into a GeoTIFF

MeshToGeotiff - A fast Python algorithm to convert a 3D mesh into a GeoTIFF Python class for converting (very fast) 3D Meshes/Surfaces to Raster DEMs

8 Sep 10, 2022
Image processing is one of the most common term in computer vision

Image processing is one of the most common term in computer vision. Computer vision is the process by which computers can understand images and videos, and how they are stored, manipulated, and retri

Happy N. Monday 3 Feb 15, 2022