def logRecord(epoch, epochTime, lr, trainRes, evalRes, extraEvalRes): with open(config.logFile(), "a+") as outFile: record = [ epoch, trainRes["acc"], evalRes["val"]["acc"], evalRes['test']['acc'], trainRes["loss"], evalRes["val"]["loss"], evalRes['test']['loss'], ] if config.evalTrain: record += [ evalRes["evalTrain"]["acc"], evalRes["evalTrain"]["loss"] ] if config.extra: if config.evalTrain: record += [ extraEvalRes["evalTrain"]["acc"], extraEvalRes["evalTrain"]["loss"] ] record += [extraEvalRes["val"]["acc"], extraEvalRes["val"]["loss"]] record += [ extraEvalRes["test"]["acc"], extraEvalRes["test"]["loss"] ] record += [epochTime, lr] writelist(outFile, record)
def logInit(): with open(config.logFile(), "a+") as outFile: writeline(outFile, config.expName) headers = ["epoch", "trainAcc", "valAcc", "trainLoss", "valLoss"] if config.evalTrain: headers += ["evalTrainAcc", "evalTrainLoss"] if config.extra: if config.evalTrain: headers += ["thAcc", "thLoss"] headers += ["vhAcc", "vhLoss"] headers += ["time", "lr"] writelist(outFile, headers)
def lastLoggedEpoch(): with open(config.logFile(), "r") as inFile: lastLine = list(inFile)[-1].split(",") epoch = int(lastLine[0]) lr = float(lastLine[-1]) return epoch, lr