博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Microsoft R进行机器学习和模型发布(1)
阅读量:5247 次
发布时间:2019-06-14

本文共 2675 字,大约阅读时间需要 8 分钟。

熟悉Azure的同学们都知道,Azure上有一套提供可视化界面的机器学习套件,叫做Azure Machine Learning, 从数据的输入,选择,清洗,到模型的构建,测试,评估和发布都可以通过通过图像化方式,拖拖拽拽就可以完成,当然AML也支持你嵌入自己的R语言和Python语言开发的机器学习算法:

但对于很多数据科学家来讲, 更偏向于使用R语言来做所有事情。R语言是最为流行,最为强大的数据统计分析,机器学习和可视化语言,本身R来自于开源社区,因此也有着非常活跃的社区和强大的生态系统支持。虽然R非常流行,但如何在企业级环境里面部署R,如何处理大规模的数据,如何通过R快速的构建和发布机器学习模型,仍然不是一件简单的事情。

Microsoft R是基于开源的R构建的,提供了免费的Microsoft R客户端和Microsoft R open以及商业版本的Microsoft R Server,和开源R完全兼容,提供了总共超过10000个R的语言包,并且提供了一些额外的工具来支持企业级部署,包括远程部署和调试,平台支持,Web服务发布等功能。理想的情况是,数据科学家可以通过R快速构建模型,并一键发布到R集群提供运营服务,而开发人员或者产品团队可以根据数据科学家快速发布的R web service使用数据模型,同时,其他数据科学家也可以通过R client进行模型的测试,调试等等,如下图所示:

本文主要介绍如何通过Microsoft R server在企业级开发测试环境里面实现机器学习模型的构建,可视化,远端调试以及机器学习模型的发布,客户端的调用等步骤。

后续文章会介绍,如何在企业级的生产环境里面大规模部署R server集群。

备注:Microsoft R Server for Linux/Windows已经在Azure中国区正式上线

Azure上部署Microsoft R server for Linux

  1. 登录到Azure的管理界面,选择"新建"-"虚拟机"-"全部",在搜索框输入"Microsoft R Server",可以看到微软提供多种不同操作系统的R Server:

  1. 选择" Microsoft R Server (version 9.1.0) for Linux (Ubuntu version 16.04)"进行创建,输入基本的信息,如虚拟机名称,用户名,密码,一定要记住你的ssh登录密码:

  1. 剩下的步骤和创建一台普通虚拟机没有差别,选择大小,地区,配置网络等等,再次不再赘述,在汇总页面看一看,没有问题,就选择确定进行虚拟机部署:

  1. 部署完成后,在虚拟机总览界面上找到虚拟机的公共IP地址,使用putty或者其他ssh工具连接到Microsoft R Server,检查下已经安装的R Server package:

apt list --installed | grep microsoft

可以看到Microsoft R Server的多个组件已经安装,包括compute node, web node,以及dotnet framework

  1. 我们需要进一步了解一下当前安装的R Server的版本,依赖关系等信息,使用dpkg命令进行检查,可以看到默认安装的R Server版本是9.1,依赖于mkl等包:

     

    dpkg –status Microsoft-r-server-computenode-9.1

  1. 在命令行输入R或者Revo64,如果你的部署一切正常的话,应该出现如下界面:

Azure上配置Microsoft R Server for Linux(Ubuntu)

在一个典型的Microsoft R Server开发环境部署中,我们叫做One-Box配置,也就是说把企业级环境里面必须的组件都部署到了一台虚拟机上,适合做开发调试,具体的部署架构图如下所示:

Web node:用于http接入及认证。

Compute node:执行R语言创建服务,后续企业级创建可以看到,其实compute node可以大规模扩展。

SQLite data store: 存放一些元数据,配置信息以及session和服务信息

在Azure中国区创建Microsoft R server后,我们来对他进行配置。Microsoft R Server 提供了一个明行的工具叫做Administrator Utility来帮助用户进行配置,我们下面来进行One Box的配置:

  1. 进入Microsoft R Server的安装目录,在Ubuntu上默认如下:

    cd /usr/lib64/microsoft-r/rserver/o16n/9.1.0/

     

  2. 启动Administrator Utility工具,这个工具是Dotnet的,实际上是Linux的Dotnet,执行正常的话会显示一个配置界面:

    sudo dotnet Microsoft.RServer.Utils.AdminUtil/Microsoft.RServer.Utils.AdminUtil.dll

     

     

  3. 首先需要设置本地管理员密码,这个是必须要做的第一步,选择2"set a local admin password",密码的设置是有要求的,是我们的复杂密码设置:

     

  4. 然后设置本节点配置,之前其实我们说到,这部分主要是开发测试环境的配置,所以使用OneBox configuration,也就是web node和compute node都在一个计算机上,选择"Configure R Server for Operationalize",然后选择A:One-Box:

期间会要求你输入admin的密码进行验证,

  1. 配置完成后,我们来run一个诊断测试看看配置结果:

    选择"6. Run diagnostic tests"

    选择"B. Get raw server status"

    或者选择"A. Test configuration"

    可以看到服务器端的各个服务都是运行正常的,那么OneBox服务器端的配置到此完成。

     

  2. 最后,web node使用12800端口对外连接提供服务,登录到Azure管理门户,选择虚拟机的NSG配置,在NSG上配置允许12800端口的访问,保存即可:

     

     

下一部分介绍R Client端安装,使用R进行远程执行,机器学习以及模型发布。

转载于:https://www.cnblogs.com/cloudapps/p/6932379.html

你可能感兴趣的文章
Mayor's posters POJ - 2528
查看>>
决策树--信息增益,信息增益比,Geni指数的理解
查看>>
常用sql备份
查看>>
Solr源码在MyEclipse下的搭建
查看>>
Oracle用户管理的不完全恢复2:基于取消的恢复
查看>>
Oracle 11g 执行计划管理2
查看>>
stm32 nucleo系列开发板的接口
查看>>
02-CSS基础与进阶-day6_2018-09-05-21-42-09
查看>>
JQuery 多选按钮checkbox
查看>>
PHP 语法(5)
查看>>
java反射简解
查看>>
Socket,webservices,remoting,WCF
查看>>
SQL---mysql新增字段
查看>>
MySQL同主机不同数据库的复制命令
查看>>
与父母互动的55件事情
查看>>
秋季学期学习总结
查看>>
cgi程序报 Premature end of script headers:
查看>>
使用 datatables 插件做后台分页方法
查看>>
安卓手机声音调大
查看>>
【JS面试】第四章 闭包和作用域
查看>>