【信息论安全】:信源编码定理

一. 介绍

在点对点的通信中,信源编码定理(source coding theorem)满足可达性和可逆性。当信道是无噪声时,那么Y=X,这时就不需要信道编码。但是,信源编码依旧是有效的,可以提高数据传输效率,信源编码的单位通常是bits/source symbol。

信源编码其实跟我们通常所说的数据压缩(data compression)很类似。信源整个可能序列记为U^k,根据典型集理论,只有部分序列是有效的。讲这些有效的序列编号从1~|A|,由此可得:

i\in[1,|A|]

信源编码端:

当从有效序列u^k\in A中抽取信源符号时,信源编码则输出对应的下标。

否则,输出一个固定的常数。

译码端:

当收到一个下标i时,则输出集合A中对应的序列。

二. 信源编码定理

信息论比较关注可靠传输的界限,接下来我们将从理论上证明存在对应的信源编码方案。

2.1 统计堆理论

信源编码会用到一个有意思的理论,叫做统计堆理论(binning)。输入一个序列u^n\in U^n,我们将其随机放到一个搁架里面,在同一个搁架里面的物体下标均一致。如果以上过程是按照均匀且随机的形式进行分配的,那么该过程称之为random binning。

借助选择引理(selection lemma),当以上分配过程的平均错误率接近于0时,也就可以说明信源编码的错误率趋近于0.

2.2 信源编码与压缩率

将一个离散无记忆的信源记作:

(U,P_U)

其中P代表概率分布。信息与通信理论告诉我们压缩后的长度不能太短,其界限跟U的香农熵是一样的,也就是可达的压缩率为:

换句话说可达的压缩率需要满足:

R\geq H(U)

解释:

根据随机统计堆理论(random binning),当把信源序列随机映射到有限数量的搁架里面时,只要搁架的数量大于:

2^{(kH(U))}

则可以保证每个搁架里面只会存在一个序列,不会有重复的情况出现,也就是发生这种情况的概率很小,则可以保证译码不会出错。

三. 信源编码方案设计

\epsilon>0且是一个很小的数,k\in N^*是一个正整数,R>0为压缩率。将信源编码方案C_k记作:

(2^{kR},k)

2.1 统计堆

从信源中选取典型集:

u^k\in T_\epsilon^k(U)

我们将典型集中的一个序列随机放入一个搁架中,搁架的编号(index)为:

[1.2^{kR}]

此过程可以看成如下函数:

e:U^k\to [1,2^{kR}]

此映射规则全局公开。

2.2 编码过程

给定一个序列u^k时,当序列属于典型集,也就是:

u^k\in T_\epsilon^k(U)

则利用映射函数生成m,如下:

m=e(u^k)

如果非典型集序列,则可以直接输出m=1

2.3 译码过程

给定一个消息m,译码为\hat u^k,其满足两个条件:

\hat u^k\in T_\epsilon^k(U)\quad e(\hat u^k)=m

第一个条件要求属于典型集。第二个条件要求编码和译码结果一致且唯一。

如果不满足任何一个条件,则输出错误“?”。

四. 理论分析

以上解释的信源编码方案的平均错误概率记为:

E[P_e(C_k)]

将发生译码错误的事件分成两种情况可得:

第一个事件代表编码前的序列不属于典型集。

第二个事件代表译码后的序列不在有效的集合中。

由此平均错误概率可以表示为:

E[P_e(C_k)]=P[\epsilon_0\cup \epsilon_1 ]

根据并集定理(union bound)可得:

先来分析下第一个事件。

根据信息论中的渐近等分性(AEP),第一个非典型集的概率很小,如下:

接着分析下第二个事件。

我们主要考虑错误概率的上界,如下:

第一个等号:将该事件表示为求和

第一个不等号:关注两个不同的序列编码后是相同的值概率,也就是位于同一个搁架里面

第二个等号:每个架子的概率

第二个不等号:求和的情况与典型集的大小一样

第三个不等号:典型集的定义

最后一个不等号:P总概率求和为1

根据以上讨论,我们需要让压缩率满足:

R>U(U)+\delta(\epsilon)

这样就可以保证:

最后可得统计堆理论的平均错误概率满足:

E[P_e(C_k)]\leq \delta_\epsilon(k)

根据选择引理,理论上一定可以找到一种编码方案,使其满足:

P_e(C_k)\leq \delta_\epsilon(k)

其中\epsilon是一个很小的数,也就是压缩率需要满足:

R>H(U)

反过来可逆性也是一样的。推导如下:

对熵进行讨论:

五. 小结

(1)子带编码

