我正在运行一个随机森林ML脚本,使用测试大小数据集5 k观测值和一组具有不同数量森林的参数。我的真实模型接近100万个参数,有500多个参数。假设x个森林,我试图计算这个模型需要多少内存。
为了做到这一点,我可以使用一种方法来返回在运行脚本时使用了多少内存。是否可以返回,以便我可以计算计算完整模型所需的RAM?
我目前使用以下内容告诉我计算需要多长时间:
global starttime
print "The whole routine took %.3f seconds" % (time() - starttime)
感觉我正在与自己交谈一下但是嘿嘿,我尝试运行以下代码来了解实际使用了多少内存,以及为什么当我增加n_estimators_value
我的PC耗尽的数量时记忆不幸的是,所有%的内存使用都回来了,我认为这是因为它在不正确的时间计算内存使用量,它需要在实际拟合随机森林时将其记录在峰值。见代码:
psutilpercent = psutil.virtual_memory()
print "\n", " --> Memory Check 1 Percent:", str(psutilpercent.percent) + "%\n"
n_estimators_value = 500
rf = ensemble.RandomForestRegressor(n_estimators = n_estimators_value, oob_score=True, random_state = 1)
psutilpercent = psutil.virtual_memory()
print "\n", " --> Memory Check 1 Percent:", str(psutilpercent.percent) + "%\n"
找出峰值内存使用情况的任何方法?我正在尝试计算需要多少内存才能安装相当大的RF,而我无法在不知道我的小型号需要多少内存的情况下计算出来。