2020年1月29日 星期三

大人們的餐桌‧中華篇:從民初到二十一世紀,22位牽動華人政局的政治人物飲食軼事


任職的公司對面巷弄,有間貌不起眼的便當小店,因為佔有地利之便,午休用餐時刻總是人聲鼎沸。畢竟是做生意,調味下得稍重,滋味著實不差,我一年倒也會光顧幾次,解解饞。但台灣老闆呀,特別是做餐飲的,將本求利下,你要他用啥好材料,那真的是緣木求魚。在非營業時段路過那店門口,那五味雜陳的油耗味,不免擔心自己吃下的是什麼來路不明的餿水油。鋪陳這麼多,是要分享,我部門中有位女同事,她可厲害。那間便當店,看她天天光顧,也不見有任何噁心反胃的徵狀。某天好奇問她,「妳吃不膩?」。她還能目不斜視地回我,「不會,可好吃的。」。當下我就悟出兩個道理,首先,東西好不好吃是見仁見智。其次,我不會向這位同事詢問那裡有美食。

「大人們的餐桌‧中華篇:從民初到二十一世紀,22位牽動華人政局的政治人物飲食軼事」一書,作者妙筆生花地描述歷史上的秘辛典故,讀者們得以窺視政治名人們的飲食偏好,進一步建立對他們個性、思維的粗略印象。書中提及的政界名人,涵蓋民初至今兩岸三地的領袖人物。有推翻滿清王朝的孫中山、退居台灣的兩蔣父子和之後的李登輝等民選總統。建立共產政權的毛澤東、周恩來到今日的習近平。不消說,這些大人物們的運籌帷幄和風雲際會,就足以刻畫出當下台海兩岸對立分治的大格局。

這本「大人們的餐桌‧中華篇」是用一種貼近人性的角度切入,讓身為華人的讀者們戴上一幅「消光鏡片」,除去這些「偉大領袖」身上的神聖光環,看看他們也有七情六慾(食慾)的一面。此外,本書對於兩岸三地國宴大紀事的整理也頗為用心,考證文獻故典附上照片佐證,帶讀者們瞧瞧中國近代史上幾個重要的國家盛宴時刻。

在傳統視君如父的華人文化中,對上位者的敬仰與順從常是過猶不及,將專制政權中的領導者加以聖人化,是相當有效的思想控制手段。然而即便是從小唸過「鯉魚逆流而上」偉人故事的台灣人,歷經十多年直接民主的熏陶後,已然能平心靜氣地笑看政治人物的種種言行舉止。像北歐各國將從政視為一種職業,把政治人物和上班族一視同仁。不再認為某某某會是國家的「救世主」,我相信這是一個民主體制已經完全成熟的表徵。

2020年1月26日 星期日

機器學習開發神器!Google Cloud Platform 雲端開發應用超入門


「程式功能正常是你的責任,效能極佳是你的本事,不會爆掉是你累積的經驗。」- 某電商資深工程師

隨著亞馬遜和谷歌這兩間科技巨擘的強勢推廣,雲端平台不再只是趨勢新聞裡的熱門關鍵字,而是程式工程師觸手可及的工具、選項。今日資訊系統的建置方法,除了「自建」和「外包」之外,還多了一個「雲端開發」。

不論是年歲已久的關聯式資料庫(RDB)、訊息佇列(Queue)到近年來興起的noSQL,雲端業者無所不包地推出對應的雲端服務。更甚者,針對極大流量的網站建置和機器學習等進階的資訊系統難題,業者也能年復一年地推出易學易用的解決方案。一時之間,過去需要長時間培育的系統架構師開始變得無足輕重,藉由雲端業者提出的建議架構範型(Paradigm),初生之犢的工程師也可以用驚人的效率打造出一個強大的資訊系統,在以往,這是需要擁有多年經驗的工程師才有能力提出的系統洞見。

