撰写包含 160 位可恢复信息的合成英语短语 [英] Compose synthetic English phrase that would contain 160 bits of recoverable information

查看:12
本文介绍了撰写包含 160 位可恢复信息的合成英语短语的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 160 位随机数据​​.

只是为了好玩,我想生成伪英语短语来存储"这些信息.我希望能够从短语中恢复这些信息.

注意:这不是一个安全问题,我不在乎其他人是否能够恢复信息,甚至检测它是否存在.

更好短语的标准,从最重要到最不重要:

  • 简短
  • 独一无二
  • 自然外观

目前的方法,建议 此处:

分别列出 1024 个名词、动词和形容词的三个列表(选择最受欢迎的).按以下模式生成一个短语,每个单词读取 20 位:

<前>名词动词形容词动词,名词动词形容词动词,名词动词形容词动词,名词动词形容词动词.

现在,这似乎是一个不错的方法,但是这句话有点太长而且有点乏味.

我在这里(语音数据库的一部分)找到了一个词库.

经过一些临时过滤后,我计算出该语料库包含大约

  • 50690 个可用的形容词
  • 123585 个名词
  • 15301 个动词
  • 13010 个副词(不包含在模式中,但在答案中提到)

这允许我最多使用

  • 每个形容词 16 位(实际上是 16.9,但我不知道如何使用小数位)
  • 每个名词 15 位
  • 每个动词 13 位
  • 每个副词 13 位

对于名词-动词-形容词-动词模式,这在短语中为每个句子"提供了 57 位.这意味着,如果我使用从这个语料库中得到的所有单词,我可以生成三个句子而不是四个 (160/57 ≈ 2.8).

<前>名词动词形容词动词,名词动词形容词动词,名词动词形容词动词.

还是有点冗长乏味.

任何提示我如何改进它?

我所看到的可以尝试的:

  • 在编码之前尝试以某种方式压缩我的数据.但由于数据是完全随机的,因此只有一些短语会更短(而且,我猜不会太多).

  • 改进短语模式,让它看起来更好.

  • 使用多个模式,使用短语中的第一个词以某种方式指示未来解码使用的模式.(例如,使用最后一个字母甚至单词的长度.)根据数据的第一个字节选择模式.

...我不太擅长英语,无法想出更好的短语模式.有什么建议吗?

  • 在模式中使用更多语言学.不同的时态等

...我想,为此我需要比现在更好的词库.任何提示我在哪里可以买到合适的?

解决方案

我会考虑将副词添加到您的列表中.这是我想出的模式:

<副词>,<副词><形容词>、<副词><形容词><名词>和<副词><形容词>、<副词><形容词><名词><动词><副词>在<副词><形容词><名词>.

这可以编码 181 位数据.我使用我从 WordNet 数据中制作的列表得出了这个数字(可能有点偏离,因为我包含了复合词):

  • 12650 个可用名词(13.6 位/名词,四舍五入)
  • 5247 个可用形容词(12.3 位/形容词)
  • 5009 个可用动词(12.2 位/动词)
  • 1512 个可用的副词(10.5 位/副词)

例句:浸泡,习惯性的愚蠢,社会投机的样本和无畏的灾难性的,在某处互惠的宏观世界,天使般地排除在不可避免的间歇性安慰之上."

I have 160 bits of random data.

Just for fun, I want to generate pseudo-English phrase to "store" this information in. I want to be able to recover this information from the phrase.

Note: This is not a security question, I don't care if someone else will be able to recover the information or even detect that it is there or not.

Criteria for better phrases, from most important to the least:

  • Short
  • Unique
  • Natural-looking

The current approach, suggested here:

Take three lists of 1024 nouns, verbs and adjectives each (picking most popular ones). Generate a phrase by the following pattern, reading 20 bits for each word:

Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb.

Now, this seems to be a good approach, but the phrase is a bit too long and a bit too dull.

I have found a corpus of words here (Part of Speech Database).

After some ad-hoc filtering, I calculated that this corpus contains, approximately

  • 50690 usable adjectives
  • 123585 nouns
  • 15301 verbs
  • 13010 adverbs (not included in pattern, but mentioned in answers)

This allows me to use up to

  • 16 bits per adjective (actually 16.9, but I can't figure how to use fractional bits)
  • 15 bits per noun
  • 13 bits per verb
  • 13 bits per adverb

For noun-verb-adjective-verb pattern this gives 57 bits per "sentence" in phrase. This means that, if I'll use all words I can get from this corpus, I can generate three sentences instead of four (160 / 57 ≈ 2.8).

Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb.

Still a bit too long and dull.

Any hints how can I improve it?

What I see that I can try:

  • Try to compress my data somehow before encoding. But since the data is completely random, only some phrases would be shorter (and, I guess, not by much).

  • Improve phrase pattern, so it would look better.

  • Use several patterns, using the first word in phrase to somehow indicate for future decoding which pattern was used. (For example, use the last letter or even the length of the word.) Pick pattern according to the first bytes of the data.

...I'm not that good with English to come up with better phrase patterns. Any suggestions?

  • Use more linguistics in the pattern. Different tenses etc.

...I guess, I would need much better word corpus than I have now for that. Any hints where can I get a suitable one?

解决方案

I would consider adding adverbs to your list. Here is a pattern I came up with:

<Adverb>, the
    <adverb> <adjective>, <adverb> <adjective> <noun> and the
    <adverb> <adjective>, <adverb> <adjective> <noun>
<verb> <adverb> over the <adverb> <adjective> <noun>.

This can encode 181 bits of data. I derived this figure using lists I made a while back from WordNet data (probably a bit off because I included compound words):

  • 12650 usable nouns (13.6 bits/noun, rounded down)
  • 5247 usable adjectives (12.3 bits/adjective)
  • 5009 usable verbs (12.2 bits/verb)
  • 1512 usable adverbs (10.5 bits/adverb)

Example sentence: "Soaking, the habitually goofy, socially speculative swatch and the fearlessly cataclysmic, somewhere reciprocal macrocosm foreclose angelically over the unavoidably intermittent comforter."

这篇关于撰写包含 160 位可恢复信息的合成英语短语的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