读Applying Deep Learning To Airbnb Search有感

读Applying Deep Learning To Airbnb Search有感

介绍

Airbnb的房屋预订系统对于房主和租客来说是一个双向的平台,房主想出租他们的空间,租客想预订房间。airbnb.com网站一开始是一个简单的根据一个特定的地理位置,召回一个酒店列表。
最初的搜索排序模型是人工评分的,后来梯度提升树(GBDT)代替了人工评分,这是房屋预订系统跨出的一大步,之后随之而来的是系统多次成功的迭代。
基于这个背景,本文讨论用深度学习改善搜索引擎的经验。希望这篇文章,能帮助做搜索引擎的团队从机器学习方法转向深度学习。
正在讨论的搜索排序模型是模型生态系统的一部分,所有的模型都对向用户展示列表的产品顺序作出贡献。这些模型预测房主接受租客预订的可能性和租客对预订过的酒店打五星的概率。(尽量让双方都满意?所以说是双向的嘛)。排序问题中,预测用户下单概率,根据用户下单概率进行酒店是比较难的问题,也是这个模型所针对的问题。

一个典型的用户搜索会话如图所示,用户通常进行多次的搜索,并点击某个产品查看详情,用户在某个列表中预订了酒店说明是个不错的排序,由用户搜索点击,并记录他们的行为日志,在原有模型的基础上,根据用户行为日志,训练新的模型。新模型的目标上学习一个评分函数,使得用户预订酒店概率大的排在列表的前面。
模型进化
Our transition to deep learning wasn’t the result of an atomic move;
it was the culmination of a series of iterative re€nements. 这句话我感觉挺好的呀,但是我翻译不出来,大意是使用深度学习不是突然想用它,而是一步步迭代,向着好的方向发展的结果。图二展示了不同模型的ndcg指标。被预订的酒店标记为1,其他酒店标记为0。

2.1 简单的NN神经网络模型
don’t be a hero.同样很喜欢的一句话呀~从一些错综复杂的用户行为模式和模型开始会消耗我们的研究热情吧,所以先从简单的开始咯。第一个简单的模型呢就是只有一个隐层,隐层全连接32个神经元,后接relu激活函数,如果不接激活函数,第一层输出是wx+b,第二层输出是w1(wx+b),不管接多少层都是线性的,激活函数可以增加模型的非线性性。比如relu激活函数,x小于0时输出0,x大于0,输出y=x。NN模型训练等目标函数,
未完待续。。

你可能感兴趣的:(算法)