介紹 Private Hub:利用機器學習進行構建的新方式

釋出日期:2022 年 8 月 3 日
在 GitHub 上更新

2023 年 6 月更新:Private Hub 現已更名為 Enterprise Hub

Enterprise Hub 是一種託管解決方案,結合了雲託管服務 (SaaS) 和企業安全的最佳特性。它允許客戶在各種計算選項上部署特定服務,如推理端點,從雲端到本地。它透過 SSO 提供高階使用者管理和訪問控制。

我們不再提供 Private Hub 的本地部署,因為這項實驗已終止。

請聯絡我們的企業團隊,為您的公司找到最佳解決方案。

機器學習正在改變公司構建技術的方式。從為新一代顛覆性產品提供支援,到在我們都使用和喜愛的知名應用程式中實現更智慧的功能,機器學習是開發過程的核心。

但每一次技術轉型都會帶來新的挑戰。

大約 90% 的機器學習模型從未投入生產。不熟悉的工具和非標準的工作流程會減緩機器學習開發。模型和資料集未在內部共享,導致工作重複;不同團隊之間總是從零開始構建相似的工件。資料科學家難以向業務利益相關者展示他們的技術工作,而後者難以提供精確和及時的反饋。機器學習團隊將時間浪費在 Docker/Kubernetes 和最佳化生產模型上。

考慮到這一點,我們推出了 Private Hub (PH),一種利用機器學習進行構建的新方式。從研究到生產,它提供了一套統一的工具,以安全合規的方式加速機器學習生命週期的每個步驟。PH 將各種機器學習工具整合到一個地方,使機器學習協作更簡單、更有趣、更高效。

在本篇部落格文章中,我們將深入探討 Private Hub 是什麼、它為什麼有用,以及客戶如何利用它加速其機器學習路線圖。

請繼續閱讀,或隨意跳轉到您感興趣的🌟部分

  1. 什麼是 Hugging Face Hub?
  2. Private Hub 是什麼?
  3. 公司如何使用 Private Hub 加速其機器學習路線圖?

讓我們開始吧!🚀

1. Hugging Face Hub 是什麼?

在深入探討 Private Hub 之前,我們首先了解一下 Hugging Face Hub,它是 PH 的核心部分。

Hugging Face Hub 提供超過 6 萬個模型、6 千個資料集和 6 千個機器學習演示應用程式,所有這些都是開源且公開可用的線上平臺,人們可以在其中輕鬆協作並共同構建機器學習。Hub 是一箇中心位置,任何人都可以探索、實驗、協作並利用機器學習構建技術。

在 Hugging Face Hub 上,您可以建立或發現以下機器學習資產

  • 模型:託管 NLP、計算機視覺、語音、時間序列、生物學、強化學習、化學等領域的最新最先進模型。
  • 資料集:包含各種領域、模態和語言的資料。
  • Spaces:用於直接在瀏覽器中展示機器學習模型的互動式應用程式。

上傳到 Hub 的每個模型、資料集或空間都是一個基於 Git 的倉庫,它們是版本控制的地方,可以包含所有檔案。您可以使用傳統的 Git 命令來拉取、推送、克隆和/或操作檔案。您可以檢視模型、資料集和空間的提交歷史,並檢視誰在何時做了什麼。

模型上的提交歷史

Hugging Face Hub 也是機器學習反饋和開發的中心場所。團隊使用拉取請求和討論來支援對模型、資料集和空間的同行評審,從而改進協作並加速他們的機器學習工作。

模型上的拉取請求和討論

Hub 允許使用者建立組織,即團隊賬戶,以協作管理模型、資料集和空間。組織的倉庫將顯示在組織頁面上,管理員可以設定角色來控制對這些倉庫的訪問。組織中的每個成員只要擁有正確的許可權,都可以為模型、資料集和空間做出貢獻。在 Hugging Face,我們相信擁有正確的協作工具將大大加速機器學習開發!🔥

BigScience 在 Hub 中的組織

現在我們已經介紹了基本概念,接下來深入探討 Hugging Face Hub 上託管的模型、資料集和空間的具體特性。

模型

遷移學習改變了公司處理機器學習問題的方式。傳統上,公司需要從頭開始訓練模型,這需要大量時間、資料和資源。現在,機器學習團隊可以使用預訓練模型並針對其特定用例進行微調,從而實現快速且經濟高效。這極大地加速了獲得準確且高效能模型的過程。

