AzureML:尝试为子集而不是整个数据集

时间:2016-08-31 13:58:35

标签: r azure-machine-learning-studio

前几天我在AzureML中编写了一段代码“内存不足”的问题。所以我尝试将代码分成三个不同的代码,部分工作。它仍然是(我认为)受内存问题影响的一部分。

我创建了一个我在此link中发布的实验。

有一个模块只考虑我的数据集的样本,它确实有效。这意味着代码应该可以正常工作。如果删除采样代码(从顶部开始的第二个模块)

enter image description here

并直接连接您遇到以下情况的原始数据集

enter image description here

产生以下错误:

enter image description here

有人有办法了解Azure崩溃的位置吗?

谢谢你,

安德烈

1 个答案:

答案 0 :(得分:1)

非常感谢发布这个例子 - 这真的有助于理解这个问题。我怀疑您希望通过向每个调用添加参数“gsub()”来修改脚本中的fixed=TRUE调用。 (此功能的文档为here。)

似乎已经发生的事情是,在您的完整数据集中的某个地方 - 但不在子采样数据集中 - 有一些文本最终被包含在df[i, "names"]中作为“(art.”。您的脚本将其填入“\\b(art.\\b”。 gsub()函数尝试将其解释为正则表达式而不是简单字符串,然后抛出错误,因为它不是有效的正则表达式:它包含一个左括号但没有右括号。我相信您实际上不希望gsub()首先将输入解释为正则表达式,而指定gsub(..., fixed=TRUE)将会纠正该错误。

我相信当您添加示例/分区模块时此错误消失的原因是,偶然地,在子采样中丢弃了有问题的输入值。我认为这不是Azure ML上可用资源的问题。 (警告:我无法确认修复程序是否正常;我已建议更新并开始运行实验,但尚未成功完成。)