gpt4 book ai didi

python - 词表生成(排序、优化)

转载 作者:太空狗 更新时间:2023-10-30 00:18:46 26 4
gpt4 key购买 nike

一点背景:

我正在为心理学实验构建单词列表。我们试图创建一个单词链,使列表中相邻的单词相关,但列表中的所有其他单词都不相关。例如:

学校、自助餐厅、披萨、地壳、地球、海洋、鲸鱼...

所以在这里我们看到第一个词与第二个词相关,第二个词与第三个词相关,但第三个词与第一个词无关。 (而且第一个与第四个、第五个、第六个……也没有关系)

到目前为止我有什么......

我有一个包含 1600 个单词的列表,从 0 到 1600 的每个数字对应一个单词。我还有一个非常大的矩阵 (1600 x 1600),它告诉我(在 0 到 1 的范围内)每个词与其他词的相关程度。 (这些来自潜在语义分析;http://lsa.colorado.edu/)

我可以列出列表,但它根本不是很有效,而且我的相邻词彼此之间的相关性不是很强。

这是我的基本算法:

  • 为相邻词的相关程度以及非相邻词的不相关程度设置最小值阈值。
  • 创建一个从 0 到 1600 的列表。打乱该列表。列表的第一项将是我们的第一个词。
  • 循环我们的单词,一个接一个地检查单词是否符合我们的阈值(即检查这个新单词是否与列表中最后添加的单词足够相关,循环遍历我们的列表并检查它是否与所有单词无关换句话说,它还不在我们的列表中)。如果符合条件,则将其添加到列表中。如果我们遍历所有单词都没有成功,则丢弃列表并重新开始。
  • 继续这样做,直到列表中的单词数量达到我想要的数量(理想情况下为 16 个)。

有没有人有更好的方法?我的方法存在的问题是,当可能还有更好的匹配时,我有时会满足于满足我的标准的好的匹配。此外,如果我不必转储整个列表但可以回溯几步到列表可能出错的地方,那就太好了。

最佳答案

这可能是遗传算法的一个很好的候选者。您可以创建大量完全随机的可能性,用一个目标函数对每个可能性进行评分,然后通过基于适应度(也可能会引入一些突变)交叉配偶来迭代种群。

如果操作得当,这应该会为您提供大量好的解决方案。如果种群足够大,适应度函数定义得足够好,变异足以让您走出任何您可能陷入的低谷,您甚至可能压倒性地收敛于最佳答案。

关于python - 词表生成(排序、优化),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47023554/

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