Evaluate 文档
主要类
并获得增强的文档体验
开始使用
主要类
EvaluationModuleInfo
基类 EvaluationModuleInfo
为其子类 MetricInfo
、ComparisonInfo
和 MeasurementInfo
实现了逻辑。
class evaluate.EvaluationModuleInfo
< 源 >( description: str citation: str features: typing.Union[datasets.features.features.Features, typing.List[datasets.features.features.Features]] inputs_description: str = <factory> homepage: str = <factory> license: str = <factory> codebase_urls: typing.List[str] = <factory> reference_urls: typing.List[str] = <factory> streamable: bool = False format: typing.Optional[str] = None module_type: str = 'metric' module_name: typing.Optional[str] = None config_name: typing.Optional[str] = None experiment_id: typing.Optional[str] = None )
用于存储 MetricInfo
、ComparisonInfo
和 MeasurementInfo
评估信息的基类。
EvaluationModuleInfo
记录了一次评估,包括其名称、版本和特性。完整列表请参阅构造函数参数和属性。
注意:并非所有字段在构建时都是已知的,可能会在以后更新。
from_directory
< 源 >( metric_info_dir )
从 metric_info_dir
中的 JSON 文件创建 EvaluationModuleInfo
。
将 EvaluationModuleInfo
作为 JSON 写入 metric_info_dir
。同时将许可证单独保存在 LICENSE 文件中。
class evaluate.MetricInfo
< 源 >( description: str citation: str features: typing.Union[datasets.features.features.Features, typing.List[datasets.features.features.Features]] inputs_description: str = <factory> homepage: str = <factory> license: str = <factory> codebase_urls: typing.List[str] = <factory> reference_urls: typing.List[str] = <factory> streamable: bool = False format: typing.Optional[str] = None module_type: str = 'metric' module_name: typing.Optional[str] = None config_name: typing.Optional[str] = None experiment_id: typing.Optional[str] = None )
关于指标的信息。
EvaluationModuleInfo
记录了一个指标,包括其名称、版本和特性。完整列表请参阅构造函数参数和属性。
注意:并非所有字段在构建时都是已知的,可能会在以后更新。
class evaluate.ComparisonInfo
< 源 >( description: str citation: str features: typing.Union[datasets.features.features.Features, typing.List[datasets.features.features.Features]] inputs_description: str = <factory> homepage: str = <factory> license: str = <factory> codebase_urls: typing.List[str] = <factory> reference_urls: typing.List[str] = <factory> streamable: bool = False format: typing.Optional[str] = None module_type: str = 'comparison' module_name: typing.Optional[str] = None config_name: typing.Optional[str] = None experiment_id: typing.Optional[str] = None )
关于比较的信息。
EvaluationModuleInfo
记录了一次比较,包括其名称、版本和特性。完整列表请参阅构造函数参数和属性。
注意:并非所有字段在构建时都是已知的,可能会在以后更新。
class evaluate.MeasurementInfo
< 源 >( description: str citation: str features: typing.Union[datasets.features.features.Features, typing.List[datasets.features.features.Features]] inputs_description: str = <factory> homepage: str = <factory> license: str = <factory> codebase_urls: typing.List[str] = <factory> reference_urls: typing.List[str] = <factory> streamable: bool = False format: typing.Optional[str] = None module_type: str = 'measurement' module_name: typing.Optional[str] = None config_name: typing.Optional[str] = None experiment_id: typing.Optional[str] = None )
关于度量的信息。
EvaluationModuleInfo
记录了一次度量,包括其名称、版本和特性。完整列表请参阅构造函数参数和属性。
注意:并非所有字段在构建时都是已知的,可能会在以后更新。
EvaluationModule
基类 EvaluationModule
为其子类 Metric
、Comparison
和 Measurement
实现了逻辑。
class evaluate.EvaluationModule
< 源 >( config_name: typing.Optional[str] = None keep_in_memory: bool = False cache_dir: typing.Optional[str] = None num_process: int = 1 process_id: int = 0 seed: typing.Optional[int] = None experiment_id: typing.Optional[str] = None hash: str = None max_concurrent_cache_files: int = 10000 timeout: typing.Union[int, float] = 100 **kwargs )
参数
- config_name (
str
) — 用于定义特定于模块计算脚本的哈希值,并防止在模块加载脚本被修改时模块数据被覆盖。 - keep_in_memory (
bool
) — 在内存中保留所有预测和参考。在分布式设置中不可行。 - cache_dir (
str
) — 用于存储临时预测/参考数据的目录路径。在分布式设置中,数据目录应位于共享文件系统上。 - num_process (
int
) — 指定分布式设置中的总节点数。这对于在分布式设置中计算模块(特别是非累加模块,如 F1)很有用。 - process_id (
int
) — 在分布式设置中指定当前进程的 ID(介于 0 和 num_process-1 之间)。这对于在分布式设置中计算模块(特别是非累加指标,如 F1)很有用。 - seed (
int
, 可选) — 如果指定,这将在运行 compute() 时临时设置 numpy 的随机种子。 - experiment_id (
str
) — 一个特定的实验 ID。如果多个分布式评估共享同一个文件系统,则使用此 ID。这对于在分布式设置中计算模块(特别是非累加指标,如 F1)很有用。 - hash (
str
) — 用于根据哈希文件内容识别评估模块。 - max_concurrent_cache_files (
int
) — 并发模块缓存文件的最大数量(默认为10000
)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
EvaluationModule
是指标、比较和度量的基类和通用 API。
add
< 源 >( prediction = None reference = None **kwargs )
为评估模块的堆栈添加一个预测和参考。
add_batch
< 源 >( predictions = None references = None **kwargs )
为评估模块的堆栈添加一批预测和参考。
compute
< 源 >( predictions = None references = None **kwargs ) → dict
或 None
参数
- predictions (
list/array/tensor
, 可选) — 预测。 - references (
list/array/tensor
, 可选) — 参考。 - **kwargs (可选) — 将被转发到评估模块的 compute() 方法的关键字参数(详情见 docstring)。
返回
dict
或 None
- 如果在主进程(
process_id == 0
)上运行此评估模块,则返回包含结果的字典。 - 如果评估模块不在主进程上运行(
process_id != 0
),则返回None
。
计算评估模块。
不允许使用位置参数以防止错误。
download_and_prepare
< 源 >( download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None dl_manager: typing.Optional[datasets.download.download_manager.DownloadManager] = None )
下载并准备评估模块以供读取。
class evaluate.Metric
< 源 >( config_name: typing.Optional[str] = None keep_in_memory: bool = False cache_dir: typing.Optional[str] = None num_process: int = 1 process_id: int = 0 seed: typing.Optional[int] = None experiment_id: typing.Optional[str] = None hash: str = None max_concurrent_cache_files: int = 10000 timeout: typing.Union[int, float] = 100 **kwargs )
参数
- config_name (
str
) — 用于定义特定于指标计算脚本的哈希值,并防止在指标加载脚本被修改时指标数据被覆盖。 - keep_in_memory (
bool
) — 在内存中保留所有预测和参考。在分布式设置中不可行。 - cache_dir (
str
) — 用于存储临时预测/参考数据的目录路径。在分布式设置中,数据目录应位于共享文件系统上。 - num_process (
int
) — 指定分布式设置中的总节点数。这对于在分布式设置中计算指标(特别是非累加指标,如 F1)很有用。 - process_id (
int
) — 在分布式设置中指定当前进程的 ID(介于 0 和 num_process-1 之间)。这对于在分布式设置中计算指标(特别是非累加指标,如 F1)很有用。 - seed (
int
, 可选) — 如果指定,这将在运行 compute() 时临时设置 numpy 的随机种子。 - experiment_id (
str
) — 一个特定的实验 ID。如果多个分布式评估共享同一个文件系统,则使用此 ID。这对于在分布式设置中计算指标(特别是非累加指标,如 F1)很有用。 - max_concurrent_cache_files (
int
) — 并发指标缓存文件的最大数量(默认为10000
)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
Metric 是所有指标的基类和通用 API。
class evaluate.Comparison
< 源 >( config_name: typing.Optional[str] = None keep_in_memory: bool = False cache_dir: typing.Optional[str] = None num_process: int = 1 process_id: int = 0 seed: typing.Optional[int] = None experiment_id: typing.Optional[str] = None hash: str = None max_concurrent_cache_files: int = 10000 timeout: typing.Union[int, float] = 100 **kwargs )
参数
- config_name (
str
) — 用于定义特定于比较计算脚本的哈希值,并防止在比较加载脚本被修改时比较数据被覆盖。 - keep_in_memory (
bool
) — 在内存中保留所有预测和参考。在分布式设置中不可行。 - cache_dir (
str
) — 用于存储临时预测/参考数据的目录路径。在分布式设置中,数据目录应位于共享文件系统上。 - num_process (
int
) — 指定分布式设置中的节点总数。这对于在分布式设置中(特别是非加性比较)计算比较非常有用。 - process_id (
int
) — 在分布式设置中指定当前进程的ID(介于0和num_process-1之间)。这对于在分布式设置中(特别是非加性比较)计算比较非常有用。 - seed (
int
, optional) — 如果指定,这将在运行 compute() 时临时设置numpy的随机种子。 - experiment_id (
str
) — 特定的实验ID。当多个分布式评估共享同一个文件系统时使用。这对于在分布式设置中(特别是非加性比较)计算比较非常有用。 - max_concurrent_cache_files (
int
) — 并发比较缓存文件的最大数量(默认为10000
)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
Comparison是所有比较的基类和通用API。
class evaluate.Measurement
< 源 >( config_name: typing.Optional[str] = None keep_in_memory: bool = False cache_dir: typing.Optional[str] = None num_process: int = 1 process_id: int = 0 seed: typing.Optional[int] = None experiment_id: typing.Optional[str] = None hash: str = None max_concurrent_cache_files: int = 10000 timeout: typing.Union[int, float] = 100 **kwargs )
参数
- config_name (
str
) — 这用于定义特定于度量计算脚本的哈希值,并防止在修改度量加载脚本时覆盖度量数据。 - keep_in_memory (
bool
) — 将所有预测和参考保留在内存中。在分布式设置中不可行。 - cache_dir (
str
) — 存储临时预测/参考数据的目录路径。在分布式设置中,数据目录应位于共享文件系统上。 - num_process (
int
) — 指定分布式设置中的节点总数。这对于在分布式设置中(特别是非加性度量)计算度量非常有用。 - process_id (
int
) — 在分布式设置中指定当前进程的ID(介于0和num_process-1之间)。这对于在分布式设置中(特别是非加性度量)计算度量非常有用。 - seed (
int
, optional) — 如果指定,这将在运行 compute() 时临时设置numpy的随机种子。 - experiment_id (
str
) — 特定的实验ID。当多个分布式评估共享同一个文件系统时使用。这对于在分布式设置中(特别是非加性度量)计算度量非常有用。 - max_concurrent_cache_files (
int
) — 并发度量缓存文件的最大数量(默认为10000
)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
Measurement是所有度量的基类和通用API。
CombinedEvaluations
combine
函数允许将多个 EvaluationModule
合并为一个单一的 CombinedEvaluations
。
evaluate.combine
< 源 >( evaluations force_prefix = False )
将多个指标、比较或度量组合成一个单一的 CombinedEvaluations
对象,可以像单个评估模块一样使用。
如果两个分数具有相同的名称,则它们将以其模块名称为前缀。如果两个模块具有相同的名称,请使用字典为它们指定不同的名称,否则将向其前缀附加一个整数ID。
add
< 源 >( prediction = None reference = None **kwargs )
为每个评估模块的堆栈添加一个预测和参考。
add_batch
< 源 >( predictions = None references = None **kwargs )
为每个评估模块的堆栈添加一批预测和参考。
compute
< 源 >( predictions = None references = None **kwargs ) → dict
或 None
参数
- predictions (
list/array/tensor
, optional) — 预测值。 - references (
list/array/tensor
, optional) — 参考值。 - **kwargs (optional) — 将转发给评估模块 compute() 方法的关键字参数(详情请见文档字符串)。
返回
dict
或 None
- 如果在主进程(
process_id == 0
)上运行此评估模块,则返回包含结果的字典。 - 如果评估模块不在主进程上运行(
process_id != 0
),则返回None
。
计算每个评估模块。
不允许使用位置参数以防止错误。