RAPIDS cuML 线性回归运行速度比等效的 statsmodels.api 慢?

问题描述 投票:0回答:0

这是我第一次在这里发帖,如果问错了地方或者我遗漏了信息,我深表歉意。基本上我有以下代码用于使用 statsmodels 和 cuml 的线性回归模型,我希望 rapids 版本更快,因为它在 GPU 上,但实际时间更慢。我的驱动程序和库都是最新的,我确认在代码运行时 GPU 正在使用中。有谁知道为什么会这样?任何帮助将不胜感激

这是代码

import numpy as np
import cudf
import cuml
import statsmodels.api as sm
import time

# Generate some sample data
n_samples = 1000
n_features = 1
X = np.random.rand(n_samples, n_features)
y = np.random.rand(n_samples)
X_ = cudf.DataFrame(X)
y_ = cudf.Series(y)

start = time.time()
# Fit OLS model using statsmodels
ols_model = sm.OLS(y, X)
ols_results = ols_model.fit()
end = time.time()
print(f'ols runtime:{end-start}s')

# Fit linear regression model using cuML
reg_model = cuml.LinearRegression(fit_intercept=False)
reg_model.fit(X_, y_)
end2 = time.time()
print(f'cuml runtime:{end2-end}s')

# Print the results
print('OLS coefficients:', ols_results.params)
print('cuML coefficients:', reg_model.coef_)

这是输出

ols runtime:0.001081705093383789s
cuml runtime:1.3555335998535156s
OLS coefficients: [0.75085789]
cuML coefficients: 0    0.750858
dtype: float64
statsmodels rapids cuml
© www.soinside.com 2019 - 2024. All rights reserved.