我是机器学习的新手。我已经完成了k-means聚类,模型也已经训练好了。我的问题是如何为我的训练模型传递输入?
例如:考虑一个谷歌图像处理的机器学习模型。我们传递一张图片,得到正确的结果,比如从图片中识别出情感。
现在我的疑问是如何做到这一点?我已经完成了k-means聚类来预测mall_customer
,以便识别哪些客户花更多的钱购买产品。为此,我需要调用或传递输入到我的训练模型中。
我使用的是Python和scikit-learn。
回答:
你需要的是一个API,通过它你可以发送请求/输入并获得响应/预测。
你可以创建一个Flask服务器,将你的训练模型保存为pickle文件,并在进行预测时加载它。这可能需要做一些工作。
请参考以下资料:
- https://towardsdatascience.com/deploying-a-machine-learning-model-as-a-rest-api-4a03b865c166
- https://hackernoon.com/deploy-a-machine-learning-model-using-flask-da580f84e60c
注意:Flask内置的服务器不适合生产环境。你可能需要参考uwsgi + nginx的配置。
如果你使用Docker,可以参考:https://hub.docker.com/r/tiangolo/uwsgi-nginx-flask/,这将对你有很大帮助。