《Programming Collective Intelligence》筆記之 Chapter 2

來源:互聯網
上載者:User
對歐幾裡德距離(Euclidean Distance)的理解

假設主體為 a, 對主體的評價為 a1, a2, a3

假設主體為 b, 對主體的評價為 b1, b2, b3

設某座標系有 x1, x2, x3 三條座標軸,則 a, b 在此座標系中的座標可以表示為 (a1, a2, a3) 和 (b1, b2, b3)

而 a 與 b 的距離即可作為它們的相似程度,距離越近越相似。

通常情況下,a與b的相似性取距離的倒數:Similarity(a,b) = 1/Distance(a, b) 優點 方便理解,日後凡是要求2種物品的相似性,都可以先在腦海中想像一個座標繫上的2個點,然後再去思考它們的維度應該是什麼。對於電影來說,維度為評分,對於連結來說,維度是訪問量。 缺點 可參考維度越多,相似性越小。
假設平面上2個點 a(0,0), b(1,1) 此時它們的相似性是 1/(1+2) = 1/3 假設增加一個維度後,變成 a(0,0,0), b(1,1,1),則此時它們的相似性是 1/(1+3) = 1/4 顯然,維度增加後,它們的相似性變小了。除非新增的維度值相差為0. 對皮爾森相關係數(Pearson Correlation Coefficient)的理解

同樣計算 a, b 兩個產品的相似性,分別以 a, b 的評價為 x, y 座標軸,則可得到3個點 (a1, b1), (a2, b2), (a3, b3) 通過計算這3個點在座標系中的相關係數,可得到相似性。 優點 相對於 Euclidean Distance 來說,資料越多越準確 所謂 User-based Filtering 和 Item-Based Filtering

設產品數量為 m, 使用者數量為 n, 現需要為使用者推薦他感興趣,但還沒購買的產品。 User-based Filtering 的做法 算出其他使用者與目前使用者的相似性
遍曆使用者
遍曆產品 以其他使用者為媒介,算出對未購買產品的興趣度
遍曆使用者
遍曆未購買產品 Item-based Filtering 的做法 算出所有產品的相似性
遍曆產品 遍曆產品 以已購買產品為媒介,算出未購買產品的興趣度
遍曆已購買產品 遍曆未購買產品 總結 兩者都需要3個要素,(使用者,使用者,產品),或(使用者,產品,產品) 一個利用使用者與使用者之間的相似性,計算出產品的興趣度 另一個利用產品與產品之間的相似性,計算出產品的興趣度 User-based 僅適用於緊緻型(dense)資料,計算量大,不可分步驟計算 Item-based 可適用於稀疏型(sparse)資料,計算量小,並可分步驟計算

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.