AI產品經理需要了解的數據知識:餘弦相似度

2021-01-08 人人都是產品經理

本文概括介紹了餘弦相似度是什麼、如何應用以及案例說明,目的是希望我們產品經理在設計相關跟相似度功能或是利用相似性功能解決某一業務的場景時能利用上餘弦相似度,並希望您讀完對自己在設計相關推薦業務、搜索業務、識別業務時能有更深層次的理解。

在機器學習算法中,有很多方法計算某個對象之間的距離或是相似性,餘弦相似度是通過衡量兩個向量間的夾角大小,通過夾角的餘弦值表示結果,餘弦相似度的取值為[-1,1],值越大表示越相似。

計算餘弦值的公式如下:

注釋:其中a和b代表兩個向量(向量是在空間中具有大小和方向的量,在數據計量中表示帶箭頭的線段,相關向量知識可自行閱讀相關文獻)。

如果是在二維空間,餘弦相似度的值通過如下公式計算:

對於以上公式的理解,我們可以看如下兩圖(二維向量圖和餘弦定理)

以上左圖是將a\b兩個向量二維化,右圖是餘弦定理,通過餘弦定理與二維空間結合,即可推導出來二維空間下計算兩個向量的餘弦相似性公式。(有興趣的同學可以看上面兩個圖,自行推導一下)

如果假設空間是多維的,那麼餘弦相似度公式可擴展如下公式:

以上是對餘弦相似度概括解釋,以及公式演化形式,在下一節將會對以上公式的應用說明,請各位同學先好好理解以上公式。

一、餘弦相似度應用說明

餘弦相似度在度量文本相似度、用戶相似度、物品相似度的時候都較為常用。

案例一:文本相似度

比如有如下兩個句子:

句子A:他不僅是一個歌手,還是一個舞者;句子B:他既是一個歌手,也是一個舞者。

那麼如何計算以上兩個句子的相似度,首先我們要找到如何評價這兩個句子,用什麼方法將這兩個句子向量化?我們最直觀的看,連個句子用詞相近,那句子整體相似度就高,因此我們從詞頻入手,來計算其相似性。

首先,進行分詞處理:

句子A:他 不僅 是 一個 歌手 還 是 一個 舞者句子B:他 既 是 一個 歌手 也 是 一個 舞者

其次,列出所有的詞:

他 不僅 既 是 一個 歌手 還 也 舞者

第三步:計算詞頻

句子A: 他(1) 不僅(1) 既(0) 是(2) 一個(2) 歌手(1) 還(1) 也(0) 舞者(1)句子B:他(1) 不僅(0) 既(1) 是(2) 一個(2) 歌手(1) 還(0) 也(1) 舞者(1)

第四步:

我們總結出來兩個句子的詞頻向量:句子A(1,1,0,2,2,1,1,0,1)句子B(1,0,1,2,2,1,0,1,1)

這樣問題就變成了如何計算這兩個向量的相似程度。都是從原點([0, 0, …])出發,指向不同的方向的向量。

通過公式計算得出:

A和B的餘弦相似度=

通過餘弦相似度公式,我們計算出來這來兩句話意思很相近。

我們通過這個案例不難發現,想要利用餘弦相似性公式來計算兩者之間的相似性,首先要確定向量化的方法(比如本案例中,通過將連個句子通過分詞的方式,計算詞頻來向量化),理解向量值的多維度(我們通過分詞可以得出來9各維度的向量值),然後將向量化後將值帶入到公式中,去計算相似度。

通過以上案例我們可以聯想其他案例,比如對於兩篇文章,連個實體的相似性對比,我們可以通過向量化關鍵詞、實體畫像特徵等進行向量化,然後通過這些特徵向量化的維度值,進行計算相似性。

案例二:用戶相似度

比如一個外賣平臺,兩個用戶A和B,外賣新出了兩款新品套餐,分別是a和b,用戶A對這兩款新品的評分是1分和2分,b對這兩款新品的評分是4分和5分,我們通過餘弦相似度來評價一下兩個用戶的相似度。

假如我們將對這新品套餐評分作為特徵向量,兩個產品的評分分別連個維度的向量值,是那麼A和B的特徵向量分別是(1,2)、(4、5),我們代入公式計算得出:0.98。

通過公式計算發現兩個相似度很高,但是這跟我們直覺判斷這兩個應該相似度很低才是,這說明我們選定好評價的特徵向量後,對於向量值的的確定出現了問題,我們對(1,2)、(4、5)進行轉換,變成與平均分3的差額,的出來新的向量值(-2,-1)、(1、2)之後,重新計算得出相似度為-0.8,那麼我們看這個結果比較接近事實。

通過這個案例我們可以看到:再找到特徵向量後,對於向量值的取值與評價也需要靈活考慮,可以結合統計學知識。

二、總結

對於產品經理,尤其是對於AI產品經理,在理解和運用餘弦相似性時需要考慮一下問題:

