【问题标题】:How do I add a char filter to a Microsoft language analyzer in Azure Search?如何将字符筛选器添加到 Azure 搜索中的 Microsoft 语言分析器?
【发布时间】:2019-11-15 03:21:12
【问题描述】:

我们希望使用 azure search 提供的语言特定分析器,但添加来自 Lucene 的 html_char 过滤器。我们的想法是构建一个自定义分析器,它使用与例如 en.microsoft 分析器相同的组件(标记器、过滤器),但添加了额外的字符过滤器。

遗憾的是,我们找不到任何关于 en.microsoft 分析器或任何其他 Microsoft 分析器的确切构成的文档。我们不知道使用哪些标记器或过滤器来获得与自定义分析器相同的结果。

谁能指出我们正确的文档?

文档说 en.microsoft 分析器 performs lemmatization instead of stemming 但我找不到任何声称仅使用词形还原词干分析器的标记器或过滤器。

【问题讨论】:

  • 投票结束的人:这是一个有关如何以编程方式与 Azure 搜索交互的相关且格式正确的问题。请不要关闭它。 @samy 我不知道答案,但我会找到知道的人。
  • 谢谢@布鲁斯!我希望它们是可定制的。

标签: azure-cognitive-search


【解决方案1】:

要创建 Microsoft 分析器的自定义版本,请从给定语言的 Microsoft 分词器开始(我们有一个词干和非词干版本),然后从一组可用令牌过滤器中添加令牌过滤器以自定义输出令牌溪流。请注意,词干分词器也会进行词形还原,具体取决于语言。

在大多数情况下,Microsoft 语言分析器是 Microsoft 标记器加上停用词标记过滤器和小写标记过滤器,但这取决于语言。在某些情况下,我们会进行语言特定的字符规范化。

我们建议使用以上内容作为起点。然后,Analyze API 可用于测试您的配置,看看它是否能提供您想要的结果。

【讨论】:

  • 谢谢,很高兴知道我们可以使用提供的 Microsoft 标记器重建和自定义分析器。我们有一个包含 24 种不同语言的用例,您正在执行语言特定字符规范化的语言的确切配置是否有可能在某处发布?类似于此 elasticsearch 文档的内容会很棒:elastic.co/guide/en/elasticsearch/reference/current/…
  • 虽然我们想记录这些配置,但这样做在我们目前的优先事项列表中并不高。这些分析器的实际配置方式比表面上看起来要微妙和复杂得多,我们需要找到一种方法来解释它,而不会让读者沉浸在过多的实现细节中。
  • 谢谢布鲁斯,我们会找到一些适合我们的配置。不过,这将是一个上帝的起点。词形还原部分很重要。我们相信并希望在我们的评估中,微软分析器的性能将优于开源替代品。
猜你喜欢
  • 2021-09-02
  • 1970-01-01
  • 1970-01-01
  • 2021-10-30
  • 2021-06-01
  • 1970-01-01
  • 2021-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多