摘要:歡迎常來為什么要學(xué)老師上課時候就說過傳統(tǒng)算法解決確定性問題,而機(jī)器學(xué)習(xí)解決非確定性問題。機(jī)器學(xué)習(xí)算法機(jī)器學(xué)習(xí)算法和普通算法還是有很大區(qū)別的。而自動駕駛等前言機(jī)器人,都使用了增強(qiáng)學(xué)習(xí)。學(xué)習(xí)資料在線課程入門機(jī)器學(xué)習(xí)經(jīng)典算法與應(yīng)用書籍機(jī)器學(xué)習(xí)實戰(zhàn)
文章圖片來源于 GitHub,網(wǎng)速不佳的朋友請點我看原文。
順便軟廣一下個人技術(shù)小站:godbmw.com。歡迎常來?(^?^*)
1. 為什么要學(xué)?老師上課時候就說過:傳統(tǒng)算法解決確定性問題,而機(jī)器學(xué)習(xí)解決非確定性問題。
好吧,確實激起了我的興趣,所以系統(tǒng)學(xué)習(xí)一下吧。
2. 機(jī)器學(xué)習(xí)算法機(jī)器學(xué)習(xí)算法和普通算法還是有很大區(qū)別的。它不要求百分之百準(zhǔn)確,并且對數(shù)學(xué)要求較高。
我認(rèn)為重點有幾下 4 點:
理解算法原理
應(yīng)用實際場景
進(jìn)行對比試驗
不同算法對比
同一算法不同參數(shù)對比
難點有幾下幾點:
如何評價算法好壞
解決擬合和過擬合
如何正確調(diào)參
如何驗證算法正確性
3. 可以解決什么問題?有些算法既可以處理分類、也可以處理回歸任務(wù),而在一些情況下,回歸任務(wù)可以簡化為分類任務(wù),以方便問題解決。3.1 分類任務(wù)
常見的有分類任務(wù)有 2 分類和多分類任務(wù),并且兩者之間可以轉(zhuǎn)化。
比如 AlphaGo 下圍棋,可以理解成一個多分類任務(wù):因為是在選擇棋盤上的落子點。除此之外,推箱子游戲:可能有 2-4 個方向提供選擇,也可以理解成分類任務(wù)。
3.2 多標(biāo)簽分類而在 ML 前沿領(lǐng)域,實現(xiàn)了多標(biāo)簽分類:不再單純的是一個分類,而是擁有多個標(biāo)簽。
例如下面這張含有多個標(biāo)簽的圖片,多標(biāo)簽會讓機(jī)器對它的定位更準(zhǔn)確:
機(jī)器獲得結(jié)果是一個連續(xù)的數(shù)字的值,而不是一個類別。連續(xù)的值可以劃分為無限多個小的點(可以理解成無限多個類別),又怎么能處理成類別呢。
4. 算法分類 4.1 監(jiān)督學(xué)習(xí)交給算法的訓(xùn)練數(shù)據(jù)已經(jīng)被打了“標(biāo)簽”,或者已經(jīng)給出了分類。訓(xùn)練后的算法可以給新的數(shù)據(jù)打標(biāo)簽或者分類。
因此,監(jiān)督學(xué)習(xí)的訓(xùn)練數(shù)據(jù)需要大量的人力來進(jìn)行標(biāo)記。
當(dāng)然,在一些領(lǐng)域已經(jīng)積累了一些被標(biāo)記的數(shù)據(jù)信息,例如大型博客平臺,對每篇博客都有分類和標(biāo)簽。這種時候,監(jiān)督學(xué)習(xí)的人力成本基本就是 0 了。
4.2 非監(jiān)督學(xué)習(xí)給機(jī)器的訓(xùn)練數(shù)據(jù)沒有任何“標(biāo)簽”,或者分類。訓(xùn)練后的算法仍然可以給新的數(shù)據(jù)打標(biāo)簽或者分類。
經(jīng)常聽到的算法,就有聚類分析,比如每個用戶都被電商平臺劃分到某一用戶群體。
另一個非常重要的用途,是對數(shù)據(jù)進(jìn)行降維處理:
特征提?。禾崛≈匾奶卣?,去除不重要的特征。防止噪聲影響特征提取。
特征壓縮:在保證數(shù)據(jù)信息不被過多損害的情況下,將高維向量壓縮成低維向量,例如 PCA 算法。在保證穩(wěn)定性的情況下,提高處理速度。
另一個非常重要的用途:異常檢測。如下圖所示。以方便算法發(fā)現(xiàn)一般性特征和規(guī)律。
4.3 半監(jiān)督學(xué)習(xí)一部分?jǐn)?shù)據(jù)有“標(biāo)簽”或分類,另一部分并沒有。
此時,一般通過無監(jiān)督學(xué)習(xí)手段對數(shù)據(jù)進(jìn)行處理,之后使用監(jiān)督學(xué)習(xí)做模型的訓(xùn)練和預(yù)測。
4.4 增強(qiáng)學(xué)習(xí)根據(jù)周圍環(huán)境,采取行動,再根據(jù)行動結(jié)果,改善學(xué)習(xí)行動方式。
如下圖所示,agent 使我們的算法,當(dāng)他執(zhí)行后,會根據(jù)環(huán)境反饋來執(zhí)行獎賞或者懲罰,再改進(jìn)行為模式。循環(huán)往復(fù)。
而 AlphaGo、自動駕駛等前言機(jī)器人,都使用了增強(qiáng)學(xué)習(xí)。
5. 更多算法分類 5.1 批量學(xué)習(xí)和在線學(xué)習(xí)批量學(xué)習(xí)是指:算法一旦根據(jù)數(shù)據(jù)訓(xùn)練出模型后,不會接受新的數(shù)據(jù)來優(yōu)化模型。在線學(xué)習(xí)是指:算法運行的過程中,也會把吸收新數(shù)據(jù)進(jìn)行模型訓(xùn)練。
優(yōu)缺點顯而易見,前者更省心,但是無法適應(yīng)數(shù)據(jù)快速變化的場景;后者可以及時針對不同的數(shù)據(jù)來優(yōu)化模型,但是容易受到新數(shù)據(jù)中垃圾數(shù)據(jù)影響。
5.2 非參數(shù)學(xué)習(xí)和參數(shù)學(xué)習(xí)參數(shù)學(xué)習(xí)是給出數(shù)據(jù)模型,剩下的工作就是利用算法找出最合適參數(shù)。比如假定數(shù)據(jù)點符合y = ax + b的模型,剩下工作就是用最小二乘法之類的算法找到(a,b)的最優(yōu)解。
非參數(shù)學(xué)習(xí)相反,不對模型進(jìn)行過多假設(shè),不將問題理解成學(xué)習(xí)一些參數(shù)。
5. 學(xué)習(xí)資料在線課程:
Python3 入門機(jī)器學(xué)習(xí) 經(jīng)典算法與應(yīng)用
書籍:《python 機(jī)器學(xué)習(xí)實戰(zhàn)》
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/19819.html
摘要:普通程序員,如何轉(zhuǎn)向人工智能方向,是知乎上的一個問題。領(lǐng)域簡介,也就是人工智能,并不僅僅包括機(jī)器學(xué)習(xí)。但是,人工智能并不等同于機(jī)器學(xué)習(xí),這點在進(jìn)入這個領(lǐng)域時一定要認(rèn)識清楚。 人工智能已經(jīng)成為越來越火的一個方向。普通程序員,如何轉(zhuǎn)向人工智能方向,是知乎上的一個問題。本文是對此問題的一個回答的歸檔版。相比原回答有所內(nèi)容增加。 目的 本文的目的是給出一個簡單的,平滑的,易于實現(xiàn)的學(xué)習(xí)方法,幫...
閱讀 3144·2021-11-11 16:55
閱讀 3366·2021-10-18 13:34
閱讀 670·2021-10-14 09:42
閱讀 1728·2021-09-03 10:30
閱讀 1005·2021-08-05 10:02
閱讀 1060·2019-08-30 11:27
閱讀 3550·2019-08-29 15:14
閱讀 1336·2019-08-29 13:02