使用Microsoft R Server进行机器学习和模型发布(2)
本文中用到的所有demo我都已经发布到了Github,需要的同学可以自行下载:
https://github.com/kingliantop/azurelabs/tree/master/RServerDemo
Microsoft R客户端的安装
Microsoft R客户端是一个免费的用于数据科学分析的高性能的工具。他基于开源的R语言构建,所以你可以使用任何开源的R packages,另外R client也支持微软的强大的ScaleR语言,包括使用mrsdeploy package远程执行。
1. 首先,下载安装Microsoft R client for windows,介绍地址如下:
https://msdn.microsoft.com/en-us/microsoft-r/r-client-install-windows
下载安装地址:http://aka.ms/rclient/
2. 当然,如果你使用Linux,也可以下载安装R client for Linux
https://msdn.microsoft.com/en-us/microsoft-r/r-client-install-linux
下载地址: http://aka.ms/rclientlinux.
3. 在安装过程中,如果你需要运行一些预先训练的模型,记得勾选"pre-trained models":
R IDE的安装
安装了Microsoft R 客户端以后,你可以选择安装你喜欢的R IDE安装,例如带有R插件的Visual Studio,或者RStudio
- RTVS for R Client on Windows: R Tools for Visual Studio (RTVS) 是一个集成开发环境,你可以使用Visual Studio免费版本,R Tools也支持,安装完成后后,如果你的机器上有多个R环境,可以配置Microsoft R作为默认客户端 .
- RStudio for R Client:支持 Windows or Linux平台, RStudio 是一个非常流行的R IDE. 在安装完RStudio后他会自己查找R客户端,但如果你有多个R环境,可以指定Microsoft R作为 C:\Program Files\Microsoft\R Client\R_SERVER\bin\x64 作为客户端路径
在本例中,我们使用RStudio免费版,下载RStudio然后安装:https://www.rstudio.com/
使用Microsoft R进行机器学习
1. 在这个测试案例中,我们用R语言来预测航班的延迟。测试数据集中有天气数据,航班数据,我们可以用这些历史数据来构建模型,预测是否在未来的天气情况下,航班将会延迟。这个案例是一个机器学习中的分类问题,属于监管学习,二分法中,结果0认为航班按时起飞,结果1代表航班延迟超过15分钟起飞。
github <- "https://raw.githubusercontent.com/Microsoft/RTVS-docs/master/examples/MRS_and_Machine_Learning/Datasets/"
inputFileFlightURL <- paste0(github, "Flight_Delays_Sample.csv")
inputFileWeatherURL <- paste0(github, "Weather_Sample.csv")
#Create a temporary directory to store the intermediate XDF files.
td <- tempdir()
outFileFlight <- paste0(td, "/flight.xdf")
outFileWeather <- paste0(td, "/weather.xdf")
outFileOrigin <- paste0(td, "/originData.xdf")
outFileDest <- paste0(td, "/destData.xdf")
outFileFinal <- paste0(td, "/finalData.xdf")
#Import the flight data.
flight_mrs <- rxImport(
inData = inputFileFlightURL, outFile = outFileFlight,
missingValueString = "M", stringsAsFactors = FALSE,
# Remove columns that are possible target leakers from the flight data.
varsToDrop = c("DepDelay", "DepDel15", "ArrDelay", "Cancelled", "Year"),
# Define "Carrier" as categorical.
colInfo = list(Carrier = list(type = "factor")),
# Round down scheduled departure time to full hour.
transforms = list(CRSDepTime = floor(CRSDepTime/100)),
overwrite = TRUE
)
rxSummary(~., data = flight_mrs, blocksPerRead = 2)
6. 分割数据,80%用来做机器学习进行寻来你,20%用来做测试,进行训练。
ROC和AUC通常用来衡量一个二元分类器的好坏。
ROC为接收者操作特征曲线(receiver operating characteristic curve)
AUC曲线下面积 (Area under the Curve of ROC)
8 .在这个实例中,也提供了使用决策树Decision Tree进行分析和预测,产生的结果可以直接进行对比:
在服务器端运行和调试你的R脚本
一般情况下,比较小的数据量我们本地的笔记本及开发环境就可以,但一旦数据量比较大,运算周期比较长,我们怎么开发测试学习模型昵?如果你有一个远端的R服务器,运算能力比较强,那么利用微软提供的免费的mrsdeploy扩展包,就可以快速的将你的R脚本再远端执行。
如上图所示,微软为了帮助开发人员和运维人员在远端服务器端开发,调测,测试R脚本,提供了一个叫做mrsdeploy 的扩展包,借助于这个包,你可以将你的代码在远端执行和部署。Mrsdeploy提供了两种连接云端R服务器的过程,一个是基于服务器用户名密码的认证的remoteLogin() ,另外一个使用Azure AD来做认证的remoteLoginAAD(). 基本语法如下:
remoteLogin( https://YourHostEndpoint, session = TRUE, diff = TRUE, commandline = TRUE username = NULL, password = NULL, )
remoteLoginAAD( endpoint, authuri = https://login.windows.net, tenantid = "<AAD_DOMAIN>", clientid = "<NATIVE_APP_CLIENT_ID>", resource = "<WEB_APP_CLIENT_ID>", session = TRUE, diff = TRUE, commandline = TRUE )
本例中我们使用remoteLogin来登陆远端服务,用户名密码就是你在前文中用Admin Utility创建的用户名和密码。
remoteLogin("42.159.238.196:12800",username="admin",password="XXXXXXXX")
3. 使用pause()和resume()函数即可在本地模式和远端模式之间切换,pause从远端模式切换回本地模式,resume从本地切换回远端模式:
REMOTE> pause() > date() [1] "Thu May 18 22:57:02 2017" > resume() |
|
|
library(mrsdeploy)
library(RevoScaleR)
转载于:https://www.cnblogs.com/cloudapps/p/6944092.html
使用Microsoft R Server进行机器学习和模型发布(2)相关推荐
- 提供 Microsoft R Open 和 Microsoft R Server 安装文件的位置
问题 SQL SERVE 2016离线安装,会出现"Microsoft R Open 和 Microsoft R Server 脱机安装"的界面, 无法点击下一步的情况, 原因及解 ...
- Microsoft R 和 Open Source R,哪一个才最适合你?
由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. R 是一个开源统计软件,在分析领域普及的非常快. 在过去几年中,无论业务规模如何,很多公司都采 ...
- Microsoft+R:Microsoft R Open (MRO)安装和多核运作
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本文转载于公众号大猫的R语言课堂,公众号作者使 ...
- 安装SQL 2016 ,都到最后了出现R server安装失败咋解决
2019独角兽企业重金招聘Python工程师标准>>> 安装SQL 2016 ,都到最后了出现R server安装失败咋解决 我来答 首页 问题 全部问题 经济金融 企业管理 法 ...
- Microsoft SQL Server 2008 R2 官方简体中文正式版下载(附激活序列号密钥)
微软官方发布的Microsoft SQL Server 2008 R2 简体中文完整版.基于SQL Server 2008提供可靠高效的智能数据平台构建而成,SQL Server 2008 R2 提供 ...
- R语言caret包构建机器学习回归模型(regression model)、使用DALEX包进行模型解释分析、特征重要度、偏依赖分析等
R语言caret包构建机器学习回归模型(regression model).使用DALEX包进行模型解释分析.特征重要度.偏依赖分析等 目录
- 模型评估 | 机器学习回归模型评价(RMSE、MAPE、R^2、NSE)
模型评估 | 机器学习回归模型评价(RMSE.MAPE.R^2.NSE) RMSE.MAPE.R^2.NSE % RMSE RMSE_test = sqrt(sumsqr(output_test - ...
- 针对开发人员的Microsoft SQL Server元数据
Microsoft SQL Server 2016最近在关系数据库管理系统(RDBMS)中处于领先地位. 高性能,安全性,分析和云兼容性的结合使其成为领先的RDBMS . SQL Server 201 ...
- 机器学习 建立模型_建立生产的机器学习系统
机器学习 建立模型 When businesses plan to start incorporating machine learning to enhance their solutions, t ...
- Microsoft SQL Server 2000整合规划
Microsoft SQL Server 2000整合规划 更新日期: 2004年06月24日 SQL Server技术文章 作者:Allan Hirt 投稿人:Tom Davidson和Shaun ...
最新文章
- 何恺明团队推出Mask^X R-CNN,将实例分割扩展到3000类
- learning armbian steps(4) ----- armbian 技术内幕
- 简单快速开发C\S架构程序用最简单的不分层最快的效率
- 不一样的思路,hosts文件在Mysql主从中的应用
- SAP UI5 oList.bindAggregation(item) will trigger odata request
- xampp mysql 备份_Linux Xampp计划任务自动备份Mysql数据库和所有网站
- c语言主调函数和被调函数,在C语言中,何为主调函数和被调函数,他们之 – 手机爱问...
- 记录hiveonspark:Execution Error, return code 30041 from org.apache.hadoop.hive.ql.exec.spark.SparkTask
- Excel VBA获取当文件下级子目录或目录中文件
- fastjson版本_Fastjson高危漏洞风险提示
- [转载] python函数——字典设置默认值get() 与 setdefault()区别
- 删除隐藏网卡(本机IP地址被占用)
- iOS UITextView字数限制 拼音
- 英文学术论文写作基础
- 什么是存储过程,存储过程的作用及优点
- 时差怎么理解_懂的人自然懂,不懂的人再多解释也有时差
- eplan实战设计pdf百度云_EPLAN实战设计
- 关于导入.a文件后报错Undefined symbols for architecture arm64:
- 雷电安卓模拟器修改信息及常用adb命令整理
- 数模学校道路整修_如何在您的浴室或厨房重新整修区域
热门文章
- (原创)攻击方式学习之(3) - 缓冲区溢出(Buffer Overflow)
- 两道考研算法设计题- 2010 2013
- 文强+光裕+唐骏,告诉我们什么?
- mrtg监控硬盘容量,内存占用,CPU占用 二
- 在libevent中服务模型
- java父类和mysql主表关系_Java工程师考试题 | 学步园
- ensure函数_vue按需加载组件webpack require.ensure的方法
- access用扫描枪输入_工业级高精度扫描枪适用在哪些环境
- nacos-demo feign调用
- 2.2同步访临界区(Synchronizing Access to Critical Section)