我想用GPU设备训练我的自定义模型。 我想知道客户能否通过CPU使用它吗?
答案 0 :(得分:0)
是的,您需要在GPU上进行繁重的训练,节省权重,然后您的CPU只会对预测进行矩阵乘法。
在Tensorflow
和Keras
中,您可以训练模型并保存神经网络权重:
Tensorflow:
# 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")
凯拉斯:
model.save_weights('your_model_weights.h5')
model.load_weights('your_model_weights.h5')
使用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)