标注 | 说明 | 数据类型 |
输入要素 | 表示要插值点的位置的输入点。 | Feature Layer |
值字段 | 包含要插值的值的字段。 | Field |
输出交叉验证表 | 包含交叉验证统计信息和每个插值结果排名的输出表。 插值结果的最终等级存储在 RANK 字段中。 | Table |
输出具有最高等级的地统计图层 (可选) | 具有最高排名的插值结果的输出地统计图层。 此插值结果将具有输出交叉验证表 RANK 字段中的值 1。 如果具有最高排名的插值结果存在并列或所有结果都被排除标准所排除,即使提供了值也不会创建图层。 如果发生这种情况,该工具将返回警告消息。 | Geostatistical Layer |
插值方法 (可选) | 指定将在输入要素和值字段上执行的插值方法。 对于指定的每种方法,将生成 1 到 5 个插值结果。 默认情况下,将生成除反距离加权、径向基函数和全局多项式之外的所有方法(因为这些方法不能产生预测的标准误差)。 默认情况下,将生成 11 个插值结果。 如果指定所有选项,将生成 20 个插值结果。
| String |
比较方法 (可选) | 指定将用于比较和排列插值结果的方法。
| String |
条件 (可选) | 指定将用于对插值结果进行排名的标准。
| String |
条件等级 (可选) | 将用于具有公差的分级排序的标准等级结构。 按优先顺序提供多个标准,第一个标准是最重要的。 插值结果按第一个标准排序,任何并列情况将使用第二个标准继续区分。 如果第二个标准出现并列,就使用第三个标准继续区分,依此类推。 交叉验证统计数据是连续值,通常没有完全并列的情况,因此可以指定容差以在每个标准中创建并列情况。 对于每一行,在第一列中指定标准,在第二列中指定公差类型(百分比或绝对值),在第三列中指定公差值。 如果没有提供公差值,则不使用公差;这对最后一行最有用,这样插值结果就不会出现排名最高的结果。 对于每一行(每个级别),以下条件可用:
例如,您可以在第一行中指定公差为 5% 的均方根误差(精度)值,在第二行中指定不带公差的平均误差(偏差)值。 这些选项将首先按最低均方根误差(最高预测精度)对插值结果进行排序,所有均方根误差值在最准确结果的 5% 以内的插值结果将被视为预测精度并列。 在并列结果中,平均误差最接近零(最低偏差)的结果将获得最高排名。 | Value Table |
加权的条件 (可选) | 具有权重的多个标准将用于对插值结果进行排名。 对于每一行,提供一个标准和一个权重。 插值结果将按每个标准独立进行排名,排名的加权平均值将用于确定插值结果的最终排名。
| Value Table |
排除条件 (可选) | 将用于从比较中排除插值结果的标准和关联值。 排除的结果将不会获得排名,并将在输出交叉验证表的 Included 字段中具有 No 值。
| Value Table |
摘要
可根据输入点要素和字段生成各种插值结果。 然后使用基于交叉验证统计的可定制标准对插值结果进行比较和排序。
插值结果可以基于单个标准(例如最高预测精度或最低偏差)、多个标准的加权平均排名或多个标准的分级排序(如果某个标准出现并列,将使用等级中的后续标准区分)。 排除标准还可用于从比较中排除不符合最低质量标准的插值结果。 可以输出为表格,其中汇总了每个插值结果的交叉验证统计信息和排名。 也可以输出为具有最高等级的插值结果的地统计图层,以用于后续工作流。
插图
使用情况
交叉验证是一种用于评估插值结果的“留一法”。 该方法将按顺序删除数据集中的每个点,并使用所有剩余点来预测排除点的值。 然后将交叉验证预测与隐藏点的真实值进行比较,两者之差就是交叉验证误差(误差可以是正值或负值)。 交叉验证背后的原因是,如果插值结果能有效地预测隐藏点的值,那么它也应该能有效地预测新位置的未知值,这是插值的目标。 该工具使用的所有标准均基于交叉验证结果的汇总统计。
虽然使用交叉验证汇总统计评估插值结果是比较多个插值结果的一种方便有效的方法,但它不能取代数据的专业知识和结果的交互式调查。 查看图表和单个交叉验证错误通常会揭示一些其结果在汇总统计数据中并不明显的模式。 例如,交叉验证误差中经常存在某些区域被低估而其他区域被高估的空间模式;诸如此类的模式可能无法通过汇总统计来表示。
比较方法参数具有三个选项,用于比较插值结果的交叉验证统计量。 每个选项都具有其各自的优缺点。
- 单一标准 - 单一标准用于比较和排列结果。 您可以按最高预测精度、最低偏差、最低最坏情况误差、最高标准误差精度或最高精度对结果进行排名。 标准在条件参数中提供。
- 优点 - 此选项是一种简单且常用的方法,用于比较已知稳定且一致的插值结果。 对于在非常相似的结果之间进行选择,该方法也很有用。
- 缺点 - 插值结果通常在某些标准上表现良好,但在其他条件下表现不佳,例如,预测精度高但偏差也大。 在这种情况下,按单一标准进行排名将为不稳定或具有误导性的结果分配高排名。 当按单一标准进行排名时,建议您使用排除标准参数的各种选项,以确保在比较之前移除不稳定或误导性的结果。
- 带公差的等级排序 - 等级排序用于比较和排列结果。 在条件等级参数中以优先级顺序(最高优先级在前)指定多个条件。 插值结果按第一个标准排序,任何并列情况将使用第二个标准继续区分。 如果第二个标准出现并列,就使用第三个标准继续区分,依此类推。 这个过程将在电子表格软件中的自定义排序和分级排序之后进行建模(先按 A 排序,然后按 B,然后按 C,以此类推)。 但是,交叉验证统计数据是连续值,通常没有完全并列的情况,因此可以指定公差(百分比或绝对值)以在每个标准中创建并列情况。
- 优点 - 此选项使用多个标准,并且考虑了交叉验证统计数据的相对差异。 例如,如果按照最高优先级标准,一个插值结果比其他结果好得多,则无论分级结构中的后续标准如何,该插值结果都将获得最高等级。
- 缺点 - 分级排序的有效性取决于提供的容差值。 如果公差太小,则可能无法使用某些标准,因为没有并列情况需要加以区分。 如果公差太大,由于许多结果在彼此的公差范围内,排名中可能会有很多并列情况。
- 加权平均排名 - 多个标准的加权平均排名用于比较和排名结果。 在加权标准参数中指定多个标准和其相关权重。 插值结果按每个标准独立排序,并使用排名的加权平均值来确定最终排名。 权重较大的标准将对最终排名产生更大的影响,因此表示这些标准的优先级高于其他标准。
- 优点 - 此选项使用多个标准且允许某些标准优于其他标准,始终在比较中使用所有标准。
- 缺点 - 忽略交叉验证统计值的相对差异。 例如,所有均方根误差值彼此之间的公差范围可能非常小(表明所有结果具有大致相等的预测精度),但它们仍将按预测精度从 1 到 N 排列(对于 N 个插值结果)。 但是,结果之间的平均误差值可能会有很大差异(表明结果的偏差之间有很大差异),但它们也会按照偏差标准从 1 到 N 排序。 加权平均仅使用标准的排名,因此在排名中忽略了交叉验证统计量的相对差异。
- 单一标准 - 单一标准用于比较和排列结果。 您可以按最高预测精度、最低偏差、最低最坏情况误差、最高标准误差精度或最高精度对结果进行排名。 标准在条件参数中提供。
输出是一个汇总交叉验证统计、插值结果描述和排名的表格,可以包含在演示文稿或报告中。 只有应用于至少一个插值结果的交叉验证统计数据才会包含在表中。 例如,如果仅使用反距离加权和径向基函数,则输出表将不包含平均标准误差值字段,因为这些方法不计算标准误差。 如果统计信息适用于某些插值结果但不适用于其他插值结果,则对于该统计信息不适用的结果,该值将为空。 此外,如果为插值方法参数选择了经验贝叶斯克里金法,则该工具中几个未被任何标准使用的交叉验证统计量将包含在表中;出于提供信息的目的,这些都包含在内,并且所有其他插值方法都将具有空值。 如果使用加权平均排名,则所有标准的排名及其加权平均值也将包含在表格中。
或者,您可以使用具有最高等级的输出地统计图层参数来创建具有最高等级的插值结果的地统计图层。 这允许您映射最佳插值结果并将其用于其他工作流程。
在工具运行时,地理处理消息和进度条消息会显示正在计算的当前插值结果。 在计算和比较所有结果后,排名将打印为地理处理消息。 排名也可在输出交叉验证表中找到。
比较地统计图层工具将执行交叉验证比较与此工具相同,但它是对先前创建的插值结果(地统计图层)执行比较。
下表列出了可用的标准、衡量它们的交叉验证统计数据以及用于为每个插值结果分配分数的公式(分数越小越好)。 通过对每个插值结果的分数进行排序来确定标准的排名。
注:
其中三个标准,分数等于交叉验证统计量。
条件 交叉验证统计 分数公式 最高预测精度
均方根误差
结果按最小均方根误差排序。
Score = RootMeanSquareError
最低偏差
平均误差
结果按最接近零的平均误差排列。
Score = AbsoluteValue( MeanError )
最低最坏情况误差
最大绝对误差
结果按最小最大绝对误差排序。
Score = MaximumAbsoluteError
最高标准误差精度
标准化均方根误差
结果按最接近一的均方根标准化误差进行排序。
Score = AbsoluteValue( RMSStdError - 1 )
最高精度
平均标准误差
结果按最小平均标准误差排序。
Score = AverageStandardError
如果每个标准中都存在并列情况,则所有并列结果都将获得相同的排名,即在它们之间共享最高排名(其中较高的排名意味着较小的排名数值)。 例如,按照从最好到最差的顺序,根据预测精度标准,均方根误差值 (12, 14, 14, 15, 16, 16, 18) 的排名为 (1, 2, 2, 4, 5, 5, 7)。 由于存在并列,排名 3 和 6 被跳过。
并列可能出现在比较的不同阶段。 使用等级排序时最常见的是并列,因为公差内的所有结果都被认为是并列,而公差之外的所有结果也被认为是互相并列。 当插值结果根据不同的标准具有不同的排名时,常常会出现加权平均排名的并列情况,这可能导致排名的加权平均值相等。 虽然不常见,但在单一标准比较中也可能出现并列(例如,如果所有点都具有恒定值)。 如果在加权平均中使用某标准,则该单一标准的并列情况也会影响加权平均排名。
在分级排序中,提供与标准得分相关的公差,而不是交叉验证统计量。 对于分数等于统计量的标准(最高预测精度、最低最坏情况误差和最高精度),通常比较容易确定适当的公差值。 例如,如果插值结果的最小均方根误差值为 200,则 10% 的公差将包括均方根误差值小于或等于 220 的所有结果:200 + (10/100) x 200 = 220。 同样,15 的绝对公差将包括均方根误差值小于或等于 215 的所有结果:200 + 15 = 215。
但是,对于分数不等于统计值的标准(最低偏差和最高标准误差精度),则不太容易确定适当的公差值。 对于平均误差统计,偏差由平均误差的绝对值评分。 这意味着,例如,平均误差值 -4 和 6 具有 50% 的相对差异,因为它们的绝对值相差 50%: ABS(-4) + (50/100) x ABS(-4) = ABS(6)。 同样,它们的绝对差值为 2:ABS(-4) + 2 = ABS(6)。
对于均方根标准化误差统计数据,标准误差精度通过均方根标准化误差值与理想值 1 之间的绝对差值来评分。 这意味着,例如,均方根标准化误差值 0.2 和 2.4 具有 75% 的相对差异。 解释一下原因,将值 0.2 和 2.4 进行比较,后者与理想值 1 的距离是前者的 1.75 倍(增加了 75%,绝对差值分别为 0.8 和 1.4):ABS(0.2 - 1) + (75/100) x ABS(0.2 - 1) = ABS(2.4 - 1)。 同样,它们的绝对差值为 0.6:ABS(0.2 - 1) + 0.6 = ABS(2.4 - 1)。
各种标准要求所有插值结果都支持标准错误输出类型。 默认情况下,插值方法参数选项允许所有参数的所有选项。 但是,如果指定了反距离加权、径向基函数或全局多项式插值选项,则多个参数的各种选项将不可用,因为这些方法无法计算预测的标准误差。 不可用的选项与标准误差精度、精度、均方根标准化误差统计量或平均标准误差统计量有关。
当您不知道被插值的点的值或范围时(例如,在自动化环境中),排除标准参数的减少最小误差百分比选项特别有用。 此选项可排除那些与预测地图中所有位置的全局平均值的基线非空间模型相比不够准确的插值结果。 这种相对精度是通过将均方根误差值与被插值点值的标准偏差进行比较来测量的,并且均方根误差必须至少小于要包含在比较中的标准偏差的指定百分比。 例如,值 10 表示均方根误差必须比标准差至少低 10% 才能包含在比较和排名中。
不同学科对于插值结果中可接受的误差减少量有不同的标准。 在具有密集采样测量的物理科学中,误差通常可以减少 90% 以上。 然而,在社会科学中,误差减少 10% 到 20% 通常对研究人员来说意义重大。
每个插值方法参数选项生成 1 到 5 个插值结果。 默认情况下,生成 11 个结果。 如果选择所有选项,将生成 20 个结果。 下表显示了输出交叉验证表值Description字段的 20 个可能值以及有关结果的详细信息。 为了进一步调查任何结果,第三列提供了使用地统计向导创建结果的地统计图层的步骤。
注:
在创建插值结果的说明中,假设您已打开 Geostatistical Wizard,在左侧窗格中选择了插值方法,并在右侧窗格中提供了点和字段。 对于克里金法的类型(简单克里金法、普通克里金法和泛克里金法)将在向导的第二页指定;在第一页上,对所有三种类型都使用克里金法/协同克里金法。 如果说明从向导的特定页面开始,请单击下一步进入该页面而不更改任何参数。 在说明的最后,单击完成并单击确定 将插值结果添加到地图中。
字段值 描述 创建 简单克里金法 - 默认
具有默认参数的简单克里金模型。 默认情况下,简单克里金法可使用变换。
无需更改。
简单克里金法 - 优化
具有优化参数的简单克里金模型。
在半变异函数页面(第 4 页)上,单击优化模型按钮 。
简单克里金法 - 趋势
一个简单的克里金模型,包含趋势移除,不包含变换。
在第二页上,将转换类型更改为无,并将趋势的移除阶数更改为一阶。
简单克里金法 - 趋势和变换
一个简单的克里金模型,包含趋势移除和变换。
在第二页上,将趋势的移除阶数更改为一阶。
普通克里金法 - 默认
具有默认参数的普通克里金模型。
无需更改。
普通克里金法 - 优化
具有优化参数的普通克里金模型。
在半变异函数页面(第 4 页)上,单击优化模型按钮 。
泛克里金法 - 默认
具有一阶趋势移除和默认参数的泛克里金模型。
在第二页上,将趋势的移除阶数更改为一阶。
泛克里金法 - 优化
具有一阶趋势移除和优化参数的泛克里金模型。
在第二页上,将趋势的移除阶数更改为一阶。 在半变异函数页面(第 4 页)上,单击优化模型按钮 。
经验贝叶斯克里金法 - 默认
具有默认参数的经验贝叶斯克里金模型。
无需更改。
经验贝叶斯克里金法 - 高级
一种先进的经验贝叶斯克里金模型,使用更大的子集、去趋势和更多的重叠和模拟。
在第二页将参数更改为以下值:
- 子集大小 - 200
- 重叠系数 - 300
- 模拟的次数 - 2
- 变换 - 克里金
- 半变异函数类型 - 去除趋势的 K-Bessel
局部多项式核插值法
具有默认参数的核(局部多项式)插值模型。
无需更改。 核插值和局部多项式插值都在第一页上可用。 这些方法使用核插值,不过因为这些方法十分相似,从局部多项式插值也能得到类似的结果。
反距离权重法 - 默认
幂值等于 2(默认)的反距离加权模型。
无需更改。
反距离权重法 - 优化
具有优化幂值的反距离加权模型。
在第二页上,单击幂参数旁边显示的优化按钮 。
径向基函数 - 完全规则样条
使用规则样条核函数的径向基函数模型。
无需更改。 完全正则化样条是径向基函数的默认核函数。
径向基函数 - 张力样条
使用具有张力核函数的样条的径向基函数模型。
在第二页上,将核函数参数更改为张力样条。
径向基函数插值法 - 高次曲面函数
使用高次曲面函数的径向基函数模型。
在第二页上,将核函数参数更改为高次曲面函数。
径向基函数插值法 - 反高次曲面函数
使用反高次曲面函数的径向基函数模型。
在第二页上,将核函数参数更改为反高次曲面函数。
径向基函数 - 薄板样条函数
使用具有薄板样条核函数的径向基函数模型。
在第二页上,将核函数参数更改为薄板样条。
全局多项式插值法 - 二阶
具有二阶(二次)趋势的全局多项式插值模型。
在第二页上,将多项式阶数参数更改为 2。
全局多项式插值法 - 第三阶
具有三阶(三次)趋势的全局多项式插值模型。
在第二页上,将多项式阶数参数更改为 3。
参数
arcpy.ga.ExploratoryInterpolation(in_features, value_field, out_cv_table, {out_geostat_layer}, {interp_methods}, {comparison_method}, {criterion}, {criteria_hierarchy}, {weighted_criteria}, {exclusion_criteria})
名称 | 说明 | 数据类型 |
in_features | 表示要插值点的位置的输入点。 | Feature Layer |
value_field | 包含要插值的值的字段。 | Field |
out_cv_table | 包含交叉验证统计信息和每个插值结果排名的输出表。 插值结果的最终等级存储在 RANK 字段中。 | Table |
out_geostat_layer (可选) | 具有最高排名的插值结果的输出地统计图层。 此插值结果将具有输出交叉验证表 RANK 字段中的值 1。 如果具有最高排名的插值结果存在并列或所有结果都被排除标准所排除,即使提供了值也不会创建图层。 如果发生这种情况,该工具将返回警告消息。 | Geostatistical Layer |
interp_methods [interp_methods,...] (可选) | 指定将在输入要素和值字段上执行的插值方法。 对于指定的每种方法,将生成 1 到 5 个插值结果。 默认情况下,将生成除反距离加权、径向基函数和全局多项式之外的所有方法(因为这些方法不能产生预测的标准误差)。 默认情况下,将生成 11 个插值结果。 如果指定所有选项,将生成 20 个插值结果。
| String |
comparison_method (可选) | 指定将用于比较和排列插值结果的方法。
| String |
criterion (可选) | 指定将用于对插值结果进行排名的标准。
| String |
criteria_hierarchy [[criteria1, tol_type1, tol_val1], [criteria2, tol_type2, tol_val2],...] (可选) | 将用于具有公差的分级排序的标准等级结构。 按优先顺序提供多个标准,第一个标准是最重要的。 插值结果按第一个标准排序,任何并列情况将使用第二个标准继续区分。 如果第二个标准出现并列,就使用第三个标准继续区分,依此类推。 交叉验证统计数据是连续值,通常没有完全并列的情况,因此可以指定容差以在每个标准中创建并列情况。 对于每一行,在第一列中指定标准,在第二列中指定公差类型(百分比或绝对值),在第三列中指定公差值。 如果没有提供公差值,则不使用公差;这对最后一行最有用,这样插值结果就不会出现排名最高的结果。 对于每一行(每个级别),以下条件可用:
例如,您可以在第一行中指定公差为 5% 的 ACCURACY 值,在第二行中指定不带公差的 BIAS 值。 这些选项将首先按最低均方根误差(最高预测精度)对插值结果进行排序,所有均方根误差值在最准确结果的 5% 以内的插值结果将被视为预测精度并列。 在并列结果中,平均误差最接近零(最低偏差)的结果将获得最高排名。 | Value Table |
weighted_criteria [[criteria1, weight1], [criteria2, weight2],...] (可选) | 具有权重的多个标准将用于对插值结果进行排名。 对于每一行,提供一个标准和一个权重。 插值结果将按每个标准独立进行排名,排名的加权平均值将用于确定插值结果的最终排名。
| Value Table |
exclusion_criteria [[criteria1, value1], [criteria2, value2],...] (可选) | 将用于从比较中排除插值结果的标准和关联值。 排除的结果将不会获得排名,并将在输出交叉验证表的 Included 字段中具有 No 值。
| Value Table |
代码示例
以下 Python 脚本演示了如何使用 ExploratoryInterpolation 函数。
# Interpolate points using Simple Kriging, Universal Kriging, and EBK
# Rank results by highest prediction accuracy
# Exclude results with error reductions under 25%
inPoints = "myPoints"
inField = "myField"
outTable = "outCVtable"
outGALayer = "Result With Highest Rank"
interpMethods = ["SIMPLE_KRIGING", "UNIVERSAL_KRIGING", "EBK"]
compMethod = "SINGLE"
criterion = "ACCURACY"
exclCrit = [["MIN_PERC_ERROR", 25]]
arcpy.ga.ExploratoryInterpolation(inPoints, inField, outTable, outGALayer,
interpMethods, compMethod, criterion, None, None, exclCrit)
以下 Python 脚本演示了如何使用 ExploratoryInterpolation 函数。
# Interpolate points and a field using various interpolation methods
# Rank results by highest weighted average rank
# Rank same results by hierarchical sorting
# Import system modules
import arcpy
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Allow overwriting output
arcpy.env.overwriteOutput = True
### Set shared parameters
# Set input and output locations
directory = "C:/data/"
ingdb = directory + "data.gdb/"
outgdb = directory + "out.gdb/"
arcpy.env.workspace = directory
# Input points
inPoints = ingdb + "myPoints"
# Input field
inField = "myField"
# List of interpolation methods
interpMethods = ["SIMPLE_KRIGING", "UNIVERSAL_KRIGING", "EBK"]
# Exclude results with error reductions under 25%
exclCrit = [["MIN_PERC_ERROR", 25]]
# Output geostatistical layer with highest rank
outGALayer = "Result With Highest Rank"
### Set weighted average rank parameters
# Output table of ranks and cross validation results
outTable = directory + "outWeightedAverageTable"
# Use weighted average rank
compMethod = "AVERAGE_RANK"
# Use all criteria with highest weight to prediction accuracy
weightedCrit = [
["ACCURACY", 3],
["BIAS", 1],
["WORST_CASE", 1],
["STANDARD_ERROR", 1],
["PRECISION", 1]
]
# Compare using weighted average rank
arcpy.ga.ExploratoryInterpolation(inPoints, inField, outTable, outGALayer,
interpMethods, compMethod, None, None, weightedCrit, exclCrit)
### Set hierarchical sorting parameters
# Output table of ranks and cross validation results
outTable = directory + "outHierSortTable"
# Use hierarchical sorting with tolerances
compMethod = "SORTING"
# Compare using highest prediction accuracy with a 10% tolerance
# Break ties by lowest bias
hierCrit = [
["ACCURACY", "PERCENT", 10],
["BIAS", "PERCENT", None]
]
# Compare using hierarchical sorting with tolerances
arcpy.ga.ExploratoryInterpolation(inPoints, inField, outTable, outGALayer,
interpMethods, compMethod, None, hierCrit, None, exclCrit)
许可信息
- Basic: 需要 Geostatistical Analyst
- Standard: 需要 Geostatistical Analyst
- Advanced: 需要 Geostatistical Analyst