《電子技術應用》
您所在的位置:首頁 > 其他 > 業界動態 > 機器學習基礎:相似度和距離度量究竟是什么

機器學習基礎:相似度和距離度量究竟是什么

2019-10-09

  相似度度量和距離度量在整個機器學習領域都是非?;A的概念,數據科學家 Gonzalo Ferreiro Volpi 近日通過淺顯易懂的推薦系統示例介紹了這些概念以及它們的計算方式。

  在推薦系統中,我們經常談到「相似度度量」這一概念。為什么?因為在推薦系統中,基于內容的過濾算法和協同過濾算法都使用了某種特定的相似度度量來確定兩個用戶或商品的向量之間的相等程度。所以總的來說,相似度度量不僅僅是向量之間的距離。

  注:我的所有工作都可在我的 GitHub 頁面查看:https://github.com/gonzaferreiro,其中當然也包括本文內容的代碼庫以及有關推薦系統的更多內容。

  在任意類型的算法中,最常見的相似度度量是向量之間夾角的余弦,即余弦相似度。設 A 為用戶的電影評分 A 列表,B 為用戶的電影評分 B 列表,那么它們之間的相似度可以這樣計算:

640.webp (23).jpg

  從數學上看,余弦相似度衡量的是投射到一個多維空間中的兩個向量之間的夾角的余弦。當在多維空間中繪制余弦相似度時,余弦相似度體現的是每個向量的方向關系(角度),而非幅度。如果你想要幅度,則應計算歐幾里德距離。

  余弦相似度很有優勢,因為即使兩個相似的文件由于大小而在歐幾里德距離上相距甚遠(比如文檔中出現很多次的某個詞或多次觀看過同一部電影的某用戶),它們之間也可能具有更小的夾角。夾角越小,則相似度越高。

640.webp (22).jpg

  如下例所示,來自 www.machinelearningplus.com

  上圖統計了 sachin、dhoni、cricket 這三個詞在所示的三個文檔中的出現次數。據此,我們可以繪出這三個向量的圖,從而輕松地看出衡量這些文檔的余弦和歐幾里德距離的差異:

640.webp (21).jpg

  按照定義,常規余弦相似度反映了方向的差異,而不是位置的差異。因此,使用余弦相似度指標無法考慮到用戶評分這樣的差異。調整后余弦相似度可以緩解這一問題,具體做法是從每對共同評分的配對減去各自用戶的平均評分,其定義如下:

640.webp (20).jpg

  我們看看下面這個來自 Stack Overflow 的例子,這能更好地解釋余弦相似度和調整過的余弦相似度之間的差異:

  假設一位用戶為兩部電影分別給出了 0~5 的評分。

640.webp (19).jpg

640.webp (18).jpg

  直觀而言,我們可以看到用戶 b 和 c 的品味相近,而 a 則頗為不同。但常規的余弦相似度卻給出了不一樣的結果。在這樣的案例中,計算調整后余弦相似度能讓我們更好地理解用戶之間的相近程度。

640.webp (17).jpg

  順便一提,在上一篇有關推薦系統的文章中,我們給出了以下用于計算調整后余弦相似度的函數:

  from scipy import spatial

  def adjusted_cos_distance_matrix(size, matrix, row_column):

  distances = np.zeros((size,size))

  if row_column == 0:

  M_u = matrix.mean(axis=1)

  m_sub = matrix - M_u[:,None]

  if row_column == 1:

  M_u = matrix.T.mean(axis=1)

  m_sub = matrix.T - M_u[:,None]

  for first in range(0,size):

  for sec in range(0,size):

  distance = spatial.distance.cosine(m_sub[first],m_sub[sec])

  distances[first,sec] = distance

  return distances

  使用這個函數的方式非常簡單,只需輸入:

  matrix:這就是用戶之間的評分或觀點等你衡量的東西或你的業務商品的原始矩陣。

  row_columns:如果你衡量的是列之間的距離,則設為 1;如果你衡量的是行之間的距離,則設為 0;

  size:所得矩陣的所需大小。也就是說,當尋找用戶或商品相似度時,這就是用戶或商品的數量。所以如果有 500 個不同用戶,則距離矩陣的大小就為 500×500。

  下面給出了一個參考示例:

  user_similarity = adjusted_cos_distance_matrix(n_users,data_matrix,0)

  item_similarity = adjusted_cos_distance_matrix(n_items,data_matrix,1)

  最后,我們簡要回顧一些可用在推薦系統中計算相似度的其它方法,但也可用于機器學習中其它任何基于距離的算法:

  1. 歐幾里德距離:如果繪制在 n 維空間中,相似的項取決于彼此之間的相近程度。

    640.webp (16).jpg

  2. 皮爾森相關性或相關相似度:告訴了我們兩個項之間的相關程度。相關性越高,則相似度越高。

