南大周志華團隊8年力作!「學件」系統解決機器學習復用難題,「模型融合」涌現科研新范式
HuggingFace是目前最火熱的機器學習開源社區,匯集30萬個不同的機器學習模型,有超過10萬個應用可供用戶訪問和使用。
如果HuggingFace上這30萬個模型,可以自由組合,共同完成新的學習任務,那會是一種什么樣的畫面?
其實在HuggingFace問世的2016年,南京大學周志華教授就提出了「學件」(Learnware)概念,描繪了這樣的藍圖。
最近,南京大學周志華教授團隊推出了一個這樣的平臺——北冥塢。
地址:https://bmwu.cloud/
北冥塢不但可以讓科研人員和用戶像使用HuggingFace一樣上傳自己的模型,還可以基于基座系統,根據用戶的需求進行模型匹配、協作融合,高效處理用戶的學習任務。
論文地址:https://arxiv.org/abs/2401.14427
北冥塢系統倉庫:https://www.gitlink.org.cn/beimingwu/beimingwu
科研工具包倉庫:https://www.gitlink.org.cn/beimingwu/learnware
這個平臺最大的特點就是引入了學件(Learnware)系統,從而突破性地實現了針對用戶需求的模型自適應匹配與協作能力。
學件由機器學習模型和描述模型的規約構成,即「學件 = 模型 + 規約」。
學件的規約由「語義規約」和「統計規約」兩部分組成:
- 語義規約通過文本對模型的類型及功能進行描述;
- 統計規約則通過各類機器學習技術,刻畫模型所蘊含的統計信息。
學件的規約刻畫了模型的能力,使得模型能夠在未來用戶事先對學件一無所知的情況下被充分識別并復用,以滿足用戶需求。
規約是學件基座系統的核心組件,串聯了系統中關于學件的全部流程,包括學件上傳、組織、查搜、部署與復用。
就像《天龍八部》中的燕子塢由很多小島組成一樣,北冥塢中的規約也像一個個的小島一樣。
來自不同特征/標記空間的學件,構成眾多的規約島嶼,所有規約島嶼共同構成學件基座系統中的規約世界。在規約世界中,如果能夠發現并建立不同島嶼之間的聯系,那么相對應的規約島嶼將可以進行合并。
在學件范式下,世界各地的開發者可分享模型至學件基座系統,系統通過有效查搜和復用學件幫助用戶高效解決機器學習任務,而無需從零開始構建機器學習模型。
北冥塢是學件的第一個系統性開源實現,為學件相關研究提供了一個初步科研平臺。
有分享意愿的開發者可自由提交模型,學件塢協助產生規約形成學件存放在學件塢中,開發者在這個過程中無需向學件塢泄露自己的訓練數據。
未來的用戶可以通過向學件塢提交需求,在學件塢協助下查搜復用學件來完成自己的機器學習任務,且用戶可以不向學件塢泄露自有數據。
而且以后,在學件塢擁有數以百萬計的學件后,將可能出現「涌現」行為:以往沒有專門開發過模型的機器學習任務,可能通過復用若干個現有學件而解決。
學件基座系統
機器學習在很多領域取得了巨大成功,但依然面臨著諸多問題,例如需要大量的訓練數據和高超的訓練技巧、持續學習的困難、災難性遺忘的風險以及數據隱私/所有權的泄漏等。
雖然上述每一個問題都有相應的研究,但由于問題之間是相互耦合的,在解決其中一個問題時,可能會導致其他問題變得更加嚴重。
學件基座系統期望通過一個整體框架,同時解決上述諸多問題:
- 缺乏訓練數據/技能:即使對于缺乏訓練技能或數據量較小的普通用戶,也可以獲得強大的機器學習模型,因為用戶可以從學件基座系統中獲取性能優良的學件,并進一步調整或改進,而不是自己從頭開始構建模型。
- 持續學習:隨著在各種不同任務上訓練得到的、性能優良的學件被不斷提交,學件基座系統中的知識將不斷豐富,進而自然地實現持續和終身學習。
- 災難性遺忘:一旦學件被接收,它將永遠被容納在學件基座系統中,除非其各方面功能都可以被其他學件所替代。因此,學件基座系統中的舊知識總是會被保留,而不會被遺忘。
- 數據隱私/所有權:開發者只提交模型而不共享私有數據,因此數據隱私/所有權可以得到很好的保護。盡管無法完全排除對模型進行逆向工程的可能性,但與許多其它隱私保護方案相比,學件基座系統泄露隱私的風險非常小。
學件基座系統的構成
如下圖所示,系統工作流程分為以下兩個階段:
- 提交階段:開發者自發地提交各式各樣的學件到學件基座系統,而系統會對這些學件進行質量檢查和進一步的組織。
- 部署階段:當用戶提交任務需求后,學件基座系統會根據學件規約推薦對用戶任務有幫助的學件并指導用戶進行部署和復用。
規約世界
規約是學件基座系統的核心組件,串聯了系統中關于學件的全部流程,包括學件上傳、組織、查搜、部署與復用。
來自不同特征/標記空間的學件,構成眾多的規約島嶼,所有規約島嶼共同構成學件基座系統中的規約世界。在規約世界中,如果能夠發現并建立不同島嶼之間的聯系,那么相對應的規約島嶼將可以進行合并。
學件基座系統在查搜時,首先通過用戶需求中的語義規約定位到具體的規約島嶼,再通過用戶需求中的統計規約對規約島上的學件進行精確識別。不同的規約島嶼合并,則意味著相應的學件可以被用于不同特征/標記空間的任務上,即可以復用至超出其原始目的的任務中。
學件范式通過充分利用社區分享的機器學習模型的能力,構建統一的規約空間,以統一的方式高效地為新用戶解決機器學習任務。隨著學件數量增多,通過有效地組織學件結構,學件基座系統整體解決任務的能力將顯著增強。
北冥塢的構架
如下圖所示,北冥塢的系統架構包含四個層次,從學件存儲層至用戶交互層,首次自底向上系統性地實現了學件范式。四個層次的具體功能如下:
- 學件存儲層:管理以zip包格式存儲的學件,并通過學件數據庫提供相關信息的獲取方式;
- 系統引擎層:囊括了學件范式中的所有流程,包括學件上傳、檢測、組織、查搜、部署和復用,并以learnware Python包的形式獨立于后端和前端運行,為學件相關任務和科研探索提供了豐富的算法接口;
- 系統后端層:實現了北冥塢的工業級部署,提供了穩定的系統在線服務,并通過提供豐富的后端API支撐了前端和客戶端的用戶交互;
- 用戶交互層:實現了基于網頁的前端和基于命令行的客戶端,為用戶交互提供了豐富且便捷的方式。
實驗評估
在論文中,研究團隊還構建了各種類型的基礎實驗場景,評估表格、圖像和文本數據上進行規約生成、學件識別和復用的基準算法。
表格數據實驗
在各種表格數據集上,團隊首先評估了從學件系統中識別和復用與用戶任務具有相同特征空間的學件的性能。
而且,由于表格任務通常來自不同的特征空間,研究團隊還對來自不同特征空間的學件的識別和復用進行了評估。
同質案例
在同質案例中,PFS數據集中的53個商店充當53個獨立用戶。
每個商店利用自己的測試數據作為用戶任務數據,并采用統一的特征工程方法。這些用戶隨后可以在基座系統上查搜與其任務具有相同特征空間的同質學件。
當用戶沒有標注數據或標注數據量有限時,團隊對不同的基準算法進行了比較,所有用戶的平均損失如下圖所示。左表顯示,無數據方法比從市場上隨機選擇和部署一個學件要好得多;右圖表明,當用戶的訓練數據有限時,識別并復用單個或多個學件比用戶自訓練的模型性能更優。
左表顯示,無數據方法比從市場上隨機選擇和部署一個學件要好得多;右圖表明,當用戶的訓練數據有限時,識別并復用單個或多個學件比用戶自訓練的模型性能更優。
異構案例
根據市場上學件與用戶任務的相似性,異構案例可進一步分為不同的特征工程和不同的任務場景。
不同的特征工程場景:
下圖左顯示的結果表明,即使用戶缺乏標注數據,系統中的學件也能表現出很強的性能,尤其是復用多個學件的AverageEnsemble方法。
不同的任務場景:
上圖右顯示了用戶自訓練模型和幾種學件復用方法的損失曲線。
很明顯,異構學件在用戶標注數據量有限的情況下實驗驗證是有益的,有助于更好地與用戶的特征空間進行對齊。
圖像和文本數據實驗
此外,研究團隊在圖像數據集上對系統進行了基礎的評估。
下圖顯示,當用戶面臨標注數據稀缺或僅擁有有限數量的數據(少于 2000 個實例)時,利用學件基座系統可以產生良好的性能。
團隊還在基準的文本數據集上對系統進行了基礎評估。通過統一的特征提取器進行特征空間對齊。
如下圖所示,即使在沒有提供標注數據的情況下,通過學件識別和復用所獲得的性能也能與系統中最好的學件相媲美。
此外,與從頭開始訓練模型相比,利用學件基座系統可以減少約2000個樣本。