在 Hub 上,您可以找到超過 6 萬個最先進的開源預訓練模型,涵蓋 NLP、計算機視覺、語音、時間序列、生物學、強化學習、化學等領域。您可以使用搜索欄或透過任務、庫、許可證和其他標籤進行篩選,以找到適合您特定用例的模型。

Hub 上有 60,000 多個模型可供使用

這些模型涵蓋 180 種語言,並支援多達 25 個機器學習庫(包括 Transformers、Keras、spaCy、Timm 等),因此在模型型別、語言和庫方面具有很大的靈活性。

每個模型都有一個模型卡,這是一個簡單的 Markdown 檔案,包含模型的描述。這包括其預期用途、模型訓練所用的資料、程式碼示例、有關潛在偏差和模型相關潛在風險的資訊、度量指標、相關研究論文,等等。模型卡是瞭解模型的重要方式,同時也有助於識別正確的預訓練模型作為機器學習專案的起點。

模型卡

除了提高模型的發現性和可重用性,模型卡還有助於模型風險管理 (MRM) 過程。機器學習團隊通常需要提供有關他們構建的機器學習模型的資訊,以便合規團隊可以識別、衡量和減輕模型風險。透過模型卡,組織可以設定一個包含所有必需資訊的模板,並直接在模型中簡化機器學習團隊和合規團隊之間的 MRM 溝通。

Hub 還提供一個推理小部件,可以直接在瀏覽器中輕鬆測試模型!這是瞭解特定模型是否合適並值得深入研究的好方法。

推理小部件

資料集

資料是構建機器學習模型的關鍵部分;沒有正確的資料,您將無法獲得準確的模型。🤗 Hub 託管了超過 6,000 個開源、即用型機器學習模型資料集,並配備了快速、易用且高效的資料操作工具。與模型類似,您可以透過搜尋欄或按標籤篩選來找到適合您用例的資料集。例如,透過篩選任務“情感分類”,您可以輕鬆找到 96 個用於情感分析的模型。

可用於情感分類的資料集

與模型類似,上傳到 🤗 Hub 的資料集也具有資料集卡片,以幫助使用者瞭解資料集的內容、資料集應如何使用、如何建立以及使用資料集的相關考慮事項。您可以使用資料集檢視器輕鬆檢視資料,並快速瞭解特定資料集是否對您的機器學習專案有用。

Super Glue 資料集預覽

Spaces

幾個月前,我們在 🤗 Hub 上引入了一個新功能,名為 Spaces。它是一種構建和託管機器學習應用程式的簡單方法。Spaces 允許您輕鬆地向業務利益相關者展示您的機器學習模型,並獲得推進機器學習專案所需的反饋。

如果您一直在使用 DALL-E mini 生成有趣的圖片,那麼您就已經使用了 Spaces。這個空間展示了 DALL-E mini 模型,一個根據文字提示生成圖片的機器學習模型。

DALL-E mini 的空間

2. Private Hub 是什麼?

Private Hub 允許公司在其私有和合規的環境中使用 Hugging Face 的完整生態系統,以加速其機器學習開發。它將機器學習生命週期各個步驟的機器學習工具集中到一個地方,使機器學習協作更簡單、更高效,同時擁有公司安全構建機器學習所需的合規環境。

Private Hub

透過 Private Hub,資料科學家可以無縫地使用 TransformersDatasets 和其他 開源庫,在自己的伺服器上私密安全地託管模型、資料集和空間,並透過利用 Hub 功能更快地完成機器學習任務。

  • AutoTrain:您可以使用我們的 AutoML 無程式碼解決方案來訓練最先進的模型,這些模型可以在您自己的伺服器上自動微調、評估和部署。
  • 評估:在 Private Hub 上使用任何指標評估任何資料集上的任何模型,而無需編寫一行程式碼。
  • Spaces:輕鬆託管一個機器學習演示應用程式,向業務利益相關者展示您的機器學習工作,儘早獲得反饋並更快地進行構建。
  • 推理 API:在 Private Hub 上建立的每個私有模型都透過簡單的 API 呼叫部署到您自己的基礎設施中進行推理。
  • PR 和討論:支援對模型、資料集和空間的同行評審,以改善團隊間的協作。

