问题标签 [entropy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4248 浏览

opencv - 如何在 Opencv 中计算两个图像的联合熵

我必须计算两个灰度图像之间的互信息。为此,我必须计算图像的熵和联合熵。但是我在 Opencv 中找不到任何熵和联合熵函数。谁能帮我在 Opencv 中找到熵和联合熵函数?

0 投票
1 回答
777 浏览

javascript - 随机移动的图像被屏幕的左上角吸引

我正在尝试制作在屏幕上随机移动的图像。

图像在屏幕上随机定位,然后每 10 毫秒从 -15 像素移动到 15 像素。

但是几秒钟后,图像会集中在屏幕的左上角,而不是分散在整个屏幕上(或者至少集中在屏幕的另一个角落)......

你可以在这里看到我的代码:http: //secretlabs.alwaysdata.net/bug.html

0 投票
3 回答
1879 浏览

encoding - 决策树中的香农熵测度

为什么在决策树分支中使用香农熵度量?

熵(S) = - p(+)log( p(+) ) - p(-)log( p(-) )

我知道这是对否的衡量标准。编码信息所需的比特数;分布越均匀,熵越大。但我不明白为什么它如此频繁地应用于创建决策树(选择分支点)。

0 投票
1 回答
286 浏览

python - 从 PGP 按键中获取用户熵的最佳 Python 方法?

有没有人记得PGP提示用户通过敲击随机键来“生成一些熵”?

PGP 将在收集熵时测量熵,用一个很酷的小进度条向用户指示,并在内部对击键进行计时,进行一些处理并将其用作某事或其他事情的种子。

我想制作一个快速例程(控制台应用程序),在 python 中执行类似的“熵收集”步骤,但我对一些问题不知所措:

  1. 最佳计时方法
  2. 收集单个击键的最佳方法
  3. 向用户显示酷进度条的最佳方法
  4. 关于处理步骤的想法,或 PGP 步骤的实际细节。

最好的上述手段:

  • 最严格最干净的代码
  • 最准确的(如以皮秒或其他方式计时)
  • 大多数pythonic/功能和使用标准库
0 投票
2 回答
414 浏览

linux - ASLR 受 Linux 上可用熵的影响?

在内核源代码中提到random.cget_random_int“类似于 urandom,但目标是最小化熵池耗尽”。但是,在哪里(以及如何)get_random_int与熵池交互?

现在,urandom实际上调用extract_entropy_user了,但我在get_random_int. 似乎get_random_int使用了自己的熵源(与键盘、鼠标和磁盘活动无关):

并且不关心(也不更新)一般系统可用的熵状态?

如何get_random_int耗尽熵池?这是在哪里更新的?我知道我遗漏了一些东西或错误地阅读了源代码,因为当我执行一个程序时,我可以通过在 entropy_avail 上执行 cat 来查看它是如何耗尽熵池的。

我浏览了http://xorl.wordpress.com/2011/01/16/linux-kernel-aslr-implementation/但似乎没有提到这是如何工作的。

0 投票
14 回答
162625 浏览

python - 在 Python 中计算熵的最快方法

在我的项目中,我需要多次计算 0-1 向量的熵。这是我的代码:

有更快的方法吗?

0 投票
3 回答
185 浏览

algorithm - 寻找输入小输出长的单向函数

我正在寻找一种算法,它是一种单向函数,如哈希函数。该算法接受一个小的输入(几个位,小于 512 位),并将其映射到一个长输出(1K 字节或更多)。你知道这样的算法或函数吗?

0 投票
2 回答
3765 浏览

hex - 如何快速压缩一个短的十六进制字符串并在c#中解压它

我有一些像这样的 16 个字符的十六进制字符串:

我想缩短它们并使缩短的字符串仅包含大写字母。

DeflateStream 和 GZipStream 只是增加了长度。

任何人都可以帮我将这 16 个字符的十六进制字符串缩短到 6 个字符或更少吗?

或者,可以将 32 个字符的十六进制字符串缩短为 12 个字符或更少。

0 投票
1 回答
3639 浏览

matlab - entropy estimation using histogram of normal data vs direct formula (matlab)

Let's assume we have drawn n=10000 samples of the standard normal distribution.

Now I want to calculate its entropy using histograms to calculate the probabilities.

1) calculate probabilities (for example using matlab)

(binnumbers is determined due to some rule)

2) estimate entropy

which gives 58.6488

Now when i use the direct formula to calculate the entropy of normal data

What do i do wrong when using the histograms + entropy formula? Thank you very much for any help!!

0 投票
1 回答
639 浏览

sql - 当数据集不包含频率为零的条目时计算频率的方差

我有一个包含三个字段的数据集:id、特征和频率。我想要做的是找出一组给定的id,哪个特征具有最大的频率分布。我想要的结果是,如果我将这组 id 分成两个子组,使用该特征的频率中值,我有两个彼此最不同但大小大致相同的组。

我的第一个想法是我计算每个特征的频率方差,并使用方差最高的特征。

给定一个看起来像这样的数据库表:

  • 特征 0 的频率为 1、2、3、4、5
  • 特征 1 的频率为 1、2、3、9、10
  • 特征 2 的频率为 0、0、4、10、12

我们可以看到特征 2 具有最大的分布,并且在 4 上拆分会很好地拆分为两组(0、0 和 4 分为一组,10 和 12 分为另一组)。

我可以使用以下 SQL 查询来计算:

这工作正常,但有一个缺陷。我的数据集是稀疏的(大多数条目的频率为零)并且对我来说(在空间和插入条目所需的时间方面)将零频率项目存储在数据库中是昂贵的。因此,我的实际表格如下所示:

上面的 SQL 查询现在没有得到正确的结果,因为它需要考虑零频率条目来计算正确的方差值。我的 SQL 技能不足以找出可以绕过这个限制的(高性能)查询......

我的下一个想法是计算最大熵,但这会受到以下事实的影响:它没有考虑实际频率值(以及相同频率值在同一数据集中的“频率”/次数) - 仅不同值的数量。除非我误解了熵公式。

所以我的问题是:

  1. 有没有办法在 SQL 中做到这一点?
  2. 如果没有,有没有办法“调整”计算出的方差来解释零条目的数量?(假设我知道省略了多少个零条目)
  3. 如果是,有没有办法在上面的单个 SQL 查询中执行此操作?(再次假设我事先知道省略了多少个零条目)
  4. 如果两者都不可能,有没有办法使用熵并调整实际值?
  5. 我应该考虑其他一些措施(例如峰度?)?是否有任何可以轻松调整丢失零条目的方法?
  6. 或任何其他建议或替代解决方案?