基于安卓的聯(lián)邦學(xué)習(xí)平臺設(shè)計與實現(xiàn)
發(fā)布時間:2021-08-15 00:51
傳統(tǒng)的機器學(xué)習(xí)一般是在單機或者集群上集中處理數(shù)據(jù)、訓(xùn)練模型,然后云端下發(fā)模型。算法的準確率高度依賴于海量數(shù)據(jù)的訓(xùn)練分析,雖然大規(guī)模的收集數(shù)據(jù)極大的提高了機器學(xué)習(xí)算法的性能,但也給個人隱私數(shù)據(jù)保護帶來更大的挑戰(zhàn),尤其是在移動終端,個人隱私數(shù)據(jù)安全問題進一步凸顯。針對以上背景,本文基于安卓系統(tǒng)提出了一種橫向聯(lián)邦學(xué)習(xí)策略,并根據(jù)該橫向聯(lián)邦學(xué)習(xí)策略,本文設(shè)計并實現(xiàn)了基于安卓端的聯(lián)邦學(xué)習(xí)平臺。系統(tǒng)在各個安卓端根據(jù)用戶提供的數(shù)據(jù)進行模型的訓(xùn)練,產(chǎn)生個性化模型。通過服務(wù)端融合安卓端上傳的個性化模型,最終得到共享模型。本文詳細闡述了系統(tǒng)所設(shè)計的理論基礎(chǔ)、設(shè)計思路、實現(xiàn)方案以及測試與分析。本文主要完成工作如下:(1)提供安卓端模型推理、模型訓(xùn)練、模型更新。本文移植TensorFlow.js到安卓平臺,通過TensorFlow.js實現(xiàn)模型推理、模型訓(xùn)練。安卓端下載云端最新的共享模型,并根據(jù)安卓端的本地用戶數(shù)據(jù)來改進和訓(xùn)練模型。系統(tǒng)將改進后的模型提取為一個小的更新文件并將該更新文件上傳到云端。(2)提供安卓端調(diào)度管理、訓(xùn)練數(shù)據(jù)管理。系統(tǒng)根據(jù)設(shè)備的狀態(tài)提出了細致的調(diào)度策略,保證手機用戶體驗不會因為聯(lián)邦學(xué)習(xí)而...
【文章來源】:電子科技大學(xué)四川省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【部分圖文】:
TensorFlow.jsAPI整體結(jié)構(gòu)圖
第二章基礎(chǔ)理論與相關(guān)技術(shù)7圖2-2Servlet請求響應(yīng)模型(1)瀏覽器向服務(wù)器發(fā)出GET請求(請求服務(wù)器ServletA)。(2)服務(wù)器上的容器邏輯接收到該url,根據(jù)該url判斷為Servlet請求,此時容器邏輯將產(chǎn)生兩個對象:請求對象(HttpServletRequest)和響應(yīng)對象(HttpServletResponce)。(3)容器邏輯根據(jù)url找到目標Servlet(本示例目標Servlet為ServletA),且創(chuàng)建一個線程對象A。(4)容器邏輯將第(2)步創(chuàng)建的請求對象和響應(yīng)對象傳遞給A線程。(5)容器邏輯調(diào)用Servlet的service()方法。(6)service()方法根據(jù)請求類型調(diào)用對應(yīng)的方法,在本示例中調(diào)用doGet()。(7)doGet()執(zhí)行完后,將結(jié)果返回給容器邏輯。(8)線程A被銷毀或被放在線程池中。在容器中的每個Servlet只有一個實例,每個請求對應(yīng)一個線程,因此會有多個線程訪問同一個Servlet,會導(dǎo)致Servlet線程不安全。當(dāng)請求的線程執(zhí)行完任務(wù)后,會被銷毀或者放在線程池中等待回收。
電子科技大學(xué)碩士學(xué)位論文82.3.2Servlet在容器中的生命周期圖2-3Servlet生命周期圖(1)加載Servlet類。容器啟動時,首先會解析部署在容器上的工程對應(yīng)的配置文件,配置文件包含web.xml文件。web.xml文件描述了工程的關(guān)鍵信息,Servlet類也是配置在web.xml中。容器在解析web.xml文件時就實現(xiàn)了Servlet類的加載。(2)實例化創(chuàng)建Servlet類。根據(jù)Java虛擬機的實例類加載機制分析可知,容器首先獲取Servlet對應(yīng)的class對象,然后基于該class對象創(chuàng)建Servlet類,在創(chuàng)建Servlet時,會執(zhí)行Servlet的默認構(gòu)造函數(shù)。(3)執(zhí)行Servlet的init()方法。Servlet被容器加載到銷毀整個過程中,init函數(shù)只執(zhí)行一次,并且在Service()函數(shù)執(zhí)行前執(zhí)行。根據(jù)init()函數(shù)的執(zhí)行時間,Servlet可以在init函數(shù)中處理接收客戶端請求之前的初始化工作。事實上執(zhí)行了init()函數(shù)之后,容器會將ServletConfig傳給Servlet。該類含有Servlet本身和Servlet所運行的Servlet容器中的基本信息。(4)執(zhí)行Service方法,處理客戶端請求。(5)執(zhí)行Destory()函數(shù)銷毀線程。2.3.3Servlet監(jiān)聽器Servlet中的監(jiān)聽器就是監(jiān)聽某個對象的狀態(tài)變化的組件,Servlet監(jiān)聽的對象主要是request(請求),session,servletContext(Servlet上下文,容器為每個工程創(chuàng)建一個ServletContext對象,該對象是全局唯一,而且工程內(nèi)部的所有Servlet都共享這
【參考文獻】:
期刊論文
[1]聯(lián)邦學(xué)習(xí)可視化:挑戰(zhàn)與框架[J]. 潘如晟,韓東明,潘嘉鋮,周舒悅,魏雅婷,梅鴻輝,陳為. 計算機輔助設(shè)計與圖形學(xué)學(xué)報. 2020(04)
[2]基于損失函數(shù)為指數(shù)平方形式的穩(wěn)健Logistic回歸[J]. 李穎,周旋,蒙惠芳,王浩華. 海南大學(xué)學(xué)報(自然科學(xué)版). 2019(04)
[3]基于JavaScript的邊緣計算架構(gòu)研究[J]. 張金輝,考書健. 設(shè)備管理與維修. 2019(21)
[4]淺析Servlet異步處理技術(shù)[J]. 遲殿委. 智慧工廠. 2019(08)
[5]基于k-means聚類的Bagging算法研究[J]. 金朝. 光學(xué)與光電技術(shù). 2019(04)
[6]基于Keras的MNIST數(shù)據(jù)集識別模型[J]. 郭夢潔,楊夢卓,馬京九. 現(xiàn)代信息科技. 2019(14)
[7]基于Web的云存儲技術(shù)[J]. 鐘永林. 信息記錄材料. 2019(04)
[8]TensorFlow Lite開發(fā)平臺的研究與分析[J]. 高陸川. 電子測試. 2018(20)
[9]Android環(huán)境下的數(shù)據(jù)編碼與處理技術(shù)[J]. 劉雍,汪文彬,馬玉春. 電腦編程技巧與維護. 2018(09)
[10]Android系統(tǒng)架構(gòu)及關(guān)鍵移植技術(shù)研究的初步探討[J]. 陳露軍. 福建電腦. 2018(05)
碩士論文
[1]基于WebKit內(nèi)核的Android手機瀏覽器的性能研究與加載優(yōu)化[D]. 許俠.南京郵電大學(xué) 2017
本文編號:3343510
【文章來源】:電子科技大學(xué)四川省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【部分圖文】:
TensorFlow.jsAPI整體結(jié)構(gòu)圖
第二章基礎(chǔ)理論與相關(guān)技術(shù)7圖2-2Servlet請求響應(yīng)模型(1)瀏覽器向服務(wù)器發(fā)出GET請求(請求服務(wù)器ServletA)。(2)服務(wù)器上的容器邏輯接收到該url,根據(jù)該url判斷為Servlet請求,此時容器邏輯將產(chǎn)生兩個對象:請求對象(HttpServletRequest)和響應(yīng)對象(HttpServletResponce)。(3)容器邏輯根據(jù)url找到目標Servlet(本示例目標Servlet為ServletA),且創(chuàng)建一個線程對象A。(4)容器邏輯將第(2)步創(chuàng)建的請求對象和響應(yīng)對象傳遞給A線程。(5)容器邏輯調(diào)用Servlet的service()方法。(6)service()方法根據(jù)請求類型調(diào)用對應(yīng)的方法,在本示例中調(diào)用doGet()。(7)doGet()執(zhí)行完后,將結(jié)果返回給容器邏輯。(8)線程A被銷毀或被放在線程池中。在容器中的每個Servlet只有一個實例,每個請求對應(yīng)一個線程,因此會有多個線程訪問同一個Servlet,會導(dǎo)致Servlet線程不安全。當(dāng)請求的線程執(zhí)行完任務(wù)后,會被銷毀或者放在線程池中等待回收。
電子科技大學(xué)碩士學(xué)位論文82.3.2Servlet在容器中的生命周期圖2-3Servlet生命周期圖(1)加載Servlet類。容器啟動時,首先會解析部署在容器上的工程對應(yīng)的配置文件,配置文件包含web.xml文件。web.xml文件描述了工程的關(guān)鍵信息,Servlet類也是配置在web.xml中。容器在解析web.xml文件時就實現(xiàn)了Servlet類的加載。(2)實例化創(chuàng)建Servlet類。根據(jù)Java虛擬機的實例類加載機制分析可知,容器首先獲取Servlet對應(yīng)的class對象,然后基于該class對象創(chuàng)建Servlet類,在創(chuàng)建Servlet時,會執(zhí)行Servlet的默認構(gòu)造函數(shù)。(3)執(zhí)行Servlet的init()方法。Servlet被容器加載到銷毀整個過程中,init函數(shù)只執(zhí)行一次,并且在Service()函數(shù)執(zhí)行前執(zhí)行。根據(jù)init()函數(shù)的執(zhí)行時間,Servlet可以在init函數(shù)中處理接收客戶端請求之前的初始化工作。事實上執(zhí)行了init()函數(shù)之后,容器會將ServletConfig傳給Servlet。該類含有Servlet本身和Servlet所運行的Servlet容器中的基本信息。(4)執(zhí)行Service方法,處理客戶端請求。(5)執(zhí)行Destory()函數(shù)銷毀線程。2.3.3Servlet監(jiān)聽器Servlet中的監(jiān)聽器就是監(jiān)聽某個對象的狀態(tài)變化的組件,Servlet監(jiān)聽的對象主要是request(請求),session,servletContext(Servlet上下文,容器為每個工程創(chuàng)建一個ServletContext對象,該對象是全局唯一,而且工程內(nèi)部的所有Servlet都共享這
【參考文獻】:
期刊論文
[1]聯(lián)邦學(xué)習(xí)可視化:挑戰(zhàn)與框架[J]. 潘如晟,韓東明,潘嘉鋮,周舒悅,魏雅婷,梅鴻輝,陳為. 計算機輔助設(shè)計與圖形學(xué)學(xué)報. 2020(04)
[2]基于損失函數(shù)為指數(shù)平方形式的穩(wěn)健Logistic回歸[J]. 李穎,周旋,蒙惠芳,王浩華. 海南大學(xué)學(xué)報(自然科學(xué)版). 2019(04)
[3]基于JavaScript的邊緣計算架構(gòu)研究[J]. 張金輝,考書健. 設(shè)備管理與維修. 2019(21)
[4]淺析Servlet異步處理技術(shù)[J]. 遲殿委. 智慧工廠. 2019(08)
[5]基于k-means聚類的Bagging算法研究[J]. 金朝. 光學(xué)與光電技術(shù). 2019(04)
[6]基于Keras的MNIST數(shù)據(jù)集識別模型[J]. 郭夢潔,楊夢卓,馬京九. 現(xiàn)代信息科技. 2019(14)
[7]基于Web的云存儲技術(shù)[J]. 鐘永林. 信息記錄材料. 2019(04)
[8]TensorFlow Lite開發(fā)平臺的研究與分析[J]. 高陸川. 電子測試. 2018(20)
[9]Android環(huán)境下的數(shù)據(jù)編碼與處理技術(shù)[J]. 劉雍,汪文彬,馬玉春. 電腦編程技巧與維護. 2018(09)
[10]Android系統(tǒng)架構(gòu)及關(guān)鍵移植技術(shù)研究的初步探討[J]. 陳露軍. 福建電腦. 2018(05)
碩士論文
[1]基于WebKit內(nèi)核的Android手機瀏覽器的性能研究與加載優(yōu)化[D]. 許俠.南京郵電大學(xué) 2017
本文編號:3343510
本文鏈接:http://www.sikaile.net/kejilunwen/shengwushengchang/3343510.html
最近更新
教材專著