<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ?【機(jī)器學(xué)習(xí)】數(shù)據(jù)科學(xué)中 17 種相似性和相異性度量(上)

          共 6404字,需瀏覽 13分鐘

           ·

          2022-01-10 02:34

          本文解釋了計算距離的各種方法,并展示了它們在我們?nèi)粘I钪械膶嵗?/span>限于篇幅,便于閱讀,將本文分為上下兩篇,希望對你有所幫助。

          "There is no Royal Road to Geometry."—歐幾里得

          ?? . 簡介

          相似性和相異性

          在數(shù)據(jù)科學(xué)中,相似性度量是一種度量數(shù)據(jù)樣本之間相互關(guān)聯(lián)或緊密程度的方法。相異性度量是說明數(shù)據(jù)對象的不同程度。

          相異性度量和相似性度量通常用于聚類,相似的數(shù)據(jù)樣本被分組為一個聚類,所有其他數(shù)據(jù)樣本被分組到其他不同的聚類中心中。它們還用于分類(例如 KNN),它是根據(jù)特征的相似性標(biāo)記數(shù)據(jù)對象。另外還用于尋找與其他數(shù)據(jù)樣本相比不同的異常值(例如異常檢測)。

          相似性度量通常表示為數(shù)值:當(dāng)數(shù)據(jù)樣本越相似時,它越高。通常通過轉(zhuǎn)換表示為零和一之間的數(shù)字:零表示低相似性(數(shù)據(jù)對象不相似)。一是高相似度(數(shù)據(jù)對象非常相似)。

          舉一個例子,有三個數(shù)據(jù)點(diǎn) A、B 和 C ,每個數(shù)據(jù)點(diǎn)只包含一個輸入特征。每個數(shù)據(jù)樣本在一個軸上可以有一個值(因為只有一個輸入特征),將其表示為 x 軸。并取兩個點(diǎn),A(0.5)、B(1) 和 C(30),A 和 B 與 C 相比彼此足夠接近,因此,A 和 B 之間的相似度高于 A 和 C 或 B 和 C。換句話說,A 和 B 具有很強(qiáng)的相關(guān)性。因此,距離越小,相似度就會越大。可以認(rèn)為這是展示三個數(shù)據(jù)點(diǎn) A、B 和 C 之間差異的最簡單的例子。

          指標(biāo)

          當(dāng)且僅當(dāng)滿足以下四個條件時,給定的距離(例如相異性)才是度量標(biāo)準(zhǔn):

          1 - 非負(fù)性:?,對于任何兩個不同的觀察??和?。
          2 - 對稱性:??對于所有??和?。
          3 - 三角不等式:??對于所有?。
          4 -??僅當(dāng)??時。

          距離度量是分類的基本原則,就像 k-近鄰分類器算法一樣,它測量給定數(shù)據(jù)樣本之間的差異。此外,選擇不同的距離度量會對分類器的性能產(chǎn)生很大影響。因此,計算對象之間距離的方式將對分類器算法的性能起到至關(guān)重要的作用。

          ?? . 距離函數(shù)

          用于測量距離的技術(shù)取決于正在處理的特定情況。例如,在某些區(qū)域,歐幾里得距離可能是最佳的,并且對于計算距離非常有用。其他應(yīng)用程序需要更復(fù)雜的方法來計算點(diǎn)或觀測值之間的距離,如余弦距離。以下列舉的列表代表了計算每對數(shù)據(jù)點(diǎn)之間距離的各種方法。

          ? L2范數(shù),歐幾里得距離

          歐幾里得輪廓

          用于數(shù)值屬性或特征的最常見距離函數(shù)是歐幾里得距離,其定義在以下公式中:
          n 維空間中兩點(diǎn)之間的歐幾里德距離

          這個距離度量具有眾所周知的特性,例如對稱、可微、凸面、球面……

          在二維空間中,前面的公式可以表示為:
          二維空間中兩點(diǎn)之間的歐幾里德距離。

          它等于直角三角形斜邊的長度。

          此外,歐幾里得距離是一個度量,因為它滿足其標(biāo)準(zhǔn),如下圖所示。

          歐幾里得距離滿足成為度量的所有條件

          此外,使用該公式計算的距離表示每對點(diǎn)之間的最小距離。換句話說,它是從A點(diǎn)到B點(diǎn)的最短路徑(二維笛卡爾坐標(biāo)系),如下圖所示:

          歐幾里得距離是最短路徑(不包括量子世界中的蟲洞)

          因此,當(dāng)你想在路徑上沒有障礙物的情況下計算兩點(diǎn)之間的距離時,使用此公式很有用。這可以認(rèn)為是你不想計算歐幾里德距離的情況之一;而你希望使用其他指標(biāo),例如曼哈頓距離,這將在本文稍后將對此進(jìn)行解釋。

          歐氏距離無法為我們提供有用信息的另一種情況是,飛機(jī)的飛行路徑遵循地球的曲率,而不是直線(除非地球是平的,否則不是)。

          但是,解釋一下如何在機(jī)器學(xué)習(xí)的中使用歐幾里德距離。

          最著名的分類算法之一 --?KNN 算法,該算法使用歐幾里德距離對數(shù)據(jù)進(jìn)行分類。為了演示 KNN 如何使用歐幾里德度量,我們選擇了一個 Scipy 包的流行?iris?數(shù)據(jù)集。

          該數(shù)據(jù)集包含三種花:Iris-Setosa、Iris-Versicolor 和 Iris-Virginica,并具有以下四個特征:萼片長度、萼片寬度、花瓣長度、花瓣寬度。因此就有一個 4 維空間,在其中表示每個數(shù)據(jù)點(diǎn)。

          兩種特征空間中兩種花卉的鳶尾花數(shù)據(jù)集

          為了滿足簡單和演示目的,我們只選擇兩個特征:花瓣長度、花瓣寬度和不包括?Iris-virginica?數(shù)據(jù)。通過這種方式,我們可以在二維空間中繪制數(shù)據(jù)點(diǎn),其中 x 軸和 y 軸分別表示花瓣長度和花瓣寬度。

          訓(xùn)練數(shù)據(jù)集

          每個數(shù)據(jù)點(diǎn)都有自己的標(biāo)簽:Iris-Setosa?或?Iris-versicolor(數(shù)據(jù)集中的 0 和 1)。因此,該數(shù)據(jù)集可用于 KNN 分類,因為它本質(zhì)上是一種有監(jiān)督的 ML 算法。假設(shè)我們的 ML 模型(k = 4?的 KNN)已經(jīng)在這個數(shù)據(jù)集上進(jìn)行了訓(xùn)練,我們選擇了兩個輸入特征只有 20 個數(shù)據(jù)點(diǎn),如上圖所示。

          到目前為止,KNN 分類器已準(zhǔn)備好對新數(shù)據(jù)點(diǎn)進(jìn)行分類。因此,要一種方法來讓模型決定新數(shù)據(jù)點(diǎn)可以分類的位置。

          預(yù)測新數(shù)據(jù)點(diǎn)的標(biāo)簽

          選擇歐幾里得距離是為了讓每個經(jīng)過訓(xùn)練的數(shù)據(jù)點(diǎn)投票給新數(shù)據(jù)樣本適合的位置:Iris-Setosa 或 Iris-versicolor。至此,新數(shù)據(jù)點(diǎn)到我們訓(xùn)練數(shù)據(jù)的每個點(diǎn)的歐幾里德距離都計算出來了,如下圖所示:

          當(dāng)k = 4時,KNN分類器需要選擇最小的四個距離,代表新點(diǎn)到以下點(diǎn)的距離:point1、point5、point8和point9,如圖所示:

          四個鄰居投票支持 Iris-Setosa

          因此,新的數(shù)據(jù)樣本被歸類為?Iris-Setosa。使用這個類比,可以想象更高的維度和其他分類器。

          如前所述,每個域都需要一種計算距離的特定方法。

          ? 平方歐幾里得距離

          顧名思義,平方歐幾里得距離等于歐幾里得距離的平方。因此,平方歐幾里得距離可以在計算觀測之間的距離的同時減少計算工作。例如,它可以用于聚類、分類、圖像處理和其他領(lǐng)域。使用這種方法計算距離避免了使用平方根函數(shù)的需要。

          n維空間中兩點(diǎn)之間的平方歐幾里得距離

          ② L1 范數(shù)、城市街區(qū)、曼哈頓或出租車距離

          曼哈頓輪廓

          該指標(biāo)對于測量給定城市中兩條街道之間的距離非常有用,可以根據(jù)分隔兩個不同地方的街區(qū)數(shù)量來測量距離。例如,根據(jù)下圖,A 點(diǎn)和 B 點(diǎn)之間的距離大致等于 4。

          現(xiàn)實世界中的曼哈頓距離

          創(chuàng)建此方法是為了解決計算給定城市中源和目的地之間的距離的問題,在該城市中,幾乎不可能直線移動,因為建筑物被分組到一個網(wǎng)格中,阻礙了直線路徑。因此得名城市街區(qū)。

          你可以說 A 和 B 之間的距離是歐幾里得距離。但是,你可能會注意到這個距離沒有用。例如,你需要有一個有用的距離來估計旅行時間或需要開車多長時間。相反,如果你知道并選擇街道的最短路徑,這會有所幫助。因此,這取決于如何定義和使用距離的情況。

          n維空間中兩點(diǎn)之間的曼哈頓距離表示為:

          對于二維網(wǎng)格,二維空間中兩點(diǎn)之間的曼哈頓距離公式可以寫成:

          回憶之前的 KNN 示例,計算從新數(shù)據(jù)點(diǎn)到訓(xùn)練數(shù)據(jù)的曼哈頓距離將產(chǎn)生以下值:

          使用曼哈頓距離的 KNN 分類(并列)

          顯而易見,有兩個數(shù)據(jù)點(diǎn)投票支持?Iris-Setosa,另外兩個數(shù)據(jù)點(diǎn)投票支持?Iris-versicolor,這意味著這是個平局。

          曼哈頓距離:平局!

          你可能在某個地方遇到過這個問題,一個直觀的解決方案是改變 k 的值,如果 k 大于 1,則減少 1,否則增加 1。

          但是,對于之前的每個解決方案,將獲得 KNN 分類器的不同行為。例如,在我們的示例中,k=4,將其更改為?k=3將導(dǎo)致以下值:

          將 k 減少 1

          這種花被歸類為花斑鳶尾。以同樣的方式,將其更改為?k=5?將導(dǎo)致以下值:

          將 k 增加 1

          這種花被歸類為Iris-Setosa。因此,由你決定是否需要增加或減少 k 的值。

          但是,有人會爭辯說,如果度量標(biāo)準(zhǔn)不是問題的約束條件,你可以更改它。例如,計算歐幾里得距離可以解決這個問題:

          改變距離度量也會打破平局

          這種花被強(qiáng)烈歸類為?Iris-Setosa

          在我看來,如果你不必更改曼哈頓距離并對 k 使用相同的值,那么添加新維度或特征(如果可用)也會打破平局。例如,將萼片寬度添加為新尺寸會導(dǎo)致以下結(jié)果:

          向模型添加新特征

          這種花被歸類為雜色鳶尾。

          這是 3-D 空間中的圖,其中 x 軸、y 軸和 z 軸分別代表萼片寬度、花瓣長度和花瓣寬度:

          Iris 數(shù)據(jù)集的 3-D 圖

          計算曼哈頓距離比前兩種方法計算速度更快。如公式所示,它只需要加減運(yùn)算,結(jié)果證明這比計算平方根和 2 的冪要快得多。

          國際象棋中主教使用曼哈頓距離在兩個相同顏色的水平或垂直塊之間移動:

          Bishop?使用曼哈頓距離(如果沒有看到,可通過將棋盤旋轉(zhuǎn) 45° 來想象一下)。換句話說,讓主教越過紅色方塊所需的移動次數(shù)(距離)等于曼哈頓距離,即 2。

          除此之外,如果數(shù)據(jù)存在許多異常值,曼哈頓距離將優(yōu)于歐幾里得距離。

          L1-norm?比?l2-norm?給出更稀疏的估計。除此之外,L1 范數(shù)L2 范數(shù)通常用于神經(jīng)網(wǎng)絡(luò)的正則化,以最小化權(quán)重或?qū)⒛承┲禋w零,就像套索回歸中使用的那樣。

          套索和嶺回歸的約束區(qū)域的形式(來源:[維基百科](https://en.wikipedia.org/wiki/Lasso_(statistics "維基百科")#/media/File:L1_and_L2_balls.svg))。

          如上圖所示,L1-norm 嘗試將 W1 權(quán)重歸零并最小化另一個權(quán)重。然而,L2 范數(shù)試圖最小化 W1 和 W2 的權(quán)重(如 W1 = W2)。

          這篇文章深入探討正則化,它的主要目標(biāo)是解釋常見的距離函數(shù),同時在這里說明一些用法并使其盡可能易于理解。

          ③ 堪培拉距離

          它是聚類中使用的曼哈頓距離的加權(quán)版本,如模糊聚類、分類、計算機(jī)安全[2]和火腿/垃圾郵件檢測系統(tǒng)。與之前的指標(biāo)相比,它對異常值的魯棒性更強(qiáng)。

          ④ L∞ 范數(shù),切比雪夫距離,最大距離

          切比雪夫輪廓

          兩個 n維 觀測值或向量之間的切比雪夫距離(Chebyshev)等于數(shù)據(jù)樣本坐標(biāo)之間變化的最大絕對值。在二維世界中,數(shù)據(jù)點(diǎn)之間的切比雪夫距離可以確定為其二維坐標(biāo)的絕對差之和。

          兩點(diǎn) P 和 Q 之間的切比雪夫距離定義為:

          切比雪夫距離是一個度量,因為它滿足成為度量的四個條件。

          切比雪夫距離滿足成為度量的所有條件

          但是,你可能想知道 min 函數(shù)是否也可以是一個指標(biāo)!

          min 函數(shù)不是度量標(biāo)準(zhǔn),因為有一個反例(例如水平線或垂直線),其中??且?。但是,僅當(dāng)??時它才應(yīng)為零!

          你可以想到的使用切比雪夫距離指標(biāo)的用例之一是交易股票、加密貨幣,其特征是交易量、買入價、賣出價……

          例如,你需要找到一種方法來告訴大多數(shù)加密貨幣在獎勵之間有很大差距和損失。而切比雪夫距離非常適合這種特殊情況。

          在棋盤中使用切比雪夫距離的另一種常見場景,其中國王或王后的移動次數(shù)等于到達(dá)相鄰方格的距離,如下圖所示:

          國王使用切比雪夫距離移動
          皇后在一些正方形之間使用切比雪夫距離

          ⑤ Lp 范數(shù),閔可夫斯基距離

          不同 p 值的 Minkowski 等高線

          閔可夫斯基(Minkowski)距離只是之前距離度量的概括:歐幾里得、曼哈頓和切比雪夫。它被定義為 n維空間中兩個觀測值之間的距離,如以下公式所示:

          其中 P、Q 是兩個給定的 nD 點(diǎn),p 代表 Minkowski 度量。對于特定的 p 值,您可以得出以下指標(biāo):

          • p = 1:?曼哈頓距離。
          • p = 2:?歐幾里得距離。
          • p → +∞ :?切比雪夫距離,邏輯或(點(diǎn) D =?AB?=?11?= 1)。
          • p → 0:?邏輯與(點(diǎn) C =?A?AND?B?= 零)。
          • p → -∞ :?最小距離(點(diǎn) D 的對稱性)。

          ?⑥余弦距離

          該指標(biāo)廣泛用于文本挖掘、自然語言處理和信息檢索系統(tǒng)。例如,它可用于衡量兩個給定文檔之間的相似性。它還可用于根據(jù)消息的長度識別垃圾郵件。

          余弦距離可以按如下方式測量:

          其中 P 和 Q 代表兩個給定的點(diǎn)。這兩個點(diǎn)可以表示文檔中單詞的頻率,下面的例子中解釋了這一點(diǎn)。

          例如,以包含以下短語的三個文檔為例:

          • 文件A:?"I love to drink coffee in the morning."
          • 文件B:?"I like to drink coffee."
          • 文件C:?"My friend and I work at a coffee shop in our hometown. He tells some good jokes in the morning. We like to begin the day by drink a cup of tea each."

          計算每個單詞的頻率,出現(xiàn)次數(shù)將導(dǎo)致以下結(jié)果:

          詞的頻率

          在計算出現(xiàn)次數(shù)之前,你已經(jīng)先驗地知道文檔 A 和 B 在含義上非常相似:“I love to drink coffee”?然而,文件 C 包含文件 A 的所有單詞,但從頻率表中的含義非常不同。為了解決這個問題,你需要計算余弦相似度來判斷它們是否相似。

          一方面,這可以說明信息檢索或搜索引擎是如何工作的。將文檔 A 視為對給定源(圖像、文本、視頻……)的查詢(短消息),將文檔 C 視為需要獲取并作為查詢響應(yīng)返回的網(wǎng)頁。

          另一方面,歐幾里得距離無法給出短文檔和大文檔之間的正確距離,因為在這種情況下它會很大。使用余弦相似度公式將計算兩個文檔在方向而非大小方面的差異。

          為了說明這一點(diǎn),以下兩個文件為例:

          • 文件 A:?"Bitcoin Bitcoin Bitcoin Money"
          • 文件 B:?"Money Money Bitcoin Bitcoin"

          “Bitcoin”這個詞作為 x 軸,把“Money”這個詞作為 y 軸。這意味著文檔 A 可以表示為向量 A(3,1),文檔 B 可以表示為 B(2,2)。

          計算余弦相似度將得到以下值:

          Cosine_Similarity = 0.894 意味著文檔 A 和 B 非常相似。cos(angle)大于(接近1)表示角度小(26.6°),兩個文檔A和B彼此接近。

          但是,你不能將余弦相似度的值解釋為百分比。例如,值?0.894?并不意味著文檔 A 是?89.4%,與 B 相似。它意味著文檔 A 和 B 非常相似,但我們不知道有多少百分比!該值沒有閾值。換句話說,你可以將余弦相似度的值解釋如下:

          它越大,文檔 A 和 B 相似的可能性就越大,反之亦然。

          再舉一個?A(1, 11)?和?B(22, 3)?的例子

          計算余弦相似度:

          然而,歐幾里得距離會給出一個很大的數(shù)字,比如?22.4,這并不能說明向量之間的相對相似性。另一方面,余弦相似度也適用于更高維度。

          余弦相似度的另一個有趣應(yīng)用是OpenPose[3]項目。

          參考資料

          [1]?

          參考原文:?https://towardsdatascience.com/17-types-of-similarity-and-dissimilarity-measures-used-in-data-science-3eb914d2681

          [2]?

          計算機(jī)安全:?https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.97.2974&rep=rep1&type=pdf

          [3]?

          OpenPose:?https://github.com/CMU-Perceptual-Computing-Lab/openpose


          往期精彩回顧




          站qq群955171419,加入微信群請掃碼:
          瀏覽 48
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产黄片免费视频 | 一级黄色H片在线播放 | 亚洲欧美高清在线 | 青青草黄视频无限在线观 | 日本xxxxx视频 |