【发布时间】:2019-09-07 17:50:39
【问题描述】:
我想记录一些加载到训练有素的 keras 模型中的 python 代码。出于某种原因,如果导入了 keras load_model,则 (python) 日志记录不起作用。但是,如果我不导入 keras,(python)日志记录工作正常。
这行得通:
import logging
LOG_FORMAT = "%(levelname)s %(asctime)s - %(message)s"
logging.basicConfig(filename="logs/my_logs.log",
level=logging.DEBUG,
format=LOG_FORMAT)
logger = logging.getLogger()
def do_stuff():
logging.info("About to do stuff")
... stuff gets done here...
这行不通
import logging
from keras.models import load_model
my_model = load_model("fetch_preprocess/lstm_model.h5")
LOG_FORMAT = "%(levelname)s %(asctime)s - %(message)s"
logging.basicConfig(filename="logs/my_logs.log",
level=logging.DEBUG,
format=LOG_FORMAT)
logger = logging.getLogger()
def do_stuff():
logging.info("About to do stuff")
pred = my_model.predict(data)
... stuff gets done here...
“不起作用”是指logging 模块不起作用
- 创建一个新的日志文件
- 在调用
logging时写入该文件
但不会抛出任何错误。所以我觉得这很奇怪。
我相信 Keras / tensorflow 会干扰日志记录(因为我对代码所做的唯一更改是排除 Keras,然后日志记录工作正常)。
有什么方法可以抑制 keras 在后台执行的操作,以便我可以使用 python 日志记录?
【问题讨论】:
标签: python tensorflow logging keras