是否可以在 GPU 上训练模型,然后在 CPU 上进行预测

Gri*_*yan 3 cpu gpu deep-learning tensorflow

我想使用 GPU 设备训练我的自定义模型。我想知道客户端可以通过 CPU 使用它吗?

Rub*_*res 5

是的,您在 GPU 上进行繁重的训练工作,节省权重,然后您的 CPU 将仅执行用于预测的矩阵乘法。

您可以训练模型并保存神经网络权重TensorflowKeras

张量流:

# ON GPU
with tf.Session() as sess:
  sess.run(init)
  save_path = saver.save(sess, "/tmp/saved_model.ckpt")

# ON CPU
with tf.Session() as sess:
    saver.restore(sess, "/tmp/saved_model.ckpt")
Run Code Online (Sandbox Code Playgroud)

喀拉斯:

model.save_weights('your_model_weights.h5')
model.load_weights('your_model_weights.h5')
Run Code Online (Sandbox Code Playgroud)

使用sklearn算法,您可以通过以下方式保存权重:

model=XGBClassifier(max_depth=100, learning_rate=0.7, n_estimators=10, objective='binary:logistic',booster='gbtree',n_jobs=16,eval_metric="error",eval_set=eval_set, verbose=True)
clf=model.fit(x_train,y_train)
from sklearn.externals import joblib
joblib.dump(clf, '/path/your_model.joblib')

model = joblib.load('/path/your_model.joblib')
model.predict(X_train)
Run Code Online (Sandbox Code Playgroud)