導航:首頁 > 源碼編譯 > 反向替換演算法分析

反向替換演算法分析

發布時間:2023-01-09 06:48:29

A. CACHE替換演算法有哪幾種,分別簡要說明

其代表演算法有:①Hybrid演算法:演算法對Cache中的每一個對象賦予一個效用函數,將效用最小的對象替換出Cache;②LowestRelativeValue演算法:將效用值最低的對象替換出Cache;③(LCNR)演算法:該演算法使用一個關於文檔訪問頻次、傳輸時間和大小的推理函數來確定替換文檔;④Bolot等人提出了一種基於文檔傳輸時間代價、大小、和上次訪問時間的權重推理函數來確定文檔替換;⑤SizeAdjustLRU(SLRU)演算法:對緩存的對象按代價與大小的比率進行排序,並選取比率最小的對象進行替換

擴展知識:
Cache是一種根據程序局部性原則,通過小容量速度快的存儲器緩存部分數據,以減少處理器對慢速大容量存儲器的訪問次數,從而提升處理器取指效率的機制。Cache替換演算法是指當Cache缺失發生後,Cache按某種機制選中高速緩存中的某個地址進行數據更新。Cache替換演算法對Cache的命中率有較大的影響。目前主流的Cache替換演算法有偽隨機、先進先出(FIFO——First In First Out)和最近最少使用(LRU——Least Recently Used)等。相較於偽隨機和先進先出演算法,LRU演算法更符合程序局部性原則(當前執行的程序代碼,在不久後會再次訪問該代碼段),Cache的命中率更高,但其硬體資源消耗非常大。

傳統的LRU演算法對Cache的每一路進行統計,在需要替換時,將最近最少被使用的那一路替換。由於傳統LRU演算法的數據使用頻率統計為向上計數,故其計數器計數位寬較大,且需要額外的機制來處理計數溢出的情況。

B. 計算機組成原理-----替換演算法

fifo先進先出演算法 有abc 三個存儲空間 每個空間能存放一個元素按照隊列方式
進出,以此是 a b c 命中率=abc中訪問到的次數/元素個數
------------------2 1 0 此時存儲空間已滿 要調用新的元素就要出隊列
------------------4 2 1 下一個元素2在b內 訪問成功一次
------------------。。。。 以此類推
--------------最後3 1 2 最後一個元素又從存儲單元里訪問到一次 所以2/11

fifo+lru:同上加上最近雖少使用。列出上面的表格按隊列進入 把最長時間沒使用到的替換掉 一共訪問到2這個元素3次 所以就是3/11

C. 反向傳播演算法的演算法簡介

反向傳播演算法(backpropagation)是目前用來訓練人工神經網路(artificial
neural
network,ann)的最常用且最有效的演算法。其主要思想是:
(1)將訓練集數據輸入到ann的輸入層,經過隱藏層,最後達到輸出層並輸出結果,這是ann的前向傳播過程;
(2)由於ann的輸出結果與實際結果有誤差,則計算估計值與實際值之間的誤差,並將該誤差從輸出層向隱藏層反向傳播,直至傳播到輸入層;
(3)在反向傳播的過程中,根據誤差調整各種參數的值;不斷迭代上述過程,直至收斂。
反向傳播演算法的思想比較容易理解,但具體的公式則要一步步推導,因此本文著重介紹公式的推導過程。
1.
變數定義
上圖是一個三層人工神經網路,layer1至layer3分別是輸入層、隱藏層和輸出層。如圖,先定義一些變數:
表示第層的第個神經元連接到第層的第個神經元的權重;
表示第層的第個神經元的偏置;
表示第層的第個神經元的輸入,即:
表示第層的第個神經元的輸出,即:
其中表示激活函數。
2.
代價函數
代價函數被用來計算ann輸出值與實際值之間的誤差。常用的代價函數是二次代價函數(quadratic
cost
function):
其中,表示輸入的樣本,表示實際的分類,表示預測的輸出,表示神經網路的最大層數。
3.
公式及其推導
本節將介紹反向傳播演算法用到的4個公式,並進行推導。如果不想了解公式推導過程,請直接看第4節的演算法步驟。
首先,將第層第個神經元中產生的錯誤(即實際值與預測值之間的誤差)定義為:
本文將以一個輸入樣本為例進行說明,此時代價函數表示為:
公式1(計算最後一層神經網路產生的錯誤):
其中,表示hadamard乘積,用於矩陣或向量之間點對點的乘法運算。公式1的推導過程如下:
公式2(由後往前,計算每一層神經網路產生的錯誤):
推導過程:
公式3(計算權重的梯度):
推導過程:
公式4(計算偏置的梯度):
推導過程:
4.
反向傳播演算法偽代碼
輸入訓練集
對於訓練集中的每個樣本x,設置輸入層(input
layer)對應的激活值:
前向傳播:

計算輸出層產生的錯誤:

閱讀全文

與反向替換演算法分析相關的資料

熱點內容
內存卡加密卡是什麼意思 瀏覽:694
幫別人做app需要注意什麼 瀏覽:667
android獲取string字元 瀏覽:181
python中的計數器 瀏覽:622
海地加密驅動安裝 瀏覽:842
慧凈電子12單片機開發板 瀏覽:940
什麼網段伺服器好 瀏覽:598
伺服器商店怎麼造 瀏覽:934
有什麼跳鬼步舞的app 瀏覽:250
倚天2如何自己搭建伺服器 瀏覽:553
我的世界如何讓伺服器刷神寵 瀏覽:624
為什麼程序員要盡量進大廠 瀏覽:3
phpfiletype 瀏覽:936
PHP用戶登錄管理系統源碼 瀏覽:199
你適合做程序員嗎 瀏覽:896
easyuidatagrid源碼分析 瀏覽:115
安卓系統固件怎麼下載 瀏覽:491
php如何執行sql語句 瀏覽:30
通知加密怎麼設置vivo 瀏覽:989
android單獨編譯內核 瀏覽:544