當前位置:首頁 » 操作系統 » cw演算法

cw演算法

發布時間: 2023-12-20 22:50:05

1. 詞典編碼的演算法步驟

步驟一:開始的時候詞典包含所有可能的單字元,而當前前綴P是空的。
步驟二:當前字元C:=字元流中的下一個字元。
步驟三:判斷P+C是否在詞典中。
如果是,則用C擴展P,即P=P+C
如果否,則
①輸出代表當前前綴P的碼字
②將前綴-字元串P+C添加到字典中
③令P:=C
步驟四:判斷字元流中是否還有字元需要編碼。
如果是,則返回到步驟二
如果不是,輸出代表當前前綴P的碼字,並結束 步驟一:在開始解碼時詞典包含所有可能的前綴根。
步驟二:cW:=碼字流中的第一個碼字。
步驟三:輸出當前綴符串string.cW到字元流。
步驟四:先前碼字pW:=當前碼字cW.
步驟五:當前碼字cW:=碼字流中的下一個碼字。
步驟六:判斷先前綴符串是否在詞典中。
如果「是」,則:1把當前綴符串string.cW輸出到字元流;2當前前綴p:=先前綴符串pW;3當前前綴符串string.cW的第一個字元;4把綴符串P+C添加到詞典中。
如果「否」,則:1當前前綴p:=先前綴符串pW;2當前字元C:=當前綴符串pW的第一個字元;3輸出綴符串P+C到字元流,然後把它添加到詞典中。
步驟七:判斷碼字流中是否還有碼字要譯。
如果「是」,就返回到步驟4,如果「否」,結束。

2. 對抗樣本之CW原理&coding

本文採用手稿模擬的角度,盡量使讀者較為直白的面對冷冰冰的公式。
拋去CW演算法不談。一般來說,生成樣本演算法都要保證如下兩個條件:

條件一,保證了生成樣本與原始干凈樣本盡量的相似。
條件二,保證了生成樣本確實能成功攻擊模型。
仔細想想,這兩個條件是不是就滿足了生成樣本的全部需求哩。

問題定義清楚了,那問題的數學描述就成了關鍵。

數學描述:

其手稿模擬如下:

CW演算法手稿模擬:

常人思路攻擊:

CW攻擊:

CW是一個基於優化的攻擊,主要調節的參數是c和k,看你自己的需要了。它的優點在於,可以調節置信度,生成的擾動小,可以破解很多的防禦方法,缺點是,很慢。

歡迎留言,力所能及,必答之。

熱點內容
蘋果8plus什麼配置 發布:2024-11-29 14:16:36 瀏覽:677
androidmvp結構 發布:2024-11-29 14:16:34 瀏覽:535
androidsqlite命令 發布:2024-11-29 14:04:38 瀏覽:155
信用卡分期演算法 發布:2024-11-29 13:50:56 瀏覽:807
安卓手機dll文件為什麼打不開 發布:2024-11-29 13:40:49 瀏覽:1001
百分之五十石碳酸怎麼配置 發布:2024-11-29 13:38:56 瀏覽:972
我的世界伺服器如何裝資源包 發布:2024-11-29 13:25:48 瀏覽:20
mc伺服器的ip是什麼 發布:2024-11-29 13:23:33 瀏覽:568
python的request模塊 發布:2024-11-29 13:20:56 瀏覽:659
android編譯環境搭建 發布:2024-11-29 13:04:46 瀏覽:893