首先,餘弦相似性是對兩個對象之間的比較,將兩個對象向量化,向量化的過程中,我們要找到兩個對象比較的基礎;也就是特徵,真對與不同特徵賦予向量值的意義,並且在選取向量值時,定量化的評分要符合邏輯,然後通過公式計算相似性。

其次,餘弦相似性很難做到向量長度的歸一化。

比如兩篇文章,講的同一個事情,一篇200字,一篇5000字。假如通過關鍵詞相似可以判定兩個文章是高度相似的,假如我們還是用內容分詞通過詞頻的方式,那麼有很大可能是不相似的,因為詞量差距太大。因此我們選取的特徵向量儘量少維度,但是又能全面評價二者的指標。

除此之外,關於相似性的判斷,在機器學習中除了餘弦相似性還有其他方法,比如歐氏距離、皮爾遜相關度、傑卡德(Jaccard)相似度等方法,有興趣的小夥伴可以進一步了解。

本文由 @羅飛 原創發布於人人都是產品經理。未經許可,禁止轉載

題圖來自 Unsplash ,基於 CC0 協議

相關焦點

  • AI產品經理必修——揭開算法的面紗(餘弦定理)
    餘弦定理作為初中課本就學過的知識,AI產品經理將會把它運用到相似度計算當中。在數據採集及大數據處理的時候,數據排重、相似度計算是很重要的一個環節,由此引入相似度計算算法。但你知道我們在初中課本中學過的餘弦定理是如何完成相似度計算的嗎?要揭開謎底,我們先來「三步走」。一、TF-IDF單文本詞彙頻率/逆文本頻率值1.
  • 餘弦相似度及其生物信息學應用
    cosine similarity(餘弦相似度)如何計算簡單搜索了一下它的介紹:餘弦值的範圍在[-1,1]之間,值越趨近於1,代表兩個向量的方向越接近;越趨近於-1,他們的方向越相反;接近於0,表示兩個向量近乎於正交。最常見的應用就是計算文本相似度。
  • 常用推薦算法介紹 | 人人都是產品經理
    從餘弦公式講起先思考一個問題,我們怎麼量化兩個事物的相似度呢?當然,這也是推薦系統需要多次面臨的問題。我們知道向量的概念,可以形象化地表示為帶箭頭的線段。二維空間向量表示方法為,多維空間向量表示為,向量是描述事物一種很好模型。
  • AI產品經理的入門必修課(4)——知識圖譜
    編輯導語:通過知識圖譜,不僅可以將網際網路的信息表達成更接近人類認知世界的形式,而且提供了一種更好的組織、管理和利用海量信息的方式;本文作者分享了關於AI產品經理的知識圖譜簡介以及利用,我們一起來了解一下。
  • AI產品經理需要了解的語音交互評價指標
    1、準確率、召回率附上之前文章《AI產品經理需要了解的數據標註工作入門》中,分享過的一段解釋:準確率:識別為正確的樣本數/識別出來的樣本數召回率:識別為正確的樣本數/所有樣本中正確的數舉個慄子:全班一共30
  • 餘弦定理測量相似度
    今日簡述餘弦定理不只停留在高中的試卷上,它也可以去測量兩個文本,圖片,用戶個體等等之間的相似度哦?看看簡單的原理,以及文末圖片的檢測。距離 vs 方向兩點之間的差異衡量直接想到的方法是距離度量,比如說歐式距離,從不同維度的數值絕對差異體現兩個個體的差異。
  • 人臉識別:AI產品經理需要了解的CV通識
    最近整理了CV方向的一些產品基礎知識,我的上一篇文章《看AI產品經理如何介紹「計算機視覺」(基於實戰經驗和案例)》算是這個系列的第一篇;本文是本系列下的第二篇,主要針對人臉識別進行梳理。後續還會有多目標跟蹤、OCR等方向的內容。
  • 一文講述常見的文本相似度計算方法
    作者 | LU_ZHAO責編 | 徐威龍前言在自然語言處理中,我們經常需要判定兩個東西是否相似。比如,在微博的熱點話題推薦那裡,我們需要比較微博之間的相似度,讓相似度高的微博聚集在一起形成一個簇,提出一個主題。
  • 想快速入門互金產品經理,你一定需要先了解的這點知識
    你將獲得:對網際網路金融業務的大體了解;對想求職或轉型的同學提供後續學習思路。一、你必須了解的網際網路金融平臺4類產品能力通過對一些基本的概念的詳細講解,輔以舉例的形式,通俗易懂的讓大家迅速了解網際網路金融平臺產品經理需要具備的能力模型。
  • 30分鐘了解貝葉斯定理――AI產品經理了解的數學知識系列
    貝葉斯定理提供的是一種逆條件概率的方法,本文簡單總結了貝葉斯定理是什麼,貝葉斯定理應用的理解,以及貝葉斯定理在AI場景下的應用,目的是希望產品經理了解到這個定理的能力後,在設計相關推薦或是具有推理功能的應用場景,能通過貝葉斯定理來解決。
  • 產品經理是否需要懂資料庫
    產品經理是否需要懂資料庫?如果需要,那麼可以通過哪些途徑學習?需要懂到什麼程度?產品經理確實應該懂些資料庫的知識。通過資料庫初步學習,能了解數據的存儲方式以及數據的獲取,便於與技術的溝通;絕大部分需求,從技術上實現上並不難,很多需求往往都是沒有存儲相關欄位數據,造成無法實現;在絕大部分創業公司,數據平臺開發不完善或壓根沒有,再加上項目比較多,開發可能沒太多時間給咱們拉數據,或者在急著要數據但是開發又騰不出時間來的時候,如果自己會進行資料庫查詢操作,真的會方便很多
  • 數據產品經理之數據分析與挖掘
    作為如今網際網路+過程中最火熱的關鍵詞之一,大數據越來越火,隨之而來的數據倉庫、數據安全、數據分析、數據挖掘等圍繞大數據的商業價值發掘利用相關的技術和知識越來越引起政府、企業和求職者的重視。其中,作為數據產品經理必備的專業知識之一的數據分析可以分為廣義的數據分析和狹義的數據分析,廣義的數據分析就包括狹義的數據分析和數據挖掘,人們常常提到的數據分析是指狹義的數據分析,數據挖掘和數據分析都是從數據中提取一些有價值的信息,但互相的側重點又有所不同。
  • 關於AI學習方法的思考——產品經理入門人工智慧
    下面我僅從【現有產業+機器學習】角度提出我對AI產品經理可能工作內容的幾點思考:觀點一:AI產品經理需要了解技術現狀這一觀點上,我認為目前AI技術相對是不夠成熟的,那麼了解好技術可能實現的能力範圍,技術本身所需要的成本還有當前存在的技術瓶頸,可能是AI產品經理需要具備的基礎。
  • 中藥指紋圖譜相似度評價方法各有千秋
    認為其實際應用中,應針對不同的實際問題,採用適合的相似度評價方法,以便更好地用於中藥質量控制。近年來,適合於從整體上分析複雜化學物質組成的穩定性的中藥指紋圖譜已成為國內外廣泛接受的質量評價模式,同時也是中藥質量評價研究領域的前沿課題。獲取能夠反映中藥複雜化學成分特徵的指紋圖譜需要進行數據分析和處理。由於指紋圖譜所反映的體系非常複雜,一般需採用模式識別方法進行研究和處理。
  • AI產品經理需要了解的概率論通識:4個概念3個問題
    我認為AI產品經理應該學一些概率知識,是否理解概率,直接決定一個人對AI智能的了解程度。上面這種方式的問題就是,打開一扇門後,並不等價於在兩扇門裡做選擇,而是你是否需要轉換。人的直覺往往是不可信的,關於「換門」的獲獎率不是一個獨立事件,必須以第一次的選擇作為基礎。在概率學當中,這種情況叫做條件概率。
  • 產品經理的進階之路(2):如何搭建產品經理的知識體系?
    在上一期發布搭建屬於自己的知識體系之後,後臺收到了很多朋友的問題,今天我們就詳細來說說產品經理的知識體系有哪些內容。每一個產品經理,應該都需要根據自己的職業生涯規划去收集資料搭建自己的知識體系。明確自己職業規劃我們需要在搭建知識體系之前明確自己職業規劃,才能夠去建立知識體系的框架,還記得剛進入產品經理這個行業時,看到的一張產品經理成長方向的圖,他分為了4條線:產品經理到產品專家(技術線),在這條線上,產品經理需要側重產品側知識體系,包括用戶本質訴求的洞察能力
  • 常用的相似度和距離計算方法
    與Jaccard 係數相關的指標叫做Jaccard 距離,用於描述集合之間的不相似度。Jaccard 距離越大,樣本相似度越低。>餘弦相似度是用向量空間中兩個向量夾角的餘弦值作為衡量兩個個體間差異的大小的度量。
  • AI產品經理的入門必修——概念篇
    編輯導語:隨著各行各業的豐富,產品經理的崗位職責也越來越細緻;如今科技發展迅速,AI人工智慧已經開始深入生活中,AI產品經理也需要掌握一定的技能;本文作者分享了關於AI產品經理的學習概念分享,我們一起來看一下。經過近幾年來的發展,產品經理的崗位職責劃分的越來越細,對能力的要求也越來越高。
  • 相似度距離度量公式
    常用的相似度度量距離有:歐幾裡得距離、餘弦相似度距離、曼哈頓距離、閔可夫斯基距離、切比雪夫距離、Jaccard相似係數、皮爾森相關係數。
  • 產品經理知識體系之產品運營(四)
    產品經理知識體系根據產品全生命周期共分為五個階段:idea管理、需求管理、精益產品設計、產品研發、產品運營。本文是系列文章的第四篇:產品運營。在大公司裡,產品運營是獨立於產品經理的職位與團隊,但是作為產品經理,對於運營的事情還是要有所了解。同時,在國內網際網路行業中也逐漸在流行一個綜合產品、運營、市場的團隊,這個團隊叫做:增長黑客。一個產品從idea到需求、到產品設計再到開發團隊的研發,終於!產品要「出生「了!