2

我已经使用 Reader 模块成功部署了 ML Web 服务,以从我的 Blob 存储中获取 CSV 数据。通过在实验中可视化,我可以看到 CSV 数据是正确的。

但是,当我尝试使用本教程中的 BES 示例将相同的 CSV 数据作为 Web 服务的输入提供时,我收到以下错误:

Error 1000: AFx Library exception: table: The data set being scored must
contain all features used during training, missing feature(s): 'Col 2'.

这个错误没有意义,因为实验成功地接受了相同的数据。

另请注意,当我使用 TSV 格式时也会出现同样的问题。

4

1 回答 1

1

这是我如何让它工作的方法。

1 / 我创建了一个看起来像你描述的实验。 样品实验

阅读器从 blob 存储中读取以下文件:

col 1,col 2
1.32,somestring
3.34,anotherstring

应用 SQL 转换具有以下语句:

select sum([col 1]) from t1

2/ 发布网络服务

3/ 转到批处理执行 (BES) 文档并复制 Python 代码

4/ 在文本编辑器中替换 invokeBatchExecutionService 方法开头记录的值(storage_account_name、storage_account_key、storage_container_name、api_key 值)

5/ 在 Azure ML 工作区中创建一个新的 Python 2 笔记本

在第一个单元格中,复制并粘贴以下代码:

with open('input1data.csv','a') as myfile:
    myfile.write("col 1,col 2\n")
    myfile.write("1.32,somestring\n")
    myfile.write("3.34,anotherstring\n")

在下一个单元格中,复制并粘贴您在步骤 4 中编写的代码/

在下一个单元格上,复制并粘贴以下代码:

with open('myresults.csv','r') as myfile:
    for line in myfile:
        print(line)

按顺序执行单元格。您应该通过第三个单元执行获得以下结果:

sum([col 1])

4.66
于 2015-12-18T13:54:20.927 回答