1. 程式人生 > >1分鐘瞭解基於內容的推薦,pm又懂了

1分鐘瞭解基於內容的推薦,pm又懂了

前天的《1分鐘瞭解協同過濾,pm都懂了》,很多同學點了贊,今天接著用通俗的語言說說“基於內容的推薦”,也保證pm弄懂。

什麼是基於內容的推薦(Content-based Recommendation)?

:通過使用者歷史感興趣的資訊,抽象資訊內容共性,根據內容共性推薦其他資訊。

比如,如何通過基於內容的推薦,來對求職者A進行職位推薦?

:簡要步驟如下

  • 找到使用者A歷史感興趣的職位集合

  • 找到職位集合的具化內容

  • 抽象具化內容的共性內容

  • 由這些共性內容查詢其他職位,並實施推薦

具體實施步驟如何?

:簡要步驟如下

(1)得到求職者A訪問過三個職位,假設分別是{zw1, zw2, zw3},這些資料可以從歷史日誌得到。

(2)由職位集合得到職位具化內容

zw1 -> {程式設計師, 北京, 月薪8000, 3年經驗, 本科}

zw2 -> {程式設計師, 北京, 月薪6000, NULL, 研究生}

zw3 -> {程式設計師, 北京, 月薪6000, 5年經驗, NULL}

這些資料可以從職位資料庫裡得到。

(3)由職位具化內容抽象出職位共性資訊

例如,由上述職位1,職位2,職位3抽象出的共性職位資訊為:

{程式設計師, 北京, 月薪6000+, NULL, NULL}

(4)由這些共性內容查詢其他職位並實施推薦

以{程式設計師, 北京, 月薪6000+, NULL, NULL}為查詢條件,查詢職位資料庫,並按照一些規則進行排序(例如,最新發布的職位先推薦,點選過的職位不推薦等),完成推薦。

如果查詢的結果集過小,可以縮小條件召回,例如可以將查詢條件縮小為{程式設計師, 北京, 月薪3000+, NULL, NULL}

基於內容的推薦,原理如上,希望這1分鐘,大家能有收穫。

人肉推薦:

協同過濾,以及基於內容的推薦,都需要使用者的歷史日誌資訊,如果沒有歷史日誌資訊,如何對使用者進行推薦呢?靜候下一個1分鐘。

致敬 原創: 沈劍 架構師之路 3月16日