Elasticsearch中匹配术语的百分比

时间:2016-07-25 21:35:38

标签: elasticsearch morelikethis

我正在使用elasticsearch来查找类似的文档。以下是我正在使用的查询:

{
    "query": {
        "more_like_this":{
            "like": {
                "_index": "docs",
                "_type": "pdfs",
                "_id": "pdf_1"
            },
            "min_term_freq": 1,
            "min_doc_freq": 1,
            "max_query_terms: 50,
            "minimum_should_match": "50%"
        }
    }
}

我从PDF中提取文本并存储在我的索引“docs”中。以下是“pdfs”类型的映射:

{
 "properties": {
        "content":{
            "type": "string",
            "analyzer": "my_analyzer"
        }   
    }   
}

在结果集中,我得到了类似的文档及其分数。根据我到目前为止所读到的内容,无法根据分数计算百分比相似度,因此我并不是想这样做。我想弄清楚是否有可能知道:

  

“来自源文档的50个查询字词中有多少个字词   在文件中匹配?或匹配的术语百分比?“

正如您所看到的那样,在我的查询中,我将minimum_should_match指定为50%,因此我假设elasticsearch正在根据文档中匹配的术语百分比来过滤某些文档。我想得到这个百分比。我对弹性搜索很新。到目前为止,我已经完成了文档,但无法找到如何做到这一点。 任何指针/帮助表示赞赏!

0 个答案:

没有答案