iT邦幫忙

0

機器學習的模型/pre-trained model

想請問如何建立pre-trained model呢?
我們常常會使用別人訓練好的模型來使用,
但每次在學習機器學習時,教學會讓我們從頭開始訓練、調參數等等,
每次要預測新的目標時,可能又會要重新訓練,

是否有辦法把自己訓練好的東西變成一個模型,就像是pre-trained model一般呢?

2 個回答

0
yu020009
iT邦新手 5 級 ‧ 2020-01-26 06:20:21

把已經訓練好的權重輸出出來(以 Python 為例可能會是 pkl 格式)
然後要用的時候再用一樣的架構去讀取之前輸出的檔案就可以了

2
I code so I am
iT邦研究生 5 級 ‧ 2020-01-27 23:05:08

如果使用 Keras,存檔程式碼如下:

# 儲存模型結構及權重參數
model.save('my_model.h5')

載入模型,程式碼如下:

# load
model = load_model('my_model.h5')

如果使用 scikit-learn 演算法,則使用 pickle 存檔

# save model, 序列化(Serialization)
import pickle
model_file_name='model.pickle'
with open(model_file_name, 'wb') as f:
    pickle.dump(random_forest, f)

載入模型,程式碼如下:

# load
model_file_name='model.pickle'
with open(model_file_name, 'rb') as f:
    random_forest = pickle.load(f)

如果使用 Tensorflow,請參考
https://www.tensorflow.org/tutorials/keras/save_and_load

我要發表回答

立即登入回答