gpt4 book ai didi

database - 将 n-gram 存储在数据库中 < n 个表中

转载 作者:搜寻专家 更新时间:2023-10-30 19:42:21 26 4
gpt4 key购买 nike

如果我正在编写一个软件,试图使用用户之前输入的两个词来预测用户下一个将输入的词,我会创建两个表。

像这样:

== 1-gram table ==
Token | NextWord | Frequency
------+----------+-----------
"I" | "like" | 15
"I" | "hate" | 20

== 2-gram table ==
Token | NextWord | Frequency
---------+------------+-----------
"I like" | "apples" | 8
"I like" | "tomatoes" | 12
"I hate" | "tomatoes" | 20
"I hate" | "apples" | 2

按照此示例实现,用户键入“I”,软件使用上述数据库预测用户将要键入的下一个词是“hate”。如果用户确实输入了“hate”,那么软件将预测用户要输入的下一个词是“tomatoes”。

但是,这种实现需要为我选择考虑的每个额外的 n-gram 创建一个表。如果我决定在预测下一个词时考虑前面的 5 或 6 个词,那么我将需要 5-6 个表,并且每个 n-gram 的空间呈指数增长。

仅在一个或两个表中表示它的最佳方式是什么,它对我可以支持的 n-gram 数量没有上限?

最佳答案

试试两列表 -

phrase, frequency

一种优化方法是对短语中的某些词进行“规范化”,例如“不是”到“不是”。

第二个优化是使用 MD5、CRC32 或短语的类似散列作为 key 。

关于database - 将 n-gram 存储在数据库中 < n 个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2846206/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com