มีอะไรใหม่
การแนะนำ
โมเดล
คุณสมบัติ
ผลลัพธ์
การเริ่มต้นใช้งาน (เอกสารประกอบ)
ฝึกอบรม การตรวจสอบความถูกต้อง สคริปต์การอนุมาน
ทรัพยากร PyTorch ที่ยอดเยี่ยม
ใบอนุญาต
การอ้างอิง
การใช้แอมป์ไฟฉายการล้างข้อมูลเพื่อหลีกเลี่ยงการโทรเฉพาะของ cuda รวมการสนับสนุนสำหรับอุปกรณ์ Ascend (NPU) จาก MengqingCao ที่น่าจะใช้งานได้ในขณะนี้ใน PyTorch 2.5 พร้อมคุณสมบัติการโหลดอัตโนมัติของส่วนขยายอุปกรณ์ใหม่ ทดสอบ Intel Arc (XPU) ใน Pytorch 2.5 ด้วยและใช้งานได้ (ส่วนใหญ่)
แก้ไขข้อผิดพลาดในการนำเข้าจากเส้นทางที่เลิกใช้แล้ว timm.models.registry
เพิ่มลำดับความสำคัญของคำเตือนการเลิกใช้งานที่มีอยู่ให้มองเห็นได้
น้ำหนักพอร์ตของ InternViT-300M (https://huggingface.co/OpenGVLab/InternViT-300M-448px) เพื่อ timm
เป็น vit_intern300m_patch14_448
การเปิดใช้งานล่วงหน้า (ResNetV2) เวอร์ชัน 18/18d/34/34d ResNet รุ่น defs ที่เพิ่มตามคำขอ (น้ำหนักที่รอดำเนินการ)
ปล่อย 1.0.10
เพิ่มโมเดลและน้ำหนักของ MambaOut (https://github.com/yuweihao/MambaOut) แล้ว มุมมองที่ไร้เหตุผลของโมเดลการมองเห็น SSM ที่ไม่มี SSM (โดยพื้นฐานแล้วคือ ConvNeXt ที่มีเกตติ้ง) การผสมผสานระหว่างตุ้มน้ำหนักดั้งเดิม + รูปแบบและตุ้มน้ำหนักแบบกำหนดเอง
แบบอย่าง | img_size | ท็อป1 | ท็อป5 | พารามิเตอร์_count |
---|---|---|---|---|
mambaout_base_plus_rw.sw_e150_r384_in12k_ft_in1k | 384 | 87.506 | 98.428 | 101.66 |
mambaout_base_plus_rw.sw_e150_in12k_ft_in1k | 288 | 86.912 | 98.236 | 101.66 |
mambaout_base_plus_rw.sw_e150_in12k_ft_in1k | 224 | 86.632 | 98.156 | 101.66 |
mambaout_base_tall_rw.sw_e500_in1k | 288 | 84.974 | 97.332 | 86.48 |
mambaout_base_wide_rw.sw_e500_in1k | 288 | 84.962 | 97.208 | 94.45 |
mambaout_base_short_rw.sw_e500_in1k | 288 | 84.832 | 97.27 | 88.83 |
mambaout_base.in1k | 288 | 84.72 | 96.93 | 84.81 |
mambaout_small_rw.sw_e450_in1k | 288 | 84.598 | 97.098 | 48.5 |
mambaout_small.in1k | 288 | 84.5 | 96.974 | 48.49 |
mambaout_base_wide_rw.sw_e500_in1k | 224 | 84.454 | 96.864 | 94.45 |
mambaout_base_tall_rw.sw_e500_in1k | 224 | 84.434 | 96.958 | 86.48 |
mambaout_base_short_rw.sw_e500_in1k | 224 | 84.362 | 96.952 | 88.83 |
mambaout_base.in1k | 224 | 84.168 | 96.68 | 84.81 |
mambaout_small.in1k | 224 | 84.086 | 96.63 | 48.49 |
mambaout_small_rw.sw_e450_in1k | 224 | 84.024 | 96.752 | 48.5 |
mambaout_tiny.in1k | 288 | 83.448 | 96.538 | 26.55 |
mambaout_tiny.in1k | 224 | 82.736 | 96.1 | 26.55 |
mambaout_kobe.in1k | 288 | 81.054 | 95.718 | 9.14 |
mambaout_kobe.in1k | 224 | 79.986 | 94.986 | 9.14 |
mambaout_femto.in1k | 288 | 79.848 | 95.14 | 7.3 |
mambaout_femto.in1k | 224 | 78.87 | 94.408 | 7.3 |
SigLIP SO400M ViT ปรับแต่งอย่างละเอียดบน ImageNet-1k @ 378x378 เพิ่มตัวเลือก 378x378 สำหรับรุ่น SigLIP 384x384 ที่มีอยู่
vit_so400m_patch14_siglip_378.webli_ft_in1k - 89.42 อันดับแรก-1
vit_so400m_patch14_siglip_gap_378.webli_ft_in1k - 89.03
ตัวเข้ารหัส SigLIP SO400M ViT จากตัวแปรหลายภาษา (i18n) ล่าสุด, patch16 @ 256x256 (https://huggingface.co/timm/ViT-SO400M-16-SigLIP-i18n-256) รอการอัปเดต OpenCLIP
เพิ่มโมเดลและน้ำหนัก ConvNeXt 'Zepto' สองรายการ (หนึ่งรายการมีก้านทับซ้อนกัน และอีกรุ่นมีก้านแพทช์) ใช้ RMSNorm ซึ่งเล็กกว่า 'Atto' ก่อนหน้า พารามิเตอร์ 2.2M
convnext_zepto_rms_ols.ra4_e3600_r224_in1k - 73.20 อันดับแรก -1 @ 224
convnext_zepto_rms.ra4_e3600_r224_in1k - 72.81 @ 224
เพิ่มชุดโมเดลการทดสอบขนาดเล็กสำหรับการทดสอบหน่วยที่ได้รับการปรับปรุงและแอปพลิเคชันเฉพาะกลุ่มที่มีทรัพยากรต่ำ (https://huggingface.co/blog/rwightman/timm-tiny-test)
เพิ่มรุ่น MobileNetV4-Conv-Small (0.5x) (https://huggingface.co/posts/rwightman/793053396198664)
mobilenetv4_conv_small_050.e3000_r224_in1k - 65.81 อันดับแรก -1 @ 256, 64.76 @ 224
เพิ่ม MobileNetV3-Large ที่ได้รับการฝึกฝนด้วย MNV4 Small Recipe
mobilenetv3_large_150d.ra4_e3600_r256_in1k - 81.81 @ 320, 80.94 @ 256
mobilenetv3_large_100.ra4_e3600_r224_in1k - 77.16 @ 256, 76.31 @ 224
โมเดล SBB ViT ที่อัปเดตแล้วได้รับการฝึกฝนบน ImageNet-12k และปรับแต่งอย่างละเอียดบน ImageNet-1k ซึ่งท้าทายโมเดลที่ใหญ่กว่าและช้ากว่าหลายตัว
แบบอย่าง | ท็อป1 | ท็อป5 | พารามิเตอร์_count | img_size |
---|---|---|---|---|
vit_mediumd_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k | 87.438 | 98.256 | 64.11 | 384 |
vit_mediumd_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k | 86.608 | 97.934 | 64.11 | 256 |
vit_betwixt_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k | 86.594 | 98.02 | 60.4 | 384 |
vit_betwixt_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k | 85.734 | 97.61 | 60.4 | 256 |
MobileNet-V1 1.25, EfficientNet-B1 และตุ้มน้ำหนัก ResNet50-D พร้อมสูตรการท้าทายพื้นฐาน MNV4
แบบอย่าง | ท็อป1 | ท็อป5 | พารามิเตอร์_count | img_size |
---|---|---|---|---|
resnet50d.ra4_e3600_r224_in1k | 81.838 | 95.922 | 25.58 | 288 |
Efficiencynet_b1.ra4_e3600_r240_in1k | 81.440 | 95.700 | 7.79 | 288 |
resnet50d.ra4_e3600_r224_in1k | 80.952 | 95.384 | 25.58 | 224 |
Efficiencynet_b1.ra4_e3600_r240_in1k | 80.406 | 95.152 | 7.79 | 240 |
mobilenetv1_125.ra4_e3600_r224_in1k | 77.600 | 93.804 | 6.27 | 256 |
mobilenetv1_125.ra4_e3600_r224_in1k | 76.924 | 93.234 | 6.27 | 224 |
เพิ่มส่วนโค้งของกระดูกสันหลัง SAM2 (HieraDet) และรองรับการโหลดน้ำหนัก
เพิ่ม Hiera Small Weights ที่ฝึกฝนด้วย Abswin POS ที่ฝังอยู่ใน in12k และปรับแต่งอย่างละเอียดใน 1k
แบบอย่าง | ท็อป1 | ท็อป5 | พารามิเตอร์_count |
---|---|---|---|
hiera_small_abswin_256.sbb2_e200_in12k_ft_in1k | 84.912 | 97.260 | 35.01 |
hiera_small_abswin_256.sbb2_pd_e200_in12k_ft_in1k | 84.560 | 97.106 | 35.01 |
เพิ่ม RDNet ('DenseNets Reloaded', https://arxiv.org/abs/2403.19588) ขอบคุณ Donghyun Kim
เพิ่มน้ำหนัก mobilenet_edgetpu_v2_m
ด้วยสูตรพื้นฐาน ra4
mnv4 ขนาดเล็ก 80.1% อันดับแรก @ 224 และ 80.7 @ 256
ปล่อย 1.0.8
ตุ้มน้ำหนัก MobileNet-v4 เพิ่มเติม, การฝึกล่วงหน้า ImageNet-12k พร้อมการปรับแต่งแบบละเอียด และโมเดล ConvLarge ที่ต่อต้านนามแฝง
แบบอย่าง | ท็อป1 | top1_err | ท็อป5 | top5_err | พารามิเตอร์_count | img_size |
---|---|---|---|---|---|---|
mobilenetv4_conv_aa_large.e230_r448_in12k_ft_in1k | 84.99 | 15.01 | 97.294 | 2.706 | 32.59 | 544 |
mobilenetv4_conv_aa_large.e230_r384_in12k_ft_in1k | 84.772 | 15.228 | 97.344 | 2.656 | 32.59 | 480 |
mobilenetv4_conv_aa_large.e230_r448_in12k_ft_in1k | 84.64 | 15.36 | 97.114 | 2.886 | 32.59 | 448 |
mobilenetv4_conv_aa_large.e230_r384_in12k_ft_in1k | 84.314 | 15.686 | 97.102 | 2.898 | 32.59 | 384 |
mobilenetv4_conv_aa_large.e600_r384_in1k | 83.824 | 16.176 | 96.734 | 3.266 | 32.59 | 480 |
mobilenetv4_conv_aa_large.e600_r384_in1k | 83.244 | 16.756 | 96.392 | 3.608 | 32.59 | 384 |
mobilenetv4_hybrid_medium.e200_r256_in12k_ft_in1k | 82.99 | 17.01 | 96.67 | 3.33 | 11.07 | 320 |
mobilenetv4_hybrid_medium.e200_r256_in12k_ft_in1k | 82.364 | 17.636 | 96.256 | 3.744 | 11.07 | 256 |
ความท้าทายพื้นฐาน MobileNet-V1 และ EfficientNet-B0 ที่น่าประทับใจ (https://huggingface.co/blog/rwightman/mobilenet-baselines)
แบบอย่าง | ท็อป1 | top1_err | ท็อป5 | top5_err | พารามิเตอร์_count | img_size |
---|---|---|---|---|---|---|
Efficiencynet_b0.ra4_e3600_r224_in1k | 79.364 | 20.636 | 94.754 | 5.246 | 5.29 | 256 |
Efficiencynet_b0.ra4_e3600_r224_in1k | 78.584 | 21.416 | 94.338 | 5.662 | 5.29 | 224 |
mobilenetv1_100h.ra4_e3600_r224_in1k | 76.596 | 23.404 | 93.272 | 6.728 | 5.28 | 256 |
mobilenetv1_100.ra4_e3600_r224_in1k | 76.094 | 23.906 | 93.004 | 6.996 | 4.23 | 256 |
mobilenetv1_100h.ra4_e3600_r224_in1k | 75.662 | 24.338 | 92.504 | 7.496 | 5.28 | 224 |
mobilenetv1_100.ra4_e3600_r224_in1k | 75.382 | 24.618 | 92.312 | 7.688 | 4.23 | 224 |
เพิ่มต้นแบบของ set_input_size()
ให้กับโมเดล vit และ swin v1/v2 เพื่อให้สามารถเปลี่ยนขนาดรูปภาพ ขนาดแพตช์ ขนาดหน้าต่างหลังจากสร้างโมเดล
การสนับสนุนที่ได้รับการปรับปรุงใน swin สำหรับการจัดการขนาดที่แตกต่างกัน นอกเหนือจาก set_input_size
, always_partition
และ strict_img_size
args ได้ถูกเพิ่มใน __init__
เพื่อให้มีข้อจำกัดด้านขนาดอินพุตที่ยืดหยุ่นมากขึ้น
แก้ไขข้อมูลดัชนีที่ไม่เรียงลำดับสำหรับ wrapper ฟีเจอร์ 'Getter' ระดับกลาง ตรวจสอบหรือกำหนดช่วงดัชนีสำหรับสิ่งเดียวกัน
เพิ่มโมเดลพารามิเตอร์ < .5M tiny
หลายตัวสำหรับการทดสอบที่ได้รับการฝึกฝนจริงบน ImageNet-1k
แบบอย่าง | ท็อป1 | top1_err | ท็อป5 | top5_err | พารามิเตอร์_count | img_size | crop_pct |
---|---|---|---|---|---|---|---|
test_efficiencynet.r160_in1k | 47.156 | 52.844 | 71.726 | 28.274 | 0.36 | 192 | 1.0 |
test_byobnet.r160_in1k | 46.698 | 53.302 | 71.674 | 28.326 | 0.46 | 192 | 1.0 |
test_efficiencynet.r160_in1k | 46.426 | 53.574 | 70.928 | 29.072 | 0.36 | 160 | 0.875 |
test_byobnet.r160_in1k | 45.378 | 54.622 | 70.572 | 29.428 | 0.46 | 160 | 0.875 |
test_vit.r160_in1k | 42.0 | 58.0 | 68.664 | 31.336 | 0.37 | 192 | 1.0 |
test_vit.r160_in1k | 40.822 | 59.178 | 67.212 | 32.788 | 0.37 | 160 | 0.875 |
แก้ไขโทเค็น vit reg init ขอบคุณ Promisery
การแก้ไขเบ็ดเตล็ดอื่น ๆ
ตุ้มน้ำหนักไฮริด MobileNetV4 อีก 3 รายการที่มีโครงร่างเริ่มต้นน้ำหนัก MQA ที่แตกต่างกัน
แบบอย่าง | ท็อป1 | top1_err | ท็อป5 | top5_err | พารามิเตอร์_count | img_size |
---|---|---|---|---|---|---|
mobilenetv4_hybrid_large.ix_e600_r384_in1k | 84.356 | 15.644 | 96.892 | 3.108 | 37.76 | 448 |
mobilenetv4_hybrid_large.ix_e600_r384_in1k | 83.990 | 16.010 | 96.702 | 3.298 | 37.76 | 384 |
mobilenetv4_hybrid_medium.ix_e550_r384_in1k | 83.394 | 16.606 | 96.760 | 3.240 | 11.07 | 448 |
mobilenetv4_hybrid_medium.ix_e550_r384_in1k | 82.968 | 17.032 | 96.474 | 3.526 | 11.07 | 384 |
mobilenetv4_hybrid_medium.ix_e550_r256_in1k | 82.492 | 17.508 | 96.278 | 3.722 | 11.07 | 320 |
mobilenetv4_hybrid_medium.ix_e550_r256_in1k | 81.446 | 18.554 | 95.704 | 4.296 | 11.07 | 256 |
การโหลดน้ำหนัก florence2 ในรุ่น DaViT
เพิ่มรุ่น MobileNetV4 และชุดตุ้มน้ำหนักฝึก timm
เริ่มต้น:
แบบอย่าง | ท็อป1 | top1_err | ท็อป5 | top5_err | พารามิเตอร์_count | img_size |
---|---|---|---|---|---|---|
mobilenetv4_hybrid_large.e600_r384_in1k | 84.266 | 15.734 | 96.936 | 3.064 | 37.76 | 448 |
mobilenetv4_hybrid_large.e600_r384_in1k | 83.800 | 16.200 | 96.770 | 3.230 | 37.76 | 384 |
mobilenetv4_conv_large.e600_r384_in1k | 83.392 | 16.608 | 96.622 | 3.378 | 32.59 | 448 |
mobilenetv4_conv_large.e600_r384_in1k | 82.952 | 17.048 | 96.266 | 3.734 | 32.59 | 384 |
mobilenetv4_conv_large.e500_r256_in1k | 82.674 | 17.326 | 96.31 | 3.69 | 32.59 | 320 |
mobilenetv4_conv_large.e500_r256_in1k | 81.862 | 18.138 | 95.69 | 4.31 | 32.59 | 256 |
mobilenetv4_hybrid_medium.e500_r224_in1k | 81.276 | 18.724 | 95.742 | 4.258 | 11.07 | 256 |
mobilenetv4_conv_medium.e500_r256_in1k | 80.858 | 19.142 | 95.768 | 4.232 | 9.72 | 320 |
mobilenetv4_hybrid_medium.e500_r224_in1k | 80.442 | 19.558 | 95.38 | 4.62 | 11.07 | 224 |
mobilenetv4_conv_blur_medium.e500_r224_in1k | 80.142 | 19.858 | 95.298 | 4.702 | 9.72 | 256 |
mobilenetv4_conv_medium.e500_r256_in1k | 79.928 | 20.072 | 95.184 | 4.816 | 9.72 | 256 |
mobilenetv4_conv_medium.e500_r224_in1k | 79.808 | 20.192 | 95.186 | 4.814 | 9.72 | 256 |
mobilenetv4_conv_blur_medium.e500_r224_in1k | 79.438 | 20.562 | 94.932 | 5.068 | 9.72 | 224 |
mobilenetv4_conv_medium.e500_r224_in1k | 79.094 | 20.906 | 94.77 | 5.23 | 9.72 | 224 |
mobilenetv4_conv_small.e2400_r224_in1k | 74.616 | 25.384 | 92.072 | 7.928 | 3.77 | 256 |
mobilenetv4_conv_small.e1200_r224_in1k | 74.292 | 25.708 | 92.116 | 7.884 | 3.77 | 256 |
mobilenetv4_conv_small.e2400_r224_in1k | 73.756 | 26.244 | 91.422 | 8.578 | 3.77 | 224 |
mobilenetv4_conv_small.e1200_r224_in1k | 73.454 | 26.546 | 91.34 | 8.66 | 3.77 | 224 |
Apple MobileCLIP (https://arxiv.org/pdf/2311.17049, FastViT และ ViT-B) รองรับโมเดลทาวเวอร์รูปภาพ & เพิ่มน้ำหนัก (ส่วนหนึ่งของการรองรับ OpenCLIP)
ViTamin (https://arxiv.org/abs/2404.02132) เพิ่มโมเดลทาวเวอร์รูปภาพ CLIP และน้ำหนักแล้ว (ส่วนหนึ่งของการรองรับ OpenCLIP)
OpenAI CLIP การสร้างแบบจำลองทาวเวอร์ภาพ ResNet ที่ดัดแปลงและการรองรับน้ำหนัก (ผ่าน ByobNet) ปรับโครงสร้าง AttentionPool2d ใหม่
รองรับการโหลดตุ้มน้ำหนัก PaliGemma jax ลงในรุ่น SigLIP ViT พร้อมการรวมกลุ่มโดยเฉลี่ย
เพิ่มโมเดล Hiera จาก Meta (https://github.com/facebookresearch/hiera)
เพิ่ม normalize=
flag สำหรับทรานส์ฟอร์ม ส่งคืนคบเพลิงที่ไม่ทำให้เป็นมาตรฐาน เทนเซอร์พร้อม dytpe ดั้งเดิม (สำหรับ chug
)
เวอร์ชัน 1.0.3 วางจำหน่าย
Searching for Better ViT Baselines (For the GPU Poor)
และตัวแปร vit ที่เผยแพร่ สำรวจรูปร่างของโมเดลระหว่าง Tiny และ Base
แบบอย่าง | ท็อป1 | ท็อป5 | พารามิเตอร์_count | img_size |
---|---|---|---|---|
vit_mediumd_patch16_reg4_gap_256.sbb_in12k_ft_in1k | 86.202 | 97.874 | 64.11 | 256 |
vit_betwixt_patch16_reg4_gap_256.sbb_in12k_ft_in1k | 85.418 | 97.48 | 60.4 | 256 |
vit_mediumd_patch16_rope_reg1_gap_256.sbb_in1k | 84.322 | 96.812 | 63.95 | 256 |
vit_betwixt_patch16_rope_reg4_gap_256.sbb_in1k | 83.906 | 96.684 | 60.23 | 256 |
vit_base_patch16_rope_reg1_gap_256.sbb_in1k | 83.866 | 96.67 | 86.43 | 256 |
vit_medium_patch16_rope_reg1_gap_256.sbb_in1k | 83.81 | 96.824 | 38.74 | 256 |
vit_betwixt_patch16_reg4_gap_256.sbb_in1k | 83.706 | 96.616 | 60.4 | 256 |
vit_betwixt_patch16_reg1_gap_256.sbb_in1k | 83.628 | 96.544 | 60.4 | 256 |
vit_medium_patch16_reg4_gap_256.sbb_in1k | 83.47 | 96.622 | 38.88 | 256 |
vit_medium_patch16_reg1_gap_256.sbb_in1k | 83.462 | 96.548 | 38.88 | 256 |
vit_little_patch16_reg4_gap_256.sbb_in1k | 82.514 | 96.262 | 22.52 | 256 |
vit_wee_patch16_reg1_gap_256.sbb_in1k | 80.256 | 95.360 | 13.42 | 256 |
vit_pwee_patch16_reg1_gap_256.sbb_in1k | 80.072 | 95.136 | 15.25 | 256 |
vit_mediumd_patch16_reg4_gap_256.sbb_in12k | ไม่มี | ไม่มี | 64.11 | 256 |
vit_betwixt_patch16_reg4_gap_256.sbb_in12k | ไม่มี | ไม่มี | 60.4 | 256 |
เพิ่มตัวช่วย AttentionExtract เพื่อแยกแผนที่ความสนใจจากโมเดล timm
ดูตัวอย่างใน #1232 (ความคิดเห็น)
forward_intermediates()
API ได้รับการปรับปรุงและเพิ่มให้กับโมเดลเพิ่มเติม รวมถึง ConvNets บางตัวที่มีวิธีการแยกอื่น ๆ
สถาปัตยกรรมโมเดล 1,017 จาก 1,047 รองรับ features_only=True
สามารถรองรับสถาปัตยกรรมที่เหลือได้ 34 สถาปัตยกรรม แต่ขึ้นอยู่กับคำขอที่มีลำดับความสำคัญ
ลบฟังก์ชันที่มีคำอธิบายประกอบ torch.jit.script รวมถึงการเปิดใช้งาน JIT แบบเก่า การขัดแย้งกับไดนาโมและไดนาโมจะทำงานได้ดีกว่ามากเมื่อใช้
การเตรียมการสำหรับการเปิดตัว 1.0 ที่ค้างชำระเป็นเวลานาน สิ่งต่าง ๆ มีความเสถียรมาระยะหนึ่งแล้ว
คุณลักษณะสำคัญที่หายไประยะหนึ่ง features_only=True
สำหรับรุ่น ViT ที่มีสถานะซ่อนเร้นแบบแบนหรือเค้าโครงโมดูลที่ไม่ใช่มาตรฐาน (จนถึงขณะนี้ครอบคลุม 'vit_*', 'twins_*', 'deit*', 'beit*', 'mvitv2*', 'eva*', 'samvit_*', 'flexivit*'
)
การสนับสนุนคุณลักษณะข้างต้นทำได้ผ่าน API ของ forward_intermediates()
ใหม่ที่สามารถใช้กับโมดูลการตัดคุณลักษณะหรือคำสั่งโดยตรง
model = timm.create_model('vit_base_patch16_224')final_feat, ตัวกลาง = model.forward_intermediates (อินพุต) เอาท์พุท = model.forward_head(final_feat) # การรวมกลุ่ม + ลักษณนาม headprint (final_feat.shape)torch.Size ([2, 197, 768]) สำหรับ f ในตัวกลาง: พิมพ์ (f.shape) torch.Size ([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย ([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([2, 768, 14, 14])ขนาดไฟฉาย([ 2, 768, 14, 14]) พิมพ์ (output.shape) ไฟฉายขนาด ([2, 1000])
model = timm.create_model('eva02_base_patch16_clip_224', pretrained=True, img_size=512, features_only=True, out_indices=(-3, -2,))output = model(torch.randn(2, 3, 512, 512)) สำหรับ o ในเอาต์พุต: พิมพ์ (o.shape) คบเพลิง.ขนาด([2, 768, 32, 32])คบเพลิง.ขนาด([2, 768, 32, 32])
เพิ่มน้ำหนักหอการมองเห็น TinyCLIP แล้ว ขอบคุณ Thien Tran
เพิ่มโมเดล Next-ViT ดัดแปลงมาจาก https://github.com/bytedance/Next-ViT
เพิ่มโมเดล HGNet และ PP-HGNetV2 แล้ว ดัดแปลงมาจาก https://github.com/PaddlePaddle/PaddleClas โดย SeeFun
ลบ setup.py แล้วย้ายไปที่บิลด์ที่ใช้ pyproject.toml ที่ PDM รองรับ
เพิ่มโมเดล EMA ที่อัปเดตโดยนัยโดยใช้ _for_each เพื่อค่าใช้จ่ายที่น้อยลง
รองรับอุปกรณ์ args ในสคริปต์รถไฟสำหรับอุปกรณ์ที่ไม่ใช่ GPU
การแก้ไขเบ็ดเตล็ดอื่น ๆ และการเพิ่มเติมเล็กน้อย
เวอร์ชั่น Python ขั้นต่ำที่รองรับเพิ่มขึ้นเป็น 3.8
ปล่อย 0.9.16
ชุดข้อมูลและการแปลงโครงสร้างใหม่
การสนับสนุนชุดข้อมูล HuggingFace สตรีมมิ่ง (ทำซ้ำได้) ( --dataset hfids:org/dataset
)
ปรับแต่ง wrapper ชุดข้อมูลเว็บเพื่อการดึงข้อมูลการแยกที่ดีขึ้น สามารถดึงข้อมูลการแยกอัตโนมัติจากชุดข้อมูลเว็บฮับ HF ที่รองรับ
ทดสอบ datasets
HF และชุดข้อมูลเว็บสตรีมมิ่งจากฮับ HF พร้อมการอัปโหลด timm
ImageNet ล่าสุดไปที่ https://huggingface.co/timm
ทำให้คีย์อินพุตและคอลัมน์เป้าหมาย/ฟิลด์สอดคล้องกันในชุดข้อมูลและส่งผ่าน args
รองรับขาวดำเต็มรูปแบบเมื่อใช้ e:g: --input-size 1 224 224
หรือ --in-chans 1
ตั้งค่าการแปลงรูปภาพ PIL อย่างเหมาะสมในชุดข้อมูล
ปรับปรุงการครอบตัดและปรับขนาดแบบอื่น (ResizeKeepRatio, RandomCropOrPad ฯลฯ) เพื่อใช้ในโครงการ AI ของเอกสาร PixParse
เพิ่มปัญหาการกระวนกระวายใจของสีสไตล์ SimCLR พร้อมกับตัวเลือกระดับสีเทาและเกาส์เซียนเบลอเพื่อเพิ่มและหาเรื่อง
อนุญาตให้รถไฟไม่มีการตั้งค่าการตรวจสอบ ( --val-split ''
) ในสคริปต์รถไฟ
เพิ่ม --bce-sum
(ผลรวมเหนือคลาสสลัว) และ --bce-pos-weight
(การให้น้ำหนักเชิงบวก) args สำหรับการฝึกอบรมเนื่องจากเป็นการปรับแต่งการสูญเสีย BCE ทั่วไป ฉันมักจะเขียนโค้ดยาก
เพิ่มโมเดล EfficientViT-Large ขอบคุณ SeeFun
แก้ไขความเข้ากันได้ของ Python 3.7 และจะยกเลิกการรองรับในเร็วๆ นี้
การแก้ไขเบ็ดเตล็ดอื่น ๆ
ปล่อย 0.9.12
เพิ่มความยืดหยุ่นอย่างมากสำหรับโมเดล timm ที่ใช้ Hugging Face Hub ผ่านทางรายการกำหนดค่า model_args
model_args
จะถูกส่งผ่านเป็น kwargs ไปยังโมเดลที่กำลังสร้าง
ดูตัวอย่างได้ที่https://huggingface.co/gaunernst/vit_base_patch16_1024_128.audiomae_as2m_ft_as20k/blob/main/config.json
การใช้งาน: #2035
อัปเดต imagenet eval และชุดทดสอบไฟล์ csv ด้วยรุ่นล่าสุด
การพิมพ์ vision_transformer.py
และการล้างเอกสารโดย Laureηt
0.9.11 ปล่อย
เพิ่มน้ำหนัก DFN (เครือข่ายการกรองข้อมูล) และ MetaCLIP ViT
เพิ่มน้ำหนักรุ่น ViT 'ลงทะเบียน' DINOv2 แล้ว (https://huggingface.co/papers/2309.16588, https://huggingface.co/papers/2304.07193)
เพิ่มตัวแปร quickgelu
ViT สำหรับน้ำหนัก OpenAI, DFN, MetaCLIP ที่ใช้งาน (มีประสิทธิภาพน้อยกว่า)
ปรับปรุงการพิมพ์ที่เพิ่มใน ResNet, MobileNet-v3 ด้วย Aryan
ImageNet-12k ปรับแต่งอย่างละเอียด (จาก LAION-2B CLIP) convnext_xxlarge
ปล่อย 0.9.9
รองรับตุ้มน้ำหนักหอคอยรูปภาพ SigLIP ใน vision_transformer.py
ศักยภาพที่ยอดเยี่ยมสำหรับการใช้คุณสมบัติการปรับแต่งและดาวน์สตรีม
การสนับสนุน 'การลงทะเบียน' แบบทดลองในโมเดล vit ตาม Vision Transformers Need Registers
อัปเดต RepViT ด้วยการเปิดตัวน้ำหนักใหม่ ขอบคุณ wangao
เพิ่มการรองรับการปรับขนาดแพตช์ (บนน้ำหนักที่ฝึกไว้ล่วงหน้า) ให้กับรุ่น Swin
รอการเปิดตัว 0.9.8
TinyViT เพิ่มโดย SeeFun
แก้ไข EfficientViT (MIT) เพื่อใช้ torch.autocast เพื่อให้ทำงานกลับไปเป็น PT 1.10
ปล่อย 0.9.7
Py T orch Im age M odels ( timm
) คือคอลเลกชันของโมเดลรูปภาพ เลเยอร์ ยูทิลิตี้ เครื่องมือเพิ่มประสิทธิภาพ ตัวกำหนดเวลา ตัวโหลดข้อมูล / ส่วนขยาย และสคริปต์การฝึกอบรม / การตรวจสอบอ้างอิงที่มีจุดมุ่งหมายเพื่อดึงโมเดล SOTA ที่หลากหลายที่มีความสามารถมารวมกัน เพื่อสร้างผลลัพธ์การฝึกอบรม ImageNet
ผลงานของคนอื่นๆ อีกมากมายอยู่ที่นี่ ฉันพยายามตรวจสอบให้แน่ใจว่าแหล่งข้อมูลทั้งหมดได้รับการยอมรับผ่านลิงก์ไปยัง github เอกสาร arxiv ฯลฯ ใน README เอกสารประกอบ และเอกสารรหัส โปรดแจ้งให้เราทราบหากฉันพลาดสิ่งใดไป
กลุ่มสถาปัตยกรรมโมเดลทั้งหมดประกอบด้วยตัวแปรที่มีน้ำหนักที่ฝึกไว้ล่วงหน้า มีตัวแปรรุ่นเฉพาะที่ไม่มีน้ำหนักใดๆ ไม่ใช่จุดบกพร่อง ความช่วยเหลือในการฝึกตุ้มน้ำหนักใหม่หรือที่ดีกว่านั้นได้รับการชื่นชมเสมอ
การรวมหม้อแปลงที่ซ้อนกัน - https://arxiv.org/abs/2105.12723
BEiT - https://arxiv.org/abs/2106.08254
โอนใหญ่ ResNetV2 (BiT) - https://arxiv.org/abs/1912.11370
หม้อแปลงคอขวด - https://arxiv.org/abs/2101.11605
CaiT (ความสนใจระดับใน Image Transformers) - https://arxiv.org/abs/2103.17239
CoaT (ตัวแปลงอิมเมจแบบ Conv-Attentional แบบ Co-Scale) - https://arxiv.org/abs/2104.06399
CoAtNet (การโน้มน้าวและความสนใจ) - https://arxiv.org/abs/2106.04803
ConvNeXt - https://arxiv.org/abs/2201.03545
ConvNeXt-V2 - http://arxiv.org/abs/2301.00808
ConViT (หม้อแปลงวิสัยทัศน์อคติเชิงอุปนัยแบบอ่อน) - https://arxiv.org/abs/2103.10697
CspNet (เครือข่ายบางส่วนข้ามเวที) - https://arxiv.org/abs/1911.11929
DeiT - https://arxiv.org/abs/2012.12877
DeiT-III - https://arxiv.org/pdf/2204.07118.pdf
DenseNet - https://arxiv.org/abs/1608.06993
ส.ส.ท. - https://arxiv.org/abs/1707.06484
DPN (เครือข่ายสองเส้นทาง) - https://arxiv.org/abs/1707.01629
EdgeNeXt - https://arxiv.org/abs/2206.10589
EfficientFormer - https://arxiv.org/abs/2206.01191
EfficientNet (ตระกูล MBConvNet)
EfficientNet NoisyStudent (B0-B7, L2) - https://arxiv.org/abs/1911.04252
EfficientNet AdvProp (B0-B8) - https://arxiv.org/abs/1911.09665
EfficientNet (B0-B7) - https://arxiv.org/abs/1905.11946
EfficientNet-EdgeTPU (S, M, L) - https://ai.googleblog.com/2019/08/efficientnet-edgepu-creating.html
EfficientNet V2 - https://arxiv.org/abs/2104.00298
FBNet-C - https://arxiv.org/abs/1812.03443
MixNet - https://arxiv.org/abs/1907.09595
MNASNet B1, A1 (Squeeze-Excite) และขนาดเล็ก - https://arxiv.org/abs/1807.11626
MobileNet-V2 - https://arxiv.org/abs/1801.04381
NAS เส้นทางเดียว - https://arxiv.org/abs/1904.02877
TinyNet - https://arxiv.org/abs/2010.14819
EfficientViT (เอ็มไอที) - https://arxiv.org/abs/2205.14756
EfficientViT (MSRA) - https://arxiv.org/abs/2305.07027
อีวา - https://arxiv.org/abs/2211.07636
EVA-02 - https://arxiv.org/abs/2303.11331
FastViT - https://arxiv.org/abs/2303.14189
FlexiViT - https://arxiv.org/abs/2212.08013
FocalNet (เครือข่ายการปรับโฟกัส) - https://arxiv.org/abs/2203.11926
GCViT (หม้อแปลงวิสัยทัศน์บริบททั่วโลก) - https://arxiv.org/abs/2206.09959
GhostNet - https://arxiv.org/abs/1911.11907
GhostNet-V2 - https://arxiv.org/abs/2211.12905
gMLP - https://arxiv.org/abs/2105.08050
เครือข่ายที่มีประสิทธิภาพ GPU - https://arxiv.org/abs/2006.14090
รัศมีมุ้ง - https://arxiv.org/abs/2103.12731
HGNet / HGNet-V2 - จะแจ้งภายหลัง
HRNet - https://arxiv.org/abs/1908.07919
InceptionNeXt - https://arxiv.org/abs/2303.16900
Inception-V3 - https://arxiv.org/abs/1512.00567
Inception-ResNet-V2 และ Inception-V4 - https://arxiv.org/abs/1602.07261
เครือข่ายแลมบ์ดา - https://arxiv.org/abs/2102.08602
LeViT (Vision Transformer ในชุดของ ConvNet) - https://arxiv.org/abs/2104.01136
MaxViT (หม้อแปลงวิชันซิสเต็มแบบหลายแกน) - https://arxiv.org/abs/2204.01697
MetaFormer (PoolFormer-v2, ConvFormer, CAFormer) - https://arxiv.org/abs/2210.13452
MLP-Mixer - https://arxiv.org/abs/2105.01601
MobileCLIP - https://arxiv.org/abs/2311.17049
MobileNet-V3 (MBConvNet พร้อมส่วนหัวที่มีประสิทธิภาพ) - https://arxiv.org/abs/1905.02244
FBNet-V3 - https://arxiv.org/abs/2006.02049
HardCoRe-NAS - https://arxiv.org/abs/2102.11646
LCNet - https://arxiv.org/abs/2109.15099
MobileNetV4 - https://arxiv.org/abs/2404.10518
MobileOne - https://arxiv.org/abs/2206.04040
MobileViT - https://arxiv.org/abs/2110.02178
MobileViT-V2 - https://arxiv.org/abs/2206.02680
MViT-V2 (หม้อแปลงวิชั่นหลายสเกลที่ได้รับการปรับปรุง) - https://arxiv.org/abs/2112.01526
NASNet-A - https://arxiv.org/abs/1707.07012
เนสที - https://arxiv.org/abs/2105.12723
Next-ViT - https://arxiv.org/abs/2207.05501
NFNet-F - https://arxiv.org/abs/2102.06171
NF-RegNet / NF-ResNet - https://arxiv.org/abs/2101.08692
PNasNet - https://arxiv.org/abs/1712.00559
PoolFormer (MetaFormer) - https://arxiv.org/abs/2111.11418
Vision Transformer ที่ใช้การรวมกลุ่ม (PiT) - https://arxiv.org/abs/2103.16302
PVT-V2 (หม้อแปลงวิชันพีระมิดที่ได้รับการปรับปรุง) - https://arxiv.org/abs/2106.13797
RDNet (โหลด DenseNets ใหม่) - https://arxiv.org/abs/2403.19588
RegNet - https://arxiv.org/abs/2003.13678
RegNetZ - https://arxiv.org/abs/2103.06877
RepVGG - https://arxiv.org/abs/2101.03697
RepGhostNet - https://arxiv.org/abs/2211.06088
ตัวแทน - https://arxiv.org/abs/2307.09283
ResMLP - https://arxiv.org/abs/2105.03404
ResNet/ResNeXt
ResNet (v1b/v1.5) - https://arxiv.org/abs/1512.03385
ResNeXt - https://arxiv.org/abs/1611.05431
'Bag of Tricks' / Gluon C, D, E, S รูปแบบต่างๆ - https://arxiv.org/abs/1812.01187
Instagram ที่ดูแลอย่างอ่อนแอ (WSL) ได้รับการฝึกฝน / ImageNet ปรับ ResNeXt101 - https://arxiv.org/abs/1805.00932
กึ่งกำกับดูแล (SSL) / กึ่งกำกับดูแลอ่อนแอ (SWSL) ResNet/ResNeXts - https://arxiv.org/abs/1905.00546
ECA-Net (ECAResNet) - https://arxiv.org/abs/1910.03151v4
เครือข่ายบีบและกระตุ้น (SEResNet) - https://arxiv.org/abs/1709.01507
ResNet-RS - https://arxiv.org/abs/2103.07579
Res2Net - https://arxiv.org/abs/1904.01169
ResNeSt - https://arxiv.org/abs/2004.08955
ReXNet - https://arxiv.org/abs/2007.00992
เลือก SLS - https://arxiv.org/abs/1907.00837
เครือข่ายเคอร์เนลแบบเลือก - https://arxiv.org/abs/1903.06586
Sequencer2D - https://arxiv.org/abs/2205.01972
สวิน S3 (AutoFormerV2) - https://arxiv.org/abs/2111.14725
หม้อแปลงสวิน - https://arxiv.org/abs/2103.14030
สวิน Transformer V2 - https://arxiv.org/abs/2111.09883
Transformer-iN-หม้อแปลงไฟฟ้า (TNT) - https://arxiv.org/abs/2103.00112
TResNet - https://arxiv.org/abs/2003.13630
Twins (ความสนใจเชิงพื้นที่ใน Vision Transformers) - https://arxiv.org/pdf/2104.13840.pdf
วิสฟอร์เมอร์ - https://arxiv.org/abs/2104.12533
วิสัยทัศน์หม้อแปลง - https://arxiv.org/abs/2010.11929
วิตามิน - https://arxiv.org/abs/2404.02132
VOLO (ผู้มองเห็นวิสัยทัศน์) - https://arxiv.org/abs/2106.13112
VovNet V2 และ V1 - https://arxiv.org/abs/1911.06667
Xception - https://arxiv.org/abs/1610.02357
Xception (ปรับแนวแล้ว, Gluon) - https://arxiv.org/abs/1802.02611
Xception (ปรับแนวแล้ว, TF) - https://arxiv.org/abs/1802.02611
XCiT (ตัวแปลงอิมเมจ Cross-Covariance) - https://arxiv.org/abs/2106.09681
เครื่องมือเพิ่มประสิทธิภาพที่รวมไว้มีให้ใช้งานผ่านวิธีการจากโรงงาน create_optimizer
/ create_optimizer_v2
:
adabelief
การใช้งาน AdaBelieve ดัดแปลงมาจาก https://github.com/juntang-zhuang/Adabelief-Optimizer - https://arxiv.org/abs/2010.07468
adafactor
ดัดแปลงมาจาก FAIRSeq impl - https://arxiv.org/abs/1804.04235
adahessian
โดย David Samuel - https://arxiv.org/abs/2006.00719
adamp
และ sgdp
โดย Naver ClovAI - https://arxiv.org/abs/2006.08217
adan
การใช้งาน Adan ดัดแปลงมาจาก https://github.com/sail-sg/Adan - https://arxiv.org/abs/2208.06677
lamb
การใช้งาน Lamb และ LambC (w/ trust-clipping) ได้รับการล้างและแก้ไขเพื่อรองรับการใช้งานกับ XLA - https://arxiv.org/abs/1904.00962
lars
การดำเนินการของ LARS และ LARC (w/ trust-clipping) - https://arxiv.org/abs/1708.03888
lion
และการใช้งาน Lion ดัดแปลงมาจาก https://github.com/google/automl/tree/master/lion - https://arxiv.org/abs/2302.06675
lookahead
ดัดแปลงมาจาก impl โดย Liam - https://arxiv.org/abs/1907.08610
madgrad
- และการใช้งาน MADGRAD ที่ดัดแปลงมาจาก https://github.com/facebookresearch/madgrad - https://arxiv.org/abs/2101.11075
nadam
การดำเนินการของ Adam ด้วยโมเมนตัม Nesterov
nadamw
การดำเนินการของ AdamW (Adam ที่มีการลดน้ำหนักแบบแยกส่วน) พร้อมด้วยโมเมนตัม Nesterov นัยแบบง่ายตามhttps://github.com/mlcommons/algorithmic-efficiency
novograd
โดย Masashi Kimura - https://arxiv.org/abs/1905.11286
radam
โดย Liyuan Liu - https://arxiv.org/abs/1908.03265
rmsprop_tf
ดัดแปลงมาจาก PyTorch RMSProp ด้วยตัวเอง สร้างพฤติกรรม Tensorflow RMSProp ที่ได้รับการปรับปรุงให้ดีขึ้นมาก
sgdw
และการนำ SGD ไปใช้โดยมีการสูญเสียน้ำหนักแบบแยกส่วน
fused
ตามชื่อที่ติดตั้ง NVIDIA Apex
เครื่องมือเพิ่มประสิทธิภาพ bits
ตามชื่อที่ติดตั้ง BitsAndBytes
การลบแบบสุ่มจาก Zhun Zhong - https://arxiv.org/abs/1708.04896)
มิกซ์อัพ - https://arxiv.org/abs/1710.09412
CutMix - https://arxiv.org/abs/1905.04899
AutoAugment (https://arxiv.org/abs/1805.09501) และ RandAugment (https://arxiv.org/abs/1909.13719) การกำหนดค่า ImageNet ที่สร้างแบบจำลองหลังจาก impl สำหรับการฝึกอบรม EfficientNet (https://github.com/tensorflow/tpu/ blob/master/models/official/efficientnet/autoaugment.py)
AugMix ที่มีการสูญเสีย JSD, JSD ที่มี clean + รองรับการผสมแบบเสริมทำงานร่วมกับ AutoAugment และ RandAugment เช่นกัน - https://arxiv.org/abs/1912.02781
SplitBachNorm - อนุญาตให้แยกเลเยอร์บรรทัดฐานของแบทช์ระหว่างข้อมูลที่สะอาดและข้อมูลเสริม (บรรทัดฐานของแบทช์เสริม)
DropPath หรือที่เรียกว่า "Stochastic Depth" - https://arxiv.org/abs/1603.09382
DropBlock - https://arxiv.org/abs/1810.12890
การรวมเบลอ - https://arxiv.org/abs/1904.11486
มีคุณลักษณะหลายอย่าง (ทั่วไปน้อยกว่า) ที่ฉันมักใช้ในโครงการของฉันรวมอยู่ด้วย การเพิ่มเติมหลายอย่างเป็นเหตุผลว่าทำไมฉันถึงรักษาชุดโมเดลของตัวเอง แทนที่จะใช้ของผู้อื่นผ่าน PIP:
ทุกรุ่นมีอินเทอร์เฟซการกำหนดค่าเริ่มต้นทั่วไปและ API สำหรับ
การเข้าถึง/การเปลี่ยนแปลงลักษณนาม - get_classifier
และ reset_classifier
ทำการส่งต่อเฉพาะคุณสมบัติ - forward_features
(ดูเอกสารประกอบ)
สิ่งเหล่านี้ทำให้ง่ายต่อการเขียน wrappers เครือข่ายที่สอดคล้องกันซึ่งทำงานร่วมกับรุ่นใดก็ได้
ทุกรุ่นรองรับการแยกฟีเจอร์แมปหลายสเกล (ฟีเจอร์ปิรามิด) ผ่าน create_model (ดูเอกสารประกอบ)
create_model(name, features_only=True, out_indices=..., output_stride=...)
การสร้าง out_indices
arg ระบุว่าฟีเจอร์แมปใดที่จะส่งคืน ดัชนีเหล่านี้เป็น 0 และโดยทั่วไปจะสอดคล้องกับระดับฟีเจอร์ C(i + 1)
arg การสร้าง output_stride
ควบคุมการก้าวขาออกของเครือข่ายโดยใช้การบิดแบบขยาย เครือข่ายส่วนใหญ่เป็น stride 32 ตามค่าเริ่มต้น ไม่ใช่ทุกเครือข่ายที่รองรับสิ่งนี้
การนับช่องแผนที่คุณลักษณะ ระดับการลด (ก้าวย่าง) สามารถสอบถามได้หลังจากการสร้างแบบจำลองผ่านสมาชิก .feature_info
ทุกรุ่นมีเครื่องโหลดตุ้มน้ำหนักที่ได้รับการฝึกไว้ล่วงหน้าอย่างสม่ำเสมอ ซึ่งจะปรับเชิงเส้นสุดท้ายหากจำเป็น และจากอินพุต 3 ถึง 1 ช่องหากต้องการ
สคริปต์การฝึกอบรมการอ้างอิง การตรวจสอบ และการอนุมานประสิทธิภาพสูงที่ทำงานในโหมดกระบวนการ/GPU หลายโหมด:
NVIDIA DDP พร้อม GPU ตัวเดียวต่อกระบวนการ หลายกระบวนการที่มี APEX ปรากฏ (ตัวเลือกความแม่นยำแบบผสม AMP)
PyTorch DistributedDataParallel พร้อม multi-gpu กระบวนการเดียว (ปิดใช้งาน AMP เนื่องจากเกิดปัญหาเมื่อเปิดใช้งาน)
PyTorch พร้อมกระบวนการเดียว GPU เดียว (ตัวเลือก AMP)
การใช้งานพูลส่วนกลางแบบไดนามิกที่อนุญาตให้เลือกจากการรวมเฉลี่ย การรวมสูงสุด ค่าเฉลี่ย + สูงสุด หรือ concat ([ค่าเฉลี่ย สูงสุด]) ในการสร้างแบบจำลอง การรวมกลุ่มทั้งหมดเป็นค่าเฉลี่ยแบบปรับได้ตามค่าเริ่มต้น และเข้ากันได้กับตุ้มน้ำหนักที่ฝึกไว้ล่วงหน้า
Wrapper 'Test Time Pool' ที่สามารถรวมโมเดลใดๆ ที่รวมไว้ และมักจะให้ประสิทธิภาพที่ดีขึ้นในการอนุมานด้วยรูปภาพอินพุตที่ใหญ่กว่าขนาดการฝึก แนวคิดที่ดัดแปลงมาจากการใช้งาน DPN ดั้งเดิมเมื่อฉันย้าย (https://github.com/cypw/DPNs)
ตัวกำหนดอัตราการเรียนรู้
ตัวกำหนดเวลา AllenNLP
FAIRseq lr_scheduler
SGDR: การไล่ระดับ Stochastic พร้อมการรีสตาร์ทแบบวอร์ม (https://arxiv.org/abs/1608.03983)
แนวคิดที่นำมาจาก
ตัวกำหนดเวลาประกอบด้วย step
, cosine
ที่มีการรีสตาร์ท, tanh
ด้วยการรีสตาร์ท, plateau
Space-to-Depth โดย mrT23 (https://arxiv.org/abs/1801.04590) -- กระดาษต้นฉบับ?
การตัดการไล่ระดับสีแบบปรับได้ (https://arxiv.org/abs/2102.06171, https://github.com/deepmind/deepmind-research/tree/master/nfnets)
ตัวเลือกช่องสัญญาณและ/หรือโมดูลความสนใจเชิงพื้นที่ที่หลากหลาย:
หม้อแปลงคอขวด - https://arxiv.org/abs/2101.11605
CBAM - https://arxiv.org/abs/1807.06521
การกระตุ้นการบีบอย่างมีประสิทธิภาพ (ESE) - https://arxiv.org/abs/1911.06667
ความสนใจช่องทางที่มีประสิทธิภาพ (ECA) - https://arxiv.org/abs/1910.03151
รวบรวมความตื่นเต้น (GE) - https://arxiv.org/abs/1810.12348
บริบททั่วโลก (GC) - https://arxiv.org/abs/1904.11492
รัศมี - https://arxiv.org/abs/2103.12731
การมีส่วนร่วม - https://arxiv.org/abs/2103.06255
เลเยอร์แลมบ์ดา - https://arxiv.org/abs/2102.08602
ไม่ใช่ในพื้นที่ (NL) - https://arxiv.org/abs/1711.07971
บีบและกระตุ้น (SE) - https://arxiv.org/abs/1709.01507
เคอร์เนลแบบเลือก (SK) - (https://arxiv.org/abs/1903.06586
แยก (SPLAT) - https://arxiv.org/abs/2004.08955
หน้าต่าง Shifted (SWIN) - https://arxiv.org/abs/2103.14030
ผลลัพธ์การตรวจสอบแบบจำลองสามารถพบได้ในตารางผลลัพธ์
สามารถดูเอกสารอย่างเป็นทางการได้ที่ https://huggingface.co/docs/hub/timm ยินดีสนับสนุนเอกสารประกอบ
เริ่มต้นใช้งาน PyTorch Image Models (timm): A Practitioner's Guide โดย Chris Hughes เป็นโพสต์บนบล็อกที่ครอบคลุมรายละเอียดหลายแง่มุมของ timm
timmdocs เป็นชุดเอกสารสำรองสำหรับ timm
ขอขอบคุณ Aman Arora เป็นอย่างยิ่งสำหรับความพยายามของเขาในการสร้าง timmdocs
paperswithcode เป็นแหล่งข้อมูลที่ดีสำหรับการเรียกดูโมเดลภายใน timm
โฟลเดอร์รูทของที่เก็บประกอบด้วยการฝึกอบรมการอ้างอิง การตรวจสอบ และสคริปต์การอนุมานที่ทำงานร่วมกับโมเดลที่รวมไว้และคุณสมบัติอื่นๆ ของที่เก็บนี้ สามารถนำไปปรับใช้กับชุดข้อมูลอื่นๆ และกรณีการใช้งานที่มีการแฮ็กเพียงเล็กน้อย ดูเอกสารประกอบ
หนึ่งในทรัพย์สินที่ยิ่งใหญ่ที่สุดของ PyTorch คือชุมชนและการมีส่วนร่วมของพวกเขา แหล่งข้อมูลที่ฉันชื่นชอบบางส่วนที่เข้ากันได้ดีกับรุ่นและส่วนประกอบต่างๆ มีดังต่อไปนี้
Detectron2 - https://github.com/facebookresearch/detectron2
โมเดลการแบ่งส่วน (ความหมาย) - https://github.com/qubvel/segmentation_models.pytorch
EfficientDet (Obj Det, Semantic เร็ว ๆ นี้) - https://github.com/rwightman/efficientdet-pytorch
อัลบั้ม - https://github.com/albumentations-team/albumentations
คอร์เนีย - https://github.com/kornia/kornia
ตัวแทน Distiller - https://github.com/HobbitLong/RepDistiller
torchdistill - https://github.com/yoshitomo-matsubara/torchdistill
การเรียนรู้เมตริก PyTorch - https://github.com/KevinMusgrave/pytorch-metric-learning
ฟาสไท - https://github.com/fastai/fastai
รหัสที่นี่เป็นลิขสิทธิ์ Apache 2.0 ฉันได้ดูแลเพื่อให้แน่ใจว่าโค้ดของบุคคลที่สามที่รวมหรือดัดแปลงมีใบอนุญาตที่เข้ากันได้ (อนุญาต) เช่น MIT, BSD ฯลฯ ฉันได้พยายามหลีกเลี่ยงความขัดแย้งของ GPL / LGPL ที่กล่าวว่าเป็นความรับผิดชอบของคุณที่จะต้องแน่ใจว่าคุณปฏิบัติตามใบอนุญาตที่นี่และเงื่อนไขของใบอนุญาตที่ต้องพึ่งพาใด ๆ หากเป็นไปได้ ฉันได้เชื่อมโยงแหล่งที่มา/ข้อมูลอ้างอิงสำหรับส่วนประกอบต่างๆ ในเอกสาร หากคุณคิดว่าฉันพลาดสิ่งใดไป โปรดสร้างปัญหา
จนถึงขณะนี้ ตุ้มน้ำหนักที่ได้รับการฝึกล่วงหน้าทั้งหมดที่มีอยู่ที่นี่ได้รับการฝึกล่วงหน้าบน ImageNet โดยมีเพียงไม่กี่รายการที่มีการฝึกล่วงหน้าเพิ่มเติม (ดูหมายเหตุเพิ่มเติมด้านล่าง) ImageNet ได้รับการเผยแพร่เพื่อการวิจัยที่ไม่ใช่เชิงพาณิชย์เท่านั้น (https://image-net.org/download) ยังไม่ชัดเจนว่าการเปลี่ยนแปลงดังกล่าวมีผลอย่างไรต่อการใช้ตุ้มน้ำหนักที่ฝึกไว้ล่วงหน้าจากชุดข้อมูลนั้น โมเดลใดๆ ที่ฉันฝึกกับ ImageNet นั้นจัดทำขึ้นเพื่อวัตถุประสงค์ในการวิจัย และควรถือว่าสิทธิ์การใช้งานชุดข้อมูลดั้งเดิมนั้นใช้กับน้ำหนักดังกล่าว วิธีที่ดีที่สุดคือขอคำแนะนำทางกฎหมาย หากคุณต้องการใช้ตุ้มน้ำหนักที่ผ่านการฝึกอบรมในผลิตภัณฑ์เชิงพาณิชย์
น้ำหนักหลายรายการรวมอยู่หรือการอ้างอิงที่นี่ได้รับการฝึกอบรมล่วงหน้าด้วยชุดข้อมูลที่เป็นกรรมสิทธิ์ซึ่งฉันไม่สามารถเข้าถึงได้ ซึ่งรวมถึงโมเดล Facebook WSL, SSL, SWSL ResNe(Xt) และ Google Noisy Student EfficientNet โมเดล Facebook มีใบอนุญาตที่ไม่ใช่เชิงพาณิชย์อย่างชัดเจน (CC-BY-NC 4.0, https://github.com/facebookresearch/semi-supervised-ImageNet1K-models, https://github.com/facebookresearch/WSL-Images) . ดูเหมือนว่าโมเดลของ Google ไม่มีข้อจำกัดใดๆ นอกเหนือจากใบอนุญาต Apache 2.0 (และข้อกังวลของ ImageNet) ไม่ว่าในกรณีใด คุณควรติดต่อ Facebook หรือ Google หากมีคำถามใดๆ
@misc{rw2019timm, ผู้แต่ง = {Ross Wightman}, title = {PyTorch Image Models}, ปี = {2019}, ผู้เผยแพร่ = {GitHub}, วารสาร = {ที่เก็บ GitHub}, doi = {10.5281/zenodo.4414861}, วิธีการเผยแพร่ = {url{https://github.com/rwightman/pytorch-image-models}}}