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