【杂谈】当前知识蒸馏与迁移学习有哪些可用的开源工具?
知識蒸餾與遷移學(xué)習(xí)不僅僅屬于模型優(yōu)化的重要技術(shù)之一,也是提升模型跨領(lǐng)域泛化能力的重要技術(shù),那么當(dāng)前有哪些可用的知識蒸餾和遷移學(xué)習(xí)開源工具呢?
作者&編輯 | 言有三
1 PaddleSlim
PaddleSlim是百度提出的模型優(yōu)化工具,包含在PaddlePaddle框架中,支持若干知識蒸餾算法,可以在teacher網(wǎng)絡(luò)和student網(wǎng)絡(luò)任意層添加組合loss,包括FSP loss,L2 loss,softmax with cross-entropy loss等。
https://github.com/PaddlePaddle/models/tree/develop/PaddleSlim
2 Distiller
Distiller是Intel基于Pytorch開源的模型優(yōu)化工具,支持Hinton等人提出的Knowledge distillation算法。
https://github.com/NervanaSystems/distiller
3 MxNet
MxNet中集成了Bayesian Dark Knowledge方法的復(fù)現(xiàn),在推薦系統(tǒng)中有一定作用。
https://github.com/apache/incubator-mxnet/tree/master/example/bayesian-methods
4 非官方Pytorch項(xiàng)目
Knowledge-Distillation-Zoo是GitHub用戶AberHu蒸餾的知識蒸餾項(xiàng)目,支持fitnet等多個模型。
https://github.com/AberHu/Knowledge-Distillation-Zoo
deep-transfer-learning是GitHub用戶easezyc整理的遷移學(xué)習(xí)項(xiàng)目。
https://github.com/easezyc/deep-transfer-learning
5 一些經(jīng)典模型實(shí)現(xiàn)
Hinton等人在2015年提出了經(jīng)典的知識蒸餾框架Knowledge distillation,下面是各大框架的復(fù)現(xiàn)。
[1] Keras?
https://github.com/TropComplique/knowledge-distillation-keras
[2] Tensorflow
https://github.com/DushyantaDhyani/kdtf
[3] Caffe
https://github.com/wentianli/knowledge_distillation_caffe
更多的一些經(jīng)典算法如下,留待讀者自己學(xué)習(xí),咱們就不沉迷于收藏了。
[1]?Relational Knowledge Distillation算法
https://github.com/lenscloth/RKD
[2] Teacher-Assistant-Knowledge-Distillation算法
https://github.com/imirzadeh/Teacher-Assistant-Knowledge-Distillation
[3]?Contrastive Representation Distillation算法
https://github.com/HobbitLong/RepDistiller
[4] Zero-shot_Knowledge_Distillation算法
https://github.com/sseung0703/Zero-shot_Knowledge_Distillation
[5] net2net算法
https://github.com/soumith/net2net.torch
[6] fitnet算法
https://github.com/adri-romsor/FitNets
6 開源綜述資料
接下來再給大家介紹兩個綜述性質(zhì)的開源資料。
第一個是知識蒸餾綜述項(xiàng)目,包括相關(guān)的論文合集,也包括一些開源算法的實(shí)現(xiàn)。
https://github.com/dkozlov/awesome-knowledge-distillation
第二個是遷移學(xué)習(xí)綜述項(xiàng)目,包括相關(guān)的論文合集,開源代碼。
https://github.com/jindongwang/transferlearning
其他類似的還有https://github.com/artix41/awesome-transfer-learning,https://github.com/AI-ON/Multitask-and-Transfer-Learning,資料收集愛好者不妨關(guān)注。
7 更多理論學(xué)習(xí)
如果想要系統(tǒng)性學(xué)習(xí)模型優(yōu)化相關(guān)的理論,可以移步有三AI知識星球 -> 網(wǎng)絡(luò)結(jié)構(gòu)1000變?-> 模型壓縮板塊 -> 模型剪枝,量化與蒸餾板塊,知識蒸餾與遷移學(xué)習(xí)的一些解讀案例如下:
總結(jié)
知識蒸餾與遷移學(xué)習(xí)相比于大量數(shù)據(jù)進(jìn)行監(jiān)督學(xué)習(xí)的方式,更符合人類學(xué)習(xí)的特點(diǎn),在工業(yè)界有著實(shí)際落地需求,學(xué)術(shù)界有很重要的研究意義。
知識星球推薦
有三AI知識星球由言有三維護(hù),內(nèi)設(shè)AI知識匯總,AI書籍,網(wǎng)絡(luò)結(jié)構(gòu),看圖猜技術(shù),數(shù)據(jù)集,項(xiàng)目開發(fā),Github推薦,AI1000問八大學(xué)習(xí)板塊。
【雜談】為什么邀請大家加入硬核知識星球有三AI
轉(zhuǎn)載文章請后臺聯(lián)系
侵權(quán)必究
往期精選
【AutoML】如何選擇最合適的數(shù)據(jù)增強(qiáng)操作
【AutoML】激活函數(shù)如何進(jìn)行自動學(xué)習(xí)和配置
【AutoML】歸一化(Normalization)方法如何進(jìn)行自動學(xué)習(xí)和配置
【AutoML】優(yōu)化方法可以進(jìn)行自動搜索學(xué)習(xí)嗎?
【AutoML】損失函數(shù)也可以進(jìn)行自動搜索學(xué)習(xí)嗎?
【AutoML】如何使用強(qiáng)化學(xué)習(xí)進(jìn)行模型剪枝?
【AutoML】強(qiáng)化學(xué)習(xí)如何用于模型量化?
【知識星球】分組卷積最新進(jìn)展,全自動學(xué)習(xí)的分組有哪些經(jīng)典模型?
【知識星球】卷積核和感受野可動態(tài)分配的分組卷積
【知識星球】有三AI 10月新主題,千奇百怪GAN上線!
【知識星球】剪枝量化初完結(jié),蒸餾學(xué)習(xí)又上線
【知識星球】有沒有網(wǎng)絡(luò)模型是動態(tài)變化的,每次用的時候都不一樣
【雜談】當(dāng)前模型量化有哪些可用的開源工具?
【雜談】有三AI知識星球最近都GAN了哪些內(nèi)容?
【雜談】當(dāng)前模型剪枝有哪些可用的開源工具?
總結(jié)
以上是生活随笔為你收集整理的【杂谈】当前知识蒸馏与迁移学习有哪些可用的开源工具?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【年终总结】2019年有三AI NLP做
- 下一篇: 【NLP】如何利用BERT来做基于阅读理