前言
機器學習早已融入你我的生活
你可能不自覺,但其實機器學習(machine learning)早已融入你我的生活中。當你在搜尋引擎輸入一項查詢時,機器學習幫你找出有意義的查詢結果,還有相關的廣告。當你下載電子郵件時,多虧有機器學習的篩選,讓你看不到大部分的垃圾郵件。當你到亞馬遜網路商店(Amazon.com)購買書,或在全球最大線上影音服務平臺Netflix(網飛)觀看一部影片時,機器學習系統會幫你推薦一些你可能會喜歡的建議。就連臉書(Facebook)也運用機器學習來決定,幫你篩選所關心的好友資訊;而推特(Twitter)對於推文(tweets)也是利用類似做法。看來,當你使用電腦時,機器學習早已處處發揮其智慧功能。
傳統上,要讓電腦執行特定事情的唯一辦法,無論從簡單的兩個數字相加,到繁複的自動駕駛飛機,都是編寫演算法,透過演算法詳盡解釋如何執行每個步驟。機器學習演算法也稱為「學習器」(learners),可以自己找出執行方法,藉由從數據資料中進行推論,它們擁有的數據資料越多,運算而得的推論就越精準。如今我們不必編寫程式,機器學習演算法已經可以自行學習編寫電腦程式了。
這現象不只發生在網路世界,也發生在你的一整天生活中,從你醒來的那一刻到睡著時,機器學習無所不在。你的智慧時鐘收音機在早上7點響起,正在播放一首你從不曾聽過卻真心會喜歡的歌曲。這是美國線上電臺潘朵拉(Pandora)所提供的服務,它一直在學習你對音樂的喜好,就像是你自己的個人電臺播放員,也許就連歌曲本身也是藉由機器學習的編寫所產生的。起床後,你吃著早餐並讀著早報,這份報紙在幾個小時前才從印表機印出來,透過學習演算法仔細調整印刷過程,以避免報紙上產生汙痕。由於你安裝了Nest恆溫空調學習控制器(Nest learning thermostat),所以屋內的溫度設定得剛剛好,並且大幅節省了電費。
當你開車去上班時,車子會不斷調整燃油噴射和廢氣再循環,以達成行車的最實惠油耗。你還可以使用交通預測系統Inrix,以縮短在尖峰時段的上下班時間,更可緩解塞車壓力。在工作中,機器學習可以幫助你減輕資訊的氾濫和過載。你可以使用資料方塊(data cube)理論,進行巨量資料的概述,隨意從每一個角度來觀察,都可深度串聯探討最重要的部分。假設你到底要選版型A還是B,才能為你的網站創造更多業績?那麼網路學習系統(web-learning system)便會試驗A、B兩者,並提供回饋報告;當你需要瀏覽一家潛在供應商的網站時,該網站卻剛好是一個外國語系的網站,那也沒問題,Google(谷歌)能幫你自動翻譯這個網頁;你的電子郵件系統也會自動進行信件分類到不同收件匣,收件匣裡會過濾掉垃圾郵件,只留下重要訊息;你的文書處理器會自動檢查你的語法和拼寫是否正確。甚至你規劃一段旅程正尋找航班,此時你會運用Bing旅遊(Bing Travel)快速比價機票價格,並判讀哪些航班很快就會調降票價,提醒你暫緩購買機票。在不知不覺中,與沒有機器學習的幫助相比,你會越來越依賴機器學習完成更多事情。
在休息時間,你查看自己的股票基金,這些基金大多數是機器學習協助你挑選的股票投資組合,完全透過機器學習系統執行運作。午餐時間,你走在大街上,智慧手機幫你找尋用餐地點,例如:美國知名美食評論社群網站Yelp的機器學習系統,可以幫助你找到餐廳。你的手機塞滿機器學習,它們會努力糾正你的拼寫錯誤、理解你的口語指令、減少傳輸錯誤、識別條碼,還有很多其他生活功能。你的手機甚至可以預先料想到,你下一步打算做什麼,並相對應地為你提供建議。例如:當你用完午餐時,它會主動提醒你,下午會議必須延遲開會,因為有一位參與會議的外地訪客的航班延誤了。
夜幕低垂,你下班時,機器學習會幫助你,讓你安全走到停車處,停車場的監控攝影機會提供監測的視訊影像,假如偵測到可疑的活動,就會發出警報提醒保全人員。在你的回家路上,你走進超市裡,所走過的通道都是店家透過機器學習演算法進行最佳化擺設,如哪些商品需要庫存、哪條通道的底端要陳列設置,或是否將莎莎醬放置在醬料區,還是放置在墨西哥脆餅旁邊;而結帳時,你使用信用卡來支付,機器學習演算法會依據信用卡別,為你傳送特定的特惠訊息,並且匹配你的信用額度進行消費。同時,另一個機器學習演算法會不斷防範可疑的交易,如果它認為你的信用卡號碼被盜,便會立即提醒你注意。第三個機器學習演算法則會試著評估你對這張信用卡的滿意度,如果你是一位信用良好的客戶,但系統評估你似乎並不是很滿意,那麼在你換用別張信用卡前,便會主動推薦你一個更適合你的優厚特惠方案。
等你回到家,步行到信箱,你收到一封好友的信件,這封信是透過可以讀取手寫地址的機器學習分發派送給你的。同時還有一堆廣告垃圾信件,也是透過其他機器學習分類打包寄送給你(哦,好吧)!你停下來享受夜晚涼爽的空氣,你所在的城市,犯罪事件已有顯著下降,因為警方開始使用統計學習演算法,預測最可能發生犯罪的地方,並且在這些地方集中部署巡邏員警。晚上,你與家人一起享用晚餐,市長出現在新聞中,你會投票給他,就是因為經過機器學習精確判斷出,你是一位尚未做出決定的關鍵選民,所以他在競選期間親自打電話給你;晚餐後,你觀看球賽,兩隊球員的選擇都是透過統計學習演算法的協助。假日你會和孩子一起玩Xbox家用視訊遊戲機裡的遊戲,還有體感控制(Kinect)的機器學習計算出你正在做什麼動作與動作頻率。睡覺前,你要服用藥物,這些也是透過機器學習幫助,才得以設計與調配出來的藥品。同樣地,醫生也可能使用機器學習來幫你診斷,從X光片的判讀,找出你一系列不尋常的症狀。
機器學習在你人生的每個階段都扮演著重要角色。如果你在線上學習的是美國SAT大學入學考試,機器學習便可以針對你所練習的英文短文寫作,給予等級評分。如果你想要申請商學院,並參加GMAT入學資格考試,你的短文寫作評分者之一也會是機器學習系統。當你申請工作時,機器學習會從一堆簡歷中遴選出你的履歷,並主動排序推薦給你的未來雇主:這位是最適合求職候選人,建議優先關注吧;而你最近薪水調升,可能是由另一套機器學習所提供的綜合評鑑。如果你尋求購買房子,那麼房地產網站Zillow.com將會推薦你考慮哪一間房屋是最適合的。當你決定買下房子,你可能會申請房屋貸款,機器學習會評估你的申請,並建議適當的貸款申請案(或否決申請案)。更重要的,假如你已經在使用線上交友服務,機器學習可以幫助你找到一生的摯愛。
社會不斷地改變,每一段時間會有一個機器學習演算法的出現。機器學習正在重塑科學、技術、商業、政治和戰爭的模式。衛星、DNA序列測定儀(DNA sequencers)和粒子加速器,能以更精細的方式探索自然,而機器學習演算法會將巨量的資料洪流,轉變成新的科學知識。許多公司知道,他們客戶的喜好已經不像從前。擁有最佳選民模式的候選人將會贏得選舉,就像當年歐巴馬(Obama)對抗羅姆尼(Romney)競選美國總統。如今無人駕駛的交通工具也能橫跨陸、海、空進行自動導航。就連亞馬遜的推薦系統,也不需要任何人為你的喜好編寫程式,機器學習會透過你過往的購買行為進行歸納,自行找出你的喜好。而Google的自動駕駛車,已能教導自己如何安穩地行駛在道路上;這臺無人駕駛汽車完全不需要工程師人為撰寫演算法,一步一步地下達指令,教導車子如何從A地開往B地,甚至沒有人知道如何編寫駕駛汽車的程式,而且也不需要任何人去編寫,因為這臺無人駕駛汽車配備了機器學習,可以透過觀察駕駛人的行為,自行學習如何駕駛汽車。
機器學習真是陽光底下罕見的新鮮事,是一種自己建構自己的技術。自從人們遠古的祖先開始把石頭磨製成工具,人類就一直在推陳出新設計新文物,無論它們是純手工打造,或是大批量生產。然而機器學習卻是可以自行設計其他產物的文物。畢卡索(Picasso)曾說:「電腦是沒用的,電腦只能給你答案。」電腦不被認為應該具有創造性的,電腦被認為應該只會做人們交代它們去做的事情。如果你希望要求電腦去做的是具有創意的事情,那麼你就必須投入機器學習新領域研發。一套機器學習演算法就像一位大師級的工匠一樣,它的每一項產出作品都不相同,而且可以為客戶的需求量身訂做。這不是要將石頭變成磚瓦,黃金變成珠寶,學習器是要將數據資料套入演算法,而且擁有越多的數據資料,便能歸納出越複雜的演算法。
當機器學習就像一項新技術一樣,逐漸普及並且改變市場遊戲規則,若仍然只將這項技術視為黑盒子,那就不是明智之舉,反而無法透明地打開潘朵拉的盒子,辨識問題本質真偽。如今亞馬遜的演算法,讓世界各地任何人都能便捷決定要閱讀什麼書籍;美國國家安全局的演算法,可以判斷你是否為潛在的恐怖攻擊分子;氣候模型(Climate models)決定什麼是二氧化碳在大氣中的安全水平;選股模型(Stock-picking models)所驅動的股市交易量,甚至遠超過大多數人所做的。基本上,因為你無法控制自己不理解的東西,所以做為公民、專業人士,以及從事幸福追尋的人們,這就是為什麼你需要了解機器學習的原因。
這本書的首要目標是讓你置身於機器學習的祕密中。只有工程師和機械師需要深入理解汽車的引擎到底是如何運作的原理,然而對每位駕駛人來說,他只需要熟悉控制方向盤,隨心所欲駕馭汽車行駛的方向,腳踩煞車板就可以讓汽車停止前進。現今很少人知道學習器的對應組成元件到底是什麼,更不用說如何使用它們了。心理學家唐.諾曼(Don Norman)創造「概念模型」(conceptual model)這個術語,意思是指為了有效使用一項技術,我們需要具備該項技術的基本知識。所以這本書真正為你解析機器學習的概念模型。
每年數以百計的創新機器學習演算法被發明出來,它們都是基於環境需求被推衍開發出來的。而這些都是這本書所要探究的,它們也正是你需要知道的,以便了解機器學習是如何改變這個世界。本書不會深奧難懂,撇開它們在電腦裡的程式細節,這些機器學習演算法處處關係到我們每個人心中期待理解的問題答案,例如:機器是如何學習的?有沒有更好的方法?機器可以預測什麼?我們可以信任機器學過的東西嗎?針對這些問題,每種競爭的思想學派,在機器學習的思維上都有著南轅北轍的答案。主要的思想學派共分成五個,我們將為每個學派開闢一個章節專門介紹。符號理論學派(Symbolists)將學習視為是一種逆向演繹法,是從哲學、心理學和邏輯思路方面取得概念。類神經網路學派(Connectionists)會進行大腦的反向工程(reverse engineer),主要是受到神經科學和物理學的啟發,模擬人腦思考行為。演化論學派(Evolutionaries)會在電腦上模擬演化演變,澈底運用遺傳學(genetics)和演化生物學(evolutionary biology)理論。貝氏定理學派(Bayesians)相信學習是機率推理的一種形式,是根據統計學做為理論的依據。而類比推理學派(Analogizers)則是透過從相似度判斷進行推論學習,並且受到心理學和數學的最佳化影響。在建構智慧機器的目標推動下,我們將綜觀回顧近百年來許多學派的思想史部分,並且看見其一線新曙光。
機器學習的五大思想學派,每一學派都有其主要的演算法,原則上,你可以使用通用的學習器,從任何領域的數據資料中獲得知識。符號理論學派的主要演算法是逆向演繹法,類神經網路學派的主要演算法是倒傳遞理論演算法(Back propagation),演化論學派的主要演算法是遺傳程式規劃(genetic programming),貝氏定理學派的主要演算法是貝氏的推論,而類比推理學派的主要演算法則是支持向量機(support vector machine)。在實際應用中,這些演算法,對於某些事情可以運作得很好,但對其他事情就不是如此了。然而我們真正想要的是一個單一的演算法,結合各學派的所有重要特點,也就是終極演算法(the ultimate master algorithm)。對於某些人來說,或許這是一個遙不可及的夢想,但對於在機器學習領域的大多數我們來說,這真是一個會讓我們的眼睛閃爍著光芒,使我們不捨晝夜工作的夢想。
如果這是真實存在,那麼大演算便可以從數據資料中獲得在這個世界上過去、現在和未來的所有知識,進而創造大演算無疑將是科學史上最偉大的進步。它會加速全面的機器學習進展,並且用我們幾乎無法想像的方式改變世界。基本上,大演算就是一種機器學習統一理論,正如同標準模型(Standard Model)之於粒子物理學(particle physics),或是中心法則(Central Dogma)在分子生物學(molecular biology)的核心重要性。探索大演算是找尋機器學習的統一理論,讓我們解讀目前為止所知的一切事物變得更有意義,並奠定未來幾十年,甚或幾個世紀發展的機器學習理論基礎。換言之,大演算是我們取得重大進展的途徑,可以協助我們解決一些當前所面臨的困難問題,可以全方位發展允文允武,從家事照護到治療癌症都能樣樣精通的機器人。
以治療癌症為例,想要治療癌症是很困難的,因為癌症並不是一種疾病,而是許多病症的轉移。腫瘤可以被一系列眼花撩亂的原因所引發產生,而且當你的腫瘤轉移時,它們會產生突變。所以要殺死腫瘤最可靠的方法,就是進行其基因組測序,找出哪些藥物可以有效對抗它,而不會傷害到你,從你的基因組和病史,或專門針對你的個案,設計出一種新的抗癌藥物。其實沒有醫生可以完全掌握這一切所需的知識,這聽起來像是機器學習更能勝任的完美工作:實際上,這也是亞馬遜和Netflix公司每天都在做的機器學習智慧搜索工作,只不過醫療領域更是複雜和具挑戰性的搜尋版本,它就是為你尋找正確的治療方法,而不只是適合的書籍或電影。不幸的是,儘管現今的機器學習演算法已能超過人類極限,準確診斷許多疾病,但對治療癌症來說,還是遠遠超出它們的知識範疇。如果我們能成功地尋找到大演算,那麼治療癌症將是指日可待的事情。
這本書的第二個目標,正是觸發你能投入大演算的發明。你會認為這需要繁重的數學知識和嚴謹的理論工作,其實不然,反倒這所需要的是從艱深的數學理論抽離,以便能看到學習現象的整體模式。對於外行人來說,在某些方面比起專家更有優勢,反倒專家很容易沉浸在見樹不見林的狹隘研究中。一旦我們擁有了概念性的解決方案,我們就可以用數學的細節來印證,但這並不是本書的唯一目的,而且也不是最重要的部分。
因此當我們在認識每一種思想學派時,我們的目標是蒐集完整的機器學習拼圖,並詳加解讀每一類型演算法適合應用的地方。要注意的是,沒有一位盲人可以正確摸熟整隻大象身軀。特別是我們將會看到每個學派所能為癌症治療做出的貢獻,也會看到每個學派各自的缺失。然後一步一步地,我們會將所有機器學習的拼圖組合成一個終極解決方案;更確切地說,一個還不算是大演算的解決方案,但與其他相比已經是最接近的了,並且期望該演算法可以成為你想像力的良好跳板。我們還會預覽如何利用這個演算法,做為對抗癌症的一項武器。當你在閱讀本書時,請先隨意瀏覽或跳過任何你覺得困難的部分;你更需要的是重要的整體概念,當機器學習拼圖組合完成後,相信你才能融會貫通重新審視它們,你必能從這些部分獲得更多的創意啟發。
我是一名機器學習的研究學者,投入該領域研究已超過20年。大學四年級時,我在一家書店看到一本標示著奇怪名字的書籍——「人工智慧」(Artificial Intelligence),從此引發了我對機器學習的興趣。雖然這本書只有短短的一個章節是真正探討機器學習,但在閱讀之後,我立即確信,機器學習是解決人工智慧的關鍵,而且當時最先進的發展其實依然才原始起步,所以也許我可以貢獻些心力。我擱置原本攻讀MBA商學院的計畫,進入加州大學歐文分校(University of California, Irvine,簡稱UCI)攻讀博士學位。當時,機器學習是一個小型、鮮為人知的領域,且加州大學歐文分校是擁有少數幾個大的研究團體之一。不過我有些同學退學了,因為他們沒有看到機器學習的璀璨未來,我則堅持繼續研究。
對我來說,沒有什麼能比探討如何讓電腦自行學習更有挑戰性與影響力,如果我們能夠做到這一點,那麼我們會在任何其他問題上獲得幫助。等到我畢業5年之後,爆炸性成長的資料探勘(Dataming,又稱數據挖掘)正如火如荼地進行著,這就是我撰寫這本書的心路歷程。我的博士論文統一了符號與類比推理的學習演算法,過去我更花費十多年的時間,統一了符號理論與貝氏定理,而且不久之前,我還把這兩種理論與類神經網路理論整合在一起。是時候了,我們可以認真進行最終步驟,完整整合這五大機器學習思維模型。
為什麼我們必須了解大演算?
當我撰寫這本書時,心中就設定這本書會有許多不同但部分重疊的讀者。
如果你很好奇,所有圍繞著大數據和機器學習而產生的紛擾都是關於什麼,你也懷疑有些進展比你在報紙上看到的還要更為深入,那麼建議你,這本書將是幫助你飽覽機器學習革命的最佳指南。
如果你主要的興趣是在機器學習商業用途,那麼這本書至少可以在六個方面幫助你:協助你成為一位分析學的精明消費市場分析家、巨量數據資料解讀的科學家;也會協助你避免掉進資料探勘計畫的陷阱,幫助你發掘哪些事情可以自動化,省下人工編寫程式軟體的費用;同時本書可協助你避免資訊系統發展的死板僵化,並且預測出未來你有可能會面臨的新技術發展。過去我已經見過太多的時間與金錢浪費在採用錯誤的機器學習演算法,試圖解決一個問題,或曲解演算法的真正涵義。事實上,你不用特別做太多,就能避免重蹈這些失敗,所有需要去做的,就是好好閱讀這本書。
如果你是一位市民或決策人士,十分關切由大數據和機器學習所引發的社會和政治問題,那麼這本書將是你學習這項技術的入門書。從這本書中,你可以了解什麼是機器學習,它會帶領我們朝什麼方向發展,釐清它可以做到與不能做到的事情,相信你一定不會對這些來龍去脈感到枯燥無聊。從隱私到未來的工作,以及機器人戰爭的倫理,我們將會看到真正的問題在哪裡,並且思考如何看待這些問題。
如果你是一位科學家或工程師,機器學習是你不會不想要擁有的強大軍械庫。然而在巨量(甚至是中等)資料的年代裡,這些傳統、可靠的統計工具,不會給你帶來什麼轉變。你需要機器學習的非線性分析,以便精確地模擬大部分的現象,而且它帶來了一種嶄新的科學世界觀。雖然目前表達典範轉移(expression paradigm shift)被使用得太過浮濫,不過我認為在這本書中所描述的絕非誇張無稽之談。
如果你是一位機器學習專家,你應該已經很熟悉這本書中大部分涵蓋的內容,但是你仍然會在這本書中找到許多新的想法、機器學習發展史上有價值的資訊,以及有用的案例與類似的情境。最重要的,我希望這本書可以提供機器學習的嶄新觀點,甚至可以啟迪你全新的思考方向。雖然我們的身邊到處都是唾手可得的果實,而且我們應當去撿拾這些果實,但我們也不應該忽視等待在後面的更大獎勵。關於這點,我希望各位可以原諒我的放肆,使用了「大演算」一詞來代表通用的學習器。
如果你是一位任何學齡階段的學生,一位不知道要主修什麼的高中生、一位正在決定是否投入研究領域的在校大學生,或是一位具有豐富經驗但考慮轉行的專業人士,我的希望是這本書可以激發你對這個迷人領域的興趣。目前世界各地極度短缺機器學習專家,如果你決定加入我們,你可以期待的不僅是激動人心的時刻,甚至是物質上的獎勵,還能夠擁有一個服務社會的獨特機會。如果你已經開始研究機器學習,我希望這本書可以幫助你了解這個領域的現況;如果在你的人生旅程上,只是偶然碰見大演算,光憑這樣,就是這本書值得一寫的地方了。
最後但同樣重要的,如果你有濃烈求知的渴望,那麼機器學習會是一場智慧的盛宴,希望你能受邀出席,敬請回覆!
推薦序
大演算顛覆世界,也顛覆我的看法
1997年,IBM的深藍電腦擊敗了世界西洋棋冠軍,震撼了整個業界。媒體大肆報導。伴隨而來的是另一股恐慌性的思維──電腦會不會有一天取代人腦,甚至統治了人類?20年過去了,我們都還在為生活而忙碌工作。別說電腦統治人類,它連讓我早一點下班都很勉強了。
2016年,Google Alphago擊敗了世界圍棋冠軍,用的不再是超級電腦的運算能力。取而代之的,是大數據的分析能力、雲端的運算能力和機器學習。機器學習是一個廣泛的名詞,意思是讓電腦透過樣本數據來回答問題或進行預測。也許大家從前幾年開始就不斷聽到大數據,而近期從微軟語音助理Cortana進行世界盃足球的賽事預測,到美國總統大選分析,或是透過相片猜測年齡/顏值,這些都是機器學習的產物。
提到演算法,我想對於資訊相關背景的人來說都不陌生。事實上,我們現在身處的世界,到處都可以看到演算法的身影。舉凡搜尋、電子地圖上的路線、推薦系統等,無一不是透過演算法來達成。如同本書作者所說,大演算終將顛覆我們的世界,在閱讀完本書之後,我覺得這本書則是顛覆我對演算法的看法。
過去在學習演算法的時候,它對我而言,是離散數學。而大演算卻能夠把它描繪得如此生動。例如井字遊戲(Tic-Tac-Toe)使用的極大極小搜尋(Minimax Algorithm),作者卻以另一種形式來描述:
如果你或你的對手,一排已經占有兩個格子,在接續的棋步中,只要下在剩餘的另一個空格上,便可贏得這盤井字遊戲。
否則如果有一個棋步,可以創造出兩行連成兩條連線的雙頭蛇優勢,那麼下在那裡。
否則如果井字中心還是空的,那麼就下在那裡。
否則如果你的對手已經下在一個角位,那麼就下在他相反的角位。
否則如果有一個空的角位,那麼就下在那裡。
否則就下在任何一個空格裡。
當然,本書也不只針對從未接觸過演算法及機器學習的讀者。所謂外行的看熱鬧,內行的看門道。針對相關行業背景的讀者。本書也提供了機器學習所用到的大部分演算法的詳細說明,例如:決策樹、最近鄰居演算法、簡單貝氏演算法等。相信不管是對這個領域充滿好奇,或是想要深入了解的,都能從中獲得幫助。
前臺灣微軟合作夥伴技術支援顧問 林泰宏
推薦序
想跟上資訊革命時代的多變世界,本書是你的敲門磚
自從Google的深度學習人工智慧系統AlphaGo四度打敗世界圍棋冠軍李世乭後,一夕間全球新創公司、科研機構、科技業巨頭都紛紛宣告,將在人工智慧領域投入更大量的人力與金錢,現在全世界都關切:「機器取代了勞力後,竟然也能思考、學習,那接下來還能做什麼?」顯然這股席捲全球的人工智慧熱潮正撲天蓋地而來。
事實上,人工智慧早就不是新課題,問世以來少說有60年歷史,只是這門學科近期火熱,除了受惠這場話題十足的圍城之戰,主要還是歸因行動網路、物聯網、大數據、雲端,以及GPU運算等核心關鍵技術的重大突破,人工智慧得以從in vitro (體外)階段,進入in vivo (體內)階段。人工智慧因而跨出研究中心,充分展現在生活中, 也讓令人切實感受人類正邁向下一個新時代。
如今導入人工智慧的機器,已經能夠精準地模仿出截然不同的繪畫風格、音樂曲調,這全有賴日益精進的演算法,機器可以從海量數據中,分析出各種迥異的風格,甚至還能進行預測。現階段,全世界所有硬體都面臨著「被智慧化」,而人類對於智慧化的終極追求無非為了更好的生活品質。
機器學習的演算法大致上可以分成五個理論學派,本書以深入淺出的文字分別細數之,這些學派各有優缺點,對於某些狀況處理得宜,但面對其他事情卻可能很糟,有沒有一種「終極的演算法」,可以集結各門各派的優點,從海量的數據資料中,整合出世界上所有關乎過去、現在和未來的知識,這種大演算法無疑是科學史上最偉大的進步之一,它不但會全面加速機器學習的進展,並且以我們幾乎無法想像的方式改變世界。
我從與企業接觸的經驗中觀察到一個現象:傳統企業營運思維下,要完成一份專案,通常是先設定目標與明確預期投資回報率(ROI),然後才一步步地往目標前進;然而在演算法的時代裡,專案執行前,須先經過統計思維,將所有資料進行演算、分析,在沒有得到分析結果前,這個專案是絕對無法準確估計的,這與企業現行評估計畫、資源分配的方式有顯著差異。
這種差異也正是我想推薦這本書的理由,許多企業不乏可以解決數據問題的優秀員工,然而他們的主管卻極少有數據思維,這種落差會導致企業營運出現斷層,在全球產業競爭激烈的環境下,著實是個危機。
機器替代藍領的工業革命時代過去了,在這資訊革命的時代,下一個會被取代的是白領階級,速度甚至會比想像中來得快,人類能掌握的聖杯,就是不斷適應新的時代,跟上世界的腳步,而我相信這本書會是幫助你快速適應這個多變世界的敲門磚。
美商凱博數據創辦人/總經理 張宗堯
推薦序
從5萬呎的高空鳥瞰機器學習,望見未來
探討機器學習領域,這是一本非常獨特的書,任何對機器學習有興趣的人,不論你是專家或門外漢都值得一讀。
佩德羅.多明戈斯以他豐富的學識,從5萬呎的高空鳥瞰機器學習領域的現況,展望機器學習的未來以及它對人類社會各個層面將帶來的衝擊。
他以簡單易懂的言語介紹了機器學習的五個學派,各學派演算法的精髓、理論基礎及發展的歷史,並點出其優缺點。他以專家的洞悉和豐富的想像力勾勒出機器學習終極演算法的概貌,以及這種具有自我學習的演算法對人類社會所將造成的巨變。
書中文采奕奕,作者的博學多聞以及他對機器學習的熱忱躍然紙上。不論你是否贊同他對未來世界的預言,他的論述和哲理都將引人深思。
資策會技術長/大數據所所長 陳明義
推薦序
大演算,是飽覽大數據與機器學習的最佳指南
你是否注意到當你在瀏覽網頁時,旁邊總是會出現一些你有興趣商品的廣告?你是否曾經好奇臉書(Facebook)為什麼總是會出現你才剛查詢過商品的廣告?因為這些都是根據你瀏覽網頁的搜尋習慣,分析而得到的結果,進而將你有興趣的商品推薦給你。其實,這些都是機器學習的成果。在這個資訊爆炸的時代,機器學習早已經悄悄進入到我們的日常生活,只是我們都沒有注意到這個變化。
你也許聽說過大數據(big data),也曾經從新聞中聽聞政府、產業界、學術界討論大數據相關的政策,然而大數據究竟是什麼?對我們生活又有什麼影響呢?其實,大數據和我們的日常生活息息相關,例如:我們幾乎每天都會使用的電話和電子郵件,根據美國國家安全局的統計,世界各地每天都有超過十億通的電話,電子郵件的數量就更可觀了。然而,美國國家安全局要如何在這龐大的電話及電子郵件中,過濾出恐怖分子的通訊呢?而如何從大數據資料中,去獲取我們所需要的資訊,是科學家、工程師一直在努力的課題,這也是機器學習很重要的一環。
《大演算》這本書的核心假設是:「透過一個單一、通用的機器學習演算法,可以從數據資料中,推論得出過去、現在和未來的所有知識。」這個假設類似於牛頓的萬有引力概念,作者大膽稱之為「大演算」(The Master Algorithm)!作者介紹了現今機器學習的五大學派,各學派都有其主要的機器學習演算法,有各自的優點,當然也會有其盲點存在。因此,到目前為止,仍然沒有一個可以一統江湖的機器學習演算法。作者期望在未來的一天,會有「大演算」的出現!
作者介紹機器學習五大學派的主要演算法,沒有艱深的數學式子推導,而是透過最簡單、最熟悉的日常生活例子來介紹,讓讀者可以更容易了解各個演算法的意涵和精髓,也可以了解到機器學習這塊領域目前發展的現況。對於一個好奇大數據和機器學習的讀者,這本書可以幫助你了解大數據和機器學習所帶來的變化;對於想要進入機器學習領域的讀者,這本書可以提供一個基礎的概念,引領你進入機器學習領域;而對於已經在機器學習領域努力的讀者,更是不能錯過這本書,讓你可以深入了解不同學派之間的異同。不論你的專長領域是什麼,相信這本書將是幫助你飽覽大數據與機器學習的最佳指南。
成大資工系特聘教授兼系主任 謝孫源
推薦序
機器學習讓我們站在巨量資料的肩膀上,看得更高更遠
2016年6月的最後一堂計算機概論課,我問:「十年後,你是否會和某機器人成為知己?」大約三分之一的同學回答可能會,認為人工智慧進展神速,或許會出現很貼心的機器人,比誰都了解你,甚至比你自己更了解你。另外有大約三分之二的同學回答不會,畢竟機器人只是協助人類的工具,它所說的每一句話都是「算」出來的,在情感上無法真正交心。
無論如何,未來機器人允文允武已是公認事實,其背後推動力來自於機器學習的革新、運算資源的躍進及巨量資料的累積,使得機器人能夠深度學習,不僅可以無日無夜學習,還可本尊分身一起學習,讓人類望塵莫及。
現在,就讓本書為你揭開機器學習的神祕面紗。對於有志了解機器學習的讀者,這是一本極佳的入門書籍。作者佩德羅.多明戈斯以生動活潑的專業論述,深入淺出地介紹了機器學習的五大學派:符號理論學派(Symbolists)、類神經網路學派(Connectionists)、演化論學派(Evolutionaries)、貝氏定理學派(Bayesians)、類比推理學派(Analogizers),讓讀者能理解機器學習的關鍵原理,並對現況有所掌握。
多明戈斯也呼籲開發一個結合五大學派重要特點的單一演算法,稱之為終極演算法(the ultimate master algorithm),該方法可以從數據資料中,習得這個世界上過去、現在和未來的所有知識。
我們不禁要問:終極演算法是否存在呢?如果存在的話,它必須像金庸小說《笑傲江湖》中的吸星大法,可以將別人的內力化為自己的內力;但它又不能像2016年3月微軟推出的聊天機器人Tay那樣消化不良,在網友的調教下,居然頻頻說出種族歧視的跳針發言。我個人對終極演算法是否存在抱持著比較保守的看法,追尋聖杯的結局,很可能如同《功夫熊貓》電影一般,到最後才發現最高的武功秘笈竟是一部無字天書。
不管終極演算法是否存在,機器學習已讓我們站在巨量資料的肩膀上,看得更高更遠。各位朋友,請接受多明戈斯的邀約,參加這場機器學習的知性饗宴!
臺大資工系系主任 趙坤茂
推薦序
大演算強化「工業3.5」,讓臺灣在物聯網時代中卡位
隨著電子商務、物聯網、「工業 4.0」、機械人和聰明生產等典範移轉,全球經濟發展和產業價值鏈將革命性重構,也由於網路社群、人工智慧、大數據、機器學習和最佳化等技術創新和日益廣泛的應用,正在改變世界,人類生活和社會各個層面有翻天覆地的變化。
本書作者佩德羅.多明戈斯(Pedro Domingos)現任華盛頓大學電腦工程系教授,認為透過「大演算」(Master Algorithm)作為解析機器學習的概念模型,可以從數據資料中分析推論得出所有知識,並以清晰易懂和引人入勝的方式介紹機器學習(machine learning)及其五大學派,並有系統地介紹每一學派主要的演算法和相關的應用。
其中,有不少與我在美國威斯康辛大學麥迪遜分校(UW-Madison)攻讀決策科學與作業研究博士時,參與「綜合醫療促進支援系統」(CHESS)計畫的資料挖礦研究,乃至於領導清華大學「決策分析研究室」(DALab)研究夥伴們投入決策分析、大數據和最佳化的產學合作研究經驗相關,發現本書能夠讓讀者很容易地明白機器學習的運作原理和應用,值得推薦。
隨著軟硬體計算能力和雲網端的發展,還有處理結構化和非結構化的大數據分析能力,這些進步讓大數據和機器學習應用的趨勢已經由量化到質化的分析。各國產業結構和社會文化迥異下,所需發展的大數據產業和應用也不盡相同。臺灣長期以大量生產、規模經濟的製造模式,在「工業4.0」、物聯網和客製化時代需要轉型,而世界各國都普遍面臨因為自動化和機械人而加劇的貧富差距和年輕人就業供需不等問題。
相對於工業先進國家的製造戰略,臺灣應善用目前在「工業3.0」的供應鏈管理、整合能力和彈性應變的優勢,發展「工業3.0―工業3.5―工業4.0」的策略藍圖,利用本書介紹的「大演算」等相關技術,將既有的核心管理能力系統化、數位化,發展以大數據分析、智慧製造系統和聰明生產為核心的「工業3.5」作為現有「工業3.0」和未來「工業4.0」之間的混合策略,利用臺灣製造相對競爭優勢、供應鏈系統彈性和客製化能力,透過產品生命週期管理和大量客製化彈性以更快更聰明地滿足消費者需求,使臺灣能在被先進國家和紅色供應鏈上下夾擊之前,用「工業3.5」的破壞性創新先在物聯網時代的全球供應鏈中卡位,避免未來先進國家挾著「工業4.0」的先進系統鯨吞整個製造價值鏈。
清華講座教授暨清華-台積電卓越製造中心主持人 簡禎富