我正在研究以下问题。我有一堆用户和N本书。每个用户都会为他阅读的所有图书(可能是N本书的子集)创建一个有序的排名,例如,Book 1> Book 40> Book 25。
现在,我想将这些个人用户排名转换为所有书籍的单一排序排名。
是否有任何好的或标准的方法可以尝试?到目前为止,我正在考虑将Bradley-Terry模型应用于成对比较,但是我想知道是否还有其他功能。
2
我认为您会遇到稀疏性的许多问题,除非用户(出于某种原因)阅读了类似的书。但是给定n个人,并且鉴于大多数人阅读的书籍相对较少,因此绝大多数配对中只有一个人可以进行比较。(中位数为每人每年6个,请参阅皮尤
—
彼得·弗洛姆–莫妮卡复活
(+1)raegtin,您提出的问题很有趣。我喜欢BT型号,但似乎有点勉强。您是否熟悉协作过滤文献?问题不一样,但是可以借鉴一些概念和技术。这里要解决的一个问题是,为什么人们首先应该相信这些书能够获得明确,明确的排名。(例如,您将如何处理两人两书的情况?)
—
主教
@Peter Flom:是的,大多数人对没有比较。但我希望这是很好的,因为如果你知道A> B和B> C,那么即使A和C不能直接进行比较,就可以推断出A> C.
—
raegtin
@cardinal:是的,BT模型在这里似乎是强制性的,但这是我现在唯一想到的。我熟悉协作式过滤的文献,但是我不确定在这里如何应用,因为我想要排名,而不是相似之处。的确,单个全球排名不一定有意义(例如,比较儿童读物与成人读物,小说与非小说比较是否有意义),但是实际上,它仍然有用。“最好的”书单一直都在弹出:)
—
raegtin
另外,我不太在乎紧密的订购(例如,排名第一的书是否真的比第二册更好),而是总体上的订购(例如,我确实希望订购中排名前10%的书能够优于最低的10%或中间的10%)。
—
raegtin