2016-11-07 153 views
1

我有與此相關的一個問題:設置TensorFlow生產:如何重新培訓你的模型

TensorFlow in production for real time predictions in high traffic app - how to use?

我想TensorFlow服務做推斷爲我們的其他應用程序的服務。我看到TensorFlow Serving如何幫助我做到這一點。此外,它提到了一個continuous training pipeline,這可能與TensorFlow Serving可以與多個版本的訓練模型一起使用的可能性有關。但我不確定如何在獲取新數據時重新訓練模型。另一篇文章提到了用cron作業進行再培訓的想法。但是,我不確定自動再培訓是否是一個好主意。你會建議什麼樣的體系結構連續重新培訓管道,系統會不斷面對新的標記數據?

編輯:這是一個監督學習案例。問題是,您會在n個新數據點進入後自動重新訓練模型,或者您會在客戶停機時自動進行再培訓還是手動進行再培訓?

回答

1

你可能想要使用某種半監督訓練。這方面有相當廣泛的研究。

一種簡單而方便的方式很適用,即使用當前最好的模型來標記新的傳入數據。模型通常能夠產生一個分數(希望是一個logprob)。您可以使用該分數僅對適合的數據進行訓練。

這是一種我們用於語音識別的方法,它是一個很好的基準。

+0

感謝您的回答,這聽起來相當不錯,我們有其他任務。實際上,我更感興趣的是你如何在一個有監督的,持續的再培訓案例中將你的舊模型與新模型交換。意思是如果你有你的模型x,並且你看到n個新的帶標記的數據點,你什麼時候進行再訓練以將模型改進爲x + 1?你甚至會觸發數據點的數量,或者如果可能的話,你會在客戶停機的時候重新運行嗎?或者你只會手動重新運行,而不是自動推出? – Ben

+1

由於不同的原因,有兩種方法可以使用。他們需要一定程度的規模。首先,我們有一個數據科學家小組,不斷改進算法,並利用更多的數據。然後,他們每個星期都會見一個啓動委員會。該算法的每個改進都必須得到批准。在另一種方法中,機械地說,每個週三都會用模型切割一個分支。然後它被推向任何頭腦。在這兩種情況下,我們都會在服務服務中添加新的模型/代碼,並監控延遲,內存,準確性等。 – drpng

相關問題