目錄###
1. What is machine learning
2. Why machine learning
3. Four approaches to ML problem
1. What is machine learning ?
- Herbert Simon 定義學(xué)習(xí)為:
能夠讓系統(tǒng)在執(zhí)行統(tǒng)一任務(wù)或相同規(guī)模任務(wù)時(shí)比前一次執(zhí)行的更好的任何改變 - (Simon, 1983).
Learning can be also seen as a search problem.
-
machine learning 之于 AI
AI 領(lǐng)域 Machine learning wiki 定義
一個(gè)通俗易懂的例子 Original from Quora
2. Why machine learning ?
- 重要的AI問題之一
- “Knowledge engineering bottleneck”, 這個(gè)瓶頸是指傳統(tǒng)知識(shí)獲取技術(shù)構(gòu)建expert system代價(jià)巨大。所以需要機(jī)器自身具備學(xué)習(xí)能力。
- 機(jī)器學(xué)習(xí)在現(xiàn)實(shí)生活中有諸多應(yīng)用(Applications):
- 數(shù)據(jù)挖掘 data mining
- 模式識(shí)別 pattern recognition
- 語音識(shí)別 speech recognition
- 天氣預(yù)報(bào) forecasting
- 無人機(jī) unmanned vehicles
- 大數(shù)據(jù)分析 big data analysis
- 金融建模 Financial modeling
- 游戲 Games
- 生物醫(yī)藥 Medicine and biology
- 等等。。。等等。。。
3. Four approaches to ML problem
3.1 基于符號(hào)的方法 (symbol-based)
3.1.1 幾種分類方式
* 基于相似性的學(xué)習(xí) (Similarity-based learning)
* 基于解釋的學(xué)習(xí) (Explanation-based learning)
基于相似性的學(xué)習(xí)依賴大量的例子(data-driven),從中泛化出某個(gè)概念的必要屬性。
基于解釋的學(xué)習(xí)可以通過類比或運(yùn)用領(lǐng)域中的先驗(yàn)知識(shí)(prior knowledge-driven)指導(dǎo)泛化。人類學(xué)習(xí)就不需要依賴大量的例子。比如,如果我告訴你這是蘋果,你可以從你以前的知識(shí)(水果是什么?)中對(duì)蘋果加深理解。
* 監(jiān)督學(xué)習(xí) (Supervised learning)
* 無監(jiān)督學(xué)習(xí) (Unsupervised learning)
* 強(qiáng)化學(xué)習(xí) (Reinforcement learning)

監(jiān)督學(xué)習(xí)是指對(duì)有label的的train dataset進(jìn)行學(xué)習(xí)
- 分類是指預(yù)測(cè)需要輸出的是離散型變量,比如:iris的類別,人的血型
- 回歸是指預(yù)測(cè)需要輸出的是連續(xù)型變量,比如:房價(jià),溫度
無監(jiān)督學(xué)習(xí)是指對(duì)沒有label的的train dataset進(jìn)行學(xué)習(xí)
- 聚類的目標(biāo)是從dataset中發(fā)現(xiàn)具有相似性的groups, 常見算法如K-means 和 Mean Shift
- 密度估計(jì)的目標(biāo)是判斷dataset中數(shù)據(jù)的分布
強(qiáng)化學(xué)習(xí)主體處在環(huán)境之中,并從環(huán)境中得到反饋。主體必須創(chuàng)建一種策略來解釋所有的反饋,從中學(xué)習(xí)。
注:如果既可以使用監(jiān)督學(xué)習(xí)又可以使用無監(jiān)督學(xué)習(xí),一般情況下選擇監(jiān)督學(xué)習(xí)。
* 預(yù)測(cè) (Prediction)
* 數(shù)據(jù)挖掘 (Data mining)

- 預(yù)測(cè)重視算法的預(yù)測(cè)能力,比如天氣預(yù)報(bào),我們更關(guān)心的是一個(gè)算法預(yù)測(cè)溫度的準(zhǔn)確率。
- 數(shù)據(jù)挖掘則更重視算法的可解釋性,比如Market Basket Analysis中的一個(gè)經(jīng)典案例,當(dāng){尿布+奶粉} -->{啤酒+ 刮胡刀} 這種奇怪的組合被Walmart發(fā)現(xiàn)時(shí),數(shù)據(jù)挖掘可以幫助人們理解其背后的原因:年輕的妻子在家坐月子,年輕的父親們出來購物。因此,我們可以把更多年輕父親可能會(huì)買的東西也擺在一起。
3.1.2 基于符號(hào)學(xué)習(xí)的框架

