概述
基于flask和docker技术的机器学习模型上线实现(一)
之前一直想写博客,一是看到博客上很多好的文章,给我很多可资之用,因此萌生进行技术传播的想法,二是也是对自己的学习做总结,督促自己学习进展。是为前言。
自己做的课题是基于重症监护室(ICU)数据的病人死亡率预测,简而言之,是对ICU数据做分析处理,搭建机器学习模型,预测病人在住院期间死亡的概率,从而为医生决策做支持。在完成MATLAB 模型搭建工作之后,根据项目需要,需要对模型进行上线,以便可以进行Web展示。
这里涉及技术路线选择问题。选择主要基于两点考虑:(1)方便调用机器学习模型,搭建过程简单,不必过分受限于复杂的技术;(2)搭建好的模型便于部署和扩展。基于上述考虑,我选择了两种技术:flask和docker。(1)flask技术是基于Python的微服务器框架,可以方便实现 restful api调用。同时,Python有很多机器学习开源社区,提供很多学习资源,常见的工具有scikit-learn,方便后续机器学习模型搭建;(2)docker是基于容器的虚拟化技术,可以方便部署运行环境,避免不同平台(PC,笔记本等)配置差异带来的运行问题。只需要简单的从docker hub上pull或者push就可以实现运行环境的上传或者部署。
本博客分为三部分:1)docker,virtual machine环境搭建;2)基于flask和docker容器技术的微服务器搭建;3)机器学习模型上线实现;
下面简单介绍docker,virtual machine环境搭建。本电脑为win7 professional系统,在window环境下搭建系统,推荐使用docker toolbox,提供了安装工具箱,网上有一个比较好的教程:安装教程。
安装好之后,电脑桌面上出现:
Docker Quickstart Terminal
Oracle VM VirtualBox
Kitematic (Alpha)
在C盘中出现文件夹:
其中,目录
C:UsersLiuJiankang.dockermachinemachinesdefault
存放disk文件,将dockerfile或者docker-compose文件放置这个路径下,可以方便执行该文件从docker hub 上pull镜像,从而显现环境搭建过程。
环境搭建好之后,下面简要对上述三个软件进行介绍。先从Docker Quickstart Terminal 开始。
一、Docker Quickstart Terminal
Docker Quickstart Terminal提供了虚拟linux执行环境,可以执行常见的Linux指令,例如,当定位到dockerfile或者docker-compose文件位置时(本机),需要指令有:
cd
cd Users
cd ~
cd .dockermachinemachinesdefault
想要查看正在运行容器时,执行指令:
docker ps
有时,需要进入容器内对容器进行操作,在执行上述指令后,知道正在运行容器的容器号,可以执行下述指令进入容器
docker exec
-it bc2a50a92b21
/bin/bash
当需要对指令进行copy或者粘贴的时候,可以通过以下方式:
点击标注的位置-》编辑即可出现相关操作。
二 、 Oracle VM VirtualBox
下面介绍Oracle VM VirtualBox,Oracle VM VirtualBox执行默认操作就可以了,一般不需要变动。
三 、 Kitematic (Alpha)
在初始运行时,需要注册docker hub账户,当然,也可以skip。注册账户后,可以对镜像的自我管理,上传自己的镜像。
下面是Kitematic (Alpha)功能介绍,如图:
1:镜像,现在下载的镜像。
2:点击该按钮,可以根据需要下载库中的镜像,例如,1中的镜像可以通过搜索scikit-learn找到,安装非常简单。
3:对镜像进行操作,例如stop ,restart等,在1中,点击×号可以移除镜像。
4:日志,可以监测相应容器运行是否正常,根据日志检查错误。
5:volume挂载,点击可以找到本机目录下文件位置,通过该位置添加文件,可以挂载代码或者数据,并且可以做到热启动,相关的改变可以实时反映在容器上。
6:Docker CLI,负责指令执行,功能和Docker Quickstart Terminal 几乎相同。
总结:
本篇博客总结了安装过程,对三个软件即Docker Quickstart Terminal, Oracle VM VirtualBox,Kitematic (Alpha)进行了简要介绍,为下文安装镜像打好基础。
参考资料:
Docker学习系列(一):windows下安装docker
最后
以上就是大方美女为你收集整理的基于flask和docker技术的机器学习模型上线实现的全部内容,希望文章能够帮你解决基于flask和docker技术的机器学习模型上线实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复