跳轉到內容

資料壓縮/推斷壓縮

來自華夏公益教科書

推斷壓縮

[編輯 | 編輯原始碼]

推斷壓縮背後的理念是,由於演算法及其建立者事先不知道源資料,但壓縮可以針對不同型別的資料進行最佳化,因此它們將基於型別推斷的過程進行壓縮。這個過程主要是動態的和非確定性的,包括將源資料的部分讀入緩衝區(嗅探),並執行一些測試以推斷其型別/特徵,以決定要應用哪種壓縮演算法。這種選擇通常是基於規則的(在演算法中預先定義的)。

當然,這在如何執行推斷方面提供了一些自由度,一些演算法可以使用副檔名(如果存在)或甚至僅僅使用檔案頭(使用檔案型別識別符號,如 魔數檔案識別符號字串)來識別一些眾所周知的檔案格式。然後,它們將使用這些資訊來最佳化猜測過程,以確定最佳的壓縮方案。例如,LHA 和 LHZ 壓縮演算法包含許多壓縮規則,允許根據不同檔案型別的規則基礎差異進行動態最佳化。

根據一些限制和要求(例如速度和記憶體使用情況),規則庫選擇可以是動態的,例如基於非對稱壓縮方案,該方案將允許進行多次推斷,並讓它們競爭,以檢視哪個壓縮方案將對資料進行最佳壓縮。

基本理念是,您越能準確推斷出檔案型別,您就能越緊密地使用特定於該型別資料的壓縮規則對其進行壓縮。透過針對資料的精確性質進行調整,壓縮通常可以生成的檔案大小明顯小於僅近似資料型別的技術。例如,假設莎士比亞文字(大量常見英語單詞)的壓縮方案可能不適用於股票市場表格(顯示公司股票程式碼、收盤價等的表格)。

馬爾可夫模型

[編輯 | 編輯原始碼]

我們將在後面的章節中更詳細地討論馬爾可夫模型,馬爾可夫模型

資料差分

[編輯 | 編輯原始碼]

我們將在後面的章節中更詳細地討論資料差分,資料差分


華夏公益教科書