quantization product for nearest search

量化乘积方法过程:
1. 将D维向量集进行聚类,生成N个子集,以及每个子集的质心;
2. 将每个子集中的向量,转变为这个向量在这个类中的余量,即 r(y)=yqc(y) ,可以理解成在高维空间中,质心坐标到y坐标的向量。
3. 将每个余量,分成m个子余量,对m个组的子余量再进行聚类,每组会得到mk个质心;
4. 最后可以得到一个三层的聚类树,第一层对向量进行聚类,第二层对向量的余量,划分成m组,第三层对每个组进行聚类;
5. 搜索时,先把x划分到第一层的某几个类中,然后计算余量,再分m组,在每组的子类中,参照公式 d(x,y)=d(x,q(y))=jd( uj(x), qj(uj(y)) ) 2 ,计算余量的每组子余量和对应组的每个质心的距离,然后计算每个划分到这个类(第一层)中的y和x距离。

聚类过程用MiniBatchMKMeans可以得到比较好的性能;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值