你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在工作室(经典)中迁移“执行 R 脚本”模块
重要
对 Azure 机器学习工作室(经典)的支持将于 2024 年 8 月 31 日结束。 建议在该日期之前转换到 Azure 机器学习。
自 2021 年 12 月 1 日起,无法创建新的机器学习工作室(经典)资源(工作区和 Web 服务计划)。 在 2024 年 8 月 31 日之前,可继续使用现有的机器学习工作室(经典)试验和 Web 服务。 有关详细信息,请参阅:
机器学习工作室(经典)文档即将停用,并且将来可能不会更新。
本文介绍如何在 Azure 机器学习中重新生成工作室(经典)“执行 R 脚本”模块。
有关从工作室(经典)迁移的详细信息,请参阅迁移概述一文。
执行 R 脚本
Azure 机器学习设计器现在在 Linux 上运行。 工作室(经典)在 Windows 上运行。 由于平台更改,你必须在迁移过程中调整“执行 R 脚本”,否则管道会失败。
若要从工作室(经典)中迁移“执行 R 脚本”模块,必须将 maml.mapInputPort
和 maml.mapOutputPort
接口替换为标准函数。
下表总结了对 R 脚本模块的更改:
功能 | 工作室(经典版) | Azure 机器学习设计器 |
---|---|---|
脚本接口 | maml.mapInputPort 和 maml.mapOutputPort |
函数接口 |
平台 | Windows | Linux |
可访问 Internet | 否 | 是 |
内存 | 14 GB | 依赖于计算 SKU |
如何更新 R 脚本接口
下面是工作室(经典)中的示例“执行 R 脚本” 模块的内容:
# Map 1-based optional input ports to variables
dataset1 <- maml.mapInputPort(1) # class: data.frame
dataset2 <- maml.mapInputPort(2) # class: data.frame
# Contents of optional Zip port are in ./src/
# source("src/yourfile.R");
# load("src/yourData.rdata");
# Sample operation
data.set = rbind(dataset1, dataset2);
# You'll see this output in the R Device port.
# It'll have your stdout, stderr and PNG graphics device(s).
plot(data.set);
# Select data.frame to be sent to the output Dataset port
maml.mapOutputPort("data.set");
下面是设计器中的更新内容。 请注意,已将 maml.mapInputPort
和 maml.mapOutputPort
替换为标准函数接口 azureml_main
。
azureml_main <- function(dataframe1, dataframe2){
# Use the parameters dataframe1 and dataframe2 directly
dataset1 <- dataframe1
dataset2 <- dataframe2
# Contents of optional Zip port are in ./src/
# source("src/yourfile.R");
# load("src/yourData.rdata");
# Sample operation
data.set = rbind(dataset1, dataset2);
# You'll see this output in the R Device port.
# It'll have your stdout, stderr and PNG graphics device(s).
plot(data.set);
# Return datasets as a Named List
return(list(dataset1=data.set))
}
有关详细信息,请参阅设计器执行 R 脚本模块参考。
从 Internet 安装 R 包
Azure 机器学习设计器使你可以直接从 CRAN 安装包。
这是对工作室(经典)的改进。 由于工作室(经典)在不具有 Internet 访问权限的沙盒环境中运行,因此你必须在 zip 包中上传脚本,才能安装更多包。
使用以下代码在设计器的“执行 R 脚本”模块中安装 CRAN 包:
if(!require(zoo)) {
install.packages("zoo",repos = "http://cran.us.r-project.org")
}
library(zoo)
后续步骤
本文介绍了如何将执行 R 脚本模块迁移到 Azure 机器学习。
请参阅工作室(经典)迁移系列中的其他文章:
- 迁移概述。
- 迁移数据集。
- 重新生成工作室(经典)训练管道。
- 重新生成工作室(经典)Web 服务。
- 将机器学习 Web 服务与客户端应用集成。
- 迁移“执行 R 脚本”模块。