機器學習的成長真的是日新月異。當我們身邊許多人還搞不清楚AI能做什麼,不能做什麼,還在搞懂CNN,DNN,GAN是什麼東西的時候,前線的應用研究已經越來越成熟。不管是哪種架構的神經網路,正在快要變得像軟體IC,像函式庫,像元件一樣的可以組合使用,創造出更powerful的應用。同時,這些完成品也開始往行動平台在移動,追求一樣的表現,更少的耗能及算力需求。
而Framework的多樣性也開始正在收斂:來自於社群研究為主的PyTorch及企業優先採用的TensorFlow,是將來的唯二選擇。就像遊戲引擎最終會只剩下3種一樣,多樣性是必要的,但不能是持續的,不然就會失去可靠性及應用場景(想想Linux桌面系統就知道了)。這對急需趕上AI應用的台灣絕對是好事,接下來就看誰能真正端出產品了。
Andrew Says
我最近換了使用2年的手機,正在搞清楚如何在低光源的狀況下,用長曝光的方式拍Nova睡覺的照片。這帶給我許多意想不到的樂趣。
上週我寫了關於AI界的道德問題,以及如何在AI工程中提煉出可執行的一些道德原則。 知名的整理專家「近虅麻理惠」說,若這東西不再讓你感到心動,獲得熱情,你就該丟了它。這就讓我想到,當我們建立任何AI系統時,它們能讓用戶感到心動或獲得熱情嗎?
這確實有許多解釋的空間。我在努力工作,幫助他人,增進人類處事效率及學習的過程中找到熱情,而在這些令人上癮的電子產品上則不會。我並不期望任何人都能在這個過程得到同樣的價值,當你在難以決定要投注心力在哪個專案的過程,這個問題也許會有幫助:你的機器學習專案,能給用戶帶來熱情或心動的感覺嗎?
這當然不是完整的答案,但可以是一個有用的起頭。
Autonomous Drones Ready to Race
駕駛員以每小時120公里的速度,操作著加強性的四軸無人機進行障礙越野賽。但很快的他們可能要失去這份工作了,因為協會正準備試著用AI來取代駕駛員,看能不能增添點趣味。
What’s new
無人機競速聯盟(Drone Racing League,簡稱DRL)最近舉辦了一場比賽,他們稱這是未來運動,同時,他們也發表了新的飛行器「RacerAI」。它搭載了Nvidia的Jetson AGX推論引擎,4個立體視覺攝影機,而螺旋槳可輸出20磅的推力。
What’s happening
RacerAI是由DRL及Lockheed Martin兩大AlphaPilot競賽團隊所贊助構建的AI模型平台:
- 有420個團隊在這個平台的模擬賽道,測試它們的模型。
- 虛擬的測試會將參賽者篩選到剩下9隊,然後在2019年秋季進行4場比賽。
- 來自南韓凱斯大學的USRG團隊,於10/8贏得了第一場比賽,第二場比賽預定在11/2於華盛頓舉行。
- 系列賽的冠軍可得100萬獎金。在2020年初這個冠軍模型將面對最頂尖的真人對手,以爭取額外的25萬獎金。
Behind the news
DRL的駕駛員使用的是由
協會建造及維護的標準無人機,而且是使用相同的模擬器以訓練「RacerAI」。實際比賽通常是1英哩長,而且會在美國及歐洲的活動空間中舉行。
Why it matters
無人機競速是很有趣的比賽,但這些無人機習得的自動駕駛技能,是可以應用在真實世界的,比如說自動遞送。
We’re thinking
近期DRL釋出的一段
影片顯示,現在的模型即便是要高速穿過圓環,也還有很大的改善空間。所以真人駕駛員「目前」還是有很顯著的優勢的。
Clash of the Frameworks
多數的深度學習應用是在TensorFlow或PyTorch框架上的,一份最新的
分析報告指出,它們的受眾相當不同。
What’s new
康乃爾大學的研究員,在過去一年間從公開資訊比較了TensorFlow及PyTorch的使用量。根據「
The Gradient」的報告指出,PyTorch在社群的研究用途快速增長,而TensorFlow仍是企業應用的首選。
(工商一下:您現在看的「The Batch」是由「
deeplearning.ai」提供的,而我們在Coursera有提供TensorFlow專家課程哦!)
Findings
Horace He使用的是代理資料來判斷,這些用戶是來自於企業界還是純社群研究:
- 研究界的狀況是,他調查了提交給2018年前五大AI論譠的論文摘要數量,他發現這一年中,PyTorch的用戶平均增加了275%,TensorFlow的用戶減少了0.5%。
- 企業界的狀況是,他分析了3000份職位列表。企業要求有TensorFlow的經驗人數,遠超過要有PyTorch的人數。他還對LinkedIn的文章進行了調查,發現TensorFlow比PyTorch的比例是3230:1200。
- TensorFlow在GitHub上存放的倉庫數,也是遠超過PyTorch的,他認為這是實務使用的關鍵指標。
Competitive strengths
- TensorFlow擁有大量的用戶基礎,而企業採用新技術的步調都較慢。
- TensorFlow比PyTorch更有效率,即便是節省了一點點模型運行時間,也有助於公司提高利潤。
- Pytorch深度整合了Python,這使得Python的源碼更容易使用及除錯。
- 根據Horace He的調查,多數的研究者仍然比較喜歡PyTorch的API,因為它從2016以來就維持著一致的框架架構。
We’re thinking
對於要選用哪一個頂級框架,很快地我們就得仔細籌算了。新釋出的TensorFlow 2.0新增了許多PyTorch用戶喜歡的功能,特別是和Python的整合以及預設使用
Eager模式執行。然而多數的深度學習是由研究員驅動發展的,因此多數的畢業生都會帶著PyTorch技能進入職場。
Two Steps to Better Summaries
在自然語言處理領域中,匯整文章大意是一個長期未能有所突破的問題。而最近,研究員們在朝向人類水平的路上更進一步了。他們的摘要提到:「比起之前我們從原文抽取文句的方法,我們建立了一個
模型,可直接”產生”出來的方式,來產出抽象大意」。
What’s new
來自於ElementAI及Montreal的學習算法研究所的研究員,並不直接產出抽象的大意,而是先抽取大意後,來指導產出的文字(大意)內容。
Key insight
提供這種抽取出來的大意,再搭配原文,可有效幫助預先訓練好的語言模型,來產出品質更好的抽象大意。
How it works
「大意化」的程序分為兩步:抽取及抽象
- 研究員訓練一個神經網路來找出文中最重要的句子。本質上,他們是基於全文所有句子的關係,為每一條句子分配分數(包括內容及風格),所以抽取出來的大意就是分數最高的那些句子。
- 透過像GPT架構的對抗式神經網路,持續以人類寫過的抽象大意來訓練後,就可以依據原文的字詞關係,一個字一個字的產出抽象大意的預期結果。
Results
作者測試了4個語料庫,所有語料庫均包括人工撰寫的摘要:
arXiv(研究論文),
PubMed(醫學研究論文),
bigPatent(專利文件)和
Newsroom(新聞文章)。這些作者都採用了
ROUGE來比較他們寫的和產生的摘要分數。其中3個語料庫產生的大意,並不只是從原文複製一些句子出來而已,已具有相當高的完成度。唯有在Newsroom的ROUGE評分上,還是以抽取式的大意獲得較高的分數。
Why it matters
自動產出高品質的抽象摘要的AI能力,對只是把原文提取長句後,再替換成精簡的摘要文字的工作者來說,可說是提升了極大的產出率。真是太棒了!我們希望這不會讓「The Batch」的團隊失業…
High Accuracy, Low Compute
隨著神經網路越來越精準,它們的模型大小及算力要求也像吹氣球般變得更大。這些完美的模型要在手機或是那些低功耗的裝置上運行,就變得不那麼容易了。這裡有一個新技巧,能讓卷積神經網路能在不嚴重降低表現的情況下,減少更多算力需求。
What’s new
來自於北京大學的游忠惠和自動駕駛新創公司Momenta,提出了一種新方法,能移除那些對模型效能影響不大的參數:「
Gate Decorator」。
Key insight
這個新技術是直接移除一整個功能群組的參數(特別是卷積網路中的那些篩選器),而不是單個單個的移除。
How it works
Gate Decorator會為模型加入一個比例因子,來表示每一個篩選器對模型輸出的重要性。評分的標準是來自於模型的損失函數,因此最沒影響力的篩選器就會被移除。
- Gate Decorator模型會處理訓練用資料集的子集,來學習找出各篩選器的比例因子影響值,而原模型還是不做任何更動。
- 一開始每個比例因子的值是亂數分配的,而Gate Decorator模型是被鼓勵去學習找出最小的比例因子,再乘上篩選器的輸出後,可以使最終表現影響最小。
- 用戶找出來影響最小比例因子的篩選器會開始被刪除,修剪過的網路會整個資料集的環境下再做優化調整。
- 整個過程會依照用戶指定的次數進行數次迭代。
Results
研究員比較了原版和修剪過後的算力成本及精準度。Gate Decorator減少了基於ImageNet訓練出來的ResNet約55%的算力,以及基於CIFAR訓練出來的ResNet約70%。但精準度的部分,前者降低了0.67%,後者反而還增加了0.03%。
Why it matters
和權重修剪的技法不同,Gate Decorator完全是依據實際結果來調整而獲得成效,而不是只依據理論。而且,裁剪篩選器的模型仍可運行既有的演算法,但若是在密集互連的神經網路移除權重的話,最終我們會再需要尋找特化後的演算法。
We’re thinking
像這樣的修剪法或許可和其他參數組一併使用,以降低CNN體系以外的算力需求。最終的模型更可以再被像是「
量子化」的方法壓縮變得更小。