個人化推薦系統與潛在因子模型

Arthur
Citiesocial Product Team
Jan 25, 2022

每當討論到推薦系統,現在第一討論到的概念應該都是:協同過濾(Collaborative Filtering):

以上兩篇範例都是以計算兩列資料的交集,如兩位使用者瀏覽商品的相似程度,去決定要推薦給使用者甚麼。

上列將協同過濾視為一種矩陣架構,是一種設計個人化推薦系統的方式;在這篇文章要討論的是如何用潛在因子模型(Latent Variable Model)去設計個人化推薦系統。

source

實務上的協同過濾挑戰

相似度矩陣潛在因子模型最根本的設計上差異,在於如何解讀「協同過濾」。

前者是從字面上去定義「協同」,因此直接從資料的重疊率上去著手;後者,則視「協同」為對問題的抽象形容,在技術上則是將要解決的問題視為廣義的分群分析(Clustering)問題。

舉例說明,在上述之相似度矩陣方法下,假設使用者A購買了口罩、帽子、和布鞋,使用者B購買了口罩和蚊香,使用者C購買了口罩和布鞋。

若今天出現了使用者D在站上購買了帽子和布鞋,與上述使用者A、B、C進行相似度分析(先不論使用哪種計算方式),都可以看出使用者A與D的消費行為最為相近,如下:

因此此推薦系統就選擇推薦(使用者A購買過但是使用者D尚未購買的)口罩給使用者D。

這種作法在理論上其實沒甚麼太大的問題,但是在垂直電商實務中,則會碰到幾個難題:

  1. 資料分佈問題:除非你的平台是全方位電商,或是核心銷售品類複購率高的平台,否則消費者通常購買品項的重疊率有限。(可參考這篇
  2. 廣告績效行銷的後遺症:如果你的平台很依賴廣告績效行銷來帶入流量,那大部分消費者訂單中重疊的商品,很有可能只是你廣告行銷最兇的商品,跟實際消費者的喜好沒甚麼關係。
  3. 族群消費習慣特性:打個比方其實男性消費頻率遠低於女性,很多男性商品是女性在協助購買。因此在實務上,要去根據購買的商品直接去判斷使用者喜好,其實有很多的使用者行為產生的噪音干擾。
  4. 冷啟動問題:如果尚未被使用者購買的商品,或是剛起步的商品,是不是就很難被推薦邏輯捕捉到?我們被迫需要設計另外一套新商品的「冷啟動」邏輯。

以上是四種垂直電子商務常見的實務挑戰,促使我們尋求更精準地去分析消費者購買動機的方法。

想繼續閱讀關於潛在因子模型和相似度矩陣差異之資訊,可以參考這篇:

潛在因子模型

要了解甚麼是潛在因子(Latent Variables),最重要的就是要了解使用者消費背後的情境。

假設今天我們在銷售口罩、帽子、蚊香、布鞋和按摩椅好了。

消費者究竟為什麼要購買這些東西呢?

假設我們用某種情境標籤或是商品分類去將商品分群:

那如果我們現在又回顧剛剛的使用者A、B,C、D呢?

那我們來看看,使用者A跟D消費的商品,在分群上告訴我們甚麼有趣的資訊(紅色為A購買、紫色為A與D皆有購買):

在這邊就會發現使用者D購買了兩個符合「服裝飾品」和「外出用品」的商品,但是卻沒有購買任何「健康保健」商品。

從其消費的情境和品項來看,與其推薦口罩給這位使用者,似乎可以考慮改推薦符合「服裝飾品」和「外出用品」的商品?

這邊討論到的居家用品、服裝飾品、外出用品、健康保健等情境或分類,就是一種潛在因子。

即使這邊的使用者D沒有直接表達自己喜歡「服裝飾品」和「外出用品」,我們透過分析使用者消費資料和潛在因子的標記,也是可以過濾掉一些使用者不感興趣的潛在因子和相關商品,另一方面還可以推薦過去從來沒有使用者購買過的商品。

潛在因子模型的設計

在開始設計一套推薦系統之前,我會先建議內部要整理出一套涵蓋率很高的標籤系統(如上面討論到的居家用品、服裝飾品、外出用品、健康保健等分類或情境標籤)。

如果來不及手動自建,可以考慮用自然語言處理的方式去自動上標籤 — 當然,這就需要投入更多技術資本,而且以大部分電商的資料量和多樣性而言,機器學習抓到的標籤品質都沒有人工抓到的好。

以上分類準備好以後,我們就可以開始參考一些務實且容易上手的建置方法了。

如果是初次進入潛在因子模型的領域,會建議先參考貝氏定理:

其公式:

我們可以將P(A)理解為使用者對某個標籤的興趣,然後理解B為使用者瀏覽或購買有此標籤的商品

如此一來,P(A|B)就是使用者瀏覽或購買此標籤的相關商品後的喜好,這樣就能夠用貝氏定理去設計一套使用者對標籤的喜好程度之統計模型。

除了貝氏定理以外,另外可以參考的一些統計模型還有研究方法中常使用的項目反應理論(Item Response Theory),也是可以從使用者的多次瀏覽和購買行為去估算對於特定標籤的喜好。

若想要再繼續深耕潛在因子模型,進階的方法則可以參考使用PCA(Principal Component Analysis)或是 LMF(Latent Matrix Factorization 這類分群分析方法,如果使用得當,不但可省下許多手動上標籤的功夫,還可以達到更高的推薦轉換率。

(根據上篇提到的 Netflix推薦系統競賽,LMF是目前業界成效轉換率數一數二好的方法)

個人化推薦的機會

在電商產業中,進入網站或App的宏觀訂單轉換率一般在1-4%之間

利用內部建立的個人化推薦系統,我們在營運程序上進行了調整。經過數個月的測試觀察,發現:

  1. 站內建立個人化推薦頁面:推薦頁面的宏觀轉換率超過10%
  2. 用個人化喜好去自動調整網站內商品的顯示排序:排序從原本的4%左右提升至10%以上。
  3. 用個人化喜好去自動調整系統發出之eDM內部的推薦商品:點入後的宏觀轉換率達5%以上。

因此,若你的電商平台已經有可觀的消費流量,在個人化推薦上做一點投資是相當值得的。

--

--

Arthur
Citiesocial Product Team

Citiesocial 產品總監。連續創業家。工程師。