1. 程式人生 > >統計學習精要(The Elements of Statistical Learning)課堂筆記(二十三):原型方法和最近鄰KNN

統計學習精要(The Elements of Statistical Learning)課堂筆記(二十三):原型方法和最近鄰KNN

筆記(二十二)需要等我找到上一本筆記本再說,暫時不知道扔到哪裡去了...汗。屆時補上。

這一章主要是講的原型方法(prototype)和最近鄰(KNN)。相對而言直覺更強,公式沒那麼複雜。

--------------------------筆記開始-------------------

1. 原型方法

1) 1-NN 最近鄰居方法

最極端的情況:只找到最近的一位鄰居。

資料集D={(xi,yi),1iN}

,輸入xi,在{xj,ji}中找到與xi最近的鄰居xk,輸出xk對應的類標記yk

2) 類中心的方法

類中心: ck=1Nkyi=kxi,1kK

,相當於對於一群有著同樣類標記的點,對x取平均。

輸入:xi

,而後在所有類中心中與其最近的類中心cl

輸出:cl

對應的類標記。

3) 對每個類可計算若干個“中心”(稱之為原型或者樣板,比如在每類中做聚類)。

輸入:xi

,而後在所有類中心中與其最近的類中心cl

輸出:cl

對應的類標記。

4) K-NN方法

輸入:xi

,在{xj,ji}中找到與xi

最近的K個鄰居。

輸出:maxyk

(最多的那一類,從眾原則的感覺)。

由於這一類方法都比較懶,所以稱之為lazy learning methods.

2. K-NN方法的錯誤率(漸近性質)

1) 結果

P(e)

為Bayes分類器的錯誤概率(最優分類器);P
¯
(e)

為1-NN分類器的錯誤概率。

則有:當樣本數N

時,P(e)P¯(e)2P(e)

。接下來會證明這個優良的性質。

2) 分類問題

給定(x,y)

,則P(x,y)=P(y)P(x|y)

這裡我們稱 P(y=k)=πk

為先驗分佈,P(x|y=k)=fk(x)

為類分佈。從而

Pk(x)=P(y=k|x)=P(y=k,x)P(x)=P(y=k)P(x|y=k)kP(x,y)=πkfk(x)kπkfk(x)

,稱之為後驗概率。

3) Bayes分類器

x對應的k=argmaxkPk(x)

,即使得後驗概率最大的k。

所以,P(e

|x)=P(yk|x)=1P(y=k|x)=1Pk(x)

,從P(e)=Ex[P(e|x)]

4) 1-NN分類器

1-NN輸出的是離x最近的x¯

對應的y¯

,則

