1. 程式人生 > >機器學習筆記(3)——K近鄰法

機器學習筆記(3)——K近鄰法

K-nearest neighbor(KNN)

k近鄰法一種基本的分類與迴歸方法,原理和實現都比較直觀。其輸入為樣本的特徵向量,輸出為樣本的類別,可以進行多類別分類。k近鄰法是通過統計與未知樣本最近點的訓練樣本的類別來投票決定未知樣本的類別,不具有顯式的學習過程k近鄰法主要包含有k值選擇距離度量以及分類決策規則三部分。

1.k近鄰模型

距離度量

特徵空間中兩個樣本的距離是兩個樣本的相似程度的反映。在k 近鄰法中常用的距離度量包括:
(1)Minkowski Distacne(閔可夫斯基距離)
定義兩個變數xi,xjχ,xi=(x1i,x2i,,xni),xj=(x1j,

x2j,,xnj),則他們之間的閔可夫斯基距離為:

Lp(xi,xj)=(l=1n(xlixlj))1p
p=1時,稱為曼哈頓距離(Manhattan distance)
L1(xi,xj)=l=1n|xlixlj|
p=2時,是常用的歐式距離(Euclidean distance)
L2(xi,xj)=l=1n|xlixlj|2
p= 時,是常用的切比雪夫距離(chebyshev distance)
L(xi,xj)=maxl|xnixnj|
上述距離在不同特徵中存在一定的缺點,比如特徵維度中不同的單位,如果用絕對值會導致比重不一,因此不同的特徵都需要歸一化,即統一為相對值。
(2)馬氏距離(Mahalanobis distance)
定義兩個變數x
i
,xjχ,xi=(x1i,x2i,,xni)
,xj=(x1j,x2j,,xnj),則他們之間的馬氏距離為:
D(xi,xj)=(xiyj)TS1(xi,xj)
其中S 是協方差矩陣。馬氏距離與量綱無關,排除了變數之間相關性的干擾。在影象處理領域中常用作特徵測量的標尺。
(3)夾角餘弦(Cosine)
夾角餘弦可以用來衡量兩個特徵向量方向的差異,機器學習中常用這一概念來衡量樣本的差異,對於給定變數,其定義為:
cos(θ)=

相關推薦

機器學習筆記3——K近鄰

K-nearest neighbor(KNN) k近鄰法一種基本的分類與迴歸方法,原理和實現都比較直觀。其輸入為樣本的特徵向量,輸出為樣本的類別,可以進行多類別分類。k近鄰法是通過統計與未知樣本最近點的訓練樣本的類別來投票決定未知樣本的類別,不具有顯式的學習過

《統計學習方法》學習筆記——K近鄰

  K近鄰法對於已標記類別,在新的例項樣本進行分類時,根據離其最近的K個訓練樣本例項,統計每類的相應的個數,通過多數表決等方式進行預測。舉個最簡單的例子,就是當K=1時,就是我們所熟悉的最近鄰方法(NN)。   首先,我們需要判斷離新的例項樣本最近的K個訓

機器學習筆記3——使用聚類分析演算法對文字分類分類數k未知

聚類分析是一種無監督機器學習(訓練樣本的標記資訊是未知的)演算法,它的目標是將相似的物件歸到同一個簇中,將不相似的物件歸到不同的簇中。如果要使用聚類分析演算法對一堆文字分類,關鍵要解決這幾個問題: 如何衡量兩個物件是否相似 演算法的效能怎麼度量 如何確定分類的個數或聚類

機器學習實戰》學習筆記1——k-近鄰演算法

1 k-近鄰演算法概述 k-近鄰演算法,採用測量不同特徵值之間的距離方法進行分類。 工作原理: 存在一個樣本資料集,也成為訓練樣本集,並且樣本集中每個資料都存在標籤,即我們知道樣本集中的每一資料與所屬分類的對應關係。輸入沒有標籤的新資料後,將新資

機器學習實戰k-近鄰kNNk-Nearest Neighbor

目錄 0. 前言 1. k-近鄰演算法kNN(k-Nearest Neighbor) 2. 實戰案例 2.1. 簡單案例 2.2. 約會網站案例 2.3. 手寫識別案例 學習完機器學習實戰的k-近鄰演算法,簡單的做個筆記。文中

機器學習筆記3:線性代數回顧

目錄 1)Matrices and vectors 2)Addition and scalar multiplication 3)Matrix-vector multiplication 4)Matrix-matrix multiplication 5)Matrix multip

機器學習實戰k-近鄰演算法kNNk-Nearest Neighbor

