第2講回顧:FATE的部署模型以及基於Docker-Compose快速部署聯邦學習開發實驗環境

聯邦學習FATE入門與應用實戰發表於2020-03-13

「AI開發者成長計劃」首期公開課由機器之心與微眾銀行聯合開設,主題為《聯邦學習FATE入門與應用實戰》,特邀合作伙伴 VMware 也將參與分享。 公開課為期4周,共6期課程 ,設定主題分享、專案實踐、線上答疑等環節,從零入門聯邦學習。

整體學習計劃與加入方式請檢視:《聯邦學習FATE入門與應用實戰》公開課上線!

3 月 12 日,機器之心聯合微眾銀行開設的公開課《聯邦學習 FATE 入門與應用實戰》第二講結課,VMware 研發工程師陳家豪為大家介紹了開源框架 FATE 的部署,第二講影片回顧: 

第二課精選問答

在第2課的 QA 環節中,有一些問題被廣泛提到並且很有價值,所以我們進行了精選與編輯,供大家參考。 

1)「toy_example」跑不通原因是什麼?

因為 FATE 的架構比較複雜,加上系統和網路不穩定性等客觀原因,一遍下來某些步驟有不可控的小問題。這些問題可以逐步去排除,但是我們推薦比較簡單的方法是可以重新跑一遍或幾遍。如果還是不行那就定位是否是指令集不支援的問題,詳情請參考我們 kubeFATE 在 github 上的 wiki。

2)Exchange 也負責模型聚合嗎,還是隻負責建立底層通訊?

它是不負責模型聚合的,只負責通訊。

3)目標機和部署機有什麼區別?

我們前面說 KubeFATE 的使用其實分為兩個部分,一個部分是生成啟動叢集的配置檔案。另外一個部分就是執行的 FATE 叢集。部署機就是生成配置檔案的機器,目標機是執行叢集的機器。部署機和目標機只是一個邏輯上的劃分,他們實際上可以是同一臺伺服器。

4)每個 party 都是有自己的 k8s 叢集麼?

其實取決於你是哪種部署方式,如果是 docker-compose 的話,你就不需要有 k8s 叢集了。

5)這些 party 裡有分中心機構和參與機構嗎?

沒有嚴格的區分,一個 party 即可以做分享資料的中心機構,也可以做參與機構,這取決於訓練的具體內容。

6)如何實現分散式訓練?

分散式訓練由 EggRoll 模組提供支援,它向上提供了一個 MapReduce 的功能。

7)kubefate 支援容災嗎,節點掛了怎辦?

如果是使用 k8s 部署的話,那麼容災其實是依賴於 k8s。節點掛也沒關係,k8s 會幫你重新起一個。

8)一個 party 有多個使用者嗎?

一個 party 可以有多服務多個使用者,這是沒問題。

大家如有更多疑問,也歡迎在評論區留言討論,我們也會定期邀請講師在評論區答疑,並持續將精選問答收錄到本篇文章的正文內容中。

相關文章