昇腾社区首页
中文
注册

AscendIndexCodeBookInitParams接口

API定义

AscendIndexCodeBookInitParams(int numIter, int device, float ratio, int batchSize, int codeNum, std::string codeBookOutputDir, std::string learnDataPath, bool verbose);

功能描述

IVFSP训练码本的初始化结构体。

输入

输出

参数值

int numIter:训练迭代次数参数,默认为“1”

int device:设备逻辑ID,默认为“0”

float ratio:训练用原始样本的采样率,默认为“1.0”

int batchSize:训练时以batch_size大小执行训练。与IVFSP章节的“IVFSP训练算子模型文件生成”中的<batch_size>保持一致,要求大于“0”,默认值为“32768”。

int codeNum:每次最大按code_num样本数量操作码本,必须为2的幂次。与IVFSP章节的“IVFSP训练算子模型文件生成”中的<codebook_batch_size>保持一致,要求大于0,默认为“32768”

std::string codeBookOutputDir:生成的码本文件输出到的目录,用户应该保证此目录存在,且程序的执行用户对此目录具有写权限;出于安全加固的考虑,此目录层级中不能含有软链接。

std::string learnDataPath:训练用的原始特征文件路径,支持bin、npy格式,bin存储方式为行优先,数据类型为“float32”

bool verbose:是否开启额外打印信息,默认为“true”

参数约束

  • numIter∈ (0, 20]。
  • ratio∈ (0, 1.0]。
  • 当码本文件存在时,将执行覆盖写,此种情况程序执行用户应该是文件的属主。
  • 在执行训练生成码本前,请先参考IVFSP生成训练算子模型文件。