640.webp (14).jpg

  3. 均方差:在于計算用戶評分之間的平均平方差。MSE 更側重于懲罰更大的錯誤。

640.webp (13).jpg

  然后:

640.webp (12).jpg

  其中 |??????| 是用戶 ?? 和 ?? 都評價過的商品的數量。

  用戶-用戶以及商品-商品相似度示例

  我們借助之前介紹推薦系統的文章來簡要回顧一下協同過濾的工作方式:假設我喜歡《盲刺客》和《莫斯科紳士》這兩本書;我的朋友 Matias 也喜歡《盲刺客》和《莫斯科紳士》,但也還喜歡《Where the crawdads sing》。看起來我與 Matias 有一樣的興趣。所以你可能會想我也會喜歡《Where the crawdads sing》,即使我還沒讀過它。協同過濾也正是基于這一邏輯,只是你不僅可以比較用戶,也可以比較商品。

  我們可視化地比較看看推薦系統的用戶-用戶相似度與商品-商品相似度之間的差異:

  用戶-用戶相似度

  商品-商品相似度

640.webp (11).jpg

640.webp (10).jpg

  現在,理解了這一點,我們用下面的示例解釋說明一些度量,我認為這清楚辨明了用戶-用戶以及商品-商品相似度:

  用戶-用戶相似度詳解

640.webp (9).jpg

  這里給出了一個用戶電影評分矩陣。為了以更加實用的方式理解這一點,我們先根據上表計算一下用戶 (A, C) 和 (B, C) 的相似度。用戶 A 和 C 共同評分的電影是 x2 和 x4,B 和 C 共同評分的電影是 x2、x4、x5。知道了這些信息后,我們計算皮爾森相關性或相關相似度:

640.webp (8).jpg

  A 和 C 之間的相關性比 B 和 C 之間的相關性大。因此,A 和 C 更相似,A 喜歡的電影會被推薦給 C,C 喜歡的也會被推薦給 A。

  商品-商品相似度詳解

640.webp (7).jpg

  這里的平均商品評分(mean item rating)是給定商品的所有評分的平均(比較看看我們在用戶-用戶過濾中看到的表格)。這里要計算的不是用戶-用戶相似度,而是商品-商品相似度。要做到這一點,我們首先需要找到給這些商品評分過的用戶,然后再基于這些評分來計算這些商品之間的相似度。我們計算一下電影 (x1, x4) 和 (x1, x5) 之間的相似度。給電影 x1 和 x4 評過分的用戶是 A 和 B,而給電影 x1 和 x5 評過分的用戶也是 A 和 B。