将连续信源产生的输出用多个带通滤波器进行滤波,只要这些滤波器是按照镜像滤波器成对设计的,这些滤波器的输出相加就可以无失真恢复原信号。信号进入带通滤波后再分别进行编码,各个子带的频谱特性相对平坦一些,样点之间的相关性减小,加之不同子带在进行编码时可以根据它的重要性分配不同的比特数,因此可以压缩编码数据。

(2)基于信源模型假定的编码方法

如果信源特性可以采用某种数学模型描述,那么基于这个模型进行压缩编码,可以获得更高的编码效率。

例如:语音信号可以用语音产生的声道模型进行描述,因而只要对估计出的声道模型参数和激励信号进行编码,接收端就可以重新合成出与原信号感觉上相类似的信号,这就是声码器技术。由于全极点声道模型抓住了语音信号共振峰特性的本质,计算上十分简捷,因此以线性预测为中心的一大类声码器在语音信号压缩编码方面取得了很大成功。包括:LPC 声码器、CELP 声码器、多带激励(MBE)声码器等。

基于声码器技术,压缩语音编码数据率的效率是非常高的,例如将 64Kbps 的 PCM 语音信号压缩到 8Kbps左右时,恢复语音的音质还可以是透明的;压缩到600bps时,恢复语音的可懂度还能接近100%。

(3)变换域编码

将连续信源产生的输出采用某种正交变换进行变换,变换域中各个信号分量的相关性大大减小,于是可以根据各个分量的重要性进行量化编码,可以大幅度减小比特率。常用的正交变换有离散傅立业变换、离散余弦变换、小波变换等。这些变换都是可逆的,接收端采用逆变换对于在变换域量化编码的结果进行逆变换,就可近似恢复原信号。这些编码算法在图像压缩编码,网络安全设计等方面取得了很大的成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/319872.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java中的方法介绍

