没有合适的资源?快使用搜索试试~ 我知道了~
首页递归Δ-tree的高效高维KNN查询算法:深度优先搜索优化
本文主要探讨了"基于Δ-树的递归深度优先KNN查询算法"这一高级工程技术领域的论文。该算法针对高维数据的主存K最近邻查询问题进行了创新设计。Δ-树是一种高效的高维数据结构,它在空间划分上采用了多级索引,特别适合处理大规模数据集中的查询任务。 核心思想是通过递归调用和深度优先搜索策略来遍历Δ-树。首先,查询过程从根节点开始,然后按照深度优先的方式向下探索,直到找到距离查询点最近的叶子节点。这些叶子节点代表了潜在的KNN候选点。在每个节点,算法会计算其与查询点的距离,根据预先设定的修剪距离(pruning distance),筛选出可能的K个最接近的点。通过这种方式,算法可以避免不必要的计算,显著减少查询时间。 相比于传统的KNN查询算法,这种递归深度优先的方法能够更好地控制搜索范围,减少了无效的比较和计算,从而提高了查询效率。作者刘艳和郝忠孝,分别来自哈尔滨理工大学、长春大学和哈尔滨工业大学,他们在文中详细阐述了算法的实现细节、性能优化以及实验结果,这些结果表明新算法在实际应用中显示出优越的查询速度和性能提升。 关键词包括:高维索引、主存、K最近邻查询、深度优先搜索。这些关键词反映了论文的核心研究内容和技术路径。这篇论文为高维数据的实时KNN查询提供了一种有效且高效的解决方案,对于数据库管理和机器学习等领域具有重要的理论和实践价值。
资源详情
资源推荐
基于
基于基于
基于
∆-tree
的
的的
的递归深度优先
递归深度优先递归深度优先
递归深度优先
KNN
查询算法
查询算法查询算法
查询算法
刘
刘刘
刘
艳
艳艳
艳
1,2
,
,,
,郝忠孝
郝忠孝郝忠孝
郝忠孝
1,3
(1. 哈尔滨理工大学计算机科学与技术学院,哈尔滨 150080;
2. 长春大学计算机科学技术学院,长春 130022;
3. 哈尔滨工业大学计算机科学与技术学院,哈尔滨 150001)
摘
摘摘
摘 要
要要
要:
::
:基于 ∆-tree 提出一种用于高维数据的主存 K 最近邻(KNN)查询算法。该算法利用递归调用方法深度优先遍历 ∆-tree,找到距离查
询点较近的叶子节点,并选择其中较优的 KNN 候选点进行查询,从而缩小修剪距离、提高查询速度。实验结果表明,与已有算法相比,
该算法具有更高的查询效率。
关键词
关键词关键词
关键词:
::
:高维索引;主存;K 最近邻查询;深度优先搜索
Recursive Depth-first KNN Query Algorithm Based on ∆-tree
LIU Yan
1,2
, HAO Zhong-xiao
1,3
(1. College of Computer Science and Technology, Harbin University of Science and Technology, Harbin 150080, China;
2. Institute of Computer Science and Technology, Changchun University, Changchun 130022, China;
3. College of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)
【
【【
【Abstract】
】】
】This paper proposes an algorithm based on ∆-tree to support efficient main memory K-Nearest Neighbor(KNN) query in
high-dimensional databases. By recursive transfer method and depth-first traversal of ∆-tree, the algorithm finds the leaf nodes that are nearer to
query point and adopts the superior KNN candidates in them to reduce pruning distance, thus lesses calculation amount and accelerates the nearest
neighbors search. Experimental results show that this algorithm can improve query efficiency.
【
【【
【Key words】
】】
】high-dimensional index; main memory; K-Nearest Neighbor(KNN) query; depth-first search
DOI: 10.3969/j.issn.1000-3428.2011.22.013
计 算 机 工 程
Computer Engineering
第 37 卷 第 22 期
Vol.37 No.22
2011 年 11 月
November 2011
·
··
·软件技术与数据库
软件技术与数据库软件技术与数据库
软件技术与数据库·
··
·
文章编号
文章编号文章编号
文章编号:
::
:1000—
——
—3428(2011)22—
——
—0048—
——
—03
文献标识码
文献标识码文献标识码
文献标识码:
::
:A
中图分类号
中图分类号中图分类号
中图分类号:
::
:TP311
1
概述
概述概述
概述
在高维数据应用中,
K
最近邻
(K-Nearest Neighbor, KNN)
查询是一种使用频率高且操作代价昂贵的检索方式。
KNN
查
询要求在高维空间中查找出与给定查询对象距离最近的
k
个
数据点
[1]
。目前
RAM
的容量越来越大且价格越来越便宜,对
主存数据库
的
研究引起了学者们的兴趣
[2]
。
文献
[3]
提出了一
种主 存索引
∆-tree
;文 献
[4-6]
基于 Δ
-tree
提出 了自 相似连
接
[4-5]
、
KNN
连接算法;文献
[3]
中已证明索引结构Δ
-tree
能
够有效地支持高维数据的主存
KNN
的快速搜索,但该文中
的
KNN
查询算法存在一定缺陷,不利于修剪距离的快速缩
小。本文根据
KNN
查询自身的特点,采用递归调用的方式,
深度优先遍历
∆-tree
中距离查询点较近的叶子节点,快速缩
小了修剪距离。
2
基本概念
基本概念基本概念
基本概念
本文根据文献
[3]
中创建
∆-tree
的方法,为数据集
R
创建
∆-tree
。
定义
定义定义
定义
1
(
孩子节点的序号
)
对Δ
-tree
中内部节点的各孩子
节点从左到右使用
1, 2,
…进行编号,用以表示各孩子节点为
其父节点的第几个孩子节点的序号,简称孩子节点的序号。
定义
定义定义
定义
2
(
查询点与节点之间的距离
)
查询点到节点中心的
距离与节点半径之差,称为查询点与节点之间的距离。
定理
定理定理
定理
1
转换后的低维
PCA
[7]
空间中查询点到
∆-tree
中节
点之间的距离是高维空间中查询点到该节点中所有数据点之
间距离的下限。
证明:设
Q
表示查询点,
Q
′
表示
Q
转换后低维空间中的
点,
∆-tree
中某节点中心为
C
′
,半径为
R
′
。设
P
为该节点中
的
1
个数据点,被转换为
P
′
。
根据文献
[3]
中
PCA
的属性
1
,有如下等式成立:
dist
(
P
,
Q
)
≥
dist
(
P
′,
Q
′)
(1)
其中,
dist
(
p
,
q
)
表示
p
和
q
2
个数据点之间的距离;
dist
(
C
1
′,
Q
′)
-
R
1
′
表示
Q
′
到
∆-tree
中该节点的距离。
有下式成立:
dist
(
P
′,
Q
′)
≥
dist
(
C
1
′,
Q
′)
-
R
1
′
(2)
由式
(1)
和式
(2)
可得:
dist
(
P
,
Q
)
≥
dist
(
C
1
′,
Q
′)
-
R
1
′
(3)
所以,
dist
(
C
1
′,
Q
′)
-
R
1
′
是高维空间中查询点到该节点中
所有数据点之间距离的下限。如果
dist
(
C
1
′,
Q
′)
-
R
1
′
比搜索半
径大,则可将该节点修剪掉。
3
递归的
递归的递归的
递归的
KNN
查询算法
查询算法查询算法
查询算法
算法
R_DF_KNN_Search
及其子算法的符号说明如下:
queryPoint
为与数据集
R
中的数据点同时经过
PCA
转换的查
询点;
node
为
∆-tree
的内部节点;
computedChild
为
node
中
计 算 了 到
queryPoint
之 间 距 离 的 孩 子 节 点 的 集 合 ;
nearestNode
为
c
omputedChild
中距离查询点最近的孩子节点;
point
为数据点;
k
为最近邻的数目;
pruneDist
为
KNN
的修
剪距离;
KNNList
为
KNN
候选列表;
KNN
在
KNNList
中按
基金项目
基金项目基金项目
基金项目:
::
:黑龙江省自然科学基金资助项目(F2006-01)
作者简介
作者简介作者简介
作者简介:
::
:刘 艳(1981-),女,讲师、博士研究生,主研方向:
高维数据处理;郝忠孝,教授、博士生导师
收稿日期
收稿日期收稿日期
收稿日期:
::
:2011-06-10 E-mail:
::
:liuyan6374@yahoo.com.cn
下载后可阅读完整内容,剩余4页未读,立即下载
weixin_38556737
- 粉丝: 3
- 资源: 944
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- ***+SQL三层架构体育赛事网站毕设源码
- 深入探索AzerothCore的WoTLK版本开发
- Jupyter中实现机器学习基础算法的教程
- 单变量LSTM时序预测Matlab程序及参数调优指南
- 俄G大神修改版inet下载管理器6.36.7功能详解
- 深入探索Scratch编程世界及其应用
- Aria2下载器1.37.0版本发布,支持aarch64架构
- 打造互动性洗车业务网站-HTML5源码深度解析
- 基于zxing的二维码扫描与生成树形结构示例
- 掌握TensorFlow实现CNN图像识别技术
- 苏黎世理工自主无人机系统开源项目解析
- Linux Elasticsearch 8.3.1 正式发布
- 高效销售采购库管统计软件全新发布
- 响应式网页设计:膳食营养指南HTML源码
- 心心相印婚礼主题响应式网页源码 - 构建专业前端体验
- 期末复习指南:数据结构关键操作详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功