我們可以從下面幾個(gè)方面分析一下:
- 學(xué)習(xí)任務(wù)的數(shù)據(jù)和目標(biāo) (Data and goals of the learning task)
- 數(shù)據(jù)類型
- 正例或反例(主要是針對(duì)上面說的基于相似的學(xué)習(xí))
- 單一實(shí)例和特定領(lǐng)域的知識(shí)庫(主要針對(duì)上面說的基于解釋的學(xué)習(xí))
- 高水平指導(dǎo)
- 類比 (比如: 電流 vs. 水)
- 數(shù)據(jù)的屬性和質(zhì)量
- 數(shù)據(jù)可能來自外界環(huán)境中的teacher,或者程序自身產(chǎn)生
- 數(shù)據(jù)可能是可信賴的,也可能是包含噪聲(noise)的
- 數(shù)據(jù)可能是well-structured,也可能是unorganized
- 數(shù)據(jù)可能包含正例反例,也可能只含有正例
- 目標(biāo)(goal or target)
- 對(duì)一個(gè)概念或者類的描述
- 獲取計(jì)劃
- 求解問題的啟發(fā)式信息
- 其他形式的過程性知識(shí)
| 概念學(xué)習(xí) | 基于解釋的學(xué)習(xí) | 聚類 | |
|---|---|---|---|
| 數(shù)據(jù) | 對(duì)于某個(gè)目標(biāo)類大量的正例和反例 | 單一實(shí)例和特定領(lǐng)域的知識(shí)庫 | 未分類實(shí)例集 |
| 目標(biāo) | 推斷一個(gè)一般定義 | 推斷一個(gè)一般概念 | 發(fā)現(xiàn)類別 |
所學(xué)知識(shí)的表示 (The representation of learned knowledge)
謂詞演算(predicare calculus)的表達(dá)式
結(jié)構(gòu)化表示(structured representation)比如: 框架(frame)或者對(duì)象(object)
計(jì)劃可以通過操作序列或者三角表(triangle table)來描述
-
啟發(fā)式信息(heuristics)可以用問題求解規(guī)則來表示
size(obj1, small) ∧ color(obj1, red) ∧ shape(obj1, round) size(obj2, large) ∧ color(obj2, red) ∧ shape(obj2, round) 從上面兩個(gè)實(shí)例,我們可以把“ball”的概念泛化為: size(X, Y) ∧ color(X, Z) ∧ shape(X, round) 操作集合 (A set of operations)
給定訓(xùn)練實(shí)例集,學(xué)習(xí)器要有對(duì)representations有操作能力,典型的操作能力包括:對(duì)于符號(hào)表達(dá)式的泛化(generalizing)或者特化(specializing)
調(diào)整神經(jīng)網(wǎng)絡(luò)的權(quán)值(weights)
-
其他方式對(duì)representation的修改
Replacing constants with variables: Obj(round,red,ball) generalizes to Obj(round,X,ball) Dropping conditions from a conjunctive expression: Obj(round) ∧ Obj(small) ∧ Obj(red) generalizes to Obj(round) ∧ Obj(red) Adding a disjunct to an expression: Obj(round) ∧ Obj(small) ∧ Obj(red) generalizes to Obj(round) ∧ Obj(small) ∧ ((Obj(red) v Obj(blue)) Replacing a property with its parent in a class hierarchy Obj(red) generalizes to Obj(primary_color) if primary_color is a superclass of red (following the color class hierarchy) 概念空間 (The concept space)
上述的表述語言和操作定義了潛在的概念空間,學(xué)習(xí)器(learner)必須搜索這個(gè)空間來尋找期望的概念。啟發(fā)式搜索 (Heuristic search)
利用訓(xùn)練數(shù)據(jù)和啟發(fā)式信息進(jìn)行有效地搜索
下面舉一個(gè)歸納學(xué)習(xí)的經(jīng)典例子 from Patrick Winston
首先看到的是“拱門”的兩個(gè)正例,描述如下圖


然后進(jìn)行泛化,這里的超類(supertype)則是多邊形(polygon)

泛化后我們可以得到對(duì)拱門新的描述

最后根據(jù)小差別(near miss)的描述,我們特化得到了排除小差別的拱門描述


3.1.3 一些常見的基于符號(hào)的方法
- 監(jiān)督學(xué)習(xí) Learn More
- 概念學(xué)習(xí) (Concepts learning)
- 變形空間搜索 (Version space learning)
- 決策樹 (Decision Tree) 決策樹之Python實(shí)現(xiàn)
- 無監(jiān)督學(xué)習(xí) Learn More
- 發(fā)現(xiàn)程序(discovery program)比如:AM, BACON, SCAVENGER...
- 類別發(fā)現(xiàn)(pattern discovery)
- 強(qiáng)化學(xué)習(xí)
- 不同于監(jiān)督學(xué)習(xí),學(xué)習(xí)器并未告知要做什么,學(xué)習(xí)主體自身通過訓(xùn)練、誤差和反饋來學(xué)習(xí)在環(huán)境中實(shí)現(xiàn)目標(biāo)的最佳策略(optimal policy)。
- 在強(qiáng)化學(xué)習(xí)中,主體通過發(fā)現(xiàn)在特定環(huán)境中做什么動(dòng)作獲得的獎(jiǎng)勵(lì)最多就采取什么動(dòng)作。主體動(dòng)作的影響不只是立即得到的獎(jiǎng)勵(lì),而且還影響接下來的動(dòng)作和最終的獎(jiǎng)勵(lì)。
- 強(qiáng)化學(xué)習(xí)中最重要的兩個(gè)特性:
- 試錯(cuò)搜索(trial-and-error search)
- 延期強(qiáng)化(delayed reinforcement)
- Reinforcement learning is most successful when the environment is big or can not be precisely described.
3.1.4 歸納偏置 (Inductive Bias)
- 歸納學(xué)習(xí)依賴于先驗(yàn)知識(shí)和對(duì)要學(xué)習(xí)的概念本質(zhì)的假定。
- 歸納偏置是指學(xué)習(xí)器用來限制概念空間或者在這個(gè)概念空間選擇概念的任何標(biāo)準(zhǔn)(criteria)。
- 歸納偏置的原因
- 學(xué)習(xí)空間太大,基于搜索的學(xué)習(xí)就沒有實(shí)用性。
- 歸納泛化自身的本質(zhì)-泛化并不保真。
- 訓(xùn)練數(shù)據(jù)只是域中所有實(shí)例的一個(gè)子集,任意的一個(gè)訓(xùn)練集可以支持很多不同的泛化。所以僅有數(shù)據(jù)是不充分的,學(xué)習(xí)器必須對(duì)“可能的”概念做進(jìn)一步假設(shè)。比如以啟發(fā)式信息的形式出現(xiàn)。
3.2 連接的方法 (connectionist) Learn More
Non-symbolic Learning Approach
- 神經(jīng)網(wǎng)絡(luò)(Neural network)或者連接網(wǎng)絡(luò)(Connectionist network)學(xué)習(xí)知識(shí)的方法不是基于符號(hào)化的。
- 就如同我們?nèi)祟惖拇竽X一樣,Neural network是由相連的人工神經(jīng)元(Neuron)組成的系統(tǒng)。
- 神經(jīng)網(wǎng)絡(luò)并不是通過增加representations來學(xué)習(xí),而是通過修改自身結(jié)構(gòu)來學(xué)習(xí)。
3.3 遺傳或進(jìn)化的方法 (genetic/evoltionary)
Non-symbolic Learning Approach
更多內(nèi)容,以后補(bǔ)充
3.4 動(dòng)態(tài)或隨機(jī)的方法 (dynamic/stochastic)
- 應(yīng)用于很多復(fù)雜領(lǐng)域,例如人類語言的產(chǎn)生及理解。
更多內(nèi)容,以后補(bǔ)充
