机器学习与Docker容器

 现在,机器学习(ML)和人工智能(AI)是IT行业中的热门话题,同样,容器也成为其中的热门话题之一。我们将机器学习和容器都引入到图像中,用实验验证是否会相互协同出色的完成分类任务。我们将使用Tenserflow和Kontena来详细阐述。

研究目标

在实验中设定目标会使实验更具有针对性。在此,我设定了以下目标:

1.了解机器学习和TensorFlow;

2.验证机器学习和容器间是否有协同作用;

3.在Kontena上部署正在运行的机器学习方案。

我的最终设想如下,共分为三个部分:

1.有一个简单的API:用户可对JPG图像进行分类;

2.在多个实例上运行机器学习模型,以便按需扩展;

3.遵循微服务(microservice)架构模式。

 完整代码获取请点击这里。

TensorFlow简介

TensorFlow是一个使用数据流图进行数值计算的开源软件库。图中的节点表示数学运算,边表示节点间流动的多维数据矩阵(张量)。 这种灵活的架构允许你在不重写代码的情况下,将计算部署到计算机桌面、服务器或者移动设备的一个或多个CPU或GPU上。

 非常简单,使用TensorFlow训练具有一套训练数据的计算机模型。一旦模型被训练,我们就可以用模型分析未知的数据,如我们这里所说的图像分类。一般来说,模型预测的是输入数据与训练模型中的某些“已知”模式的匹配程度。

 在这里,我们不会深入的探索如何训练模型,因为这需要更加深入的学习机器学习的概念,并深入了解TensorFlow系统。更多相关内容你可以查阅TensorFlow的模型培训教程,还可以查阅HBO硅谷是如何开发hotdog or not-dog这款app(识别物体是否为热狗)的。

TensorFlow模型最大的优点是,一旦模型建立起来,就可以很容易使用,而不需要任何冗杂的后端服务器。正如hotdog or not-dog一样,模型本身也是在移动设备上“运行”。

阅读原文

你可能感兴趣的:(机器学习与Docker容器)