@spiritnotes
2016-05-12T02:59:21.000000Z
字数 1539
阅读 2614
博文笔记
原文:http://semocean.com/如何使用机器学习解决实际问题-以关键词相关性模/
机器学习任务的基本流程
该模型可扩展到语意相关性模型,搜索引擎相关性及LTR学习任务的设计实现。该模型的设计调研实现,也可以很容易移植解决其他包括语义相关性的问题
百度关键词搜索推荐系统为广告主在搜索关键词的时候显示推荐其他相关关键词,来源可能为其他广告主\搜索关键词\系统发现。
典型搜索问题:输入query,触发,排序
目标是让用户觉得该产品结果很靠谱, 所以该处我们仅考虑字面相关性,更多的语意扩展该模型并未考虑,可加入更多语意特征,例如plsa的bm25特征和word2vec的相似度特征(或者和扩展的相关性校验,例如将待推荐词扩展为baidu搜索结果的摘要扩展)提高语义特征的贡献。排序需要考虑相关性和CTR。
训练数据的获取一般有几种方式:
采用人工标注,发现负例个性化较强(相关性高,但用户不做该业务),并重新标注。
一般特征的选择及处理会极大地影响学习任务的效果,而进行特征选择的时候,一般是先增加特征,并实验效果。 对于相关性模型, 我们可以先将传统的信息检索的特征加上,这些特征一般分为以下几类:
采取样本数据,用随机森林进行二分类:
可使用树模型,就是直接砍掉特征贡献程度及特征重要性较低的特征
使用树模型时,可以直接使用数节点特征贡献度和节点使用次数,判断是否需要去除该特征,以下为使用树模型进行选择特征的例子:
在选择特征的时候, 有一些经验值得分享:
经典模型:adaboost
集成树模型:不需要特征归一化,模型自己会根据信息增益,或是基尼系数等标准选择最合适的拆分点进行树节点的拆分,考虑到准确率和速度,最终确定的参数是树的数量是20, 特征选择因子和样本选择因子均为0.65(每棵树随机选择0.65的样本和特征进行训练)