從研究到生產,您的資料永不離開您的伺服器。Private Hub 在您自己的合規伺服器中執行。它提供企業安全功能,如安全掃描、審計追蹤、單點登入和訪問控制,以確保您的模型和資料安全。

我們提供靈活的選項,用於在您的私有、合規環境中部署您的 Private Hub,包括:

  • 託管式 Private Hub (SaaS):執行在 Hugging Face 擁有的隔離虛擬私有伺服器 (VPC) 中。您可以享受完整的 Hugging Face 體驗,而無需管理任何基礎設施。

  • 雲端 Private Hub:執行在客戶擁有的 AWS、Azure 或 GCP 雲賬戶中。此部署選項為您提供了對底層雲基礎設施的完全管理控制,並使您能夠實現更強的安全性和合規性。

  • 本地 Private Hub:Hugging Face Hub 在您自己的基礎設施上的本地部署。適用於具有嚴格合規規則和/或不希望或不允許在公共雲上執行工作負載的客戶。

現在我們已經介紹了 Private Hub 的基本概念,接下來我們將探討公司如何利用它來加速其機器學習開發。

3. 公司如何利用 Private Hub 加速其機器學習路線圖?

🤗 Transformers有史以來增長最快的開源專案之一。我們現在提供 25+ 個開源庫,超過 10,000 家公司正在使用 Hugging Face 構建基於機器學習的技術。

作為開源人工智慧社群的核心,我們與數千個機器學習和資料科學團隊進行了交流,這讓我們對公司在構建機器學習時面臨的最常見問題和挑戰有了獨特的視角。

透過這些對話,我們發現當前構建機器學習的工作流程存在問題。工作重複、反饋迴圈差、團隊間協作障礙大、非標準流程和工具,以及難以最佳化生產模型,這些都是常見問題,並阻礙了機器學習開發。

我們構建 Private Hub 就是為了改變這一切。就像 Git 和 GitHub 永遠改變了公司構建軟體的方式一樣,Private Hub 正在改變公司構建機器學習的方式。

使用 Private Hub 前後對比

在本節中,我們將透過一個演示示例,展示客戶如何利用 PH 加速其機器學習生命週期。我們將逐步介紹構建一個機器學習應用程式以自動分析金融分析師🏦報告的過程。

首先,我們將搜尋一個與我們用例相關的預訓練模型,並針對情感分析在自定義資料集上對其進行微調。接下來,我們將構建一個機器學習 Web 應用程式,向業務利益相關者展示該模型的工作原理。最後,我們將使用推理 API 執行推理,其基礎設施能夠處理生產級別負載。此機器學習演示應用程式的所有工件都可以在 Hub 上的此組織中找到。

更快地訓練出準確的模型

利用 Hub 中的預訓練模型

現在,透過遷移學習,您無需從頭開始訓練模型,而是可以透過為特定用例微調 Hub 上可用的預訓練模型,從而以 10 倍的速度⚡️構建更準確的模型。

在我們的演示示例中,為金融分析師構建此機器學習應用程式的要求之一是進行情感分析。業務利益相關者希望在財務文件和分析師報告可用時立即自動了解公司的業績。

因此,作為建立此機器學習應用程式的第一步,我們深入研究 🤗 Hub 並探索有哪些可用的預訓練模型可以進行情感分析的微調。搜尋欄和標籤將使我們能夠非常快速地篩選和發現相關模型。很快,我們找到了 FinBERT,一個基於公司報告、財報電話會議記錄和金融分析師報告進行預訓練的 BERT 模型。

Finbert 模型

我們將模型克隆到我們的 Private Hub 中,以便其他隊友可以使用。我們還在模型卡中添加了所需資訊,以簡化與合規團隊的模型風險管理流程。

使用自定義資料集微調預訓練模型

既然我們有了一個用於金融資料的優秀預訓練模型,下一步就是使用我們自己的資料對其進行微調,以進行情感分析!

因此,我們首先將內部團隊構建的用於情感分析的自定義資料集上傳到我們的 Private Hub。該資料集包含數千條來自英文金融新聞和專有金融資料的手動按情感分類的句子。這些資料包含敏感資訊,因此我們的合規團隊只允許我們將這些資料上傳到我們自己的伺服器上。幸運的是,這並不是問題,因為我們在自己的 AWS 例項上執行 Private Hub。