一、引入方法 /* 以下程序不使用方法,分析程序存在哪些缺点? *以下的代码都是完成两个int类型数据的和,相同的代码写了三遍(只不过每一次参与求和的数据不同) 代码没有得到重复使用。 *应该在java语言当中有这样的一种…

【Docker】镜像的构建与上传下载阿里云

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《Docker实战》。🎯🎯 &…

SpringBoot视图渲染技术:整合Freemarker,常见指令和数据类型

目录 1.Freemarker 1.1.什么是Freemarker 1.2.Freemarker模板组成部分 1.3.优点 2.SpringBoot整合Freemarker 2.1.配置 2.2.数据类型 2.2.1.字符串 2.2.2.数值 2.2.3.布尔值 2.2.4.日期 2.3.常见指令 2.3.1.处理不存在的值 2.3.2.assign 2.3.3.if/elseif/else …

MongoDB - 库、集合、文档(操作 + 演示 + 注意事项)

目录 一、MongoDB 1.1、简介 a)MongoDB 是什么?为什么要使用 MongoDB? b)应用场景 c)MongoDB 这么强大,是不是可以直接代替 MySQL ? d)MongoDB 中的一些概念 e)Do…

FGSM方法生成交通信号牌的对抗图像样本

背景: 生成对抗样本,即扰动图像,让原本是“停车”的信号牌识别为“禁止驶入” 实验准备 模型:找一个训练好的,识别交通信号牌的CNN模型,灰度图像 模型地址:GitHub - Daulettulegenov/TSR_CNN:…

基于elementUI的el-table组件实现按住某一行数据上下滑动选中/选择或取消选中/选择鼠标经过的行

实现代码 <template><div :class"$options.name"><el-tablestyle"user-select: none"ref"table":data"tableData":row-class-name"row_class_name"mousedown.native"mousedownTable"row-click&q…

Elasticsearch 索引文档时create、index、update的区别【学习记录】

本文基于elasticsearch7.3.0版本。 一、思维导图 elasticsearch中create、index、update都可以实现插入功能&#xff0c;但是实现原理并不相同。 二、验证index和create 由上面思维导图可以清晰的看出create、index的大致区别&#xff0c;下面我们来验证下思维导图中的场景&…

树莓派ubuntu22桌面配置(一)

烧录系统至树莓派 下载系统&#xff1a;https://ubuntu.com/download/raspberry-pi 选择合适的版本下载 镜像安装器安装&#xff1a;终端输入&#xff1a; sudo snap install rpi-imager 打开镜像安装器&#xff0c;按照需求选择树莓派版本与要写入的系统还有安装的u盘 方案…

YOLOv5源码中的参数超详细解析(7)— yolo.py

前言:Hello大家好,我是小哥谈。YOLOv5是一种先进的目标检测算法,它可以实现快速和准确的目标检测。yolo.py是YOLOv5项目中的一个Python文件,用于实现目标检测算法。该文件包含了YOLOv5模型的定义、训练和推理过程。本节课就结合源码对yolo.py文件进行逐行解析~!🌈 前期…

【Vue3】2-12 : 【案例】搜索关键词加筛选条件的综合

本书目录&#xff1a;点击进入 一、【案例】搜索关键词加筛选条件的综合 1.1、逻辑 1.2、效果 1.3、json数据 - 02-data.json 1.4、代码 一、【案例】搜索关键词加筛选条件的综合 1.1、逻辑 计算属性 - 绑定list&#xff0c;并过滤 input 双向绑定 - 当input改变时&…

带你拿捏SpringBoot自动装配的核心技术?模块装配(@EnableXXX注解+@Import)+ 条件装配(@ConditionalXXX)

文章目录 Profile激活指定配置文件主配置文件中指定激活的profile命令行激活设置虚拟机参数激活 profile控制不到的地方 Spring原生的条件装配注解ConditionalConditional接口讲解案例讲解 Spring Boot封装的条件装配注解ConditionalXXX自己实现ConditionalOnBeanSpringBoot 源…

NLP论文阅读记录 - WOS | 2022 使用语言特征空间的抽象文本摘要的神经注意模型

文章目录 前言0、论文摘要一、Introduction1.1目标问题1.2相关的尝试1.3本文贡献 二.相关工作三.本文方法3.1 总结为两阶段学习3.1.1 基础系统 3.2 重构文本摘要 四 实验效果4.1数据集4.2 对比模型4.3实施细节4.4评估指标4.5 实验结果4.6 细粒度分析 五 总结思考 前言 Neural A…

熊猫电竞赏金电竞系统源码 APP+H5双端 附搭建教程 支持运营级搭建

简介: 熊猫电竞赏金电竞系统源码 APP+H5双端 附搭建教程 支持运营级搭建 可搭建!运营级!首次公开! 赏金赛源码,用户通过平台打比赛,赢了获得奖金奖励, 金币赛、赏金赛、vip赛等种赛事 可开王者荣耀、和平精英比赛 支持1v1、单排、双排组、战队排等多种比赛模式 …

【Kafka-3.x-教程】-【六】Kafka 外部系统集成 【Flume、Flink、SpringBoot、Spark】

【Kafka-3.x-教程】专栏&#xff1a; 【Kafka-3.x-教程】-【一】Kafka 概述、Kafka 快速入门 【Kafka-3.x-教程】-【二】Kafka-生产者-Producer 【Kafka-3.x-教程】-【三】Kafka-Broker、Kafka-Kraft 【Kafka-3.x-教程】-【四】Kafka-消费者-Consumer 【Kafka-3.x-教程】-【五…

坚持刷题|翻转二叉树

坚持刷题&#xff0c;老年痴呆追不上我&#xff0c;今天先刷个简单的&#xff1a;翻转二叉树 题目 226.翻转二叉树 考察点 翻转二叉树又称为镜像二叉树&#xff0c;使用Java实现翻转二叉树通常是为了考察对二叉树的基本操作和递归的理解能力 递归的理解&#xff1a; 能够理解…

TongLINKQ(1):TongLINKQ概述

1 TongLINKQ简介 TongLinkQ 是面向分布式应用的消息中间件产品&#xff0c;主要功能是在应用程序之间进行实时、高效和可靠的传递消息&#xff0c;使得消息在不同的网络协议、不同的计算机系统和不同的应用软件之间进行网络传输。 TongLinkQ 应用程序可灵活地运行在多平台的多…

Vulnhub靶机:driftingblues 2

一、介绍 运行环境&#xff1a;Virtualbox 攻击机&#xff1a;kali&#xff08;10.0.2.15&#xff09; 靶机&#xff1a;driftingblues2&#xff08;10.0.2.18&#xff09; 目标&#xff1a;获取靶机root权限和flag 靶机下载地址&#xff1a;https://www.vulnhub.com/entr…

Http协议简述

目录 HTTP-概述 2.1.1 介绍 2.2.2 特点 2.2 HTTP-请求协议 2.3 HTTP-响应协议 2.3.1 格式介绍 2.3.2 响应状态码 HTTP-概述 2.1.1 介绍 HTTP&#xff1a;Hyper Text Transfer Protocol(超文本传输协议)&#xff0c;规定了浏览器与服务器之间数据传输的规则。 http是互联…

React入门 - 06(TodoList 列表数据的新增和删除)

本章内容 目录 一、实践一下 React 的列表渲染二、TodoList 新增功能三、列表循环的 key四、删除 上一节内容我们完成了输入框中可以自由输入内容&#xff0c;这一节我们继续 TodoList功能的完善&#xff1a;列表数据的新增和删除。 在开始之前&#xff0c;我们先介绍一下 Re…