Quora

2020-03-06  本文已影响0人  xiiatuuo

整体

Quora是如何做推荐的, 原文在 machine-learning-for-qa-sites-the-quora-example
看到了这篇文章,然后顺便追了相关的参考文献
首先是这篇综述
Quora主要考虑的三个因素:Relevance、Quality和Demand。

Feed Ranking

目标:Present most interesting stories for a user at a given time
Interesting = topical relevance + social relevance + timeliness
Stories = questions + answers

Answer Ranking

A Machine Learning Approach to Ranking Answers on Quora

Ask2Answers

Ask-To-Answer-as-a-Machine-Learning-Problem
Given a question and a viewer rank all other users based on how 「well-suited」 they are。其中「well-suited」= likelihood of viewer sending a request + likelihood of the candidate adding a good answer,既要考虑浏览用户发送邀请的可能性,又要考虑被邀请者受邀回答的可能性。

Topic Network

The-Quora-Topic-Network

User Trust/Expertise Inference

Quora需要找出某个领域的专家,在某个领域里回答问题的多少,接收到的顶、踩、感谢、分享、收藏及浏览等数据。另外还有一个很重要的是专业度的传播效应。比如Xavier在推荐系统领域对某个答案顶了一下,那么这个答案作者在推荐系统领域很可能具备较高的专业度。
The-Product-Engineering-Behind-Most-Viewed-Writers 这个感觉稍微有点关系

数据案例挖掘

Mapping-the-Discussion-on-Quora-Over-Time-through-Question-Text

趋势

下面👇针对我比较感兴趣的点一个个看————————————

A Machine Learning Approach to Ranking Answers on Quora

Early Attempts and Baselines
使用upvotes/downvotes进行简单的打分,优点是简单、快速、可解释性强,是一个很好的baseline(想使用观看次数来进行优化,结果发现效果不是很好)
缺点如下,所以想到用丰富的结构化信息:

We explored many different ways to know the true quality of answers.

Features and Models
Feature engineering is a major contributor to the success of a model and it's often the hardest part of building a good machine learning system.The features we tried can broadly be categorized into three groups

The Quora Topic Network

Introduction
topics form an important organizational backbone for Quora's corpus of knowledge。Our goal is to become the Internet's best source for knowledge on as many of these topics as possible。

Quora's Diversification
topic的数量其实代表了多样性的变化,于是计算了拥有100个好问题的topic的数量。
什么是好问题:除了作者,至少有一个人觉得这个问题有价值。2013年底大概5000个topic,而且增长很快,这说明多样性在变好
Defining the Probabilistic Topic Network
topic涨得快,但是新的领域知识提高的没那么快,所以需要将这些知识进行组织和整理。
一个问题可以打上多个topic可以提供topic之间的隐含关系。因此可以只针对topic进行网络关系。

Hints of the Topic Hierarchy
每一个节点的入度是一个简单的衡量手段。直接把所有指向这个node的权重加起来就行了。
假设topic存在层级关系,那么一个topic就有可能至少从两个不同的途径获得一个大的入度,所有节点入度的平均数和中位数应该会差别很多。中位数主要收到那些典型具体的topic影响,入度应该会比较低,而且随着越来越多的有特点的topic加入进来,中位数会越来越低。平均数主要收到那些大的节点的入度影响,应该会比较大一点,而且相对变化不会那么大。使用NetworkX统计出来的情况确实是这样,所以我们可以从topic网络中演绎出层级关系
Diving Deeper into the Topic Hierarchy

Topic Clustering
我们可以使用层级主题聚类来进行topic的表达。具体的算法如下:

上一篇下一篇

猜你喜欢

热点阅读