目錄 0. 前言 簡單案例 學習完機器學習實戰的k-近鄰演算法,簡單的做個筆記。文中部分描述屬於個人消化後的理解,僅供參考。 如果這篇文章對你有一點小小的幫助,請給個關注喔~我會非常開心的~ 0. 前言 k-近鄰演算法kNN(k-Neare

機器學習實戰2—— k-近鄰演算法

老闆:來了,老弟! 我:來了來了。 老闆:今天你要去看看KNN了,然後我給你安排一個工作! 我:好嘞!就是第二章嗎? 老闆:對!去吧! 可惡的老闆又給我安排任務了! 《機器學習實戰》這本書中的第二章為我們介紹了K-近鄰演算法,這是本書中第一個機器學習演算法,它非常有效而且易於

機器學習實戰--k近鄰演算法

機器學習實戰(一)–k近鄰演算法 最近在學習機器學習,順便做個記錄,一方面給自己加深印象,另一方面與大家共勉,希望能給大家一些幫助,我也是剛入門的新手,有不對的地方還請多多指教。 我用的Python3.5,有些程式碼與書上不太一樣。 程式清單2-1 k-近

Java 虛擬機器學習筆記3——垃圾回收機制

一. 為什麼需要“垃圾”回收 1.什麼是“垃圾”? 此處講的“垃圾”分為兩種: 廢棄常量和無用的類。 廢棄常量,主要是判斷當前系統中有沒有物件引用這個常量; 無用類則比較嚴格,需要滿足下面三個條件: (1)該類的

機器學習-7實戰演練k-近鄰演算法

首先,這裡不討論你如何獲取資料,我們假設這些都已存在我們的庫裡面了,並已經建立好了正確的分類了。 這裡我直接截圖我的實驗庫吧: 現在我們的任務就是隨便輸入一個經緯度,來看看它屬於哪一個國家 先來把我們的讀取任務搞定吧 OK,初步清洗完成,把標籤國家拿出來了,經緯度拿出

機器學習筆記K-Means

1 - 前言 之前我們學習的演算法均為監督學習演算法,而K-means是我們所學習的第一個無監督學習演算法。所以首先讓我們瞭解一下監督學習和無監督學習的區別 1.1 - 監督學習(supervised learning) 從給定的訓練資料集中學習出一個函式(模型引數),當新的資料

ML:Scikit-Learn 學習筆記3 --- Nearest Neighbors 最近鄰 迴歸及相關演算法

1 最近鄰迴歸 最近鄰迴歸是用在標籤值是連續取值的場景智商的,而不是離散取值,而是用最近鄰迴歸進行查詢的點,最後得到的結果是其所有最近鄰居的平均值。 scikit-learn 在迴歸部分,同樣實現了兩種迴歸演算法,和之前的一樣,和KNN思想近似的KNeigh

機器學習筆記聚類演算法及實踐K-Means,DBSCAN,DPEAK,Spectral_Clustering

這一週學校的事情比較多所以拖了幾天,這回我們來講一講聚類演算法哈。 首先,我們知道,主要的機器學習方法分為監督學習和無監督學習。監督學習主要是指我們已經給出了資料和分類,基於這些我們訓練我們的分類器以

統計學習方法筆記K近鄰演算法

K近鄰法(KNN)是一種基本的分類和迴歸的方法,KNN的基本思想是給出一定數量帶有標籤的訓練樣本,使用這些訓練樣本將特徵空間劃分成許多的子空間,當一個新的測試樣本進來以後,這個測試樣本一定會落在一個超矩形區域內部,然後找到距離這個測試樣本最近的K個訓練樣本,用這些訓練樣本的

Python3 機器學習實戰自我講解 K-近鄰-海倫約會-手寫字型識別

第二章 k近鄰法 2.1 概念 2.1.1 k近鄰法簡介 k近鄰法(k-nearest neighbor, k-NN)是1967年由Cover T和Hart P提出的一種基本分類與迴歸方法。它的工作原理是:存在一個樣本資料集合,也稱作為訓練樣

非監督學習k-means聚類演算法——Andrew Ng機器學習筆記

寫在前面的話 在聚類問題中,我們給定一個訓練集,演算法根據某種策略將訓練集分成若干類。在監督式學習中,訓練集中每一個數據都有一個標籤,但是在分類問題中沒有,所以類似的我們可以將聚類演算法稱之為非監督式學習演算法。這兩種演算法最大的區別還在於:監督式學習有正確答

Python_sklearn機器學習學習筆記k-means聚類

# K的選擇:肘部法則 如果問題中沒有指定K的值,可以通過肘部法則這一技術來估計聚類數量。肘部法則會把不同K值的 成本函式值畫出來。隨著K值的增大,平均畸變程度會減小;每個類包含的樣本數會減少,於是樣本 離其重心會更近。但是,隨著K值繼續增大,平均畸變程度的改善效果會不斷減

機器學習筆記機器學習可行性分析

資料 表示 image 隨機 訓練樣本 -s mage 例如 lin 從大量數據中抽取出一些樣本,例如,從大量彈珠中隨機抽取出一些樣本,總的樣本中橘色彈珠的比例為,抽取出的樣本中橘色彈珠的比例為,這兩個比例的值相差很大的幾率很小,數學公式表示為: 用抽取到的樣本作為訓練

機器學習筆記邏輯回歸

邏輯回歸 alt 表示 結果 不變 改變 最小值 nbsp 可能性 一、邏輯回歸問題 二分類的問題為是否的問題,由算出的分數值,經過sign函數輸出的是(+1,-1),想要輸出的結果為一個幾率值,則需要改變函數模型 ,其中,, 則邏輯回歸的函數為 二、邏輯回歸錯誤評價 線性