量化交易有因子動物園 深度學(xué)習(xí)里有模型動物園(ModelZoo)又叫模型市場基于深度學(xué)習(xí)
前言
隨著遷移模型的概念流行起來,就像快樂會傳染樣,自然語言處理,計算機(jī)視覺,生成模型,強(qiáng)化學(xué)習(xí),非監(jiān)監(jiān)督學(xué)習(xí),語音識別 這幾個領(lǐng)域內(nèi)部產(chǎn)生了大量的可復(fù)用可遷移學(xué)習(xí)的基礎(chǔ)模型,領(lǐng)域之間的方法也在互相學(xué)習(xí)傳遞。模型動物園的概念應(yīng)運而生。后文找到一些相對比較大的模型動物園。
PaddleHub
介紹:
PaddlePaddle 提供了豐富的計算單元,使得用戶可以采用模塊化的方法解決各種學(xué)習(xí)問題。在此Repo中,我們展示了如何用 PaddlePaddle來解決常見的機(jī)器學(xué)習(xí)任務(wù),提供若干種不同的易學(xué)易用的神經(jīng)網(wǎng)絡(luò)模型。便捷地獲取PaddlePaddle生態(tài)下的預(yù)訓(xùn)練模型,完成模型的管理和一鍵預(yù)測。配合使用Fine-tune API,可以基于大規(guī)模預(yù)訓(xùn)練模型快速完成遷移學(xué)習(xí),讓預(yù)訓(xùn)練模型能更好地服務(wù)于用戶特定場景的應(yīng)用。
無需數(shù)據(jù)和訓(xùn)練,一鍵模型應(yīng)用
一鍵模型轉(zhuǎn)服務(wù)
易用的遷移學(xué)習(xí)
豐富的預(yù)訓(xùn)練模型
!pip install --upgrade paddlepaddle -i https://mirror.baidu.com/pypi/simple
!pip install --upgrade paddlehub -i https://mirror.baidu.com/pypi/simple
?
import paddlehub as hub
?
lac = hub.Module(name="lac")
test_text = ["今天是個好天氣。"]
?
results = lac.cut(text=test_text, use_gpu=False, batch_size=1, return_tag=True)
print(results)
#{'word': ['今天', '是', '個', '好天氣', '。'], 'tag': ['TIME', 'v', 'q', 'n', 'w']}
?
從目錄可以看出來國人可以用百度開源的hub里的模型分分鐘做些應(yīng)用出來,涵蓋的范圍比較全面,適合國人,相信不久會成為主流,例如:
使用Paddlehub完成偽3D特效
地址:
https://github.com/PaddlePaddle/models
https://github.com/PaddlePaddle/PaddleHub
TensorFlow Hub & TensorFlow Models
介紹:
官方介紹,TensorFlow Hub是一個庫,用于發(fā)布、發(fā)現(xiàn)和使用機(jī)器學(xué)習(xí)模型中可重復(fù)利用的部分。 模塊是一個獨立的 TensorFlow 圖部分,其中包含權(quán)重和資源,可以在一個進(jìn)程中供不同任務(wù)重復(fù)使用(稱為遷移學(xué)習(xí))。 從而實現(xiàn)使用較小的數(shù)據(jù)集訓(xùn)練模型;改善泛化效果,以及加快訓(xùn)練速度。 目前,TensorFlow Hub一共有20個API、75個用于文本嵌入的模塊、71個用于圖像特征向量模塊,以及2個用于視頻分類的模塊等等。TensorFlow Hub 是一個包含經(jīng)過訓(xùn)練的機(jī)器學(xué)習(xí)模型的代碼庫,這些模型稍作調(diào)整便可部署到任何設(shè)備上。您只需幾行代碼即可重復(fù)使用經(jīng)過訓(xùn)練的模型,例如 BERT 和 Faster R-CNN。TensorFlow Hub是使用TensorFlow進(jìn)行機(jī)器學(xué)習(xí)的可重用資產(chǎn)庫。特別是,它提供了預(yù)先訓(xùn)練保存的模型,可以重用這些模型來解決新任務(wù),而訓(xùn)練時間和訓(xùn)練數(shù)據(jù)更少。這個GitHub存儲庫托管了tensorflow_hub Python庫,可以用最少的代碼下載和重用TensorFlow程序中保存的模型,以及其他相關(guān)的代碼和文檔。模塊基本上全來自谷歌官方,來自谷歌AI的有大多數(shù),還有一些來自DeepMind。TensorFlow Hub支持使用語言、網(wǎng)絡(luò)、提供者、數(shù)據(jù)集以及類型來對模塊進(jìn)行精確篩查。其中有8個模塊支持中文。
一個GitHub上的存儲庫,包含了許多在TensorFlow中實現(xiàn)的模型,一共分為兩類:官方模型和研究模型。官方模型,是使用TensorFlow的高級API的示例模型的集合。它們能夠得到良好的維護(hù)、測試,并與最新的穩(wěn)定的TensorFlow API保持同步。項目創(chuàng)建者表示,推薦新的TensorFlow用戶從這里開始,目前可用的模型有:BERT、Boosted Trees、MNIST、ResNet、Transformer、Wide_deep研究模型,是研究人員在TensorFlow中實現(xiàn)的大量模型集合。它們在發(fā)布分支中不受官方支持或不可用;模型維護(hù)等方面取決于各個研究人員。目前有51個模型,覆蓋計算機(jī)視覺、自然語言處理領(lǐng)域等等。
? !pip install --upgrade tensorflow_hub
?
? import tensorflow_hub as hub
?
? model = hub.KerasLayer("https://tfhub.dev/google/nnlm-en-dim128/2")
? embeddings = model(["The rain in Spain.", "falls",
? ? ? ? ? ? ? ? ? ? ? "mainly", "In the plain!"])
?
? print(embeddings.shape)? #(4,128)
標(biāo)題
主要匯集了是個大方便的模型,包含:使用tf2.0 實現(xiàn)的一些SOTA等
地址:
https://www.tensorflow.org/hub
https://github.com/tensorflow/models
PyTorch Hub
這個facebook的深度學(xué)習(xí)模型庫,一問世就引發(fā)了巨大關(guān)注。因為它太強(qiáng)了:ResNet、BERT、GPT、VGG、PGAN、MobileNet等深度學(xué)習(xí)領(lǐng)域的經(jīng)典模型,只需輸入一行代碼,就能一鍵調(diào)用。在這些地方,深度學(xué)習(xí)模型同樣能夠“拿來就能用”。
官方介紹,PyTorch Hub是一個簡易API和工作流程,為復(fù)現(xiàn)研究提供了基本構(gòu)建模塊,包含預(yù)訓(xùn)練模型庫。
PyTorch Hub支持Colab,能與論文代碼結(jié)合網(wǎng)站Papers With Code集成,用于更廣泛的研究。
此外,facebook還鼓勵學(xué)者把自己的模型發(fā)布到這里來,來讓PyTorch Hub越來越強(qiáng)大。
目前,PyTorch Hub有26個模型可以使用,它們分別是:Deeplabv3-ResNet101、Transformer (NMT)、WaveGlow、ResNext WSL、DCGAN on FashionGen、Progressive Growing of GANs (PGAN)、BERT、GPT、GPT-2、Transformer-XL、U-Net for brain MRI、SSD、Tacotron 2、RoBERTa、AlexNet、Densenet、FCN-ResNet101、GoogLeNet、Inception_v3、MobileNet v2、ResNet、ResNext、ShuffleNet v2、SqueezeNet、vgg-nets、Wide ResNet
我們接受提交到PyTorch hub通過PR在hub repo。一旦這里的PR合并為master,它會在24小時內(nèi)出現(xiàn)在PyTorch網(wǎng)站上。
主要包含語音,生成模型,自然語言處理,視覺,腳本化等5個方向的模型。
model = torch.hub.load('pytorch/vision', 'resnet18', pretrained=True)
地址:
https://pytorch.org/hub/
https://github.com/pytorch/hub
Model Zoo
這個平臺,由新加坡名為Jing Yu Koh本科生牽頭搭建。與上述的幾個平臺不同,這個平臺上提供預(yù)訓(xùn)練模型,不僅僅只是完全針對于Pytorch或者TensorFlow。 在每個模型上,會標(biāo)注出這個模型在GitHub的標(biāo)星數(shù)量,模型適用的框架、領(lǐng)域以及模型的使用條件/用途。 目前已經(jīng)收集了數(shù)百個模型,覆蓋的領(lǐng)域包括計算機(jī)視覺、自然語言處理、強(qiáng)化學(xué)習(xí)、無監(jiān)督學(xué)習(xí)、音頻和語音、生成模型。 涉及到的框架有:TensorFlow、Caffe、Caffe2、PyTorch、MXNet、Keras、Chainer。這個模型動物園可以理解為一個元搜索引擎的概念,囊括了各個機(jī)器學(xué)習(xí)框架的模型。
包含主流的7個深度學(xué)習(xí)框架。
涵蓋深度學(xué)習(xí)涉足的6個主流領(lǐng)域。
地址:
https://modelzoo.co/
Models – IBM Developer
Models – IBM Developer
IBM開放的預(yù)訓(xùn)練深度模型庫,目前一共有32個模型,分為可部署和可訓(xùn)練模型兩類,涉及18個領(lǐng)域,分別是:
聲音分類、音頻特征提取、音頻建模、面部識別、圖像分類、圖像特征提取、圖像到圖像的翻譯或轉(zhuǎn)換、圖像到文本的翻譯、語言建模、命名實體識別、自然語言處理、圖片中的目標(biāo)檢測、安全、文本分類、文本特征提取、文本到圖像的翻譯、時間序列預(yù)測、視頻分類
標(biāo)題
帶有30個模型。https://developer.ibm.com/exchanges/models/all/max-speech-to-text-converter/ 基本上都有放到docker:
地址:
https://developer.ibm.com/exchanges/models/all/
OpenCLaP
介紹:OpenCLaP(Open Chinese Language Pre-trained Model Zoo)是由清華大學(xué)人工智能研究院自然語言處理與社會人文計算研究中心推出的一個多領(lǐng)域中文預(yù)訓(xùn)練模型倉庫。預(yù)訓(xùn)練語言模型通過在大規(guī)模文本上進(jìn)行預(yù)訓(xùn)練,可以作為下游自然語言處理任務(wù)的模型參數(shù)或者模型輸入以提高模型的整體性能。該模型倉庫具有如下幾個特點:
多領(lǐng)域。我們目前訓(xùn)練出了基于法律文本和百度百科的預(yù)訓(xùn)練模型,以提供多樣化的可選擇模型。
能力強(qiáng)。我們使用了當(dāng)前主流的 BERT 模型作為預(yù)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并支持最大 512 長度的文本輸入來適配更加多樣的任務(wù)需求。
持續(xù)更新。我們將在近期加入更多的預(yù)訓(xùn)練模型,如增加更多樣的訓(xùn)練語料,使用最新的全詞覆蓋(Whole Word Masking)訓(xùn)練策略等。
可以看出主要是中文語料的一個預(yù)訓(xùn)練模型
地址:
https://github.com/thunlp/OpenCLaP
OpenVINO? Toolkit Intel's Pre-Trained Models
介紹:
OpenVINO?工具包概述
OpenVINO?工具包提供了一組預(yù)先訓(xùn)練過的模型,您可以使用它們進(jìn)行學(xué)習(xí)和演示,或者開發(fā)深度學(xué)習(xí)軟件。最新版本可在Github上的回購。
模型可以通過模型下載器下載(<OPENVINO_INSTALL_DIR>/deployment_tools/open_model_zoo/tools/ Downloader)。它們也可以從01.org手動下載。
涵蓋圖像,自然語言處理等15類模型。
地址:
https://github.com/openvinotoolkit/open_model_zoo/blob/master/models/intel/index.md
ONNX Model Zoo
介紹:
開放神經(jīng)網(wǎng)絡(luò)交換(Open Neural Network Exchange, ONNX)是一種表示機(jī)器學(xué)習(xí)模型的開放標(biāo)準(zhǔn)格式。ONNX得到了一個合作伙伴社區(qū)的支持,他們已經(jīng)在許多框架和工具中實現(xiàn)了ONNX。
ONNX模型動物園是由像您這樣的社區(qū)成員以O(shè)NNX格式提供的一組預(yù)先訓(xùn)練的、最先進(jìn)的模型。每個模型都配有木星筆記本,用于模型訓(xùn)練和運行推理與訓(xùn)練的模型。這些筆記本是用Python編寫的,包括到訓(xùn)練數(shù)據(jù)集的鏈接,以及描述模型架構(gòu)的原始論文的參考文獻(xiàn)。
我們已經(jīng)標(biāo)準(zhǔn)化了Git LFS(大文件存儲)來存儲ONNX模型文件。要下載ONNX模型,請導(dǎo)航到相應(yīng)的Github頁面,并單擊右上角的下載按鈕。
如圖可以看到其支持機(jī)器視覺,自然語言處理,語音識別等模型,有好幾十個模型。
地址:
https://github.com/onnx/models
Caffe2 Model
介紹:
這是一個存儲預(yù)先訓(xùn)練好的caffe2模型的存儲庫。您可以使用caffe2來幫助您下載或在您的機(jī)器上安裝這些模型。Caffe有許多分類的預(yù)訓(xùn)練模型及網(wǎng)絡(luò)結(jié)構(gòu),我自己訓(xùn)練過的模型總結(jié)在Github上,基本上涵蓋了大部分的分類模型,包括AlexNet,VGG,GoogLeNet,Inception系列,ResNet,SENet,DenseNet,SqueezeNet。 其中會碰到不少坑,例如VGG給的結(jié)構(gòu)已經(jīng)太舊了,需要根據(jù)新版本Caffe的進(jìn)行修改,DenseNet訓(xùn)練有些地方需要修改等。鑒于以上原因,我自己整理了一個Caffe Model Zoo,都是已經(jīng)使用Caffe訓(xùn)練過模型的。 作者:SnailTyan 鏈接:https://www.jianshu.com/p/6d357d78e951 來源:簡書 著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
模型比較老舊了,不多,主要是圖像處理的模型
地址:
https://github.com/facebookarchive/models
https://github.com/SnailTyan/caffe-model-zoo
https://github.com/BVLC/caffe/wiki/Model-Zoo
openmmlab
介紹:
學(xué)術(shù)研究和工業(yè)應(yīng)用的開源項目。OpenMMLab涵蓋了廣泛的計算機(jī)視覺研究主題,如分類、檢測、分割和超分辨率。
?
含有很多機(jī)器視覺的model,是個不錯的學(xué)習(xí)對象
地址:
https://openmmlab.com/
https://github.com/open-mmlab
https://github.com/open-mmlab/mmdetection
總結(jié)
最后,總結(jié)一下。
上文提到的這些深度模型庫中,有一些是專用的,比如PaddleHub、PyTorch Hub、TensorFlow Hub和TensorFlow Models,只能夠在PaddlePaddle,PyTorch框架或者TensorFlow中使用,但其使用起來非常方便,能夠快速調(diào)用部署。
其他的,比如Model Zoo,Caffe2 Model、ONNX Model Zoo、OpenCLaP、OpenVINO則是由個人開發(fā)者、開源社區(qū)、學(xué)校組織收集,覆蓋面很廣泛,模型也很多,但相對來說,部署起來并沒有直接利用PaddleHub、PyTorch Hub或TensorFlow Hub方便。
大家可以根據(jù)自己的需求選擇相應(yīng)深度學(xué)習(xí)庫。工作,學(xué)習(xí),參加比賽利用好了,可以事半功倍。
可以看出百度最近股價創(chuàng)三年前新高,目前百度aistudio(https://aistudio.baidu.com/aistudio/index)平臺上出現(xiàn)大量的免費課程和各種比賽活動,隨著基于逐步出現(xiàn)一些基于百度的PaddlePaddle機(jī)器學(xué)習(xí)框架的應(yīng)用出現(xiàn),逐步會成為國內(nèi)一個主流機(jī)器學(xué)習(xí)框架。
?
?
————————————————
版權(quán)聲明:本文為CSDN博主「機(jī)器愛智能」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/jrckkyy/article/details/114380743