gpt4 book ai didi

sql - 带有累积和查询重写的 oracle 文本定义核心

转载 作者:行者123 更新时间:2023-12-04 21:40:41 26 4
gpt4 key购买 nike

我正在使用 Oracle 文本在句子语料库中进行搜索
我希望评分只计算离散的出现次数,

示例:我的查询是 ( dog cat table )如果找到术语“狗”,即使句子有多个“狗”术语,它也必须计数为 1。如果它找到“狗猫”,它必须数 2 ......等等

我使用了这个查询,但如果找到这两个词,它会给我 51。我需要累积离散的事件。所以我想覆盖 Oracle Text 评分算法的行为。

   select /*+ FIRST_ROWS(1)*/ sentence_id
,score(1) as sc
, isn
,sentence_length
from plag_docsentences
where contains(PROCESSED_TEXT,'DEFINESCORE(dog, DISCRETE*.01)
,DEFINESCORE(cat, DISCRETE*.01)'
,1)>0
order by score(1) desc

最佳答案

好的,我解决了那个问题。

假设我找到了 3 个词中的 2 个词,分数将为 67
这意味着 ( 2/3=67 ) 这是 oracle 文本评分算法的默认行为。
所以我推导出了一个方程来找到出现次数(即在语料库句子中找到的查询中的术语数)
如下:

x/query_lenght = 分数/100

然后

x=query_lenght * 分数/100

这将找到查询和语料库查询之间的匹配词数

我希望这将有助于 IR 的研究人员。

关于sql - 带有累积和查询重写的 oracle 文本定义核心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27320746/

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