人工智能 (AI)、機(jī)器學(xué)習(xí) (ML) 和算法這幾個(gè)詞經(jīng)常出現(xiàn)誤用、混淆和誤解。盡管它們都有各自的固定含義,但是人們常常會(huì)將這幾個(gè)概念互換使用。遺憾的是,如果沒有領(lǐng)會(huì)這些含義,它們可能會(huì)讓本已十分復(fù)雜的快速發(fā)展領(lǐng)域亂上加亂。現(xiàn)在,就讓我們認(rèn)識(shí)一些有關(guān)算法、人工智能和機(jī)器學(xué)習(xí)的基礎(chǔ)知識(shí),了解它們是什么、如何使用、用在哪里以及分別是為了什么才創(chuàng)造出它們。我們首先從算法開始討論,因?yàn)樗惴?gòu)成了人工智能和機(jī)器學(xué)習(xí)的基礎(chǔ)。
算法
簡(jiǎn)而言之,算法就是執(zhí)行計(jì)算或解決特定問題時(shí)要遵循的一組規(guī)則,它包含求解所需的一系列步驟。盡管我們大多數(shù)人對(duì)算法的第一個(gè)反應(yīng)都是向計(jì)算機(jī)發(fā)出的指令,但哪怕是今天您做晚餐時(shí)用到的簡(jiǎn)單食譜,也可以視為一種算法。
算法實(shí)質(zhì)上是一種快捷地告訴計(jì)算機(jī)下一步要做什么的方式,通過使用“and”(與)、“or”(或)或“not”(非)語(yǔ)句給出這些指令。它們可能非常簡(jiǎn)單,也可能極其復(fù)雜。
圖1: 一種用于在隨機(jī)排列的數(shù)字列表中找出最大數(shù)字的簡(jiǎn)單算法。(來(lái)源:維基百科)
對(duì)于(圖1)中的算法,其高級(jí)描述如下:
如果數(shù)組中沒有數(shù)字,則沒有最大數(shù)字。
假設(shè)數(shù)組中的第一個(gè)數(shù)字是其中的最大數(shù)字。
對(duì)于數(shù)組中剩余的每個(gè)數(shù)字:如果該數(shù)字大于當(dāng)前的最大數(shù)字,則假設(shè)該數(shù)字為數(shù)組中的最大數(shù)字。
如果數(shù)組中的數(shù)字都已經(jīng)循環(huán)到,則將當(dāng)前的最大數(shù)字視為數(shù)組中的最大數(shù)字。
這些指令可以明確地編寫成具體程序;但是,還有一些算法則使計(jì)算機(jī)能夠自行學(xué)習(xí),比如機(jī)器學(xué)習(xí)。在討論機(jī)器學(xué)習(xí)之前,讓我們介紹一下人工智能這一更廣泛的主題。
人工智能
人工智能 (AI) 需要將一系列的算法結(jié)合起來(lái),以便處理意外情況。如果說人工智能就像一把傘,那么機(jī)器學(xué)習(xí)和深度學(xué)習(xí) (DL) 就好比是傘骨。AI系統(tǒng)能夠以一種自然的方式與用戶交互。Amazon、Google和Apple處于利用人工智能及其核心非結(jié)構(gòu)化數(shù)據(jù)的最前沿。
2018年,人工智能的閱讀理解能力朝著人類同等能力的目標(biāo)邁出了巨大的一步。開發(fā)人員利用監(jiān)督學(xué)習(xí)和帶標(biāo)簽的示例來(lái)訓(xùn)練AI模型,以執(zhí)行諸如圖像分類等有具體目標(biāo)的任務(wù)。一年后,人工智能出現(xiàn)了一種新的趨勢(shì)。自我監(jiān)督學(xué)習(xí)被用來(lái)通過容易獲得的相關(guān)內(nèi)容幫助模型形成對(duì)語(yǔ)言中豐富上下文語(yǔ)義的理解。這種突破性方法幫助模型學(xué)習(xí)的一種方式是通過閱讀文本、屏蔽不同的單詞并根據(jù)剩余的文本進(jìn)行預(yù)測(cè)。
利用這種自我監(jiān)督的學(xué)習(xí),Microsoft的Turing模型在2020年達(dá)到了170億參數(shù)量的新高度,實(shí)現(xiàn)了包括生成摘要、語(yǔ)境預(yù)測(cè)和問題解答在內(nèi)的各種實(shí)用語(yǔ)言建模任務(wù)。通過其對(duì)人類語(yǔ)言深刻的根本性理解,Microsoft Turing模型能夠獲取人們所要表述的含義,并對(duì)實(shí)時(shí)對(duì)話和文檔中的問題準(zhǔn)確作出回應(yīng)。
準(zhǔn)確性會(huì)隨著AI系統(tǒng)的學(xué)習(xí)而提高。在未來(lái)數(shù)年內(nèi),AI系統(tǒng)的參數(shù)量預(yù)計(jì)將達(dá)到萬(wàn)億級(jí),這將使AI能夠更輕松地協(xié)助用戶,實(shí)現(xiàn)僅憑結(jié)構(gòu)化數(shù)據(jù)無(wú)法得到的驚人準(zhǔn)確性。那么,是什么讓這種學(xué)習(xí)帶來(lái)前所未有的準(zhǔn)確性的呢?
機(jī)器學(xué)習(xí)
機(jī)器學(xué)習(xí)使用結(jié)構(gòu)化數(shù)據(jù)輸入和算法進(jìn)行假設(shè)、重新評(píng)估數(shù)據(jù),并根據(jù)新發(fā)現(xiàn)的條件重新配置原始算法(圖2)。它無(wú)需人工干預(yù)即可做到這一點(diǎn),因此稱為機(jī)器學(xué)習(xí)。因?yàn)闄C(jī)器學(xué)習(xí)系統(tǒng)可以非常快速地處理大量數(shù)據(jù),所以它的優(yōu)勢(shì)在于可以用人類無(wú)法企及的速度和能力發(fā)現(xiàn)所有可能的模式和解決方案。
然而,復(fù)雜的系統(tǒng)也提出了復(fù)雜的挑戰(zhàn)。由于機(jī)器學(xué)習(xí)太依賴于假設(shè)了,因此系統(tǒng)可能會(huì)迅速走上錯(cuò)誤的道路,從而導(dǎo)致意外的行為和結(jié)果。一個(gè)例子就是Uber的自動(dòng)駕駛試點(diǎn)項(xiàng)目,由于錯(cuò)誤假設(shè)導(dǎo)致撞死了一名行人,最終在2018年叫停了所有試驗(yàn)。
圖2: 機(jī)器學(xué)習(xí)涉及自動(dòng)根據(jù)經(jīng)驗(yàn)改進(jìn)的計(jì)算機(jī)算法。這種算法基于樣本或訓(xùn)練數(shù)據(jù)構(gòu)建模型,目的是作出預(yù)測(cè)(學(xué)習(xí))。(來(lái)源:維基百科)
有關(guān)機(jī)器學(xué)習(xí)的例子不勝枚舉, 這里我們就舉一個(gè)信用卡欺詐檢測(cè)的例子。在這一場(chǎng)景中,如果信用卡的使用超出了預(yù)期中持卡人的正常使用模式,則要求用戶驗(yàn)證可疑交易是否合法。然后,機(jī)器學(xué)習(xí)系統(tǒng)進(jìn)一步調(diào)整和修正其對(duì)可接受使用模式的理解。
機(jī)器學(xué)習(xí)可以預(yù)想到一系列結(jié)果,這些結(jié)果可能全部正確,但是許多結(jié)果一開始可能是不可預(yù)測(cè)的。機(jī)器學(xué)習(xí)項(xiàng)目缺乏準(zhǔn)確性的原因還有很多。
問題出在哪里?
大多數(shù)人工智能實(shí)驗(yàn)失敗的原因之一是缺乏能夠讓機(jī)器學(xué)會(huì)推理的早期指導(dǎo)。機(jī)器只認(rèn)得“0”和“1”, 不能處理其他模棱兩可的情況。
例如,想象一下“痛”的概念。孩子需要有人教她說:“如果你摸到火爐會(huì)好痛,這樣做不對(duì)。” 或者,同樣也可以說:“如果你要跑步,就有可能會(huì)疼。你會(huì)感到痛,這是正?,F(xiàn)象?!?推理有助于讓機(jī)器學(xué)習(xí)系統(tǒng)知道正面結(jié)果與負(fù)面結(jié)果之間的差異。從Uber的例子可以看出,這在深度學(xué)習(xí)中變得更加重要,因?yàn)槿绻撤N類型的指導(dǎo)者沒有提供反饋,系統(tǒng)就可能會(huì)做出錯(cuò)誤的假設(shè)。只有在引導(dǎo)機(jī)器如何處理各種模棱兩可結(jié)果之后,機(jī)器才談得上實(shí)現(xiàn)了充分學(xué)習(xí)。如果一個(gè)問題的答案是“也許”而不是“是”或“否”,則必須提出更多問題!
另一個(gè)挑戰(zhàn)在于,要有無(wú)窮無(wú)盡的時(shí)間和無(wú)限的資金,才能使用各種可能的組合和條件建立例程,而且還不能止步于此—— 還應(yīng)考慮各種條件和它們的組合在將來(lái)可能會(huì)如何改變。例程往往會(huì)流于僵化,從而導(dǎo)致數(shù)據(jù)流不靈活。
推理的要義在于舉一反三。隨著引擎變得更智能,修正成為了可能。購(gòu)物單上看似清楚的“half-and-half”(鮮奶油),如果用戶沒有修正,則會(huì)因?yàn)榘補(bǔ)nd作為邏輯運(yùn)算符而只顯示兩個(gè)“half”。但是,如果用戶修正了條目,引擎將考慮這種更正,并可能考慮上萬(wàn)個(gè)其他條目中的相同修正,從而默認(rèn)接受“half-and-half”作為有效項(xiàng)目。這就像教孩子說英語(yǔ): 了解單詞的含義,然后理解在特定的條件下將一個(gè)單詞與另一個(gè)單詞放在一起,可能會(huì)使含義發(fā)生變化。
必須要有這樣的規(guī)則和規(guī)定,算法才能正確地發(fā)揮作用。算法本身是沒有常識(shí)的,它對(duì)明顯的錯(cuò)誤一無(wú)所知——程序根本就不知道這是怎么回事。算法需要有非常完善、具體且明確的行動(dòng)計(jì)劃才能發(fā)揮作用。問題的癥結(jié)恐怕就在這里。
總而言之,當(dāng)您審視人工智能、算法與機(jī)器學(xué)習(xí)這幾個(gè)特定詞語(yǔ)的性質(zhì)時(shí),很顯然不應(yīng)該將它們混為一談。最好的做法是,將它們以這樣的方式來(lái)看待:算法是解決問題的公式或指令,人工智能使用數(shù)據(jù)和算法來(lái)激發(fā)行動(dòng)和完成任務(wù)。另一方面,機(jī)器學(xué)習(xí)是人工智能的一種應(yīng)用,相當(dāng)于基于先前數(shù)據(jù)和歷史的自動(dòng)學(xué)習(xí)。算法是人工智能和機(jī)器學(xué)習(xí)的基礎(chǔ),而后者是我們未來(lái)的基礎(chǔ)。
審核編輯:郭婷
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7289瀏覽量
87516 -
人工智能
+關(guān)注
關(guān)注
1789文章
46316瀏覽量
236469 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8320瀏覽量
132165
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論