我只是想通过使用递归2-Gram存储将大量文本分解为单个整数,直到只剩下一个值。使用递归N-Grams压缩文本
table pair
{
id
first_parent_id (points to -> this.id)
second_parent_id (points to -> this.id)
}
例如,在下面的代码中,我有一个11个字的句子(十二个句号)。我可以将每个单词对存储在数据库中(“this”+“is”= ID#1),然后将每组两个单词对存储在数据库中(1 + 2 = ID#7),然后重复,直到回到只有一个字组的左 - 这将是ID 12.
This is my group of words which I plan to compress.
---1---|--2-----|--3-----|-----4-|----5--|-------6-
-------7--------|--------8-------|-------9---------
----------------10---------------11----------------
------------------------12-------------------------
然后使用数字“12”就可以向后工作(如果我们具有相同的数据集)
------------------------12-------------------------
----------------10---------------11----------------
-------7--------|--------8-------|-------9---------
---1---|--2-----|--3-----|-----4-|----5--|-------6-
This is my group of words which I plan to compress.
尽管这将花费大量的工作来压缩/解压缩每个字符串 - 它似乎可能用于某种需要存储内容的存档工作 - 但除非在极少数情况下解压缩过程不是Pro blem。
我在想这个吗?单词序列的可能数量是否太大而不能存储? (想象一下500字的文档)。