垂直领域搜索
APP搜索引擎,属于垂直领域的搜索引擎,相对于泛需求的搜索引擎会简单很多。
泛搜索引擎 -> 意图识别(下APP,听歌,找wiki) -> 该意图垂直领域引擎
即在垂直领域,不需要挂载意图识别模块。
相关性(relevance)和重要性(importance)
相关性:用户搜索“美”,京东和美团对比,美团的“相关性”更高,所以美团比京东排序高。
重要性:用户搜索“美”,美团和美丽说对比,美团的“重要性”更高(美团用户量更大,美丽说小众),所以美团比美丽说的排序高。
相关性和重要性,是搜索里需要tradeoff的两个指标,这里的tradeoff,往往是建立排序模型。
即:相关性召回+重要性召回 -> 排序
相关性
文本相似性
- 标题精准匹配(Exact Match)
用户搜索“美团”,大概率是对“APP名称的搜索”,因此按照名称精准匹配,最简单最有效。 - 标题模糊匹配(Fuzzy Match)
用户会打错字,用户会query打不全,因此模糊匹配非常重要。- 拼音化
用户搜索“meituan”,也能够出来“美团”的结果,是因为将app名称进行拼音化再匹配。 - query纠错/改写
用户搜索“没团”,也能够出来“美团”的结果,是将query纠错后再匹配。 - 编辑距离
用户搜索“美”,也能够出来“美团”的结果,是因为“美”和“美团”的编辑距离为1,比较小。
【编辑距离ref】:https://zh.wikipedia.org/wiki/%E7%B7%A8%E8%BC%AF%E8%B7%9D%E9%9B%A2
- 拼音化
- 内容TF-IDF
- TF(Term Frequency)
query分词后,词语在内容(描述,评论)中出现的次数,可以使0-1值,可以是次数,可以是log(次数)等等任意变种。 - IDF(Inverse Document Frequency)
query分词后,词语在query中的重要性,可以是0-1值,可以是log(N/Nt),可以是log(1+N/Nt)等等任意变种。 - 组合
IDF将query分词后设置词的权重,TF将词去和文档匹配,TF-IDF就是加权的词和文档的匹配。
【TF-IDF ref】https://en.wikipedia.org/wiki/Tf%E2%80%93idf
- TF(Term Frequency)
- 内容BM25
BM25是一种TF-IDF-like retrieval functions,即原理相通。BM25假设有多个词,即sum(每个词的TF-IDF)。
公式为:
score(D, Q) = sum(TF-IDF) D stands for doc, Q stands for query.
TF:
- f(qi, D) is qi’s term frequency in the document D
- |D| is the length of the document D in words
- avgdl is the average document length in the text collection from which documents are drawn.
- k1 and b are free parameters, usually chosen, in absence of an advanced optimization, as k1 in [1.2,2.0] and b = 0.75.
IDF:
- N is the total number of documents in the collection
- n(qi) is the number of documents containing qi.
【BM25 ref】https://en.wikipedia.org/wiki/Okapi_BM25
语义相似性
- Topic Model
乔布斯的苹果和水果店的苹果,识别语义。建议采用”维基预料训练“,而非query来训练,因为LDA对短文本效果不好。 - 类型相关
识别query的类型,比如搜索”聊天“,那就从”聊天软件“类目中召回APP。
重要性
属性重要性
- 星级/评论挖掘
- 曝光量/点击量/下载量/安装量/使用量/注册量/付费量/留存量(率)
- 商业化价值
图重要性
- Page Rank值
其他召回
- x%用户下载召回
- 新品召回
- 运营召回
- 个性化召回
排序
- 点击熵
识别是精准需求(文本相关)还是泛需求(语义相关)的指标,可以用来确定召回比例,也可以用来作为排序特征(此时需要交叉两个召回来源)。 - 条件概率 p(ctr|query, user, scene)
给某人(对人的个性化),场景(对场景的把控,在机场推荐航班相关,晚饭时间推荐美食相关),query(用户对意图的主动描述)的最优化问题。
评估(IR evaluation)
- MAP: Mean Average Precision,不再赘述。
- nDCG: Normalized Discounted cumulative gain,按照位置加权。
【IR metrics ref】http://lixinzhang.github.io/xin-xi-jian-suo-zhong-de-ping-jie-zhi-biao-maphe-ndcg.htmll
【MAP vs NDCG ref】https://www.youtube.com/watch?v=qm1In7NH8WE