EarlyStopper
- class EarlyStopper(model: ~pykeen.models.base.Model, evaluator: ~pykeen.evaluation.evaluator.Evaluator, training_triples_factory: ~pykeen.triples.triples_factory.CoreTriplesFactory, evaluation_triples_factory: ~pykeen.triples.triples_factory.CoreTriplesFactory, evaluation_batch_size: int | None = None, evaluation_slice_size: int | None = None, frequency: int = 10, patience: int = 2, metric: str = 'hits_at_k', relative_delta: float = 0.01, results: list[float] = <factory>, larger_is_better: bool = True, result_tracker: ~pykeen.trackers.base.ResultTracker | None = None, result_callbacks: list[~typing.Callable[[~pykeen.stoppers.stopper.Stopper, int | float, int], None]] = <factory>, continue_callbacks: list[~typing.Callable[[~pykeen.stoppers.stopper.Stopper, int | float, int], None]] = <factory>, stopped_callbacks: list[~typing.Callable[[~pykeen.stoppers.stopper.Stopper, int | float, int], None]] = <factory>, stopped: bool = False, best_model_path: ~pathlib.Path | None = None, clean_up_checkpoint: bool = True, use_tqdm: bool = False, tqdm_kwargs: dict[str, ~typing.Any] = <factory>)[source]
基础类:
Stopper用于早期停止的装置。
初始化停止器。
- Parameters:
args – 忽略的位置参数
kwargs – 忽略的基于关键字的参数
模型 (Model)
评估器 (Evaluator)
training_triples_factory (CoreTriplesFactory)
evaluation_triples_factory (CoreTriplesFactory)
evaluation_batch_size (int | None)
evaluation_slice_size (int | None)
频率 (int)
耐心 (int)
metric (str)
relative_delta (float)
larger_is_better (bool)
result_tracker (ResultTracker | None)
result_callbacks (list[Callable[[Stopper, int | float, int], None]])
continue_callbacks (list[Callable[[Stopper, int | float, int], None]])
stopped_callbacks (list[Callable[[Stopper, int | float, int], None]])
已停止 (bool)
best_model_path (Path | None)
clean_up_checkpoint (bool)
use_tqdm (bool)
属性摘要
返回最佳结果出现的时期。
返回目前为止的最佳结果。
最佳模型权重的路径
是否在终止后删除具有最佳模型权重的文件 注意:权重将在之前重新加载到模型中
评估批次的大小
评估批次的切片大小
模型在验证集上评估的周期数
较大的值是否更好,还是较小的值更好
使用的指标名称
计算存储在早期停止器中的结果数量。
在没有改进的情况下,训练将停止的迭代次数(一次迭代可能对应多个时期)。
考虑为改进结果所需的最小相对改进
返回剩余的耐心。
结果跟踪器
挡板是否曾经决定停止?
是否使用tqdm进度条进行评估
方法总结
获取一个摘要字典。
should_evaluate(epoch)根据当前周期和内部频率决定是否应进行评估。
should_stop(epoch)根据指标进行评估,并与过去的评估结果进行比较,以决定是否应停止训练。
属性文档
- best_epoch
返回最佳结果出现的时期。
- best_metric
返回目前为止的最佳结果。
- number_results
计算存储在早期停止器中的结果数量。
- remaining_patience
返回剩余的耐心。
- result_tracker: ResultTracker | None = None
结果跟踪器
方法文档