1. 程式人生 > >線性分類器之感知器模型(Perceptron)

線性分類器之感知器模型(Perceptron)

前文提到,Fisher判別器的設計一般分兩步,一是確定最優的投影方向,二是在投影方向上確定閾權值。而感知器則是一種直接得到完整的線性判別函式g(x)=ωTx+ω0的方法。所以從某種意義上講,感知器模型是Fisher判別的一種改進。瞭解神經網路的人也都知道,感知器是神經網路的基礎。

首先將線性判別函式齊次化:
y=[1,x]T,α=[ω0,ω]T,則

g(x)=ωTx+ω0=αTy
對於兩類的情況,設 Γ={y1,y2,...,yd} 為增廣樣本向量,那麼決策規則則為:
g(y)>0yω1g(y)<0yω2

接下來明確幾個概念:
線性可分性:存在一個 α,使所有樣本能夠被正確分類。即存在一個超平面能正確地將兩個樣本分開。
解向量 α

:對於i=1,2,...,N,若yiω1,則αTyi>0;若yiω2,則αTyi<0。能夠滿足上述條件的α即為解向量α
解區:權值空間中所有解向量組成的區域即為解區。(通常對於一個問題,解向量不唯一,故可將所有的解向量組成一個解區)

這裡寫圖片描述

餘量:解區中的權向量都是解,但是越靠近解區中間的向量,所得到的分類面離各個樣本越遠,對將來的樣本的錯分的可能性就相對更小。

通過上述概念的引入,我們可以直觀地看到,對於線性可分的問題,會有無數個分類面能夠把樣本正確地分類,而這無數個分類面組成了解區,為了求得推廣能力更強的分類面,我們引入餘量,使得這個分類面儘可能離樣本距離遠些。

引入餘量 b>0,則要求解向量滿足 αTyi>bi=1,2,...,N。若要求 b 取到最大值,那這個分類面顯然為最優分類面。

引入餘量後,解會更可靠,分類器的推廣性也就更強。

感知器函式及其求解:
首先我們對yi做一個處理,如果yiω1yi=yi;如果yiω1yi=yi這樣,對於分類正確的樣本,就總有αTyi>0;對於分類錯誤的樣本,有αTyi<0

因此可以定如下感知準則函式

Jp(α)=Σyjγk(αTyj)
其中,γk是被分錯的樣本的集合。
容易看出,當且僅當Jp(α)=minJp(α)=0 時,無錯分樣本,即α是解向量。

對於感知器準則函式的求解,我們採用梯度下降法

(在’數學知識’裡有梯度下降法對應的博文)。

