Skip to content
/ KataCV Public

用JAX对计算机视觉(CV)中的经典深度神经网络、目标识别、OCR,自然语言处理(NLP)中的经典模型进行复现

License

Notifications You must be signed in to change notification settings

wty-yy/KataCV

Repository files navigation

KataCV

原replicate-papers改名为KataCV,用于复现经典CV文献,当前用于个人测试

图像分类

模型 数据集 完成情况 框架 Paper/Note
LeNet-5 MNIST OK TF2 Paper
AlexNet ImageNet OK 参数存于网盘 TF2 Paper
VGG16 ImageNet OK(但是调参有问题,初始lr过大) JAX Paper
GoogleNet ImageNet OK (val-top5: 78.17%, top1: 53.78%) JAX Paper
ResNet50 ImageNet OK (val-top5: 92.53%, top1: 75.47%) JAX Paper
YOLOv1-DarkNet ImageNet OK (val-top5: 89.39%, top1: 69.1%) JAX Paper/Blog
YOLOv3-DarkNet53 ImageNet OK (val-top5: 92.6%, top1: 75.77%) JAX Paper/Blog
YOLOv4-CSPDarkNet53 ImageNet OK (val-top5: 93.16%, top1: 76.55%) JAX Paper/Network Struct
G-VAE (VAE) MNIST,cifar10,celeba OK JAX PDF/Blog/Result

目标检测

模型 数据集 完成情况 框架 Paper/Note
YOLOv1 VOC PASCAL OK (val-mAP: 0.53, coco-mAP: 0.28) JAX Paper/Blog
YOLOv3 VOC PASCAL
COCO
OK (PASCAL: val-mAP: 0.66, coco-mAP: 0.39
COCO: val-mAP: 0.42, coco-mAP: 0.25)
JAX Paper/Blog
YOLOv4 COCO Wrong Network Struct JAX Paper/Blog
YOLOv5 COCO OK (COCO: coco-mAP: 44.64%) JAX Offical/Blog/WandB

OCR

模型 数据集 完成情况 框架 Paper/Note
CTCLoss & CRNN MJsynth OK (val accuray: 63 words: 91.23%,
(lower) 37 words: 94.28%)
JAX CTCLoss Paper/CRNN Paper/Blog

权重参数保存位置(不完整):Google网盘-Network Weight

NLP

模型 数据集 完成情况 框架 Paper/Note
miniGPT (GPT-1) 四大名著及莎士比亚文章 OK/WandB Result JAX Paper1: Attention Is All You Need/Paper2: Improving Language Understanding by Generative Pre-Training/Blog

权重参数保存位置(不完整):[Google网盘-Network Weight](

ImageNet2012 Get Started

对Imagenet2012数据集的解包方法如下:

下载数据集(训练集:ILSVRC2012_img_train.tar,验证集:ILSVRC2012_img_val.tar),并根据 知乎 - ImageNet(ISLVRC2012)数据集 这篇文章对压缩包进行解压并分类。

假设数据集文件保存在 path/your/imagenet 下,在该文件夹下分别有 train/, val/ 文件夹,执行以下代码将数据集转化为tfrecord文件(加快读取速度):

python katacv/utils/imagenet/make_label_json.py --path-origin-dataset path/your/imagenet  # 在/logs文件夹下生成两个json文件,对标签进行编号
python katacv/utils/imagenet/translate_tfrecord.py --path-origin-dataset path/your/imagenet --subfolder-name train  # 将train图片转为tfrecord,用时较长约11h
python katacv/utils/imagenet/translate_tfrecord.py --path-origin-dataset path/your/imagenet --subfolder-name val  # 将val图片转为tfrecord
# 生成的tfrecord文件保存在path/your/imagenet/tfrecord文件夹下
python katacv/utils/imagenet/check_tfrecord.py --path-origin-tfrecord path/your/imagenet --subfolder-name train  # 检查train类别中tfrecord正确性
python katacv/utils/imagenet/check_tfrecord.py --path-origin-tfrecord path/your/imagenet --subfolder-name val  # 检查val类别中tfrecord正确性
python katacv/utils/imagenet/build_dataset.py --path-dataset-tfrecord path/your/imagenet  # 建立数据集,直接执行该文件会在训练集中随机采样5个训练图片,并现实其翻译后的标签名

About

用JAX对计算机视觉(CV)中的经典深度神经网络、目标识别、OCR,自然语言处理(NLP)中的经典模型进行复现

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published