640.webp (6).jpg

  x1 和 x4 的相似度大于 x1 和 x5 的相似度?;谶@些相似度值,如果有任何用戶搜索電影 x1,他們將被推薦 x4;反之亦然。

  關于推薦系統的內容就到此為止了。但是,請記住相似度度量和距離度量在整個機器學習領域都是非常基礎的概念,理解它們對進一步的學習至關重要。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩亚洲激情| 在线看日韩欧美| 免费观看成人www动漫视频| 亚洲欧美日韩一区二区在线| 99re66热这里只有精品4| 久久精品视频导航| 午夜亚洲一区| 亚洲在线一区| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 西西裸体人体做爰大胆久久久| 9人人澡人人爽人人精品| 亚洲精品美女在线观看| 亚洲级视频在线观看免费1级| 亚洲高清av在线| 亚洲国产精品久久久久秋霞影院| 久久国内精品视频| 亚洲国产精品成人| 亚洲日本一区二区三区| 亚洲精品视频免费观看| 亚洲剧情一区二区| 一二美女精品欧洲| 亚洲一区二区精品在线观看| 亚洲免费一区二区| 欧美亚洲自偷自偷| 久久久久一区二区| 免费成人毛片| 欧美经典一区二区| 欧美日韩视频| 国产精品亚发布| 国产亚洲在线观看| 伊人精品成人久久综合软件| 亚洲福利专区| 99视频精品在线| 亚洲男人av电影| 久久精品视频在线观看| 亚洲精品国产精品久久清纯直播 | 亚洲国产欧美精品| 日韩亚洲精品电影| 午夜精品国产更新| 亚洲国产乱码最新视频| 一区二区三区久久精品| 欧美一区二区三区在线观看视频 | 国产精品视频男人的天堂| 国内成人精品一区| 亚洲精品综合在线| 亚洲专区一区二区三区| 亚洲国产精品成人一区二区| 一级成人国产| 久久精品国产久精国产爱| 欧美成人精品一区| 国产精品久久久久一区二区三区| 韩日欧美一区二区| 夜夜嗨av一区二区三区四季av| 午夜精品视频在线观看| 亚洲精品永久免费精品| 亚洲性视频h| 久久久久女教师免费一区| 欧美日产国产成人免费图片| 国产日韩视频| 亚洲精品一区在线观看香蕉| 翔田千里一区二区| 99v久久综合狠狠综合久久| 欧美伊人久久| 欧美日韩成人综合天天影院| 国产欧美一区二区三区在线老狼| 亚洲观看高清完整版在线观看| 亚洲在线视频观看| 日韩一区二区精品视频| 久久久7777| 欧美视频一区| 亚洲电影第1页| 午夜精品电影| 亚洲午夜黄色| 免费在线观看一区二区| 国产精品影片在线观看| 亚洲精品美女在线观看播放| 欧美影院成年免费版| 亚洲一区欧美激情| 欧美国产精品v| 好看的av在线不卡观看| 亚洲婷婷综合久久一本伊一区| 亚洲国产精品视频| 久久国产精彩视频| 国产精品盗摄久久久| 亚洲激情二区| 亚洲高清视频一区二区| 欧美伊人久久久久久午夜久久久久| 欧美美女bbbb| 尤物精品在线| 欧美在线黄色| 欧美一级大片在线免费观看| 欧美日韩免费观看一区二区三区| 在线观看福利一区| 欧美在线视频日韩| 欧美淫片网站| 国产精品久久久久天堂| 一区二区欧美国产| 99国产成+人+综合+亚洲欧美| 久久午夜精品| 狠狠色狠狠色综合日日五| 午夜精品国产更新| 性8sex亚洲区入口| 国产精品久久久久天堂| 一区二区三区四区在线| 一区二区三区免费在线观看| 欧美久久在线| 亚洲精品一区在线观看| 日韩视频中文字幕| 欧美激情精品久久久久久免费印度| 1024国产精品| 亚洲人成网站777色婷婷| 六月丁香综合| 精品福利av| 亚洲黄色av一区| 免费视频最近日韩| 亚洲二区在线观看| 亚洲裸体在线观看| 欧美精品久久久久久久| 亚洲人成网站影音先锋播放| 日韩一区二区高清| 欧美日韩在线播| 一区二区三区毛片| 午夜精品久久久久久久久久久久久 | 99国产精品久久久久老师| 欧美成人一二三| 亚洲人成7777| 夜夜嗨网站十八久久| 欧美日韩亚洲一区| 一本一本久久a久久精品综合妖精| 亚洲性视频网址| 国产精品久久久久久久浪潮网站| 亚洲视频高清| 欧美一区二区三区在线视频 | 巨胸喷奶水www久久久免费动漫| 国内精品久久久久久| 久久精品国产一区二区三区| 美女日韩在线中文字幕| 亚洲欧洲综合| 亚洲天堂偷拍| 国产欧美日韩一区二区三区在线| 欧美一区二视频| 久久夜色精品国产欧美乱极品| 亚洲第一中文字幕| 在线亚洲观看| 国产精品伊人日日| 亚洲高清资源| 欧美三日本三级少妇三99| 亚洲午夜视频| 久久免费视频观看| 91久久精品国产91性色tv| 亚洲小说区图片区| 国产一区二区视频在线观看| 亚洲人妖在线| 国产精品a级| 欧美亚洲专区| 欧美激情视频给我| 在线亚洲免费视频| 久久久美女艺术照精彩视频福利播放| 在线看片第一页欧美| 亚洲一区二区三区视频| 国产亚洲欧美日韩一区二区| 亚洲理论电影网| 国产精品一区二区欧美| 亚洲国产精品国自产拍av秋霞| 欧美多人爱爱视频网站| 亚洲一区视频| 蜜桃av噜噜一区| 亚洲色无码播放| 久久精品中文| 日韩一级片网址| 久久人91精品久久久久久不卡| 怡红院精品视频| 亚洲欧美综合v| 亚洲激情在线激情| 久久国产欧美精品| 亚洲精品国产精品国自产观看 | 久久青青草综合| 中国成人亚色综合网站| 久久天天狠狠| 亚洲午夜免费福利视频| 欧美aaa级| 亚洲欧美在线视频观看| 欧美乱人伦中文字幕在线| 欧美在线free| 国产精品v日韩精品| 亚洲国产婷婷香蕉久久久久久| 国产精品久久久久秋霞鲁丝| 亚洲精品视频免费观看| 国产欧美日韩亚州综合| 亚洲一级在线观看| 在线精品一区| 久久国产视频网| 亚洲视频在线一区| 欧美+亚洲+精品+三区| 性欧美18~19sex高清播放| 欧美日韩视频在线一区二区观看视频 | 亚洲综合视频在线| 亚洲人成久久| 美女尤物久久精品| 香蕉成人久久|