機器學習基礎知識整理概括

關於機器學習的一些基本概念的整理

1.前言

1.機器學習是一門致力於研究如何經過計算的手段,利用經驗來改善系統自身的性能的學科。1997年Mitchell給出一個更形式化的定義,假設用P來評估計算機程序在某任務類T上的性能,若一個程序經過利用經驗E在T中任務上得到了性能改善,則咱們就說關於T和P,該程序對E進行了學習。算法

  1. 機器學習所研究的主要內容,是關於在計算機上從數據中產生「模型」的算法,即學習算法(learning algorithm)。「數據」便是現實生活中的「經驗」。
  2. 關於產生的模型(model),能夠泛指從數據中學得的結果。但也有不一樣說法。Hand在2001年發表的一篇文獻中就提到,模型是全局結果(例如一顆決策樹),模式指的是局部性結果(例如一條規則)。

2. 基本術語

引例,假設蒐集到一些關於西瓜的數據(色澤 = 青綠;根蒂 = 蜷縮;敲聲 = 濁響),(色澤 = 烏黑;根蒂 = 稍蜷;敲聲 = 沉悶),(色澤 = 淺白;根蒂 = 硬挺;敲聲 = 清脆),......機器學習

上述引例中,每對括號內是關於西瓜的(也但是任何一個事件或者對象的)一條記錄,則有:性能

數據集 (data set): 一組記錄的集合學習

示例/樣本(instance/sample):上述都每一條記錄,都可稱爲示例/樣本測試

屬性/特徵(attribute/feature):反映事件或者對象在某方面的表現或者性質的事項。例如上述色澤,根蒂,敲聲spa

屬性值(attribute value): 屬性上的取值,例如青綠,烏黑,等等對象

特徵向量(feature vector): 屬性空間上每個點相對原點構成的座標向量事件

樣本維數(sample dimensionality): 每個樣本(示例)所包含的不一樣屬性的數量ci

學習/訓練(learning/training) : 從數據中學得模型的過程it

訓練數據(training data): 訓練過程當中使用的數據

訓練樣本(training sample): 訓練數據中的樣本

訓練集(training set): 訓練樣本的集合

假設(hypothesis): 值得是學得模型。由於這個模型對應了關於數據的某種潛在規律

真相/真實(ground-truth): 潛在規律自己

標記(label): 訓練樣本的結果信息

樣例(example): 擁有了標記信息的示例。通常的,用(\(x_i,y_i\))來表示第i個樣例。其中\(y_i\)是示例\(x_i\)的標記

標記空間/輸出集合(label space): 全部標記的集合

屬性空間/樣本空間/輸入空間(attribute/sample space): 屬性張成的空間。例如,若是把色澤,根蒂,敲聲做爲三個座標軸,則他們張成一個用於描述西瓜的三維空間,每一個西瓜均可以找到本身的位置。

分類(classification): 在關於利用訓練集學得的預測模型中,預測值是離散值。這樣的學習任務稱爲分類

迴歸(regression): 與分類類似,只是預測值是連續值

\({\color{red} 補充一句:(預測的任務是但願經過對訓練集{(x_1,y_1),(x_2,y_2),...}進行學習,創建一個從輸入空間到輸出空間的映射關係)}\)

二分類任務(binary classification): 預測結果只有兩個類別。一般將其中的一個稱爲正類(positive class),另外一個稱爲反類(negative class)。而涉及多個,類別則稱爲多分類(multi-class)任務

測試(testing): 學得模型之後,使用其進行預測的過程

測試樣本(testing sample): 被預測的樣本,例如,在學得\(\mathit{f}\) 之後,對測試例\(x_i\) 可獲得其預測標記\(y=f(x_i)\)

聚類(clustering): 將訓練集中的示例分紅若干組,每組稱爲一個簇(cluster)。這些自動造成的簇可能對應一些潛在的概念劃分,例如本例中的西瓜能夠分紅淺色瓜,深色瓜...在聚類學習中,這些淺色瓜,深色瓜的概念事先是不知道的,並且學習過程當中使用的訓練樣本一般也沒有標記信息

