Marklogic cts的一般经验法则:相似查询-最大术语

Marklogic cts的一般经验法则:相似查询-最大术语,marklogic,Marklogic,我以前没有尝试过cts:similor查询,似乎在max terms选项中使用不同的数字会极大地影响结果 我没有更改任何DB设置选项,所以我使用默认的DB设置 我注意到最大期限的默认值是16。 我已经使用了cts:distinctive术语,试图了解当我更改max术语的数量时,cts:similor查询将使用什么 我最初认为我只需要在$node中计算术语的数量(即,在空格上标记),然后我认为也许我应该将其加倍以考虑术语对 这里有什么“经验法则”吗?(顺便说一句,我使用了3个不同的数据库,其中片段

我以前没有尝试过cts:similor查询,似乎在max terms选项中使用不同的数字会极大地影响结果

我没有更改任何DB设置选项,所以我使用默认的DB设置

我注意到最大期限的默认值是16。 我已经使用了cts:distinctive术语,试图了解当我更改max术语的数量时,cts:similor查询将使用什么

我最初认为我只需要在$node中计算术语的数量(即,在空格上标记),然后我认为也许我应该将其加倍以考虑术语对

这里有什么“经验法则”吗?(顺便说一句,我使用了3个不同的数据库,其中片段数分别为24M、131M和287M,因此我有大量片段可供类似查询使用…)

第二个问题是关于cts:独特术语输出——空cts:术语是什么意思

<cts:term id="4083217226504034818" val="504" score="1032192" confidence="0.453548" fitness="0" xmlns:cts="http://marklogic.com/cts"></cts:term>


很高兴知道这个“术语”是什么,因为它是列表中得分最高的术语…

cts:类似的查询功能类似于OR查询。为
max terms
配置的值越高,可能获得的匹配项越多。如果你只取前几个结果,那么更多的术语可能会提高这些结果的准确性。如果误报对您的用例很重要,那么更多的术语将给结果集的尾部增加更多的噪声


一般来说,
cts:similor query
的术语和结果与数据库中的内容以及函数中的节点高度相关,因此很难为其制定规则。为了控制误报,我最好从
cts:distributive terms
生成自己的查询。为了得到更少、更相关的结果,您还可以尝试传递一个只返回单词对的配置。最后,我认为您需要进行实验,看看什么适合您的用例和数据集。

cts:类似的查询
功能类似于OR查询。为
max terms
配置的值越高,可能获得的匹配项越多。如果你只取前几个结果,那么更多的术语可能会提高这些结果的准确性。如果误报对您的用例很重要,那么更多的术语将给结果集的尾部增加更多的噪声


一般来说,
cts:similor query
的术语和结果与数据库中的内容以及函数中的节点高度相关,因此很难为其制定规则。为了控制误报,我最好从
cts:distributive terms
生成自己的查询。为了得到更少、更相关的结果,您还可以尝试传递一个只返回单词对的配置。最后,我认为您需要进行实验,看看什么适合您的用例和数据集。

如果您将选项
details
设置为
true
,您将获得有关术语含义的一些信息。

如果您将选项
details
设置为
true
,你会得到一些关于这些术语含义的信息。

[1.0-ml]XDMP-INVOPTNAM:cts:独特术语(在审查驳回动议时,法院必须接受所有…,…)--无效选项名称:/*:选项/*:详情,我的错误。我在考虑一个不同的API
cts:Districtive terms
已经为您提供了这些信息。这仍然让我回到我的问题-在Districtive terms输出中,空的cts:term意味着什么?(像我的例子一样)[1.0-ml]XDMP-INVOPTNAM:cts:特殊条款(在审查驳回动议时,法院必须接受所有…,…)--无效选项名称:/*:选项/*:细节,我的错误。我在考虑一个不同的API
cts:Districtive terms
已经为您提供了这些信息。这仍然让我回到我的问题-在Districtive terms输出中,空的cts:term意味着什么?(就像我的例子)