Page 171 - 《软件学报》2026年第3期
P. 171

1134                                                       软件学报  2026  年第  37  卷第  3  期


                 数据集存储了柏林市的城市地理信息, 包括公共交通、POI 和河流. nanjingtest 和                londontest 数据集分别存储了南
                 京市和伦敦市的行政区、部分道路和             POI 信息. chinawater 数据集构建自全球水文数据集         HydroSHEDS [22] , 包含
                 中国部分水系的地理信息, 如河流、湖泊、池塘等水体.

                                                     表 4 空间数据统计

                                  数据集       空间关系表数         point个数     line条数    region个数
                                 berlintest     50          3 040       4 708       330
                                nanjingtest      6          9 000       887         13
                                 londontest      6          9 032       9 728      12 669
                                chinawater       2           0          8 399      2 907

                    ● 评估指标. 定义    3  个指标来评估空间数据自然语言查询转换框架的性能, 包括可翻译性                     T、翻译精度     TP  和
                 响应时间   RT.
                    定义  11 (可翻译性). 给定系统成功生成的可执行语言集合               Q success , 输入的自然语言查询集合   Q total , 可翻译性

                 T = |Q success |/|Q total |.
                    定义  12 (翻译精度). 给定系统生成的执行结果符合预期的可执行语言集合                    Q correct , 输入的自然语言查询集合
                 Q total , 翻译精度  TP = |Q correct |/|Q total |.
                    定义   13 (响应时间). 给定系统接收到自然语言查询的时间               t start , 完成可执行查询生成的时间    t end , 响应时间
                 RT = t end −t start .
                    ● 测试用例. 基于    berlintest、nanjingtest、londontest 和  chinawater 数据集构建  100  条测试用例, 包含  20  条范
                 围查询、20   条最近邻居查询、30       条空间   Join  查询和  30  条聚合查询. 结合数据集的实际应用场景, 测试用例涵盖
                 了不同类型的空间查询需求, 可通过           https://pan.baidu.com/s/1fze_iUjRJbMzhrbeY9Z8XQ?pwd=ujwb  获取.
                  5.2   对比实验
                    为了全面评估      NALSpatial 的性能与优势, 设计两组对比实验: (1) 与基于传统规则或机器学习的转换方法对
                 比; (2) 与基于大语言模型的转换方法对比. 这两组实验旨在从不同技术路径出发, 验证                       NALSpatial 在有效性和用
                 户友好性等方面的表现.
                  5.2.1    对比实验设置
                    在第  1  组实验中, 选择了具有代表性的         3  种转换方法: SpatialNLI [23] 、IRNet 和  ATHENA++ [24] . 首先在实验环
                 境中复现了这     3  种方法的关键模块, 然后结合        NALSpatial 的查询类型识别模型、映射规则和结构化语言模型, 最
                 终生成   SECONDO  系统的可执行语言.
                    (1) SpatialNLI 关键模块的实现. 首先检测潜在的关键字和数据元素, 通过字符串的精确匹配、根据编辑距离
                 计算单词间的相似性、采用余弦相似度衡量两个单词在语义上的相近性. 然后构造空间理解模型, 根据上下文来
                 确定有歧义的空间短语的含义. 对输入的自然语言查询进行预处理, 将有歧义的空间短语用特殊的符号包围起来,
                 以表明它比问题中的其他符号具有更大的影响力. 输入预处理后的自然语言查询和有歧义的短语的一个语义                                    t, 如
                 果模型返回    true, 则有歧义的空间短语的语义为         t.
                    (2) IRNet 关键模块的实现. 首先识别自然语言查询中的实体, 包括列、表和值. 使用基于统计语言模型的算
                 法  n-gram  和字符串匹配的方法来识别查询中的实体. 然后根据问题中提到的方式为列分配不同的类型. 如果被识
                 别为列的    n-gram  与数据库模式中的列名完全匹配, 则为这些列分配一个类型为                  EXACT MATCH, 否则为一个类
                 型  PARTIAL MATCH.
                    (3) ATHENA++关键模块的实现. 首先根据对象知识库、关系知识库和地点知识库构建空间领域本体. 然后
                 基于构建的空间领域本体和          Relational Store, 利用自然语言处理工具   Stanza 提取自然语言查询中的关键实体信息.
                 如果自然语言查询中的一个单词映射到多个本体元素, 则为每种情况生成相应的可执行语言.
                    在第  2  组实验中, 选择了当前主流的大语言模型            GPT-4o  作为对比基准. 为实现与大语言模型的公平对比, 设
   166   167   168   169   170   171   172   173   174   175   176