CategoryScore

简介

类目预测是电商搜索场景下一个基础特征,主要用于预测查询词和商品所属类目的相关性。比如查询苹果,在生鲜场景下我们更应该出水果相关的商品,在手机场景下更应该出苹果手机相关的商品。类目预测的详细使用方法请参考类目预测使用手册。CategoryScore用于在算分过程中获取查询词在文档中的类目分。用户需要在算分插件初始化阶段创建CategoryScore对象,在算分阶段调用CategoryScore的算分接口计算查询词在文档上的类目分。类目分按照相关程度分成0、1、2三档,相关性从低到高依次递增。

函数列表

函数原型

函数简介

CategoryScore create(OpsScorerInitParams params, CString fieldName)

工厂函数,构造CategoryScore对象

double evaluate(OpsScoreParams params)

获取查询词在文档上的类目分

函数详情

CategoryScore create(OpsScorerInitParams params, CString fieldName)

工厂函数,构造CategoryScore。参数列表:params — 算分输入参数,详情请参考OpsScoreParams手册fieldName — 文档中类目字段的名称,必须是属性字段而且必须是常量。

double evaluate(OpsScoreParams params)

CategoryScore算分接口,在算分插件的score函数中使用,返回查询词在文档上的类目分。参数列表:params — 算分输入参数,详情请参考OpsScoreParams手册返回值:返回查询词与文档中类目的相关度分数。相关度分数分词0、1、2三档,0表示不相关,1表示相关,2表示最相关。代码示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.features.CategoryScore;

class BasicSimilarityScorer {
    CategoryScore _categoryScore;
    boolean init(OpsScorerInitParams params) {
        _categoryScore = CategoryScore.create(params, "category_field");
        return true;
    }

    double score(OpsScoreParams params) {
        return _categoryScore.evaluate(params);
    }
}