Dictionary 不同语言的词典训练

Dictionary 不同语言的词典训练,dictionary,Dictionary,我正在开发一个邮件系统,我的想法是将邮件独立地存储在每个收件箱中。在研究这个想法时,我问自己为什么不压缩这些信息。因此,我正在寻找一种好方法来选择不同语言的词典 由于这些信息与日常谈话高度相关(社交废话),我需要一个好的来源和方式 我需要一些文本,比如数百万封电子邮件、书籍等。我想用它创建一个哈夫曼树,能够内联并将每条消息表示为这个哈夫曼树中的字符串。所以解码速度足够快 我想用的语言已经过时了。因为报纸和类似的东西可能不够,我需要其他的方法 [更新] 当我开始我的研究时,我注意到我实际上用维基百

我正在开发一个邮件系统,我的想法是将邮件独立地存储在每个收件箱中。在研究这个想法时,我问自己为什么不压缩这些信息。因此,我正在寻找一种好方法来选择不同语言的词典

由于这些信息与日常谈话高度相关(社交废话),我需要一个好的来源和方式

我需要一些文本,比如数百万封电子邮件、书籍等。我想用它创建一个哈夫曼树,能够内联并将每条消息表示为这个哈夫曼树中的字符串。所以解码速度足够快

我想用的语言已经过时了。因为报纸和类似的东西可能不够,我需要其他的方法

[更新]

当我开始我的研究时,我注意到我实际上用维基百科创建了两本词典。首先是一部包含具有一定概率的典型字符的词典。我还注意到,我在每种语言中使用的特殊字符在以拉坦语为基础的语言中分布均匀(实际上拉坦语只是语言家族中的一员),即使是俄罗斯人也倾向于在完全不同的字母表旁边有相同的分布

我还注意到,在大约15%到18%的情况下,一个特殊字符(如“,”,“;”)跟在另一个特殊字符后面。比前8个最常用的词的词汇量高出10%,接下来的16个词的词汇量高出9%,继续下去,大约128个词(160个词)的词汇量就达到了所有词的80%。因此,存储接下来的256个或更多的单词,在分析方面变得毫无意义。这使我落后于每种语言大约2到5KB的三个字典(字符、单词、特殊字符)(我使用一种特殊格式来使用前缀压缩)这为我节省了30%到60%的字符缩减量,而且当您还记得Java中每个字符存储16位时,通过压缩(huffman树)必须插入的字符,它会导致更大的整体缩减,使其成为1:5到1:10

使用这样的系统并将数字压缩为可变长度整数,可以生成一个字节数组,用于字符串匹配,加载速度更快,检查要包含的单词比逐个字符比较快,因为不需要首先标记或识别单词,就可以更快地检查完整单词


它解决了支持字符串键的问题,因为我只需在每种语言中转换字符串,就可以得到一组用于查找的键。

哇,又到了最后。如果你想结束这个问题,请告诉我为什么以及在哪里提问?这是关于一个有效的程序设计,为什么呢?如果你在你的问题上遇到负面反馈,我建议你看一下。那里有很多好信息。