ray.tune.ResultGrid#

class ray.tune.ResultGrid(experiment_analysis: ExperimentAnalysis)[源代码]#

基类:object

一组用于与 Ray Tune 结果交互的 Result 对象。

您可以使用它来检查试验并获取最佳结果。

构造函数是一个私有API。此对象只能作为 Tuner.fit() 的结果创建。

示例: .. testcode:

import random
from ray import train, tune
def random_error_trainable(config):
    if random.random() < 0.5:
        return {"loss": 0.0}
    else:
        raise ValueError("This is an error")
tuner = tune.Tuner(
    random_error_trainable,
    run_config=train.RunConfig(name="example-experiment"),
    tune_config=tune.TuneConfig(num_samples=10),
)
try:
    result_grid = tuner.fit()
except ValueError:
    pass
for i in range(len(result_grid)):
    result = result_grid[i]
    if not result.error:
            print(f"Trial finishes successfully with metrics"
               f"{result.metrics}.")
    else:
            print(f"Trial failed with error {result.error}.")

你也可以使用 result_grid 进行更高级的分析。

>>> # Get the best result based on a particular metric.
>>> best_result = result_grid.get_best_result( 
...     metric="loss", mode="min")
>>> # Get the best checkpoint corresponding to the best result.
>>> best_checkpoint = best_result.checkpoint 
>>> # Get a dataframe for the last reported results of all of the trials
>>> df = result_grid.get_dataframe() 
>>> # Get a dataframe for the minimum loss seen for each trial
>>> df = result_grid.get_dataframe(metric="loss", mode="min") 

请注意,所有状态的试验都包含在最终结果网格中。如果一个试验不在终止状态,Tune 将提供其最新的结果和检查点。

更多使用示例请参见 分析 Tune 实验结果

PublicAPI (测试版): 此API目前处于测试阶段,在成为稳定版本之前可能会发生变化。

方法

get_best_result

从所有运行试验中获得最佳结果。

get_dataframe

返回包含所有试验及其配置和报告结果的数据框。

属性

errors

返回出错的试验的异常。

experiment_path

指向持久存储上实验目录的路径。

filesystem

返回可用于访问实验路径的文件系统。

num_errors

返回出错的试验次数。

num_terminated

返回已终止(但未出错)的试验次数。