α(t+1

相關推薦

線性分類感知模型Perceptron

前文提到,Fisher判別器的設計一般分兩步,一是確定最優的投影方向,二是在投影方向上確定閾權值。而感知器則是一種直接得到完整的線性判別函式g(x)=ωTx+ω0的方法。所以從某種意義上講,感知器模型是Fisher判別的一種改進。瞭解神經網路的人也都知道,感知器

JVM類載入與雙親委派模型

(7)URLClassLoader類 前面說到,ClassLoader這個頂級父類只是定義好了雙親委派模型的工作機制;但是ClassLoader是個抽象類,無法直接建立物件,所以需要由繼承它的子類完成建立物件的任務。子類需要自己實現findClass方法,並且在例項化時指定parent屬性的值

JVM類載入與雙親委派模型

(1)動態載入       類載入器是 Java 語言的一個創新,也是 Java 語言流行的重要原因之一。它使得 Java 類可以被動態載入到 Java 虛擬機器中並執行。類載入器從 JDK 1.0 就出現了,最初是為了滿足 Java Applet 的需要

Go語言排程排程main goroutine14

本文是《Go語言排程器原始碼情景分析》系列的第14篇,也是第二章的第4小節。 上一節我們通過分析main goroutine的建立詳細討論了goroutine的建立及初始化流程,這一節我們接著來分析排程器如何把main goroutine排程到CPU上去執行。本節需要重點關注的問題有: 如何儲存g0的排

Linux裝置驅動工程師路——裝置模型底層模型

Linux裝置驅動工程師之路——裝置模型(上)底層模型 K-Style 一、重要知識點          1.Sysfs檔案系統        Sysfs檔案系統是一種類似於proc檔案系統的特殊檔案系統,它存在於記憶體當中,當系統啟動時由核心掛載於記憶體當中。用於將

lucene排序演算法向量空間模型

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

lucene排序演算法向量空間模型

開發十年,就只剩下這套架構體系了! >>>   

模式識別Pattern Recognition學習筆記十九--多層感知模型MLP

       早前已經學習了感知器學習演算法,主要通過對那些錯分類的樣本進行求和來表示對錯分樣本的懲罰,但明顯的它是一個線性的判別函式;而且上節學到了感知器神經元(閾值邏輯單元),對於單個的感知器神經元來說,儘管它能夠實現線性可分資料的分類問題(如與、或問題),但是卻無法解

matlab 實現感知線性分類算法Perceptron

簡單的 learning 取值 fun end 隨機 -1 二維 技術分享 感知機是簡單的線性分類模型 ,是二分類模型。其間用到隨機梯度下降方法進行權值更新。參考他人代碼,用matlab實現總結下。 權值求解過程通過Perceptron.m函數完成 function W

linux驅動開發蜂鳴驅動源碼分析

linux 蜂鳴器 驅動 蜂鳴器的驅動源碼在/driver/char/buzzer/x210-buzzer.c文件中,源碼如下#include <linux/module.h> #include <linux/kernel.h> #include <linux

Windows 活動目錄AD服務系統升級到2012域控升級

AD acticedirectory 升級 活動目錄 域控 4.域控升級4.1服務器加域1. 修改AD2008的IP地址為10.10.1.11,AD2012服務器的IP地址為:10.10.1.122. 打開計算機屬性窗口,點擊“更改設置”修改計算機名稱分別為AD20

統計學一般線性模型

多因素方差分析 與單因素方差分析不同的是,多個處理的自變數。 表中第四行第五行都是主效應,第六行是互動效應。 對互動作用的進一步檢驗 當方差分析發現一個兩次互動作用時,需要進一步檢驗,以說明兩個因素之間互動作用的實質。 方法一:互動作用的圖解 一般線性模型-繪製 相

線性分類模型:logistic迴歸模型分析

前言 上一篇文章介紹了線性判別模型,本文介紹線性生成模型——logistic迴歸模型。本文介紹logstic迴歸模型相關的知識,為了更好理解模型的決策邊界函式,本文同時分析了多元變數的協方差對概率分佈的影響。   目錄 1、logistic迴歸模型的含義 2、l

統計學一般線性模型

接上文 方差分析的適用條件 各樣本的獨立性:保證變異的可加性(嚴格要求); 正態性:各單元的殘差必須服從正態分佈(要求不是明顯偏態); 方差齊次:各單元格滿足方差齊次(變異的程度相同); 多因素方差分析 在實際問題中,經常需要同時研究多個因素對因變數

基於C語言的編碼光耦程式設計C程式碼解析

程式碼需要一個.c文件和一個.h文件。 .h文件主要配置編碼器相關引數 #define OptoKnobNumber 2 /* 旋鈕個數配置 */ #define _01_SH

統計學一般線性模型

一般線性模型 統計博大精深,學習永無止境(被搞死) GLM(General Linear Model) 一、一般線性模型的組成 方差分析(ANOVA) 成組設計的方差分析 配伍設計的方差分析 多因素方差分

工廠三兄弟工廠方法模式:日誌記錄的設計

簡單工廠模式雖然簡單,但存在一個很嚴重的問題。當系統中需要引入新產品時,由於靜態工廠方法通過所傳入引數的不同來建立不同的產品,這必定要修改工廠類的原始碼,將違背“開閉原則”,如何實現增加新產品而不影響已有程式碼?工廠方法模式應運而生,本文將介紹第二種工廠模式——

工廠方法模式-Factory Method Pattern 工廠三兄弟工廠方法模式:日誌記錄的設計

簡單工廠模式雖然簡單,但存在一個很嚴重的問題。當系統中需要引入新產品時,由於靜態工廠方法通過所傳入引數的不同來建立不同的產品,這必定要修改工廠類的原始碼,將違背“開閉原則”,如何實現增加新產品而不影

神經網路感知演算法簡單介紹和MATLAB簡單實現

Perceptron Learning Algorithm 感知機學習演算法,在1943年被生物學家MeCulloch和數學家Pitts提出以後,面臨一個問題:引數需要依靠人工經驗選定,十分麻煩。因此人們希望找到一種能夠自己選定引數的方法。1957年,Fran

雙輸入感知Perceptron的決策空間

感知器(Perceptron) 感知器是一種二元分類器,它是神經網路的基石。感知器是對神經細胞的模擬,如權量(突觸)、偏置(閾值)及啟用函式(細胞體)。 輸入以向量的形式表示 x=(x_0, x_1, x_2),你可以把它們理解為不同的特徵維度,其中的 x_0