项目文件夹

文件
Kay Liu a107993f10 [Model] add model example CARE-GNN (#3187)
* [Model] add model example CARE-GNN

* update README

* improvements based on the review feedback

* fix missing item()

Co-authored-by: zhjwy9343 <6593865@qq.com>
2021-07-29 15:24:15 +08:00

33 行
923 B
Python

"""
From GAT utils
"""
import torch
class EarlyStopping:
def __init__(self, patience=10):
self.patience = patience
self.counter = 0
self.best_score = None
self.early_stop = False
def step(self, acc, model):
score = acc
if self.best_score is None:
self.best_score = score
self.save_checkpoint(model)
elif score < self.best_score:
self.counter += 1
print(f'EarlyStopping counter: {self.counter} out of {self.patience}')
if self.counter >= self.patience:
self.early_stop = True
else:
self.best_score = score
self.save_checkpoint(model)
self.counter = 0
return self.early_stop
def save_checkpoint(self, model):
'''Saves model when validation loss decrease.'''
torch.save(model.state_dict(), 'es_checkpoint.pt')