主权项 |
1、一种实现高维矢量数据快速相似检索的方法,其特征在于具体步骤如下:(1)按照一定的规则将矢量近似文件中的近似矢量排序重组,该规则就是将待插入近似矢量数据插入到这样的位置:待插入的近似矢量与该位置前后各m个近似矢量的平均距离最小,称这种排序后的矢量近似文件为有序化矢量近似文件;(2)对有序化矢量近似文件中进行聚类分割,每一类的近似矢量数据在有序化矢量近似文件中是连续存储的,类内近似矢量数据的距离比较近,类间近似矢量数据的距离较远,取每一类数据的均值为类中心矢量,并将所有类中心矢量存放在主存中;(3)检索时首先计算待查询矢量和每个类中心矢量之间的距离;(4)选择距离最小的L类,计算查询矢量与上面选择的L类中的近似矢量之间的距离,选择距离最小的k个近似矢量所对应的对象作为近似k近邻查询的结果集,步骤(2)中,有序化矢量近似文件进行聚类分割采用如下算法:设包含n个矢量的有序化矢量近似文件记为<img file="C031296870002C1.GIF" wi="327" he="55" />将其分隔为N类的方法如下:A、计算每个近似矢量与其前一个位置的近似矢量之间的距离,记为(dist<sub>1</sub>,dist<sub>2</sub>,...,dist<sub>n-1</sub>),其中<maths num="001"><![CDATA[ <math><mrow><msub><mi>dist</mi><mi>i</mi></msub><mo>=</mo><mi>D</mi><mrow><mo>(</mo><msub><mover><mi>v</mi><mo>→</mo></mover><mi>i</mi></msub><mo>,</mo><msub><mover><mi>v</mi><mo>→</mo></mover><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>i>0,D为矢量之间距离度量方法;B、对每个矢量,计算上面得到的距离与其前后各m个距离平均值之间的比例,记为(ratio<sub>1</sub>,ratio<sub>2</sub>,...,ratio<sub>n-1</sub>),其中<maths num="002"><![CDATA[ <math><mrow><msub><mi>ratio</mi><mi>i</mi></msub><mo>=</mo><msub><mi>dist</mi><mi>i</mi></msub><mo>/</mo><mo>,</mo><munder><mrow><mi>Σ</mi><msub><mi>dist</mi><mi>j</mi></msub></mrow><mrow><mi>max</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mi>m</mi><mo>,</mo><mn>0</mn><mo>)</mo></mrow><mo>≤</mo><mi>j</mi><mo>≤</mo><mi>min</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow></munder><mo>,</mo></mrow></math>]]></maths>其中i>0;C、选择上一步中计算得到的最大的N-1个比例对应的位置,以这N-1个位置为分割点,将整个有序化矢量近似文件分割为N类;D、求每个类中近似矢量的均值作为类中心。 |