P¯(e|x)=P(y

相關推薦

統計學習(The Elements of Statistical Learning)課堂筆記十三原型方法近鄰KNN

筆記(二十二)需要等我找到上一本筆記本再說,暫時不知道扔到哪裡去了...汗。屆時補上。 這一章主要是講的原型方法(prototype)和最近鄰(KNN)。相對而言直覺更強,公式沒那麼複雜。 --------------------------筆記開始---------

Java學習筆記十三final關鍵字

類繼承 ron 滿足 單詞 靜態 bsp 條件 str 進行 final關鍵字有三種使用場景: final修飾類 final修飾方法 final修飾變量 final修飾的類,不能再有子類繼承。 只要滿足以下條件就可以把一個類設計為final類: 不是專門為繼承而設

tensorflow學習筆記十三variable與get_variable

Variable tensorflow中有兩個關於variable的op,tf.Variable()與tf.get_variable()下面介紹這兩個的區別 tf.Variable與tf.get_variable() tf.Variable(ini

Linux學習筆記十三 -- QT的安裝解除安裝

1.QT簡介 Qt 是一個跨平臺C++圖形使用者介面應用程式開發框架。它可以用來開發GUI程式和非GUI程式(比如控制檯工具和伺服器)。 2.QT安裝 使用如下命令: sudo apt-get install qt5-default qtcreato

Unity3D學習筆記十三事件接口、虛擬搖桿、層級管理背包系統

ram veh ces 跟隨鼠標 style 組件 屏幕 向上 grid 事件接口 IDragHandler(常用):鼠標按下拖動時執行(只要鼠標在拖動就一直執行) IDropHandler:對象拖動結束時,如果鼠標在物體的範圍內,執行一次(依賴於IDragHandler存

Pro Android學習筆記使用者介面控制13LinearLayoutTableLayout

佈局Layout Layout是容器,用於對所包含的view進行佈局。layout是view的子類,所以可以作為view嵌入到其他的layout中。Android的layout有LinearLayout、TableLayout,RelativeLayout、FrameLayout、GridLayout。 線

java基礎學習總結十三什麼使用AOP

從最基礎的原始程式碼-->使用設計模式(裝飾器模式與代理)-->使用AOP三個層次來講解一下為什麼我們要使用AOP。 原始程式碼的寫法 既然要通過程式碼來演示,那必須要有例子,這裡我的例子為: 有一個介面Dao有insert、delete、update三個方法,在insert

python學習筆記異常處理

錯誤 fetchall nbsp 如果 info blog months api root 1 def calc(a,b): 2 res=a/b 3 return res 4 def main(): 5 money=input(‘輸入多少

Linux學習筆記十三shell介紹、history命令歷史、命令補全別名、通配符、

alias shell 歷史命令 通配符 一、shell介紹 shell是一個命令解釋器,提供用戶和機器之間的交互 支持特定語法,比如邏輯判斷、循環 每個用戶都可以有自己特定的shell CentOS7默認shell為bash(Bourne Agin Shell) 還有zsh、ksh等、二、

Effective_STL 學習筆記十三 考慮用有序 vector 代替關聯容器

  標準關聯容器的典型實現是平衡二叉查詢樹, 一個平衡二叉查詢樹是一個對插入、刪除和查詢的混合操作優化的資料結構 1. 建立。通過插入很多元素建立一個新的資料結構 2. 查詢。在資料結構中查詢指定的資訊片。 3. 重組。修改資料結構的內容,也許通過刪除所有現有資料和在原地插入新資料。 &

機器學習筆記TensorFlow實戰十TensorBoard視覺化

1 - 引言 前面已經介紹到TensorFlow可以實現許多非常常用的神經網路結構,有的網路結構十分複雜,裡面的引數關係更是難以管理。因此,TensorFlow提供了一個視覺化工具TensorBoard。可以有效的展示執行過程中的計算圖、各種指標隨著時間的變化趨勢以及訓練中使用到的影象等

TensorFlow學習筆記十三四種Cross Entropy交叉熵演算法實現應用

交叉熵(Cross-Entropy) 交叉熵是一個在ML領域經常會被提到的名詞。在這篇文章裡將對這個概念進行詳細的分析。 1.什麼是資訊量? 假設是一個離散型隨機變數,其取值集合為,概率分佈函式為 p ( x ) = r (

opencv學習十三形態學操作

影象的形態學處理         數學形態學(Mathematical morphology)是一門 建立在格論和拓撲學基礎之上的影象分析學科,是數學形態學影象處理的基本理論。其基本的運算包括:腐蝕和膨脹、開運算和閉

Spring Security十三6.5 The Default AccessDecisionManager預設接入策略管理

This section assumes you have some knowledge of the underlying architecture for access-control within Spring Security. If you don’t you can skip it and com

Java for Web學習筆記JSTL1使用JSTL

在前面已經使用過JSTL,例如<c:url>,fn是JSTL的functionlibrary,而c是JSTL的tag library。使用它們,我們要告知解析器,如下: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core

編解碼學習筆記十五MPEG-HH.265

  正如H.264是MPEG-4的part 10,H.265是MEPG-H的part 2。根據維基百科的資料: MPEG-H   MPEG-H是ISO/IEC 動態影象專家組(MPEG)所開發的一組標

Django學習筆記十三:Celery非同步操作傳送郵件

非同步操作傳送郵件 在settings.py裡新增郵箱配置 from os import environ # 郵件配置 EMAIL_USE_SSL = True EMAIL_HOST = 'smt

tensorflow學習筆記十三使用 tfdbg 來 debug

由於 tensorflow 在訓練的時候是在後臺執行的,所以使用 python 的 debug 工具來 debug tensorflow 的執行過程是不可行的,為此,官方提供了一款debug 工具,名為 tfdbg 有很多人覺得,為了 debug tensor

C#學習筆記十六索引器重載運算符

instance cit png form mage 創建 return position args 二維數組如何映射到一維數組 重載運算符 1、算術運算符 2、關系運算符, < 和 > 成對重載 using System; using Sy

C#學習筆記十五抽象方法、抽象類、多態接口

具體實現 烏龜 ima 索引器 over protect ret 需要 技術 using System; using System.Collections.Generic; using System.Linq; using System.Text;