借助预测功能,分析师能够快速向新的或现有的探索查询添加数据预测,以帮助用户预测和监控特定数据点。预测的探索结果和可视化图表可以添加到信息中心并另存为 Looks。您还可以在嵌入式 Looker 内容中创建和查看预测结果和可视化图表。
如果您拥有创建预测的权限,就可以预测数据。
如何创建和显示预测结果
预测功能使用“探索”的数据表中的数据结果来计算未来的数据点。预测结果仅涵盖探索查询中显示的结果;因行数上限而未显示的任何结果均不包含在内。如需详细了解用于计算预测结果的算法,请参阅本页面中的 ARIMA 算法部分。
预测结果显示为现有“探索”可视化图表的延续内容,受配置的可视化图表设置影响。预测数据点与非预测数据点的区别如下:
- 在支持的笛卡尔图表中,预测数据点与浅色的或虚线的图表中显示的有别于非预测数据点。
- 在支持的文本和表格图表类型中,预测数据点会以斜体显示,并带有星号。
当您将光标悬停在预测数据点上时,系统会显示提示,以明确标识预测数据:
只有特定类型的可视化支持预测数据,如下一部分所述。
ARIMA 算法
预测利用自动回归综合移动平均 (ARIMA) 算法创建一个与输入数据最匹配的等式。为了找到数据的最佳匹配结果,Looker 会使用一组初始变量来运行 ARIMA,创建初始变量变体列表,然后使用这些变体再次运行 ARIMA。如果有任何变体创建了更适合输入数据的等式,Looker 会使用这些变体作为新的初始变量,然后创建更多求值后的评估结果。Looker 会重复此过程,直到确定最佳变量,或直到所有选项或分配的计算时间都用尽为止。
此过程可以理解为一种遗传算法,其中,数百个世代的人都分别继承了 1 至 10 个后代(因父项而变化的不同变体),并且最好的后代会继续存活,有望得到“更好”的后代。Looker 在基因算法方法中使用许多 ARIMA 调用的方式称为 AutoARIMA。
如需详细了解 AutoARIMA,请参阅 pmdarima 用户指南中的 auto_arima
使用提示部分。虽然这不是 Looker 用于运行 AutoARIMA 的库,但 pmdarima 能够最准确地解释该过程以及所用的不同变量。
支持的可视化类型
其他可视化类型(包括自定义可视化)目前无法呈现预测数据。
探索查询所需的预测要求
若要创建预测,“探索”必须满足以下要求:
- 仅包含一个维度,该维度必须是时间范围维度,且已启用维度填充
- 请添加至少 1 个衡量指标或自定义衡量指标(预测结果最多可以包含 5 个衡量指标或自定义衡量指标)
- 按时间范围维度对结果进行排序(按降序排序)
注意事项
在创建新的“探索”查询以进行预测或向现有“探索”查询添加预测时,需要考虑以下额外条件:
- 数据透视 - 对透视探索可进行预测,前提是符合前面的要求。
- 行总计和小计 - 行总计和小计不包括预测值;我们不建议在预测中使用小计或行总计,因为这可能会导致意外数据。
- 包含不完整时间范围的过滤器 - 为了实现准确的预测,仅当“探索”包含不完整时间范围的数据时,才应在探索过滤器中结合使用完整时间范围逻辑。例如,如果用户预测的是未来一个月的数据,而“探索”过滤条件却过滤出过去三个月的数据,那么“探索”会包含当前未完成月份的数据。预测结果会将不完整的数据纳入计算中,并显示更不可靠的结果。当探索包含不完整的时间范围(例如,探索包含当月的每月数据)时,请改为使用过去 3 个完整月份(而非过去 3 个月)的过滤逻辑,以确保预测结果更加准确。
- 表格计算 - 基于一项或多项预测措施的表格计算会自动包含在预测中。
- 行数上限 - 了解行数上限如何应用于整个数据表,包括预测的行。
如需查看更多提示和问题排查资源,请参阅本页的常见问题和须知事项部分。
通常,结合使用数据集越多的行与较短的预测长度,即可得出更准确的预测。
“预测”菜单选项
您可以使用预测菜单中的选项(位于“探索”可视化标签页中)自定义预测数据。预测菜单包含以下选项:
选择字段
选择字段下拉菜单会显示“探索”查询中可用于预测的措施或自定义措施。您最多可以选择五个测量值或自定义测量值。
长度
长度选项用于指示要预测数据值的行数或时长。系统会根据“探索”查询中的时间范围维度自动填充预测时长间隔。
通常,结合使用数据集越多的行与越短的预测长度,就可以获得更准确的预测。
预测区间
利用预测区间选项,分析师可以准确预测一些不确定因素,从而帮助提高准确性。启用后,您可以通过预测区间选项选择预测数据值的边界。例如,如果预测区间为 95%,则表示有 95% 的几率落在预测的上限和下限之间。
所选预测间隔越大,上限和下限就越大。
季节性
季节性选项可让分析师考虑预测周期中的已知周期或重复数据趋势,并引用周期中数据的数量。例如,如果“探索”数据表每小时有一行数据,并且数据周期为每天 24 小时,则季节性变化为 24。
在默认的预测设置下,Looker 会参考“探索”中的日期维度,并扫描几个可能的季节性周期,以便找到最终预测的最佳匹配项。例如,在使用每小时数据时,Looker 可能会尝试按天、按周或按 4 周的季节性变化周期。Looker 还会考虑该维度的出现频率,即,如果某个维度代表一个六小时的时间段,Looker 就会知道每天只有四行,因此会相应地调整季节性变化。
对于常见的用例,自动选项可检测指定数据集的最佳季节性变化。如果您知道数据集中的特定周期,则可以借助自定义选项指定预测中单个衡量的周期的行数。
为多个衡量指标预测数据值时,您可以为每个衡量指标选择不同的季节性选项,包括无。季节性下拉菜单有多个选项:
默认情况下,即使未启用季节性选项,预测功能也会将自动季节性变化选项应用于预测。
自动
使用自动季节性选项,Looker 会从多个常见季节性时段(例如每日、每小时、每月等)为您的数据选择最佳选项。
自定义
如果您了解数据集中每个季节或周期构成的特定行数,则可以在时间段字段中指定具体数字。如果您知道数据会在特定行数内循环,请选择自定义会很有帮助。
如果您处理的数据以月为单位,但以更细致的方式表示(例如,在“探索”中使用日期或周粒度),则系统通常建议 4 周或 30 天的周期。
无
季节性变化是预测的有力组成部分;不过,根据输入数据,并非总是推荐采用。如果数据中没有可预测的周期,则启用算法有时可能会导致预测结果不准确,此时算法会尝试查找规律,然后尝试根据预测结果做出虚假模式。这可能会导致预测结果模糊不清。
当您为多个衡量指标预测数据值,并且只想为一个或多个指标启用季节性变化时,对于您不想启用季节性变化的所有衡量指标,您可以选择无。
创建预测
只有拥有相应权限的用户才能创建预测。
若要创建预测,请执行以下操作:
确保您的“探索”功能满足预测要求。例如,包含用户创建月份、用户数和订单数的“探索”查询按用户创建月份进行降序排序:
在“探索”标签页中选择预测,以打开预测菜单。
选择选择字段下拉菜单,从中选择要预测的衡量指标或自定义衡量指标(最多五个)。
在预测旁边的菜单标签页中,选择 x 即可保存您的设置并退出菜单。
选择运行,重新运行“探索”查询。(在对预测进行任何更改后,您必须重新运行“探索”。)
您的“探索”结果和可视化图表现在会显示指定时长的预测值。示例探索现在可显示 2020 年 1 月 2020 年 6 月 6 日期间的用户数和订单数的预测数据:
由于预测的计算取决于数据的排序方式,因此一旦运行预测查询,就会停用排序功能。
修改预测
只有拥有相应权限的用户才能修改预测。
若要修改预测数据,请执行以下操作:
(可选)根据需要修改“探索”查询,以添加或移除不同的测量值或时间范围字段。确保您的“探索”功能满足预测要求。
在“探索”标签页中选择预测,以打开预测菜单。
选择选择字段下拉菜单以更改预测字段。如需移除预测字段,请执行以下操作:
- 在展开的选择字段下拉菜单中,选中预测字段旁边的复选框,从预测中移除字段。
- 或者,在收起的选择字段菜单中,选择字段名称旁边的 x。
根据需要,在时长字段中修改未来的指定时长以进行预测。
选择预测间隔或季节性变化开关,即可启用各个函数并自定义相关选项。
- 如果已启用预测区间或季节性,则系统会显示自定义设置。根据需要修改自定义设置,或选择开关,从预测中移除相应函数。
在预测旁边的菜单标签页中,选择 x 即可保存您的设置并退出菜单。
选择运行,重新运行“探索”查询。(若需对预测结果进行任何更改,您必须重新运行“探索”。)
您的“探索”结果和可视化图表现在会显示修正后的预测结果。由于预测的计算取决于数据的排序方式,因此一旦运行预测查询,就会停用排序功能。
移除预测数据
只有拥有权限的用户才能移除预测数据。
要从“探索”中移除预测数据,请执行以下操作:
- 在“探索”标签页中选择预测,以打开预测菜单。
- 选择清除。
系统会自动重新运行查询,以生成未应用预测结果的结果。
常见问题和须知事项
准确度如何?
预测的准确性取决于输入数据。Looker 的 AutoARIMA 实现可以做出极为准确的预测,从而成功合并输入数据中的许多细微差别。在某些情况下,算法也会在输入数据中发现奇怪的规律,并在预测中强调这些算法。请务必提供充足的数据,并提供尽可能准确的数据,以充分利用预测结果。
无法生成预测结果
无法生成预测的合理理由。这通常与输入数据量太少或请求的预测长度过大有关。上述任一因素都没有具体限制,而且在某一特定预测时长内,所需输入数据没有确切的比率。输入数据越分散且不可预测,AutoARIMA 算法找到匹配项的难度就越高。生成预测的最有效方法是增加干净输入数据量、确保季节性设置正确无误,以及将预测长度缩短为仅包含所需数据。使用预测间隔选项时,选择较短的间隔可能会有所帮助。
清理输入数据可能涉及:
- 去除不含数据的时间段的前导行或尾随行
- 通过选择更大的日期维度来减少数据集中的噪声
- 更改对预测结果没有益处的过滤条件离群值
返回的查询结果没有预测结果,但我收到了一个不明错误
这种情况应该不会发生;如果出现这种情况,请尝试从预测配置中移除一个或多个指标,然后重新添加。
显示预测结果,但显示的信息明显有误或无用
在这种情况下,最好的方法是添加更多输入数据,尽可能清理这些数据,并可能设置自定义的季节性变化(如果您知道数据的特定周期)或完全停用季节性选项(选择无)。
清理输入数据可能会涉及以下任务:
- 去除不含数据的时间段的前导行或尾随行
- 通过选择更大的日期维度来减少数据集中的噪声
- 更改对预测结果没有益处的过滤条件离群值