一個完整的pytorch預(yù)訓(xùn)練實現(xiàn)圖像分類,模型融合

向AI轉(zhuǎn)型的程序員都關(guān)注了這個號???
機器學(xué)習(xí)AI算法工程?? 公眾號:datayx
利用pytorch實現(xiàn)圖像分類,其中包含的densenet,resnext,mobilenet,efficientnet, resnet等圖像分類網(wǎng)絡(luò),可以根據(jù)需要再行利用torchvision擴展其他的分類算法
實現(xiàn)功能
基礎(chǔ)功能利用pytorch實現(xiàn)圖像分類
包含帶有warmup的cosine學(xué)習(xí)率調(diào)整
warmup的step學(xué)習(xí)率優(yōu)調(diào)整
多模型融合預(yù)測,加權(quán)與投票融合
利用flask實現(xiàn)模型云端api部署
使用tta測試時增強進行預(yù)測
添加label smooth的pytorch實現(xiàn)(標(biāo)簽平滑)
添加使用cnn提取特征,并使用SVM,RF,MLP,KNN等分類器進行分類。
更新添加了模型蒸餾的的訓(xùn)練方法
添加中間層可視化
更新模型部署(采用flask+Redis的方法)
c++ libtorch進行模型部署的簡單demo
代碼運行教程? 獲取:
關(guān)注微信公眾號 datayx ?然后回復(fù)??圖像分類? 即可獲取。
AI項目體驗地址 https://loveai.tech
運行環(huán)境
python3.7
pytorch 1.1
torchvision 0.3.0
代碼倉庫的使用
數(shù)據(jù)集形式
原始數(shù)據(jù)集存儲形式為,同個類別的圖像存儲在同一個文件夾下,所有類別的圖像存儲在一個主文件夾data下。

利用preprocess.py將數(shù)據(jù)集格式進行轉(zhuǎn)換(個人習(xí)慣這種數(shù)據(jù)集的方式)
python ./data/preprocess.py
轉(zhuǎn)換后的數(shù)據(jù)集為,將訓(xùn)練集的路徑與類別存儲在train.txt文件中,測試機存儲在val.txt中. 其中txt文件中的內(nèi)容為

模型介紹
倉庫中模型densenet,mobilenet,resnext 模型來自于torchvision
訓(xùn)練
在
cfg.py中修改合適的參數(shù),并在train.py中選擇合適的模型
預(yù)測
在cfg.py中TRAINED_MODEL參數(shù)修改為指定的權(quán)重文件存儲位置,在predict文件中可以選定是否使用tta
python predict.py
當(dāng)訓(xùn)練完成多模型之后生成多個txt文件之后,利用
ensamble文件夾中的kaggle_vote.py進行投票融合或者加權(quán)投票融合。
將每個模型生成的csv文件,移動到ensamble/samples/然后將每個文件命名為method1.py,method2.py. 然后運行如下命令進行投票融合
python ./kaggle_vote.py "./samples/method*.csv" "./samples/vote.csv"
cnn + svm
代碼存在于cnn_ml.py中, 利用訓(xùn)練好的cnn特征提取器,將得到的特征保存為pkl文件,然后訓(xùn)練svm分類器, 并將分類器模型保存,然后讀取預(yù)測
主要需要修改的就是根據(jù)不同模型的輸出特征向量的大小在cnn_ml.py中修改NB_features對應(yīng)的大小
flask云端部署
將訓(xùn)練存儲好的權(quán)重文件,存儲在flask_deployment文件夾中
然后修改server.py中路徑運行即可 利用client.py進行調(diào)用
閱讀過本文的人還看了以下文章:
TensorFlow 2.0深度學(xué)習(xí)案例實戰(zhàn)
基于40萬表格數(shù)據(jù)集TableBank,用MaskRCNN做表格檢測
《基于深度學(xué)習(xí)的自然語言處理》中/英PDF
【全套視頻課】最全的目標(biāo)檢測算法系列講解,通俗易懂!
《美團機器學(xué)習(xí)實踐》_美團算法團隊.pdf
《深度學(xué)習(xí)入門:基于Python的理論與實現(xiàn)》高清中文PDF+源碼
python就業(yè)班學(xué)習(xí)視頻,從入門到實戰(zhàn)項目
2019最新《PyTorch自然語言處理》英、中文版PDF+源碼
《21個項目玩轉(zhuǎn)深度學(xué)習(xí):基于TensorFlow的實踐詳解》完整版PDF+附書代碼
《深度學(xué)習(xí)之pytorch》pdf+附書源碼
PyTorch深度學(xué)習(xí)快速實戰(zhàn)入門《pytorch-handbook》
【下載】豆瓣評分8.1,《機器學(xué)習(xí)實戰(zhàn):基于Scikit-Learn和TensorFlow》
《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》PDF+完整源碼
汽車行業(yè)完整知識圖譜項目實戰(zhàn)視頻(全23課)
李沐大神開源《動手學(xué)深度學(xué)習(xí)》,加州伯克利深度學(xué)習(xí)(2019春)教材
筆記、代碼清晰易懂!李航《統(tǒng)計學(xué)習(xí)方法》最新資源全套!
《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》最新2018版中英PDF+源碼
FashionAI服裝屬性標(biāo)簽圖像識別Top1-5方案分享
重要開源!CNN-RNN-CTC 實現(xiàn)手寫漢字識別
同樣是機器學(xué)習(xí)算法工程師,你的面試為什么過不了?
前海征信大數(shù)據(jù)算法:風(fēng)險概率預(yù)測
【Keras】完整實現(xiàn)‘交通標(biāo)志’分類、‘票據(jù)’分類兩個項目,讓你掌握深度學(xué)習(xí)圖像分類
VGG16遷移學(xué)習(xí),實現(xiàn)醫(yī)學(xué)圖像識別分類工程項目
特征工程(二) :文本數(shù)據(jù)的展開、過濾和分塊
如何利用全新的決策樹集成級聯(lián)結(jié)構(gòu)gcForest做特征工程并打分?
Machine Learning Yearning 中文翻譯稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
python+flask搭建CNN在線識別手寫中文網(wǎng)站
中科院Kaggle全球文本匹配競賽華人第1名團隊-深度學(xué)習(xí)與特征工程
不斷更新資源
深度學(xué)習(xí)、機器學(xué)習(xí)、數(shù)據(jù)分析、python
?搜索公眾號添加:?datayx??
機大數(shù)據(jù)技術(shù)與機器學(xué)習(xí)工程
?搜索公眾號添加:?datanlp
長按圖片,識別二維碼
