機器學習究竟是什麼?-《大演算》
編按:人類從農業社會、工業社會,一路發展到現在的資訊社會,大數據、人工智慧、機器學習與演算法成了現代人們共同追求的方向。本文摘自《大演算:機器學習的終極演算法將如何改變我們的未來,創造新紀元的文明?》(The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World)一書,作者佩德羅多明戈斯(Pedro Domingos)透過低科技(low-tech)的農業(farming)來比喻機器學習,對當今的「資訊生態系統」做出有趣的詮釋。
或許機器學習的強大魅力,透過低科技(low-tech)的農業(farming)比喻,是最恰當的詮釋。
在工業社會中,產品由工廠製造,意味著工程師必須確切地弄清楚究竟如何從零件組裝產品、如何製造生產這些零組件等,從頭到尾都與原物料有關,而且整個過程都有許多工作必須進行。電腦則是有史以來發明過最複雜的產品,從設計到工廠大量製造,以及運行在電腦上的軟體程式都是相當繁重的工作。
但還有另一種更古老的方式,這種方式可以讓我們取得一些需要的東西,藉由大自然製造生產它們。在農業時代,我們播下種子,確保它有足夠的水分和養分,最後收割這些種植的作物。技術為什麼不能更像這樣呢?可以的,而且這是機器學習的承諾。
機器學習演算法就像種子一樣,數據資料是土壤,而學會的軟體程式就是種植的作物。機器學習專家就像農夫,播下種子,辛勤灌溉土壤並加以施肥,同時密切關注作物的健康,但是在其他方面就不必特別介入了。
何謂機器學習
每當我們看到「機器學習」的這個字眼,兩件事情立即浮現出來。
第一,我們需要越多的數據學習資料,機器才能學習到越多。如果沒有數據資料,就沒有什麼可以學習的了,因為大數據可以讓機器獲得更多的學習,透過指數倍增與堆積如山的數據資料,來推動機器學習的迅速發展。如果機器學習是某件你在超市購買的商品,那麼商品的紙箱上一定會特別標示「運作時只需要添加數據來學習資料」。
第二,機器學習可說是一把能砍殺恐怖怪物的利劍。只要給予足夠的數據資料,一套只有幾百行程式碼的學習程式,就能輕易產生一套數百萬條程式碼的軟體程式,而且可以針對不同的問題,一次又一次地做到這一點。然而,就像九頭魔蛇海德拉一樣,就算我們砍斷怪物舊的頭,它依然會立即長出新的,但新生成的頭剛開始比較小,而且需要一段時間成長,所以我們仍取得了優勢。
機器學習擁有許多不同的形式,而且也有許多不同的名稱,例如:樣式辨識(pattern recognition)、統計模式(statistical modeling)、資料探勘(data mining)、知識發現(knowledge discovery)、預測分析(predictive analytics)、資料科學(data science)、自我調適系統(adaptive systems)、自我組織系統(self-organizing systems)等。機器學習被不同的領域廣泛地使用,而在這本書中,我則統一使用「機器學習」這個術語,來泛指所有的機器學習。
從資訊處理的生態系統看機器學習
機器學習有時會與人工智慧(Artificial Intelligence,簡稱 AI)混淆。從技術面來說,機器學習是人工智慧的一個分支領域,但由於機器學習擴展得如此廣大與成功,以至於如今已讓它引以為榮的父母 —— 人工智慧 —— 黯然失色。發展人工智慧的目標,就是教導電腦做到比現在人類所做的更好境界,而機器學習可以說是這些事情中最重要的。如果沒有機器學習,就沒有電腦可以長期跟得上人類的腳步;有了機器學習,其餘的電腦則會遵循它的發展。
在資訊處理生態系統中, 學習器是「超級食肉動物」(superpredators);資料庫(Databases)、資訊採集器(crawlers,又稱檢索器)以及分析索引子(indexers)等,都可以說都是草食動物,它們有耐性地在一望無際的資料領域進行探勘挖掘(munging);至於統計演算法(Statistical algorithms)、線上分析處理(online analytical processing)等,就像是肉食性動物。
在生態系統中,草食動物的存在是必要的,沒有牠們,其他動物便不可能存活,同時間,超級食肉動物也讓我們的生活更精采。資訊採集器就好比一頭乳牛,而網路則是遍及全球的牧草地,每一個網頁都是一根小草,當資訊採集器完成網頁探勘時,網站的副本會儲存在它的硬碟空間中,然後透過分析索引子針對每個出現的字詞,制定一個網頁的索引清單,很像是一本書後面所附的索引一樣。而資料庫就如大象,又大又笨重,而且資料會永遠儲存,不會忘記。整個資訊處理程序便是在這些有耐性的動物們之間,投以統計和分析演算法,執行壓縮和資料檢選,再把數據資料轉化為資訊。然後學習器會接收吃下這些資訊,負責逐量消化它,最後再把這些資訊轉化為知識。
工業革命(Industrial Revolution)是人力自動化的作業。同樣地,後來的資訊革命(Information Revolution)也是自動化腦力工作的作業流程,而機器學習則是自動化機器本身的新型態發展。
如果沒有機器學習,軟體程式設計師反而成為阻礙進展的瓶頸;有了機器學習,進展的腳步更加快了。如果你是一位懶散且不太聰明的電腦科學家,機器學習會是理想的職業,因為機器學習演算法能自動幫你完成所有的工作,但是讓你獨攬全部的功勞。另一方面,機器學習演算法可能也因此讓我們丟掉工作,這就是所謂理想的賞罰(poetic justice,又稱詩性懲罰)吧。
藉由採取自動化而達到新的境界,機器學習革命勢必將引起廣泛的經濟和社會變革,正如網際網路、個人電腦、汽車和蒸汽機,在它們的年代所扮演的角色一樣。而在這些改變,已經澈底改變商業型態的創新革命。
- 本文出自三采文化《大演算:機器學習的終極演算法將如何改變我們的未來,創造新紀元的文明?》
- 書名:《大演算:機器學習的終極演算法將如何改變我們的未來,創造新紀元的文明?》
- 出版社:三采文化
- 作者: 佩德羅.多明戈斯
留言討論