偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

一行命令跑評測,港中文MMLab開源自監(jiān)督表征學(xué)習(xí)代碼庫OpenSelfSup

新聞 前端
自監(jiān)督表征學(xué)習(xí)發(fā)展迅速,但也存在諸多問題。近日,香港中文大學(xué)多媒體實驗室(MMLab)和南洋理工大學(xué)的研究者開源了一套統(tǒng)一的自監(jiān)督學(xué)習(xí)代碼庫 OpenSelfSup。

 自監(jiān)督表征學(xué)習(xí)發(fā)展迅速,但也存在諸多問題。近日,香港中文大學(xué)多媒體實驗室(MMLab)和南洋理工大學(xué)的研究者開源了一套統(tǒng)一的自監(jiān)督學(xué)習(xí)代碼庫 OpenSelfSup。

前言

近幾個月來自監(jiān)督表征學(xué)習(xí)領(lǐng)域獲得了顯著突破,特別是隨著 Rotation Prediction、DeepCluster、MoCo、SimCLR 等簡單有效的方法的誕生,自監(jiān)督表征學(xué)習(xí)大有超越有監(jiān)督表征學(xué)習(xí)的趨勢。

然而,做這個領(lǐng)域的研究者都深有感觸:1)自監(jiān)督任務(wù)復(fù)雜而多樣,不同方法各有各的專用訓(xùn)練代碼,難以結(jié)合、復(fù)用和改進;2)評價方案不統(tǒng)一,不同的方法難以在公平環(huán)境下對比;3)動輒百萬千萬的訓(xùn)練數(shù)據(jù)量,訓(xùn)練效率是個大問題。

針對這些問題,香港中文大學(xué)多媒體實驗室(MMLab)和南洋理工大學(xué)的研究者最近開源了一套統(tǒng)一的自監(jiān)督學(xué)習(xí)代碼庫:OpenSelfSup。

開源地址:https://github.com/open-mmlab/OpenSelfSup

OpenSelfSup

統(tǒng)一的代碼框架和模塊化設(shè)計

OpenSelfSup 使用 PyTorch 實現(xiàn),支持基于分類、重建、聚類、memory bank、contrastive learning 的多種自監(jiān)督學(xué)習(xí)框架,目前收錄了 Relative Location、Rotation Prediction、DeepCluster、OnlineDeepCluster、NPID、MoCo、SimCLR 等一系列表現(xiàn)較好的自監(jiān)督表征學(xué)習(xí)方法,后續(xù)還將陸續(xù)跟進學(xué)術(shù)界最新算法。

在這個框架下,每個算法被拆解為 backbone、neck、head、memory_bank (optional)、hook (optional) 等多個可獨立設(shè)計的模塊,每個模塊均提供多個可選方案,開發(fā)者也可以自行設(shè)計各個模塊。

SimCLR 中的 backbone、neck 和 head 設(shè)計

標(biāo)準(zhǔn)化的評測方案

OpenSelfSup 目前支持 ImageNet/Place205 Linear Classification、ImageNet Semi-Supervised Classification、PASCAL VOC07 Linear SVM、PASCAL VOC / COCO Object Detection 等多個基準(zhǔn)的評測方案,可以做到一行命令跑評測,非常方便。

高效率的分布式訓(xùn)練

OpenSelfSup 收錄的算法全部實現(xiàn)了多機多卡的分布式訓(xùn)練、提特征和測試。

上手容易

該代碼庫的環(huán)境配置、數(shù)據(jù)配置均有 from scratch 的腳本或詳細指導(dǎo),簡單易行。訓(xùn)練和測試現(xiàn)有算法,只需要一行命令即可搞定。

高度靈活性和可擴展性

1. 改進現(xiàn)有算法。OpenSelfSup 用 config 文件來定義各種參數(shù)和模塊,方便修改。config 中還支持一些較復(fù)雜的調(diào)整,比如 data augmentation 的組合、learning rate schedule、獨立調(diào)整某些網(wǎng)絡(luò)參數(shù)的優(yōu)化參數(shù)等。例如,你希望單獨調(diào)整 head 中 fully-connected layer 的 momentum 和 learning rate,或者 backbone 中某幾層的 weight decay 等等,那么你可以在 config 中 optimizer: paramwise_option 下用正則表達式篩選出對應(yīng)網(wǎng)絡(luò)參數(shù),然后指定這些值,而不需要改動代碼。

DeepCluster中指定head(fc layer) 的momentum為0

2. 使用自己的訓(xùn)練數(shù)據(jù)。OpenSelfSup 將數(shù)據(jù)處理和數(shù)據(jù)源解耦。使用自己的訓(xùn)練數(shù)據(jù),只需要新增一個自己的 data source 文件,并在 config 中指定即可。

3. 設(shè)計自己的算法。高度模塊化的設(shè)計使得自行設(shè)計算法變得非常簡單。你只需要設(shè)計自己的模塊或者復(fù)用現(xiàn)有模塊,然后新建一個模型文件將這些模塊組織起來即可。如果你的算法包含間隔 iteration、間隔 epoch 的操作(例如 DeepCluster 需要在每個 epoch 結(jié)束后對訓(xùn)練集做聚類),也只需要新建一個 hook 來定義這些操作,并在 config 中設(shè)置這個 hook 即可。hook 的調(diào)用是自動進行的。

DeepCluster 初始聚類和每 n 個 epoch 后做聚類

結(jié)語

OpenSelfSup 是一個長期維護的開源項目,旨在方便學(xué)術(shù)界和工業(yè)屆的研究者推動自監(jiān)督表征學(xué)習(xí)領(lǐng)域繼續(xù)前進。也希望有興趣的研究者、開發(fā)者幫助繼續(xù)完善 OpenSelfSup,為這個領(lǐng)域貢獻自己的力量。

 

責(zé)任編輯:張燕妮 來源: 機器之心
相關(guān)推薦

2021-10-13 17:28:33

AI 數(shù)據(jù)人工智能

2016-12-02 08:53:18

Python一行代碼

2019-07-10 05:47:37

GAN無監(jiān)督表征學(xué)習(xí)機器學(xué)習(xí)

2017-11-20 14:46:27

命令代碼

2020-10-23 09:35:41

開源 Java 代碼

2024-05-09 11:30:17

2023-07-21 15:30:00

微軟代碼TypeChat

2017-04-05 11:10:23

Javascript代碼前端

2014-02-12 13:43:50

代碼并行任務(wù)

2022-04-09 09:11:33

Python

2021-04-19 10:38:06

代碼開發(fā)工具

2021-10-19 17:52:16

Git命令算數(shù)

2018-01-02 09:26:28

Ubuntuzzupdate版本升級

2025-05-14 09:15:00

2017-04-13 19:20:18

Python代碼并行任務(wù)

2021-08-31 09:49:37

CPU執(zhí)行語言

2021-11-02 16:25:41

Python代碼技巧

2020-08-19 10:30:25

代碼Python多線程

2020-09-09 16:00:22

Linux進程

2018-04-23 14:49:31

表征句子深度學(xué)習(xí)自然語言
點贊
收藏

51CTO技術(shù)棧公眾號