【发布时间】:2021-05-16 21:46:39
【问题描述】:
有人可以详细解释一下如何计算这个使用 ARIMA 模型进行预测的 Python 程序的运行时间、CPU 使用率和内存使用率:
def ARIMA_forecast(series, df):
X = series.values
size = int(len(X) * 0.66)
train, test = X[0:size], X[size:len(X)]
history = [x for x in train]
predictions = list()
start_time = time.process_time()
for t in range(len(test)):
model = ARIMA(history, order=(4, 1, 0))
model_fit = model.fit(disp=0)
output = model_fit.forecast()
yhat = output[0]
predictions.append(yhat)
obs = test[t]
history.append(obs)
print('predicted=%f, expected=%f' % (yhat, obs))
# evaluate forecasts
end_time = time.process_time()
print(end_time - start_time)
rmse = sqrt(mean_squared_error(test, predictions))
print('Test RMSE: %.3f' % rmse)
# plot forecasts against actual outcomes
plt.plot(series, label='Training data')
plt.plot(series[size:len(X)].index, predictions, color='blue', label='Predicted Price')
plt.plot(series[size:len(X)].index, test, color='red', label='Actual Price')
plt.legend()
plt.show()
df = pd.read_csv('MSFT.csv', header=0, index_col=0, parse_dates=True)
series = df['Adj Close']
ARIMA_forecast(series, df)
现在我正在使用 time.pricess_time() 来测量运行时间。我不确定如何计算 CPU 和内存使用量。我已经阅读了有关使用 psutil 的信息,但我不知道具体该怎么做。
【问题讨论】:
标签: python performance memory cpu-usage arima