gpt4 book ai didi

java - 如何为翻译内存库/缓存设计高性能的键匹配算法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:06:56 26 4
gpt4 key购买 nike

最近我被分配为一个新项目构建翻译内存库。这个想法是 TM 是 RPC 层顶部的缓存层,如果 TM 中没有匹配项,它将调用 Google Translate API 进行翻译。我考虑使用源文本作为 TM 中的关键字,我需要一个模糊匹配算法来将查询文本与 TM 中的关键字匹配。如果结果高于某个阈值,例如 0.85(范围是 0 到 1),将使用缓存的翻译文本而不是调用谷歌服务。

我已经阅读了很多文章/博客/论文,但仍然不知道从哪里开始。TD-IDF+余弦相似度好像不够好?编辑距离?语义相似性呢?但是如何呢?

我读到了 this在评论中@mbatchkarov 似乎提供了正确的方向。

有没有人对这个问题有类似的经验?欢迎提出任何建议。

最佳答案

很多时候,您链接到的问题的公认答案可以让您走得更远。您可以比较一个查询和缓存中所有查询之间的词(词元)重叠。为了提高性能,您可以结合词相似性来帮助您链接语义相似的词。我链接到的同义词库构建软件是 BSD 许可的,因此您可以随意使用它。如果您在使用它时需要任何帮助,开发人员(免责声明:我是团队的一员)将很乐意提供帮助。事实上,我有一些预建的叙词表。这些可能应该是软件的一部分,但它们太大而无法上传到 github。

请注意,无论您采用哪种方法,在很多情况下这种方法都效果不佳。这是因为该问题中讨论的方法是关于语义相似性的,而您的应用程序可能需要语义等价性。例如,“I like big ginger cats”和“We like big ginger cats”或“We like small ginger cats”在意思上非常相似,但将一个的翻译用作另一个的翻译是错误的。

关于java - 如何为翻译内存库/缓存设计高性能的键匹配算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21929796/

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