雲端業者為開發人員,提出了一個又一個先進、新奇且強大的工具、服務,然而「福兮禍所伏」,像吃了大還丹般的功力爆增,卻不是透過一步一腳印地從實作中累積基礎知識,做出來的資訊架構會是處於「知其然而不知其所以然」的情境。照單全收的工程師除了得面對性價比極低的高額系統維運費用之外,當遭遇系統異常和效能瓶頸時,也會手足無措地無法進行障礙排除。雲端平台再強大都只是工具,能客觀、正確地檢視各種方案,深入瞭解各雲端服務的目的、優缺點與限制,依據外在條件評估出最合適的架構方法,想必是未來程式工程師必須增添的專業技能。

「機器學習開發神器!Google Cloud Platform 雲端開發應用超入門」一書,讓讀者們不必辛苦地遍尋官方線上文件,能短時間內學會在GCP(Google Cloud Platform)裡建置網站應用程式的典型做法。從最基本的建立虛擬主機(GCE),到最流行的微服務(GKE)容器,另外還有能完全免除維運負擔的程式引擎(GAE)。雖然書中描述的三種做法,架構略嫌簡化,尚不能應付真正巨型流量網站的需要,但是目標如果是想瞭解GCP平台的操作與網站開發,它已經為讀者們奠定一個穩固的基礎。

書中在講述微服務(容器)架構的章節,用極為簡短的篇幅加上具體的操作範例,讓我快速地領會容器與虛擬主機的差異所在,光是獲得這點新知和體悟,就不枉費閱讀這本書所花費的時光。

2020年1月7日 星期二

Deep Learning for Computer Vision: Image Classification, Object Detection, and Face Recognition in Python


2019年資通產業最熱門的「Buzzword」肯定是「深度學習」吧。毋庸置疑地藉由深度學習強大的演算能力,讓資訊科技得以提供更令人驚豔的服務,「自駕車」、「人臉辨識」、「智能客服」以及數不清的各項運用正在改變產業生態,也在改變這個世界。

從資料中找出特定模式的「機器學習」(更早之前稱為「資料探勘」或最早的「迴歸分析」),其實由來已久,相信很多老IT人會丈二金剛摸不著頭緒,懷疑是否是「舊瓶裝新酒」的行銷炒作風潮。炒作成份當然有,但「深度學習」確實有著不可忽視的「含金量」。

建基在「類神經網路模型」之上的各種「深度學習」演算法,有別於傳統「機器學習」的建模手法,將「特徵擷取」的過程大幅度地(幾乎是全部)假手由算法決定。此舉雖然造成「最終模型」有無法被事後描述解釋的負作用,卻能達成有效解決許多「人工智慧」的精典課題。這些課題都是無法用人力完整條列出處理邏輯(以及分辨那個特徵最重要),包含了「文字辨識」、「圖像辨識」和「語音辨識」。大部份強調AI的新創公司,也多半以這三項應用為核心訴求。

2019年開始接觸「深度學習」以來,讀過「Deep learning 深度學習必讀:Keras 大神帶你用 Python 實作」一書後,已經掌握初步的實作基礎。但針對「圖像辨識」的應用,尚只懂些「圖像分類」的皮毛,缺少更進階的知識、技術。無獨有偶,公司恰好計劃進行「圖像辨識」的研究,在一連串請教「谷哥大神」的資料探索後,讓我找到了「Deep Learning for Computer Vision」這本電子書。其用簡單、明快的範例與程式碼,帶領讀者們進入「圖像分類」、「物件辨識」和「人臉辨識」等電腦視覺應用領域。經由500頁內容的「潛修」,出關之後對於 「深度學習」在圖像處理的範型已經了然於胸,稱上個「略懂」。

個人在閱讀習慣上一直偏好紙本實體書籍,即便電子書有著輕簿不佔空間的優點,也難以撼動紙本書在我心中的地位。然而面對這本「Deep Learning for Computer Vision」,我也不得不放下我(無謂地?)的堅持。因為它只出純電子書!完全就是「內容是王(Content is King)」的典範,讀者們只能乖乖地拿出信用卡付款,下載後好好地吸收這500頁精髓。