​ 學習任務大體能夠劃分紅兩類:

(1)監督學習(supervised learning):訓練數據帶有標記,例如分類與分歸

(2)無監督學習(unsupervised learning):訓練數據不帶有標記,例如聚類

泛化能力: 學得模型適用於新樣本的能力

(目前機器學習仍然假設樣本空間的全體樣本知足獨立同分布假設,所以經典機率論得以適用)

3.假設空間

​ 前言:概括(induction)和假設(deduction)是科學推理的兩大基本手段。前者是從特殊到通常的泛化(generalization),即從具體的事實歸結出通常性規律;後者則是從通常到特殊的特化(specialization)過程,即從基礎原理推演出具體情況。 在機器學習中,「從樣例中學習」顯然是一個概括過程。所以,又被稱爲概括學習(inductive learning)

廣義的概括學習:至關於從樣例中學習

狹義的概括學習:從訓練數據中學得概念(concept)。所以也稱爲「概念學習」或者「概念造成」 .概念學習中最基本的是布爾概念學習,便是或者不是的結果表述

假設空間(hypothesis space): 全部假設組成的空間

​ 咱們能夠將學習的過程看做一個在全部假設組成的空間中進行搜索的過程,搜索目標是找到與訓練集匹配的假設,即可以將訓練集中的樣本判斷正確的假設,假設的表示一旦肯定,假設空間及其規模大小就肯定了。

​ 能夠有許多策略對假設空間進行搜索,搜索過程當中能夠不斷刪除與正例不一致的假設,或者與反例一致的假設。最終將會得到與訓練集一致的假設,就這是學得的結果。

版本空間(version space):現實生活中,咱們經常面臨很大的假設空間,可是學習的過程是基於有限的樣本訓練集進行的,所以,可能有多個假設與訓練集一致,即存在一個與訓練集一致的假設集合,這個假設集合就是版本空間

4.概括偏好

​ 概括偏好(inductive bias):機器學習算法在學習過程當中對某種類型假設的偏好。偏好要起做用,是發生在造成版本空間的時候。而學習算法又必須產生一個模型。這樣,偏好會起做用

\({\color{red}任何一個有效的機器學習算法都必有其偏好,不然它將被假設空間中看似在訓練集上等效的假設所迷惑,而沒法產生正確的學習結果}\) 對於概括偏好的見解: 概括偏好能夠看做學習算法自身在一個可能很龐大的假設空間中對假設進行選擇的啓發式或價值觀。有一個通常性的原則來引導算法確立正確的偏好,即

奧卡姆剃刀(Occam's razor):如有多個假設與觀察一致,則選擇最簡單的那個。\({\color{red}然而奧卡姆原則並不是惟一可用原則}\)

事實上,概括偏好對應了學習算法自己所作出的關於"什麼樣的模型更好的假設"。在具體的現實問題中,這個假設是否成立,即算法的概括偏好是否與問題自己匹配,大多數時候直接決定了算法可否取得好的性能。

​ 假設學習算法\(\zeta_a\) 是基於某種概括偏好產生的模型,學習算法\(\zeta_b\)是基於另外一種概括偏好產生的模型。對於學習算法\(\zeta_a\)若它在某些問題上比學習算法\(\zeta_b\)好,則必然存在一個問題,\(\zeta_a\)\(\zeta_b\)好在哪裏?根據NFL定理,不管兩種算法怎樣產生,二者出錯概論的指望是相同的(可是NFL定理前提是,全部問題出現的機會相同,或者全部問題同等重要,可是實際情形咱們只須要關注咱們目前試圖解決的問題便可,所以\(\zeta_a\)與$ \zeta_b$ 仍是有區別的。NFL定理實際上是想說明,脫離具體問題討論學習算法好壞是無心義的。學習算法自身的概括偏好與問題是否匹配,每每起到決定性做用。)

相關文章
相關標籤/搜索