一行代碼完成模型訓練,30倍加速,3毫秒急速識別,超強圖像分類算法開源!
人臉、車輛、人體屬性、卡證、交通標識等經(jīng)典圖像識別能力,在我們當前數(shù)字化工作及生活中發(fā)揮著極其重要的作用。業(yè)內(nèi)也不乏頂尖公司提供的可直接調(diào)用的API、SDK,但這些往往面臨著定制化場景泛化效果不好、價格昂貴、黑盒可控性低、技術壁壘難以形成多諸多痛點。
而今天要給大家推薦的是一個完全開源免費的、覆蓋人、車、OCR等9大經(jīng)典識別場景、在CPU上可3毫秒實現(xiàn)急速識別、一行代碼就可實現(xiàn)迭代訓練的項目!
圖1 PaddleClas圖像分類應用示意圖
話不多說,趕緊送上傳送門,識貨的小伙伴趕緊嘗試一下吧!
https://github.com/PaddlePaddle/PaddleClas
記得Star收藏防止走丟哦!
當然,小編不是只管吆喝的,下面就來詳細拆解下這個項目的過人之處吧!
圖2 9大場景模型效果示意圖
亮點一:完美平衡精度與速度
從大名鼎鼎的Resnet50到如今火熱的Swin-Transformer,模型精度不斷被刷新,但是預測效率并不高。即使是Swin-Transformer最小的模型,在CPU上的預測速度也超過100ms,遠遠無法滿足產(chǎn)業(yè)實時預測的需求。
而使用MobileNet系列等輕量化模型可以保證較高的預測效率,在CPU上預測一張圖像大約3ms,但是模型精度往往和大模型有很大差距。
而PaddleClas推出的超輕量圖像分類方案(Practical Ultra Light Classification,簡稱PULC),就完美解決上述產(chǎn)業(yè)落地中算法精度和速度難以平衡的痛點。
表1 不同模型精度速度結果對比
如圖所示,它的精度與Swin-Transformer等大模型比肩,預測速度卻可以快30倍以上,在CPU上的推理時長僅需2ms!
亮點二:易用性極強
PULC方案不僅完美的平衡了精度與速度,還充分考慮了產(chǎn)業(yè)實踐過程中需要定制化的對算法快速迭代的需求,只需一行命令,就可完成模型訓練。
與此同時,PaddleClas 團隊還發(fā)布了包括人、車、OCR在內(nèi)的9大場景模型,僅需2步就能實現(xiàn)業(yè)務 POC 效果驗證,訓練、推理、部署一條龍,真正實現(xiàn)“開箱即用”。
不僅如此,項目還匹配了詳細的中文使用文檔及產(chǎn)業(yè)實踐范例教程。
圖3 使用文檔及范例示意圖
亮點三:集成超多硬核技術
超輕量圖像分類方案(PULC)集成了業(yè)界4大業(yè)界領先的優(yōu)化策略:
圖4 超輕量圖像分類方案(PULC)示意圖
PP-LCNet輕量級骨干網(wǎng)絡
PP-LCNet作為針對CPU量身打造的骨干網(wǎng)絡模型,在速度、精度方面均遠超如MobileNetV3等同體量算法,多個場景模型優(yōu)化后,速度較SwinTransformer的模型快30倍以上,精度較MobileNetV3_small_0.35x高18個點。
SSLD預訓練權重
SSLD半監(jiān)督蒸餾算法可以使小模型學習到大模型的特征和ImageNet22k無標簽大規(guī)模數(shù)據(jù)的知識。在訓練小模型時,使用SSLD預訓練權重作為模型的初始化參數(shù),可以使不同場景的應用分類模型獲得1-2.5個點的精度提升。
數(shù)據(jù)增強策略集成
該方案融合了圖像變換、圖像裁剪和圖像混疊3種數(shù)據(jù)增強方法,并支持自定義調(diào)整觸發(fā)概率,能使模型的泛化能力大大增強,提升模型在實際場景中的性能。模型可以在上一步的基礎上,精度再提升1個點左右。
SKL-UGI知識蒸餾算法
SKL(symmetric-KL)在經(jīng)典的KL知識蒸餾算法的基礎上引入對稱信息,提升了算法的魯棒性。同時,該方案可以方便的在訓練中加入無標簽訓練數(shù)據(jù)(Unlabeled General Image),可以進一步提升模型效果。該算法可以使模型精度繼續(xù)提升1-2個點。