如何使用IBM watson从用户输入中捕获数量?

时间:2016-03-14 14:41:04

标签: ibm-watson

我正在尝试使用IBM Watson AI从用户文本输入中检索quantity属性。我曾尝试使用alchemy API服务,但实体参数无法从用户输入中检索数量。

例如:用户输入 - "我想订购2包咖啡"。 我想从上面提到的用户输入中检索数量为2个数据包。

你能帮我解决一下我面临的问题吗?

3 个答案:

答案 0 :(得分:1)

Watson Developer Cloud的Relationship Extraction服务可以帮助您进行此类分析。

将关系提取服务添加到您的Bluemix帐户,然后尝试以下curl命令:

curl -u username:password https://gateway.watsonplatform.net/relationship-extraction-beta/api/v1/sire/0 -d "sid=ie-en-news" -d "txt=I want to order for 2 packets of coffee"

这将导致输出类似于:

...
 <entities>
    <entity eid="-E0" type="FOOD" generic="0" class="SPC" level="NOM" subtype="OTHER" score="1">
      <mentref mid="-M2">coffee</mentref>
    </entity>
    <entity eid="-E1" type="CARDINAL" generic="0" class="SPC" level="NONE" subtype="OTHER" score="1">
      <mentref mid="-M1">2</mentref>
    </entity>
    <entity eid="-E2" type="PERSON" generic="0" class="SPC" level="PRO" subtype="OTHER" score="1">
      <mentref mid="-M0">I</mentref>
    </entity>
  </entities>
  ...

正如您所看到的,&#34; 2&#34;被确定为红衣主教。请查看documentation以获取解释输出的完整详细信息。

披露:我是IBM Watson的传播者。

答案 1 :(得分:0)

看起来解决这个问题的新方法是使用沃森自然语言理解服务和&#34;关系&#34;元日期https://www.ibm.com/watson/developercloud/doc/natural-language-understanding/#relations

答案 2 :(得分:0)

由于您必须定义新的指​​标,因此很难提取这些类型的命名实体识别。

在您的示例中,“数据包”是度量单位,因此需要系统首先对其进行培训和理解。一旦完成,就需要提取与此度量标准关联的数字量。再次回到您的示例,“ 2”将是需要提取的数量。

使用IBM Watson KNowledge工作室,您将能够通过创建示例并注释它们来定义这种类型的定制实体。 然后,您可以训练模型以识别新的度量标准,例如数据包,杯子等。

这是来自IBM的youtube视频,它将指导您如何定义定制实体,并在您的应用程序中使用它来启用适合您需要的NER:https://www.youtube.com/watch?v=EQcEk2TX79c