gpt4 book ai didi

php - 构建一个更真实的随机词生成器?

转载 作者:可可西里 更新时间:2023-11-01 13:27:05 28 4
gpt4 key购买 nike

我见过很多使用 Markov chains 的例子用于根据源数据生成随机词,但它们对我来说往往显得过于机械和抽象。我正在尝试开发一个更好的。

我认为部分问题在于它们完全依赖于对的整体统计出现,而忽略了单词以特定方式开始和结束的趋势。例如,如果您使用前 1000 个婴儿名字作为源数据,字母 J 总体上相对较少见,但它是名字中第二个最常见的开头字母。或者,如果您使用的是拉丁源数据,则像 -um 和 -us 这样的词尾是常见的词尾,但如果您认为所有对都相同,则不会那么常见。

所以,我基本上是在尝试组合一个基于马尔可夫链的单词生成器,它考虑了单词在源数据中的开始和结束方式。

从概念上讲,这对我来说很有意义,但我无法弄清楚如何从软件角度实现它。我正在尝试组装一个小的 PHP 工具,它允许您放入源数据(例如,一个 1000 个单词的列表),然后它会从中生成各种具有逼真的开头、中间和结尾的随机单词。 (与大多数基于马尔可夫的单词生成器相反,后者仅基于对的整体统计出现。)

如果可能的话,我还想使用由源数据确定的字长来执行此操作;即,随机生成的单词的长度分割应与源数据的长度分割大致相同。

任何想法将不胜感激!谢谢。

最佳答案

如果您将“单词之间的空格”视为一个符号,那么关于不尊重常见开头和结尾的部分实际上并不正确——常见开头将在“单词之间的空格”之后出现高频,而常见结尾将出现高频在“单词之间的空间”之前。正确的单词长度也或多或少自然地解决了这个问题——在转换为“单词之间的空格”符号之前输出的平均字母数应该等于训练数据中每个单词的平均字母数,尽管有些东西我的内心告诉我分发可能已关闭。

关于php - 构建一个更真实的随机词生成器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012842/

28 4 0