主要类
evaluate.EvaluationModuleInfo
类 evaluate.EvaluationModuleInfo 实现了子类 MetricInfo
、ComparisonInfo
和 MeasurementInfo
的逻辑。
class evaluate.EvaluationModuleInfo
此基类用于存储用于MetricInfo
、ComparisonInfo
和MeasurementInfo
的评估信息。
EvaluationModuleInfo
记录评估信息,包括其名称、版本和功能。有关构造函数的参数和属性的完整列表,请参阅相应文档。
注意:并非所有字段在构建时都已知,可能以后进行更新。
从 metric_info_dir
中的 JSON 文件创建 EvaluationModuleInfo。
将 EvaluationModuleInfo
以 JSON 格式写入 metric_info_dir
。此外,许可证单独保存在 LICENCE 中。
类 evaluate.MetricInfo
< source >关于指标的信息。
EvaluationModuleInfo
记录指标,包括其名称、版本和功能。有关完整列表,请参阅构造函数参数和属性。
注意:并非所有字段在构建时都已知,可能以后进行更新。
类 evaluate.ComparisonInfo
< source >( 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
记录了一个比较,包括其名称、版本和功能。请参见构造函数参数和属性,以获得完整列表。
注意:并非所有字段在构建时都已知,可能以后进行更新。
类 evaluate.MeasurementInfo
< source >( 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
的逻辑。
类 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
, optional) — 如果指定,当运行 evaluate.EvaluationModule.compute() 时,将暂时设置numpy的随机种子。 - experiment_id (
str
) — 指定特定的实验ID。如果多个分布式评价共享相同的文件系统,则会使用此功能。这在计算分布式设置中的模块时非常有用(尤其是非加性度量,如F1)。 - hash (
str
) — 根据文件内容的哈希值来识别评估模块。 -
max_concurrent_cache_files ( int
) — 最大并发模块缓存文件数(默认 10000)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
EvaluationModule 是指标、比较和测量的基础类和通用 API。
为评估模块的堆添加一个预测和一个参考。
add_batch
< source >( predictions = None references = None **kwargs )
为评估模块的堆栈添加一批预测和参考。
download_and_prepare
< source >( download_config: typing.Optional[evaluate.utils.file_utils.DownloadConfig] = None dl_manager: typing.Optional[datasets.download.download_manager.DownloadManager] = None )
下载并准备数据集以供读取。
类 evaluate.Metric
< source >(
参数
- 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
, 可选) — 如果指定,在运行 evaluate.Metric.compute() 时,将暂时设置 numpy 的随机种子。 - experiment_id (
str
) — 特定的实验 ID。在多个分布式评估共享同一文件系统时使用。这对于计算分布式设置中的指标(特别是像 F1 这样非加性指标)很有用。 - max_concurrent_cache_files (
int
) — 最大并发指标缓存文件数(默认 10000)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
指标是所有指标的基础类和通用API。
类 evaluate.Comparison
< source >(
参数
- config_name (
str
) — 用于定义比较计算脚本特定的哈希值,防止在比较加载脚本修改时覆盖比较的数据。 - keep_in_memory (
bool
) — 将所有预测和引用都保存在内存中。在分布式设置中不可用。 - cache_dir (
str
) — 存储临时预测/参考数据的目录路径。在分布式设置中,数据目录应位于共享文件系统中。 - num_process (
int
) — 指定分布式设置中节点的总数。这在计算分布式设置中的比较(尤其是非可加比较)时很有用。 - process_id (
int
) — 指定分布式设置中当前进程的ID(介于0和num_process-1之间)。这在计算分布式设置中的比较(特别是非可加比较)时很有用。 - seed (
int
, 可选) — 如果指定,这将暂时设置numpy的随机种子,当运行evaluate.Comparison.compute()时。 - experiment_id (
str
) — 指定实验ID。当多个分布式评估共享相同的文件系统时使用。这对于在分布式环境中进行对比计算(特别是非加法对比)非常有用。 - max_concurrent_cache_files (
int
) — 最大并行对比缓存文件数(默认 10000)。 - timeout (
Union[int, float]
) — 分布式设置同步的超时时间(秒)。
Comparison 是所有对比的基类和通用 API。
class evaluate.Measurement
< source >(
参数
- config_name (
str
) — 该参数用于定义一个针对测量计算脚本的特定哈希值,并在修改测量加载脚本时防止重写测量的数据。 - keep_in_memory (
bool
) — 在内存中保留所有预测和引用。在分布式设置中不可行。 - cache_dir (
str
) — 存储临时预测/引用数据的目录路径。在分布式设置中,数据目录应位于共享文件系统上。 - num_process (
int
) — 指定分布式设置中的节点总数。这在计算分布式设置(特别是非加性测量)中的测量非常有用。 - process_id (
int
) — 在分布式配置中指定当前进程的ID(介于0到num_process-1之间)。这在计算分布式配置中的度量非常有用(特别是非可加度量)。 - seed (
int
, 可选) — 如果指定,当运行 evaluate.Measurement.compute() 时,将临时设置numpy的随机种子。 - experiment_id (
str
) — 特定的实验ID。如果在多个分布式评估中共享相同的文件系统,则使用此ID。这在计算分布式配置中的度量非常有用(特别是非可加度量)。 - max_concurrent_cache_files (
int
) — 最大并发度量缓存文件数(默认10000)。
测量是所有测量的基本类和通用API。
组合评估
combine
函数允许将多个EvaluationModule
组合成一个CombinedEvaluations
。
evaluate.combine
< 源代码 >( 评估器 强制前缀 =False )
将多个指标、比较或测量合并成一个可以像单个评估模块一样使用的 CombinedEvaluations 对象。
如果两个得分具有相同的名称,则它们前面加上模块名称。如果有两个模块具有相同的名称,请使用字典给它们不同的名称,否则将整数 id 添加到前缀中。
示例
clf_metrics = combine(["accuracy", "f1", "precision", "recall"]) clf_metrics.compute(predictions=[0,1], references=[1,1]) {'accuracy': 0.5, 'f1': 0.66, 'precision': 1.0, 'recall': 0.5}
add
< source >( 预测 = None 参考 = None **kwargs )
为每个评估模块的堆栈添加一个预测值和参考值。
add_batch
< source >( predictions = None references = None **kwargs )
为每个评估模块栈添加一批预测值和参考值。