编写包含 160 位可恢复信息的合成英语短语
Posted
技术标签:
【中文标题】编写包含 160 位可恢复信息的合成英语短语【英文标题】:Compose synthetic English phrase that would contain 160 bits of recoverable information 【发布时间】:2011-06-09 13:16:16 【问题描述】:我有 160 位随机数据。
只是为了好玩,我想生成伪英语短语来“存储”这些信息。我希望能够从短语中恢复这些信息。
注意:这不是一个安全问题,我不在乎其他人是否能够恢复信息,甚至检测到它是否存在.
从最重要到最不重要的更好短语的标准:
短 独特 自然外观目前的做法,建议here:
列出 1024 个名词、动词和形容词的三个列表(选择最流行的)。按以下模式生成短语,每个单词读取 20 位:
名词动词形容词动词, 名词动词形容词动词, 名词动词形容词动词, 名词动词形容词动词。现在,这似乎是一个不错的方法,但这个短语有点太长了,有点太沉闷了。
我找到了一个词库here(部分语音数据库)。
经过一些临时过滤后,我计算出这个语料库大约包含
50690 个可用形容词 123585 名词 15301 个动词 13010 个副词(不包括在模式中,但在答案中提到)这让我最多可以使用
每个形容词 16 位(实际上是 16.9,但我不知道如何使用小数位) 每个名词 15 位 每个动词 13 位 每个副词 13 位对于名词-动词-形容词-动词模式,这为短语中的每个“句子”提供 57 位。这意味着,如果我使用从这个语料库中可以得到的所有单词,我可以生成三个句子而不是四个句子(160 / 57 ≈ 2.8)。
名词动词形容词动词, 名词动词形容词动词, 名词动词形容词动词。还是有点太长太枯燥了。
任何提示我该如何改进它?
我看到的我可以尝试:
在编码之前尝试以某种方式压缩我的数据。但由于数据是完全随机的,只有一些短语会更短(而且,我猜,不会短很多)。
改进短语模式,使其看起来更好。
使用多种模式,使用短语中的第一个单词以某种方式指示未来解码使用了哪种模式。 (例如,使用最后一个字母甚至单词的长度。)根据数据的第一个字节选择模式。
...我的英语不太好想出更好的短语模式。有什么建议吗?
在模式中使用更多的语言学。不同的时态等。...我想,我需要比现在更好的词库。有什么提示我在哪里可以买到合适的?
【问题讨论】:
尝试使用时态会导致复杂化,因为英语没有规则的形态系统。例如,对于第三人称复数主动直陈式,我们在“他们去”和“他们去”之间有一个紧张的区别,但在“他们适合(过去)”和“他们适合(现在)”之间没有区别。由于时态区分的可用性因其他数据而异,因此很难以简单的方式将其合并到您的存储算法中。 很抱歉,但我发现自己不得不提出相关建议,无论它是否真的完全回答了您的问题:tools.ietf.org/html/rfc1605 【参考方案1】:我会考虑在您的列表中添加副词。这是我想出的一个模式:
<Adverb>, the
<adverb> <adjective>, <adverb> <adjective> <noun> and the
<adverb> <adjective>, <adverb> <adjective> <noun>
<verb> <adverb> over the <adverb> <adjective> <noun>.
这可以编码 181 位数据。我使用不久前从 WordNet 数据中制作的列表得出了这个数字(可能有点偏离,因为我包含了复合词):
12650 个可用名词(13.6 位/名词,四舍五入) 5247 个可用形容词(12.3 位/形容词) 5009 个可用动词(12.2 位/动词) 1512 个可用副词(10.5 位/副词)例句:“浸泡,习惯性的愚蠢,社会投机的样本和无所畏惧的灾难性,在某个互惠的宏观世界中,在不可避免的间歇性被子上天使般地排挤。”
【讨论】:
很好,谢谢。除了我会造一个两三句话的短语,这句话有点太不自然了。 (另外:你的形容词数量比我少很多——也许我算错了什么?) 我想补充一点:使用英文编码的方式,但是用自己喜欢的歌曲来唱。当我这样做时,我能够记住 70 个地铁站!以上是关于编写包含 160 位可恢复信息的合成英语短语的主要内容,如果未能解决你的问题,请参考以下文章