人類發(fā)明的機(jī)器學(xué)習(xí)(ML)算法簡(jiǎn)直數(shù)不勝數(shù)。當(dāng)然,大多數(shù)時(shí)候只有一小部分被用于研究和工業(yè)。然而,對(duì)于個(gè)人來說,理解并記住所有這些 ML 模型的細(xì)節(jié)仍然有點(diǎn)困難。有些人可能會(huì)有一個(gè)錯(cuò)誤的印象,認(rèn)為所有這些算法都是完全不相關(guān)的。更重要的是,當(dāng)兩種算法似乎都有效時(shí),如何選擇使用算法 A,還是 B?
人類發(fā)明的機(jī)器學(xué)習(xí)(ML)算法簡(jiǎn)直數(shù)不勝數(shù)。當(dāng)然,大多數(shù)時(shí)候只有一小部分被用于研究和工業(yè)。然而,對(duì)于個(gè)人來說,理解并記住所有這些 ML 模型的細(xì)節(jié)仍然有點(diǎn)困難。有些人可能會(huì)有一個(gè)錯(cuò)誤的印象,認(rèn)為所有這些算法都是完全不相關(guān)的。更重要的是,當(dāng)兩種算法似乎都有效時(shí),如何選擇使用算法 A,還是 B?
這篇文章的目的是為讀者提供一個(gè)不同的角度來看待 ML 算法。有了這些角度,算法可以在同樣的維度上進(jìn)行比較,并且可以很容易地進(jìn)行分析。本文在撰寫時(shí)考慮了兩個(gè)主要的 ML 任務(wù)——回歸和分類。
時(shí)間復(fù)雜度
在 RAM 模型下,算法所花費(fèi)的“時(shí)間”是由算法的基本運(yùn)算來度量的。雖然用戶和開發(fā)人員可能更關(guān)心算法用于訓(xùn)練模型的掛鐘時(shí)間,但在比較模型用于訓(xùn)練的時(shí)間時(shí),使用最壞情況下的計(jì)算時(shí)間復(fù)雜度更公平。使用計(jì)算復(fù)雜度的好處是,可以忽略運(yùn)行時(shí)使用的計(jì)算機(jī)能力、架構(gòu)以及底層編程語言等的差異,允許用戶關(guān)注算法基本操作的基本差異。
注意,在訓(xùn)練和測(cè)試期間,時(shí)間復(fù)雜度可能差別很大。例如,像線性回歸這樣的參數(shù)模型可能訓(xùn)練時(shí)間很長(zhǎng),但它們?cè)跍y(cè)試期間很高效。
-
算法
+關(guān)注
關(guān)注
23文章
4623瀏覽量
93110 -
ML
+關(guān)注
關(guān)注
0文章
149瀏覽量
34679 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8428瀏覽量
132837
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論