吉布斯分布的局部、動態與快速采樣算法
吉布斯分布是一類重要的概率模型,它在概率論、統計物理和計算機科學 等領域有著非常廣泛的應用。采樣是關于吉布斯分布的核心計算任務,它要求 算法按照給定的分布生成一個隨機樣本。吉布斯分布的采樣問題是理論計算機 科學的重要課題之一,人們致力于探索有嚴格理論保障的算法以及采樣問題的 計算復雜性。經過數?年的深入研究,拒絕采樣、馬爾可夫鏈蒙特卡洛方法等 采樣技術逐漸被發展起來,很多重要的采樣問題被成功解決。
雖然先前的研究回答了關于采樣的若干基本問題,但是目前已知的采樣算 法較少,分析工具也有待加強,一些重要的問題沒有得到很好的解決。例如對 于均勻采樣邏輯公式滿足解的問題,因為很多經典算法無法適用,所以長期缺 乏高效算法;對于均勻采樣合法圖染色問題,因為缺乏有力的分析工具,所以 目前已知的算法收斂條件和猜想依然有很大差距。這些公開問題代表了當前技 術上的本質障礙,解決這些問題需要在原理層面上做出創新。另一方面,在大 數據時代,很多新的采樣問題涌現出來。一些經典的采樣技術只能給出高度串 行、適用于靜態數據的采樣算法。而在如今的應用中,并行的、動態的采樣算 法越來越受到關注。傳統的采樣理論難以勝任新的問題,在大數據背景下,人 們需要建立新的采樣理論體系。
本文研究吉布斯分布的采樣算法。對于大數據背景下的新問題,本文從分 布式采樣和動態采樣這兩個具體問題入手,給出有理論保障的算法并研究新模 型下采樣問題的復雜性。對于一些經典的公開問題,本文提出新的算法設計和 分析技術來突破先前的障礙,從而得到更快的采樣算法。
第一個課題是分布式采樣問題。我們在分布式計算的 LOCAL 模型上研究 吉布斯分布的采樣。在這個模型中,每個節點通過收集局部信息輸出一個隨機 變量,所有節點輸出變量的聯合分布為目標吉布斯分布。我們給出全新的分布式采樣算法,證明分布式采樣問題的下界,并且在分布式計算模型上復現圖靈 機模型上的若干經典結論,例如采樣問題和計數問題的計算等價性,采樣問題 的計算相變現象。這些結論揭示了分布式采樣和傳統串行采樣之間的聯系,對 理解分布式采樣的原理有重要意義。
第二個課題是動態采樣問題。假設我們有一個吉布斯分布以及一個服從此 分布的隨機樣本。給定一個更新操作,它把當前吉布斯分布更新成一個新的吉 布斯分布。算法需要以相對較小的增量代價,把原隨機樣本更新成一個服從新 分布的隨機樣本。我們給出了兩種設計動態采樣算法的技術。第一個是條件吉 布斯技術,它不僅能解決動態采樣問題,也能用于設計精確采樣算法,還和吉 布斯分布的空間混合性質有密切的聯系。第二個技術是動態馬爾可夫鏈技術, 它能把一些原本靜態的馬爾可夫鏈蒙特卡洛方法動態化,從而一些靜態采樣的 成果可以直接用應用到動態采樣上來。
最后一個課題是具體問題的快速采樣算法。一些吉布斯分布在我們的研究 之前只有運行時間為 n f (θ ) 的算法,其中 n 是吉布斯分布變量數;θ 是吉布斯分 布的某個參數,例如變量的最大度數;f (θ) 是 θ 的一個多項式函數或指數函 數。這類采樣算法只對 θ = O(1) 的問題有多項式運行時間,且多項式的指數非 常巨大。我們的工作將解決問題的復雜度優化到 poly(nθ) 的時間,有些問題的 時間復雜度可以和 n 呈接近線性的關系。在技術上,我們對具體問題提出了新 的算法設計技術和算法分析技術,從原理上突破了先前的技術障礙。
優化在機器學習中扮演著重要的角色。作為理論上收斂速度最快的一階優化算 法,加速梯度法在機器學習領域取得了廣泛的應用。本文將研究經典加速算法在帶 約束凸優化問題、隨機凸優化問題、分布式凸優化問題和非凸優化問題上的應用。本文首先介紹加速技巧在交替方向乘子法(ADMM)中的應用,并提出了具有最優 非遍歷意義收斂速度的加速ADMM算法。經典ADMM算法在求解非強凸非光滑問題 時具有遍歷意義下O ( 1 K ) 收斂速度和非遍歷意義下O ( 1 √ K ) 收斂速度。在稀疏和低秩學 習中,遍歷意義中的取平均操作會破壞解的稀疏性和低秩性,因此在實際應用中我們 往往使用非遍歷意義解。我們提出的加速ADMM具有非遍歷意義下更快的O ( 1 K ) 收斂 速度。并且我們還證明了經典ADMM的非遍歷意義下O ( 1 √ K ) 收斂速度是緊的,即經 典ADMM具有較慢的非遍歷意義收斂速度是算法本身的特性,并非由于證明技巧不足 所致。另外,我們證明了當求解非強凸非光滑問題時,ADMM類型算法的復雜度下界 是O ( 1 K ) ,即任何ADMM類型算法都不可能比O ( 1 K ) 更快。
在大數據背景下,加速技巧不僅應用于傳統優化,而且在隨機優化和分布式優化 中也有廣泛應用。本文研究了在隨機優化領域經典的加速隨機對偶坐標上升算法,并 對其原問題解的復雜度進行分析。該算法使用加速隨機坐標下降法求解對偶問題,當 目標函數是強凸非光滑函數時,對偶問題解具有O ( 1 √ ? ) 的復雜度。在實際應用中,我 們需要使用的是原問題解,而非對偶問題解,因此我們需要度量原問題解的復雜度。已有結論顯示,對于一般的帶約束凸優化問題,當對偶問題解具有O ( 1 √ ? ) 的復雜度時, 原問題解只有O ( 1 ? ) 的復雜度。我們證明了如果對原問題解合適地進行加權平均,原 問題解具有和對偶問題解一樣的O ( 1 √ ? ) 的復雜度。當將加速隨機對偶坐標上升算法應 用到機器學習中經典的經驗損失最小問題時,我們的收斂速度比當前已有結論提高 了O ( log 1 ? ) 因子。
除了隨機優化領域,本文還研究了分布式優化領域的加速算法。我們首先對分布 式優化中經典的EXTRA算法重新分析,并給出了更快的O ( ( L μ + 1 1?σ2 (W) ) log 1 ? ) 的計算 復雜度和通信復雜度。然后我們使用Catalyst框架對EXTRA加速,得到了強凸情況下 復雜度為O (√ L μ(1?σ2 (W)) log L μ(1?σ2 (W)) log 1 ? ) 和非強凸情況下復雜度為O (√ L ?(1?σ2 (W)) log 1 ? ) 的加速EXTRA算法。除了對EXTRA進行擴展,我們還使用加速罰函數法對經典的分 布式加速梯度法進行解釋,并給出了具有最優計算復雜度(強凸情況下 O (√ L μ log 1 ? ) 和非強凸情況下O (√ L ? ) )和接近最優通信復雜度(強凸情況下O (√ L μ(1?σ2 (W)) log2 1 ? ) 和 非強凸情況下O (√ L ?(1?σ2 (W)) log 1 ? ) )的分布式加速算法。與已有分布式算法相比,我們提出的加速EXTRA算法和加速罰函數法具有更低的計算復雜度,同時我們的通信復 雜度或者與當前最好算法一樣,或者只比當前最好算法高 O ( log L μ(1?σ2 (W))) 或O ( log 1 ? ) 因子。最后,我們研究了加速算法在非凸低秩優化中的應用。我們首先分析了該問題中 目標函數的曲面性質,證明了當受限于某個特定凸集時,目標函數是受限制的局部強 凸函數。基于該性質,我們提出了交替約束加速梯度法并證明了該算法能夠局部線性 收斂到最優解。相比于梯度下降法,我們的收斂速度對條件數具有最優的 √ L/μ的依賴 關系。另外,當初始值為任意值時,我們的算法能夠全局收斂到梯度為0的點。
我們根據預測中包含的信息而不是訓練算法的輸出來推導有監督學習算法的信息理論泛化邊界。這些邊界改進了現有的信息理論界限,適用于更廣泛的算法,并解決了兩個關鍵的挑戰: (a)它們為確定性算法提供了有意義的結果;(b)它們明顯更容易估計。我們通過實驗證明,在深度學習的實際場景中,所提出的邊界與泛化差距密切相關。
基于軌跡分析的微服務故障定位
微服務架構通過一組獨立開發、獨立部署且通過應用程序編程接口(API) 相互通信的松耦合服務來實現軟件應用。由于其在并行開發、快速交付、靈活伸 縮等方面的優勢,微服務架構已經成為云原生應用的主流選擇。微服務系統運行 時環境具有高度的復雜性和動態性,且服務之間存在很多復雜的異步調用鏈,因 此微服務系統的故障分析和調試難以通過傳統方法來實現,從而成為企業微服務 開發面臨的一個重要挑戰。
微服務系統作為一種新的基于云的軟件系統形態,其軟件故障特點還缺少相 應的總結,同時也缺少公開的微服務系統(如開源項目)可供研究。為此,本文針對微服務系統開發實踐進行了一次工業調研,系統了解了工業界微服務系統的 特點,收集了一組典型微服務故障案例以及相應的故障分析與調試實踐方法,并 對實踐問題和挑戰進行了分析。在此基礎上,我們開發了一個中等規模的微服務 基準系統,重現了 22 個工業故障案例,并通過開源社區進行了發布。基于這一 開源微服務基準系統以及相應的故障案例,我們開展了一系列微服務故障輔助定 位方法和技術研究。
首先,我們對業界廣泛采用的基于微服務日志及執行軌跡可視化的故障定位 方法進行了研究。我們在分析和評估現有的工業界微服務調試實踐的基礎上,基 于已有的分布式可視化調試工具提出了多種微服務系統故障定位策略,構建了相 應的執行軌跡可視化分析工具并進行了實驗分析。結果表明,采用適當的執行軌 跡可視化工具和策略可以改善目前微服務調試的工業實踐,同時進一步的改進需 要數據驅動的智能化軌跡分析和可視化方法的支持。
其次,我們針對微服務系統在服務實例、環境配置、異步交互等方面存在復 雜故障因素組合,從而導致故障難以復現和定位的問題,提出了一種基于增量調 試算法的自動化微服務系統故障定位方法。該方法定義了多個維度的故障因素, 通過優化的故障因素組合搜索與試探執行高效地尋找導致一個給定故障的最小 故障因素集合,從而輔助開發人員進行故障定位。為此,我們還設計并實現了一 個系統基礎設施層,用于支持增量調試過程中的微服務系統按需部署和運行控制。實驗結果表明,該方法能夠有效地識別導致故障的最小故障因素集合,為故障根 源診斷提供有效支持,同時其優化執行策略使得該方法具有良好的執行效率和可 伸縮性。
最后,我們針對微服務系統生產環境中的故障發現和定位問題,提出了一種 基于執行軌跡日志機器學習的微服務潛在錯誤與故障根源預測方法 MEPFL。該方 法從執行軌跡日志(一種特殊的微服務系統日志)中提取微服務故障相關的一些。特征,基于這些特征并通過故障注入的方式構建微服務故障預測模型,對微服務 的潛在錯誤、故障位置(所在微服務)和故障類型進行預測。該方法將執行軌跡 和微服務兩個層次的模型相結合進行綜合預測,從而適應不同的情況。實驗結果 表明,MEPFL 在潛在錯誤、故障微服務和故障類型的預測方面具有較高的準確性, 并能有效地應用于工業界的真實故障案例。
城市環境下的移動數據分析與行為建模研究
在全球城鎮化進程方興未艾、我國轉向高質量的新型城鎮化發展的背景下,深 入理解城市環境下的移動行為模式是提升城市在規劃、管理、交通等方面綜合能力 的重要研究課題。近年來,通過智能終端、移動互聯網和社交媒體等多種渠道采集 的移動數據日益豐富,為研究城市移動數據分析與行為建模問題提供了契機。該研 究課題存在以下挑戰:首先,移動數據體量大、質量低,現有數據挖掘算法難以直 接適應;其次,城市環境下的移動行為模式復雜多樣,且與城市結構緊密關聯,現 有移動模型難以刻畫;最后,移動數據極易泄漏用戶隱私,目前仍然缺乏有效的隱 私保護方案。針對以上挑戰,本文對多尺度復雜移動行為建模、結合城市結構的移 動行為建模和保護移動數據隱私安全三個關鍵問題展開研究,為系統認知城市環 境下的移動行為模式提供了理論模型與關鍵技術。論文的主要創新點與貢獻如下:
第一,在個體移動行為建模方面,本文重點研究了意圖感知的移動行為模式識 別問題。首先,通過大規模真實數據分析證明了已有工作基于社交媒體簽到數據推 斷用戶移動意圖的方法存在顯著誤差,43%的簽到數據與真實移動行為不符。其次, 提出了一種基于無標注移動數據的意圖感知的移動模式識別算法,在用戶職業推 斷和訪問地點類型推斷上較基線算法取得了 112.5%~126.4%的性能提升。
第二,在群體移動行為建模方面,本文通過建模用戶連接移動網絡的行為模式, 建立了基于移動網絡連接數據的高質量群體移動行為估計算法,其較基線算法降 低了 22.5%的誤差。在此基礎上,本文進一步研究了城市結構感知的群體移動模式 識別問題,并提出了一種基于頻譜分解的規律性和隨機性群體移動行為分解算法。
第三,在移動行為驅動的城市演化方面,研究了移動行為與城市演化的內在關 聯,提出了基于個體移動行為模式的城市演化模型,其在微觀層面建模了個體移動 的關鍵行為規律,并在宏觀層面準確預測了城市演化中形態、面積、人口的分布規 律,為關聯微觀層面的移動行為和宏觀層面的城市演化搭建了重要的理論橋梁。
最后,在移動數據隱私保護方面,揭示了移動數據中個體移動行為的高唯一性 和強規律性分別會對匿名個體移動數據和聚合群體移動數據帶來嚴重的去匿名攻 擊和軌跡恢復攻擊的隱私風險。基于分析所得的個體移動行為中導致隱私風險的 關鍵因素,提出了通過時空泛化和添加噪音來隱藏移動行為規律的隱私安全保護 算法,實現了高效、可靠的移動數據隱私保護。
解耦合的類腦計算系統棧設計
類腦計算是一種借鑒生物大腦計算原理的信息處理范式,涉及算法、硬件和 工藝等諸多領域。在算法層面,深度神經網絡在各類智能問題的解決上表現出了 一定的通用性;在硬件層面,大量涌現的深度學習專用芯片和神經形態芯片為類 腦計算的相關研究領域提供強大算力;在工藝層面,以憶阻器為代表的各種新型 器件也為類腦計算芯片架構突破“馮諾依曼瓶頸”帶來了新的可能。但現有的類 腦計算研究尚缺乏能將算法、芯片和工藝等不同領域技術需求有機結合起來的軟 硬件系統棧設計。例如,專用芯片在帶來更高計算性能的同時也降低了靈活性,使 得算法的適配變得困難;憶阻器等新型器件在為芯片提供更高能效的同時,也帶 來了器件不穩定引起的噪音等問題。針對上述問題,本文提出一套新型類腦計算 系統棧設計,在理論層面引入類腦計算完備性,使得類腦系統實現軟硬件解耦合 成為可能;在基礎軟件層面設計了相應的編譯器,實現軟件編程模型到硬件執行 模型的等價轉換;在硬件層面設計了基于憶阻器件的類腦芯片架構,充分利用本 文提出的編譯器設計和解耦合系統棧帶來的優勢。本文的創新點主要有:
? 提出軟硬件解耦合的類腦系統棧設計。在系統棧中引入軟件編程模型和硬件 執行模型來解耦合——軟件編程模型靈活度高,適應各類編程需求,而硬件 執行模型足夠簡潔,適合硬件高效實現;引入類似于圖靈完備性的類腦完備 性概念來建立軟件和硬件兩類模型的等價性,并給出相應的構造性證明,使 得類腦計算系統軟硬件解耦合成為可能。
? 設計針對硬件約束的類腦編譯器,將神經網絡軟件編程模型轉換為等價的硬 件執行模型。編譯器通過數據重編碼方式,使目標網絡在極端硬件約束條件 下仍然能夠保持精度損失可控(包括無損);此外,提出適用于硬件執行模 型的粗粒度剪枝壓縮方法,充分利用神經網絡模型本身的冗余,在 ImageNet 數據集的 VGG16 模型上,即使剪枝粒度達到 256 × 256 壓縮率也能達到 60% 以上,且精度損失可以忽略。
? 設計與上述類腦計算完備性和編譯技術適配的新型類腦芯片架構 FPSA (Field Programmable Synapse Array)。利用編譯器轉換后硬件執行模型的簡潔 性,簡化基于憶阻器的芯片結構設計,提高計算密度與計算性能,并引入可 重構路由架構以優化片內通信。與同樣基于憶阻器的類腦芯片架構 PRIME 相比,性能提升可達三個數量級。
機器學習中部分非凸和隨機優化算法研究
機器學習是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算 法復雜度理論等多門學科。算法理論與應用是機器學習中最為重要的核心之一。其中一階優化算法因其簡單有效性,而被廣泛研究與應用。另一方面由于近年來 數據規模的不斷增大,數據集的規模使得二階或更高階的算法應用受阻。這使得 一階算法進一步成為機器學習的研究重點。隨著機器學習中問題模型的不斷擴張, 例如深度學習,非凸問題和模型也激發了學者們廣泛的研究興趣。這使得研究非 凸算法顯得更加急迫。而且由于數據集的龐大性,確定算法難以逃出鞍點,因此 隨機算法受到了史無前例的關注。本文主要結果可以歸納如下:
一、研究了三種 ADMM 算法。第一個 ADMM 的工作是關于一般的 ADMM 收 斂性分析統一框架。在此框架下,很多現有的 ADMM 收斂性分析可以歸納進該 框架。除了現有的 ADMM 算法,根據統一框架還能夠設計出新的 ADMM 算法。第二個和第三個 ADMM 都是針對結構非凸優化問題提出的:一個是針對泛 ?q 正 則化約束優化問題,而另一個是針對 ?1?2 正則化約束優化。給出了后面兩種非凸 ADMM 算法的收斂性分析,所得到的結果可以指導用戶選擇合適的超參數。
二、研究了兩種一階優化領域常用的非精確算法。第一種是非精確的加速算 法。相較于之前的研究,該算法的假設更為真實。而且還囊括了一大類隨機噪聲 的情況,使得算法更為實用。而機器學習中的一階催化劑算法由于是該加速算法 帶上了隨機噪聲,因此可以看做本算法的特例。在第二部分給出了非精確非凸算 法的收斂性框架理論。可以被廣泛應用到各種一階非凸算法。
三、證明了在有界和無界延遲以及隨機和確定性塊選擇下異步并行梯度下降法 的收斂結果。這些結果不需要迄今為止絕大多數其他工作中出現的獨立性假設。這是由于本文使用了 Lyapunov 函數技術,可直接處理延遲,而不是像之前的工作 一樣僅僅將它們建模為噪聲。
四、分析了馬爾可夫鏈隨機梯度下降法,其中樣本采用了某個馬爾可夫鏈的軌跡。主要貢獻之一是給出了馬爾可夫鏈隨機梯度下降法的在凸情況下的非遍歷收 斂分析。結果然后擴展到不精確的格式。這種分析使得能夠建立不可逆有限狀態 馬爾可夫鏈和非凸最小化問題的收斂性。這樣的結果適用于不知道具體的概率分 布,但可以通過馬爾可夫鏈進行采樣的情形。
在過去的20年里,基因組學、神經科學、經濟學和互聯網服務等許多領域產生了越來越多的大數據集,這些數據集有高維、大樣本,或者兩者兼之。這為我們從數據中檢索和推斷有價值的信息提供了前所未有的機會。同時,也對統計方法和計算算法提出了新的挑戰。一方面,我們希望建立一個合理的模型來捕獲所需的結構,并提高統計估計和推斷的質量。另一方面,面對越來越大的數據集,計算可能成為一個巨大的障礙,以得出有意義的結論。這篇論文站在兩個主題的交叉點,提出了統計方法來捕獲所需的數據結構,并尋求可擴展的方法來優化計算非常大的數據集。我們提出了一種可擴展的靈活框架,用于利用lasso/elastic-net解決大規模稀疏回歸問題; 提出了一種可伸縮的框架,用于在存在多個相關響應和其他細微差別(如缺失值)的情況下解決稀疏縮減秩回歸問題。分別在snpnet和multiSnpnet R包中以PLINK 2.0格式為基因組數據開發了優化的實現。這兩種方法在超大和超高維的英國生物樣本庫研究中得到了驗證,與傳統的預測建模方法相比有了顯著的改進。此外,我們考慮了一類不同的高維問題,異質因果效應的估計。與監督學習的設置不同,這類問題的主要挑戰在于,在歷史數據中,我們從未觀察到硬幣的另一面,因此我們無法獲得處理之間真正差異的基本真相。我們提出適應非參數統計學習方法,特別是梯度增強和多元自適應回歸樣條,以估計處理效果的預測器可用。實現被打包在一個R包causalLearning中。
主題: Large-scale and high-dimensional statistical learning methods and algorithms
摘要: 在過去的二十年中,基因組學,神經科學,經濟學和互聯網服務等許多領域已經產生了越來越大的,具有高維,大樣本量或兩者兼有的數據集。這為我們提供了前所未有的機會,可以從數據中檢索和推斷出有價值的信息。同時,這也給統計方法和計算算法提出了新的挑戰。一方面,我們希望制定一個合理的模型來捕獲所需的結構并提高統計估計和推斷的質量。另一方面,面對越來越大的數據集,計算可能是一個很難得出有意義結論的障礙。本文站在兩個主題的交集上,提出了統計方法來捕獲數據中的所需結構,并尋求可擴展的方法來優化超大型數據集的計算。我們提出了使用套索/彈性網解決大規模稀疏回歸問題的可擴展且靈活的框架,以及在存在多個相關響應和其他細微差別(例如缺失值)的情況下解決稀疏降階回歸的可擴展框架。針對R軟件包snpnet和multiSnpnet中PLINK 2.0格式的基因組數據開發了優化的實現。這兩種方法已在UK Biobank的超大型和超大規模研究中得到證明,并且與傳統的預測建模方法相比有了顯著改進。此外,我們考慮另一類高維問題,即異類因果效應估計。與監督學習不同,此類問題的主要挑戰在于,在歷史數據中,我們從未觀察到硬幣的另一面,因此我們無法獲得治療之間真正差異的地面真理。我們建議采用非參數統計學習方法,尤其是梯度增強和多元自適應回歸樣條,以根據可用的預測因子來估計治療效果。