圖解機器學習總結——1、基本概念
阿新 • • 發佈:2022-05-04
序言:近期主要幫同事講解《圖解機器學習》,剛拿到這本書覺得內容相比較平常使用的機器學習演算法,很多地方講解得比較奇怪,在認真的讀完後,覺得還是有很多重要的東西,因此讀了書就想把知識點整理出來,加上一些自己對各種演算法的認識,因此這個系列裡面有一些個人的理解,若有不對的地方,還請不吝指出,謝謝。
一、機器學習的概念
對於機器學習概念的理解,機器學習主要是從大量的資料中找到資料中潛在的模式或者規律,並利用這樣的模式或者規律作用於一些未知的資料。根據資料形式的不同,可以將機器學習分為:
- 監督學習。
- 無監督學習。
- 強化學習。
1.1、監督學習
1.2、無監督學習
1.3、強化學習
強化學習的資料形式與監督學習一致,但是在學習的過程中,不要通過標籤評價學習的效果,而是通過自己對預測的結果進行評估。強化學習在機器人的自動控制、計算機遊戲中的人工智慧等方面有著廣泛的應用。
二、機器學習中的典型任務
在機器學習中,典型的任務包括
- 迴歸
- 分類
- 異常檢測
- 聚類
- 降維
2.1、迴歸
2.2、分類
2.3、異常檢測
2.4、聚類
聚類也是一類無監督學習問題,是將樣本劃分到不同的類別中。
常用的聚類演算法有:K-Means,譜聚類等。
2.5、降維
降維,是指從高維資料中提取出關鍵的資訊,將其轉換為易於計算的低維問題,進而對其進行求解。降維可以分為無監督的降維和有監督的降維。
常用的降維演算法有:PCA,SVD等。
三、機器學習的方法
在機器學習中,對於分類問題,通常可以分為兩種不同的學習的方法,即:
- 判別式分類
- 生成式分類
3.1、判別式分類
3.2、生成式分類
四、機器學習中的各種模型
1、線性模型
2、核模型
''' Date:20160409 @author: zhaozhiyong ''' import matplotlib.pyplot as plt import math def cal_Gaussian(x, c=0, h=1): molecule = (x - c) * (x - c) denominator = 2 * h * h return math.exp(-molecule / denominator) x = [] for i in xrange(-40,40): x.append(i * 0.5); score_1 = [] score_2 = [] score_3 = [] score_4 = [] for i in x: score_1.append(cal_Gaussian(i,0,1)) score_2.append(cal_Gaussian(i,5,1)) score_3.append(cal_Gaussian(i,0,3)) score_4.append(cal_Gaussian(i,5,3)) plt.plot(x, score_1, 'b--', label="c=0,h=1") plt.plot(x, score_2, 'k--', label="c=5,h=1") plt.plot(x, score_3, 'g--', label="c=0,h=3") plt.plot(x, score_4, 'r--', label="c=5,h=3") plt.legend(loc="upper right") plt.xlabel(r"time(hour)") plt.ylabel("score") plt.show()
3、層級模型
與引數相關的非引數模型,稱為非線性模型。在非線性模型中,有一類是層級模型。層級模型中典型的是神經網路模型。