benchmarks
classicML 中的benchmarks用于评估和测试模型的性能和开销,借此,你可以分析性能瓶颈;目前以装饰器的形式使用,比如:
import classicML as cml
@cml.benchmarks.timer
def create_model():
"""创建一个模型"""
model = cml.models.BPNN(seed=2020)
return model
if __name__ == '__main__':
create_model()
在这个例子中,你可以查看模型的创建速度.
INFO:classicML:正在使用 Python 引擎
INFO:classicML:耗时 434.707 ms
第二个例子可以查看,整个进程所占用的内存,以此,找到优化的策略.
import classicML as cml
@cml.benchmarks.memory_monitor
def create_model():
"""创建一个模型"""
model = cml.models.BPNN(seed=2020)
return model
if __name__ == '__main__':
create_model()
终端的大概会显示类似如下的内容:
INFO:classicML:正在使用 Python 引擎
INFO:classicML:占用内存 55.52734 MB
average_timer
程序平均计时装饰器.
@cml.benchmarks.average_timer(repeat=5)
参数
repeat: 整数,重复运行的次数.
注意
使用该装饰器统计平均计时会明显降低运行速度,请在开发时使用,避免在训练模型时使用.
memory_monitor
内存监视装饰器.
@cml.benchmarks.memory_monitor
注意
使用该装饰器统计内存信息,有潜在降低运行速度的可能性. 并且psutil针对的
Python优化手段会导致在CC引擎的速度大幅降低.
timer
程序计时装饰器.
@cml.benchmarks.timer