聯絡使用者和物品,解決資訊過載問題
雅虎、dmoz、hao123
將著名的**分門別類,從而方便使用者根據類別查詢**。但是隨著網際網路規模的不斷擴大,分類目錄**也只能覆蓋少量的熱門**,越來越不能滿足使用者的需求。
谷歌亞馬遜、netflix、youtube、hulu
不需要使用者提供明確的需求,而是通過分析使用者的歷史行為給使用者的興趣建模,從而主動給使用者推薦能夠滿足他們興趣和需求的資訊。更好地發掘物品的長尾。
搜尋引擎滿足了使用者有明確目的時的主動查詢需求,而推薦系統能夠在使用者沒有明確目的的時候幫助他們發現感興趣的新內容。
首先,推薦系統需要滿足使用者的需求,給使用者推薦那些令他們感興趣的圖書。
其次,推薦系統要讓各出版社的書都能夠被推薦給對其感興趣的使用者,而不是只推薦幾個大型出版社的書。
因此在評測乙個推薦演算法時,需要同時考慮三方的利益,乙個好的推薦系統是能夠令三方共贏的系統。
(1) 通過日誌系統獲得使用者行為資料,並按照一定格式生成乙個標準的資料集;
(2) 將資料集按照一定的規則分成訓練集和測試集;
(3) 在訓練集上訓練使用者興趣模型,在測試集上進行**;
(4) 通過事先定義的離線指標評測演算法在測試集上的**結果。
不需要有對實際系統的控制權
不需要使用者參與實驗
速度快,可以測試大量演算法
無法計算商業上關心的指標
離線實驗的指標和商業指標存在差距
使用者調查需要有一些真實使用者,讓他們在需要測試的推薦系統上完成一些任務。在他們完成任務時,我們需要觀察和記錄他們的行為,並讓他們回答一些問題。最後,我們需要通過分析他們的行為和答案了解測試系統的效能。
招募測試使用者代價較大,很難組織大規模的測試使用者,因此會使測試結果的統計意義不足。此外,在很多時候設計雙盲實驗非常困難,而且使用者在測試環境下的行為和真實環境下的行為可能有所不同,因而在測試環境下收集的測試指標可能在真實環境下無法重現。
週期比較長,必須進行長期的實驗才能得到可靠的結果。因此一般不會用ab測試測試所有的演算法,而只是用它測試那些在離線實驗和使用者調查中表現很好的演算法。其次,乙個大型**的ab測試系統的設計也是一項複雜的工程。乙個大型**的架構分前端和後端,從前端展示給使用者的介面到最後端的演算法,中間往往經過了很多層,這些層往往由不同的團隊控制,而且都有可能做ab測試。如果為不同的層分別設計ab測試系統,那麼不同的ab測試之間往往會互相干擾。比如,當我們進行乙個後台推薦演算法的ab測試,同時網頁團隊在做推薦頁面的介面ab測試,最終的結果就是你不知道測試結果是自己演算法的改變,還是推薦介面的改變造成的。因此,切分流量是ab測試中的關鍵,不同的層以及控制這些層的團隊需要從乙個統一的地方獲得自己ab測試的流量,而不同層之間的流量應該是正交的。
《flink基礎教程》讀後心得
無狀態流處理和有狀態流處理區別 黑條代表輸入記錄,無狀態流處理每次只轉換一條輸入記錄,並且根據最新的輸入記錄輸出結果 白條 有狀態流處理維護所有已處理記錄的狀態值,並根據每條輸入記錄更新狀態,因此輸出記錄 灰條 是綜合考慮多個事件後的結果 在流處理中一致性分為三個級別 exactly once 保證...
《推薦系統實踐》 讀後總結
在剛剛畢業的時候,當時的領導就問了乙個問題 個性化推薦與精準營銷的區別,當時朦朦朧朧回答不出。現在想想,他們可以說是角度不同。精準營銷可以理解為幫助物品尋找使用者,而個性化推薦則是幫助使用者尋找物品。那麼什麼是推薦系統呢?簡單的來說,就是幫助使用者和物品聯絡起來,讓資訊展現在對他感謝興趣的使用者面前...
推薦系統實踐
實驗方法 測評指標 測評維度 使用者活躍度和物品流行度 長尾分布 一般來說,不活躍的使用者要麼是新使用者,要麼是只來過 一兩次的老使用者。那麼,不同活躍度的使用者喜歡的物品的流行度是否有差別?一般認為,新使用者傾向於瀏覽熱門的物品,因為他們對 還不熟悉,只能點選首頁的熱門物品,而老使用者會逐漸開始瀏...