鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

参数调优指导

本节提供的参数调优指导同时适用于C++接口与Python接口。

构造函数接口

参数名称

参数取值范围

推荐值

调优说明

R

[11,499]

50

邻居节点数,影响图构建耗时和最终索引质量,一般推荐使用50,过大可能会导致构建耗时过长以及搜索性能下降,过小则会影响检索精度。

L

[11,1999]

100,200

构图时的候选节点列表大小,影响图构建耗时和最终索引质量,一般推荐使用100,过大可能会导致构建耗时过长。

A

[1,360]

60,120

构图剪枝时的角度阈值,对于IP数据集,一般使用120,L2数据集一般使用60。

graph_opt_iter

[0,30]

29

图索引自我迭代的轮数,过大可能导致构建耗时过长。

Add接口

参数名称

参数取值范围

推荐值

调优说明

level

[0,3]

1,2

控制量化的等级,level 1代表SQ8U量化,level 2代表SQ4U量化。对于IP数据集,一般使用1,L2数据集使用2。

SetEf接口

参数名称

参数取值范围

推荐值

调优说明

ef

[1, n],其中“n”为数据量大小。

-

检索时的候选节点列表大小,对于小规模数据集,一般在10~500左右。更大的ef会带来更高的检索精度,但是检索性能也会降低。建议在精度达标情况下ef取较小值。

SetEarlyStoppingParams接口

参数名称

参数取值范围

推荐值

调优说明

adding_pref

大于等于1

-

用于检索时早停机制,表示候选节点插入阈值,检索过程中节点插入候选集的位置大于adding_pref表示其远离查询节点,后续检索到答案的可能较低。较小的adding_pref能提高检索效率,但是检索精度也会降低。

patience

大于等于1

-

检索时早停机制,表示插入位置靠后或者插入失败的耐心值,当连续插入位置大于阈值adding_pref的次数超过耐心值,检索结束。较小的patience能提高检索效率,但是检索精度也会降低。