然後,我們使用 AutoTrain 快速地將 FinBert 模型與我們的自定義情感分析資料集進行微調。我們可以直接從 Private Hub 的資料集頁面進行此操作。

使用 AutoTrain 微調預訓練模型

接下來,我們將模型選擇為“手動”,並選擇我們的克隆 Finbert 模型作為要用我們的資料集進行微調的模型。

使用 AutoTrain 建立新專案

最後,我們選擇要使用我們的資料訓練的候選模型數量。我們選擇 25 個模型,瞧!幾分鐘後,AutoTrain 自動微調了 25 個 finbert 模型,並提供了所有不同模型的效能指標 🔥🔥🔥。

使用 AutoTrain 微調的 25 個模型

除了效能指標,我們還可以使用推理小部件直接從瀏覽器輕鬆測試微調後的模型,以瞭解它們的質量。

使用推理小部件測試微調模型

輕鬆向相關利益方演示模型

現在我們已經訓練了用於分析財務文件的自定義模型,下一步是使用 Spaces 構建一個機器學習演示,以驗證我們的 MVP 與業務利益相關者的效果。這個演示應用程式將使用我們的自定義情感分析模型,以及我們為檢測財務報告中的前瞻性陳述而微調的第二個 FinBERT 模型。這個互動式演示應用程式將使我們能夠更快地獲得反饋,更快地迭代,並改進模型,以便我們可以在生產中使用它們。✅

不到 20 分鐘,我們就構建了一個互動式演示應用程式,任何業務利益相關者都可以直接從他們的瀏覽器輕鬆測試。

金融演示應用程式的空間

如果您檢視 app.py 檔案,您會發現它非常簡單。

機器學習演示應用程式的程式碼

僅用 51 行程式碼就讓這個機器學習演示應用程式執行起來了!🤯

擴充套件推理能力,同時避免 MLOps

到目前為止,我們的業務利益相關者提供了很好的反饋,使我們能夠改進這些模型。合規團隊透過模型卡提供的資訊評估了潛在風險,並批准了我們的專案投入生產。現在,我們準備將這些模型投入使用,並開始大規模分析財務報告!🎉

我們不需要把時間浪費在 Docker/Kubernetes 上,也不需要為執行這些模型設定伺服器,更不需要最佳化生產模型,我們只需要利用推理 API。我們無需擔心部署或可伸縮性問題,我們可以透過簡單的 API 呼叫輕鬆整合我們的自定義模型。

上傳到 Hub 和/或使用 AutoTrain 建立的模型會立即部署到生產環境,準備好大規模即時進行推理。而執行推理只需 12 行程式碼!

要獲取用於透過我們的情感分析模型執行推理的程式碼片段,我們點選“部署”和“加速推理”。

利用推理 API 在自定義模型上執行推理

這將顯示以下程式碼,用於向推理 API 傳送 HTTP 請求並開始使用我們的自定義模型分析資料。

import requests

API_URL = "https://api-inference.huggingface.co/models/FinanceInc/auditor_sentiment_finetuned"
headers = {"Authorization": "Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}

def query(payload):
    response = requests.post(API_URL, headers=headers, json=payload)
    return response.json()

output = query({
    "inputs": "Operating profit jumped to EUR 47 million from EUR 6.6 million",
})

只需 12 行程式碼,我們就可以執行推理了,其基礎設施能夠處理生產級別的大規模即時負載🚀。是不是很酷?

結語

機器學習正在成為構建技術的預設方式,這主要歸功於開源和開放科學。

但是構建機器學習仍然很困難。許多機器學習專案匆忙進行,從未投入生產。非標準工作流程阻礙了機器學習開發。機器學習團隊因工作重複、團隊間協作不足以及機器學習工具生態系統碎片化而感到沮喪。

在 Hugging Face,我們相信有更好的方式來構建機器學習。這就是我們建立 Private Hub 的原因。我們認為,為機器學習開發的每個步驟提供一套統一的工具以及正確的協作工具,將帶來更好的機器學習工作,將更多機器學習解決方案投入生產,並幫助機器學習團隊激發創新。

有興趣瞭解更多嗎?請求演示,瞭解如何利用 Private Hub 加速組織內的機器學習開發。

社群

註冊登入發表評論

© . This site is unofficial and not affiliated with Hugging Face, Inc.