【问题标题】:How to do Inference with Custom Preprocessing and Data Files on Google Cloud ML如何在 Google Cloud ML 上使用自定义预处理和数据文件进行推理
【发布时间】:2019-10-14 09:52:00
【问题描述】:

我想使用我为在 Google Cloud ML 上进行推理训练的模型。这是一个 NLP 模型,我希望我的 node.js 服务器与模型交互以在训练时获得预测。

我有一个手动运行模型推理的过程,我想在云中复制:

  1. 使用 Stanford Core NLP 对我的文本进行标记化并生成存储我的标记化文本的数据文件。
  2. 让模型使用这些数据文件,从中创建 Tensorflow 示例,然后运行模型。
  3. 让模型打印出预测结果。

这是我认为可以在云端复制它的方法:

  1. 使用我的 node.js 服务器将文本发送到云端。
  2. 运行我的 python 脚本来生成数据文件。看来我必须在自定义预测例程中执行此操作。我不确定如何在这里使用 Stanford Core NLP。
  3. 将数据文件保存在 Google Cloud 的存储桶中。
  4. 在自定义预测例程中,加载保存的数据文件并执行模型。

谁能告诉我这个过程是否正确?另外,如何在 Google Cloud 自定义预测例程上运行 Stanford CoreNLP?另外,有没有办法让我只运行命令行脚本(例如,为了创建数据文件,我有一个通常只运行来创建它们的简单命令)?

【问题讨论】:

    标签: google-cloud-ml


    【解决方案1】:

    您可以在 Python 中实现自定义预处理方法并从那里调用斯坦福工具包。有关详细信息,请参阅此博客和相关示例代码:https://cloud.google.com/blog/products/ai-machine-learning/ai-in-depth-creating-preprocessing-model-serving-affinity-with-custom-online-prediction-on-ai-platform-serving

    【讨论】:

    • 您将如何存储具有从标记化单词到数字的映射的字典以便进行推理?它是否应该存储在 Google Cloud 上的某个位置并每次都获取?如果是这样,该怎么做?
    • 您可以这样做并每次使用 tf.gfile.GFile 读取它,或者您可以简单地将词汇字典存储为类的字段。
    • 你能详细说明第二个选项吗?我不确定您将词汇字典存储为类的字段是什么意思?
    • 请看上面的链接。它链接到示例笔记本 github.com/GoogleCloudPlatform/cloudml-samples/blob/master/… 有一个 self.__tokenizer__ 是类的一个字段。
    • 好的,我尝试这样做并且能够上传代码并使用自定义在线预测设置模型。但是,当尝试从客户端向模型发出请求时,我得到'data: { error: 'Prediction failed: unknown error.' }} 作为回复。我的请求正文是body: '{"instances":"asdfsafd"}',,我只是在我的自定义预测例程中使用预测变量的实例参数作为我的文本输入。你知道可能出了什么问题吗?
    猜你喜欢
    • 1970-01-01
    • 2020-02-22
    • 2021-01-01
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 2020-01-07
    • 1970-01-01
    相关资源
    最近更新 更多