【发布时间】:2019-01-31 09:42:42
【问题描述】:
我创建了一个 NLP 模型并将矢量化器和模型保存在 pickle 文件中。我正在使用这些泡菜文件来预测新数据。加载泡菜大约需要 10 分钟。我想将泡菜文件加载到内存中,并在获得输入时运行预测。
我有一个文件 prediction.py
from sklearn.externals import joblib
count_vectorizer = joblib.load("C:/Count_Vectorizer.pkl")
count_classifier = joblib.load("C:/Count_Classifier.pkl")
X=sys.argv[1]
X_count = count_vectorizer.transform(X)
prediction = count_classifier.predict(X_count )
print(X,prediction)
我正在运行带有输入字符串作为参数的 python 文件。
$ python prediction.py "Hello World"
每次我运行脚本时都会加载这个泡菜文件。无论如何要制作一个程序,使泡菜文件已经加载到内存中,然后我们运行预测文件并得到结果?
【问题讨论】:
-
保持进程运行并接受发送给它的数据?你可以运行一个网络服务器来接受请求,你可以通过命令行获取用户输入,你可以制作一个 gui...等等。只是不要杀死加载泡菜的进程。
-
您还可以使用 tkinter 为您的应用构建一个小型 UI 并使其运行。 docs.python.org/2/library/tkinter.html
-
你可以看看flask
标签: python machine-learning pickle