「AI開發者成長計劃」首期公開課由機器之心與微眾銀行聯合開設,主題為《聯邦學習FATE入門與應用實戰》,特邀合作伙伴 VMware 也將參與分享。 公開課為期4周,共6期課程 ,設定主題分享、專案實踐、線上答疑等環節,從零入門聯邦學習。
整體學習計劃與加入方式請檢視:《聯邦學習FATE入門與應用實戰》公開課上線!
3 月 24 日,機器之心聯合微眾銀行開設的公開課《聯邦學習 FATE 入門與應用實戰》 第五講結課,微眾銀行人工智慧部系統架構師曾紀策為大家介紹了 FATE 的整體架構、系統關鍵資料流以及如何實踐。回顧影片如下:
第五課精選問答
1、問一下當前聯邦學習框架中心伺服器由誰負責?還是不需要中心伺服器彙集各方引數?
目前FATE支援的計算引擎不需要中心伺服器
2、fate怎麼把模型轉換成protobuf?
- 模型的protobuf定義檔案請參考:federatedml/protobuf/proto/
- 模型資料的生成請參考每個演算法component的export_model函式:federatedml/model_base.py(基類),federatedml/tree/hetero_secureboosting_tree_guest.py(樹模型)
3、合作兩方互動通訊方式?
加密GRPC協議
4、federation呼叫metaservice,metaservice從mysq裡讀取儲存的namespace?
- MetaService是一個資料庫讀寫的介面服務
- Dtable分片儲存於各個Egg節點(storage-service),資料庫(例如MySQL)裡面儲存了DTable的分片地址,Federation需要取得分片地址。
5、guest如何配置可拿到host資料呢?
- 沒有辦法,FATE是一個基於多方安全計算的資料隱私保護機器學習框架
- 對於訓練中間資料,federatedml/transfer_variable/definition/定義了每個元件可以交換傳輸的資料定義,是一種自我保護機制
- 對於聯邦排程,交換的是排程命令以及任務狀態資訊
- 同時FATE提供自我鑑權白名單機制的高階功能,目前支援role、party id、component維度
6、fate和pysyft的對比?
- 兩者有許多側重點不一樣,例如PySyft側重學術研究及橫向聯邦;FATE重於工業應用、縱向聯邦、橫向聯邦、遷移聯邦。
- 排程機制不一樣,PySyft採取了類似指標的方式進行多方排程,安全性及廣域網下的穩定性需要探討。
7、灰度上線是怎麼實現的?
兩種方式,1)使用不同的service id對應不同的模型,由上游呼叫系統依據實際需求傳參不同的service id實現,優點是灰度策略上比較靈活,缺點是需要上游呼叫系統配合,2)使用同樣的service id,使用fate flow的bind命令,給不同的seving例項繫結不同的模型,那麼請求到達不同的serving例項會使用不同的模型進行推理。
8、是不是HOST有資料並且可以透過ID查到,否則無法推理?
無論哪一方沒有對應的樣本,合併的推理結果就缺少該方模型的推理結果,最終推理請求可以返回,但是需要關注狀態碼。