獲“艾美獎”的計算機視覺專家Andrew博士:不斷為自己創造謎題

AIBigbull2050發表於2019-09-07



編者按:你可能不知道 Andrew Fitzgibbon 博士是誰,但你在過去20年裡看到的很多電視劇或電影,都使用了他獲得“艾美獎”的攝像機跟蹤器 Boujou。他是 3D 計算機視覺方面的專家,同時負責領導微軟劍橋研究院新設立的“全資料人工智慧”(All Data AI)團隊。

本期播客中 Andrew 將為我們介紹 ADA 團隊構建全資料人工智慧的理念,講述他如何為 Boujou 試遍所有的演算法來找到最漂亮的那一個,並回顧微軟研究院和 Kinect、HoloLens 產品開發團隊如何合作架起通往虛擬世界的橋樑,將未來送到你眼前。本文編譯自微軟研究院播客“All Data AI with Dr. Andrew Fitzgibbon”

獲“艾美獎”的計算機視覺專家Andrew博士:不斷為自己創造謎題

微軟劍橋研究院 All Data AI 團隊負責人 Andrew Fitzgibbon 博士


構建全資料人工智慧

主持人:最近您被任命領導劍橋研究院一個名為“All Data AI”的團隊,它的首字母縮寫 ADA 讓人想起 Ada Lovelace,是特意這樣命名的嗎?

Andrew Fitzgibbon:對。Ada Lovelace 被認為是世界上第一個計算機程式設計師。無論她是否編寫了計算機程式,她是第一個觀察到分析機的計算能力可以應用於非數字的量的人。自從計算機出現以來,我們已經能在計算機中用字串、單詞等表示數量,使用這個名字並不在於強調計算機能理解一系列的數字,而是它能理解這些數字間的相互聯絡。ADA 組致力於研究適用於複雜現實資料的人工智慧模型和技術:大資料、小資料、具有複雜結構(如樹和圖)的資料,概括起來就是“全資料人工智慧”。因此這個名字和我們的目標是很契合的。

主持人:談談你想在 ADA 解決的具體問題,以及你希望突破哪些技術領域?

Andrew Fitzgibbon:ADA 希望讓人工智慧滲透到更多地方。現在我們還不能在網際網路上問一個類似“幫我找到所有離山坡100米以內的滑雪小屋”的問題。因為滑雪小屋都有自己的小網站,它們不一定是聚合的。解決方法很簡單:遍歷世界上所有的網頁。但一臺真正能夠閱讀和理解所有網頁的電腦顯然是非常遙遠的。我們想將人工智慧和機器學習滲透到一些領域提供更有效率的工作,通過推進基礎研究,讓人工智慧更好地服務於現實世界。

主持人:為什麼要新設立這個團隊呢?設立後產生了哪些新的火花?

Andrew Fitzgibbon:大家肯定都觀察到了機器學習、深度學習給人工智慧帶來的進步,我認為現在是將其應用到更廣泛的領域的黃金機會,同時也是思考新一代 AI 程式設計的絕佳時機。直到今天,AI 程式設計一直是譬如機器學習博士或理解線性代數的專家的專業領域,但實際上許多 AI 程式設計可以更加簡單。所以,我們正在研究第三代 AI 程式設計。第一代 AI 程式設計是 Hinton 和 LeCun 他們費盡心血寫下的原始程式碼。第二代程式設計圍繞著一系列工具展開,比如 TensorFlow 和 PyTorch,這些工具讓 AI 更大眾化,但 AI 對許多人來說依然很難理解。在我看來,這些程式設計在一定程度上隱藏了 AI 模型的美麗。神經網路模型其實是可以相對簡單,又能給出複雜結果的,我們希望能看到更多精心設計的簡單幹淨的程式碼和模型。

主持人:在您早期的研究中有一項偉大的發明 Boujou,它是一個獲得了“艾美獎”的攝像機跟蹤器,被廣泛地用於計算機圖形學和電影實景拍攝中。請為我們介紹更多關於 Boujou 的情況?

Andrew Fitzgibbon:Boujou 是一個非常有趣的專案。90年代中期,我在牛津大學和一些很棒的人共事,他們對機器人如何在環境中行走很感興趣,於是我們開始研究機器人如何導航的問題。我們發現機器人要想知道自己在三維空間中的位置,首先要做的就是建立一個三維的世界模型。我們先製作了一個漂亮的 3D 模型,我們認為它會很有用,因為在那個年代,如果要在電影裡看到外星人,製作人員會先用粘土做出外星人的樣子,然後把它掃描到電腦裡。Boujou 就是用機器人導航儀把攝像機旋轉到外星人模型周圍,將資料掃進電腦,把這個 3D 物體的電腦模型呈現給大家。

當時最難的一件事,就是弄清楚攝像機的路徑。比如,我在一艘船上安裝了攝像頭,這艘船上有一些霍位元人,他們沿著一條河向一座山駛去,山上應該有兩個巨大的雕像。但在拍攝中不會實體建造這麼大的雕像,所以我們要在工作室做一些小的模型。只要知道攝像機在水面上的移動情況,就可以讓機器人做同樣的軌跡,然後將圖片疊加起來。而在那個年代,唯一能知道相機在哪裡的方法就是手動為每一個鏡頭定位,因此成本非常高。所以後期人員意識到我們的演算法非常有用。於是我們就創辦了一家創業公司 Boujou。當時有一些產品可以做字元識別、車牌識別,但 Boujou 是第一個實現 3D 視覺的產品之一,這讓我非常自豪。為了實現這個目標,我們必須超越當時最先進的學術水平。

人們會問我,Boujou 的祕訣是什麼?我認為祕訣就是讀完所有關於 3D 結構和運動的論文。這種專注的態度直到今天依然適用。有時大家會將漂亮和簡潔作為演算法的評價指標,但在現實世界中,你可能要在嘗試過所有的演算法後,才能找到最漂亮的。

將現實傳遞給虛擬世界

主持人:微軟的 Kinect 感測器最初不被人看好,上市後卻取得了巨大的成功。Kinect 是如何產生、如何發展的,它對你所從事的其他研究領域有什麼影響?

Andrew Fitzgibbon:Kinect 是學術研究人員與工程師共同合作的典型案例。當時微軟研究院正在研究跟蹤人體運動的計算機視覺演算法,我們做得很好,取得了一些成果。所以 Xbox 團隊的 Alex Kipman 找到我們說要製作一個能識別人體運動並由此控制遊戲的產品。我們回覆說,這個設想不可能實現。然後 Xbox 團隊請我們先看看他們寫的程式,結果發現,他們使用了一個來自學術界的想法,但把它設計得更好更有效,使他們的版本比任何學術論文中的都好。

Kinect 的想法不被學界看好的原因是,當時很難將視訊中的某一幀提取出來識別其中的人物,並標記出手掌和手肘的位置。假設你有一張30毫秒前的影像,它和現在的影像的各個位置沒有太大差異,然後就能通過連續性定位物體。這是早就存在於學界的想法,但是沒有人真正將其落地。他們的貢獻是觀察到這樣的現象:假設這個系統在99%的時間都正常工作,而且30毫秒前的系統是正確的,同時我們算出系統在五分鐘後肯定會故障。所以我們可以設計出一個執行三分鐘然後重置自己的系統,這樣系統就不會犯錯。所以我們的第一個貢獻是讓系統每隔幾秒鐘,就自我重置一次。這是機器學習真正應用於計算機視覺難題的早期例項。

看過程式後,我們告訴 Xbox 團隊可以嘗試,但是我們需要 Kinect 在世界上十個不同客廳裡執行的資料,這樣才能訓練機器學習演算法,同時檢驗我們是否做得很好。兩週後我們接到電話,他們說已經搞定十份實測資料了,他們剛測試完日本的情況,明天就要前往中國……當時我們被嚇壞了,突然意識到這群人是認真的。後來當我們說想借一個好萊塢工作室來生成訓練資料時,他們就真的租了一間。

總的來說,Kinect 中涉及的理論學界之前已經提出,但沒有人真正去實踐,並達到這麼高的水平。而這個團隊是真正理解了機器學習,並不斷去搜集資料,滿懷熱忱想把事情做好,與他們的合作讓我們取得了巨大的進步。

主持人:微軟的智慧眼鏡 HoloLens 是另一項計算機視覺技術。您如何看待 HoloLens 的功能?HoloLens 對計算機視覺研究社群有何貢獻?

Andrew Fitzgibbon:HoloLens 是一個神奇的裝置。它和 Kinect 都來自 Alex Kipman 的團隊。正如 Kipman 在三四年前首次釋出 HoloLens 時所說,HoloLens 是個人電腦的未來。在未來,人們不需要在口袋裡放一塊螢幕,不需要掏出螢幕才能進行工作。未來的辦公室也將發生重大改變,不需要任何 LCD 屏,只要在我前面放一個大黑膠板,戴上 HoloLens,所有的檔案都會在出現在我眼前。在今天,HoloLens 擁有巨大的價值。HoloLens 的一個功能是計算出人的頭部在 3D 世界中的位置,這和我多年前做的 Boujou 相關,但 HoloLens 能以非常低能耗的方式持續地、實時地進行,非常難得。我想除了微軟,很少有人能充分運用各種技術實現這一點。

我對 HoloLens 的研究源於十年前的一個專案。當時我和一位叫 Tom Cashman 的朋友想從靜止影像中瞭解運動物體的三維結構,想找一些彎曲度和運動程度都適中的物體,然後我們覺得海豚是最理想的研究物件。於是我們決定寫一篇“海豚是什麼形狀”的論文。我們並不關心海豚本身,我們關心的是彎曲移動的三維物體,給它建立三維數學模型。當人和虛擬世界或者混合現實世界互動時,一個最重要的 3D 物品就是手。如果系統能準確定位手上每一塊骨頭和關節,使用者就能和虛擬世界準確地互動,虛擬物體的行為也能和你在現實世界中期望的一致。所以我們研究海豚,為研究人的手這樣稍微彎曲一點的物體做鋪墊。後來我們知道這個技術非常有用,我們將現實世界傳遞給了 HoloLens。我們非常高興地看到今年2月在巴塞羅那舉行的世界行動通訊大會上,微軟釋出了具有非常清晰的手部跟蹤功能的 Hololens 2。

不斷為自己創造謎題

主持人:你年輕時為何對電腦科學感興趣?你是如何進入微軟研究院的?

Andrew Fitzgibbon:我出生於80年代,喜歡數學和擺弄電子產品,那時只有學校有電腦。我的一個暑期工作是水上計程車司機,這意味著我在特定時間段非常忙,之後就有大量的時間坐在戶外曬太陽或淋雨。那時我會手寫一些程式,等到第二天去學校的時候,再在電腦中輸入。這是一種既隨意又很有效的學習計算機程式設計的方式。我會在紙上寫上標註“第10行”“第20行”,用程式碼實現一些小功能,就像是解數學難題。數學題很有意思,但很難自己去發明,所以你可能需要去買一本習題集,然後在幾周內把它們解出來,但在計算機上,你可以不斷地為自己創造謎題。

我的大學專業是數學和電腦科學。我本來想選物理,但是物理系告訴我邊學計算機邊學物理太難了。我從愛丁堡大學博士畢業後來到牛津大學,和英國偉大的計算機視覺研究員 Andrew Zisserman 等人共事,還在那裡開發了 Boujou。2000年左右,我轉到了微軟研究院。

主持人:你想對年輕的研究人員說些什麼呢?

Andrew Fitzgibbon:人們有時會問,我應該研究什麼問題?有一個簡單而普遍適用的答案:解決那些將改變世界的重要問題。但有時這太寬泛了,你並不知道什麼是巨集大而重要的問題。我發現一個有價值的訊號是,當你在聽講座或讀報紙時,找出讓你煩心的東西,這是真正引發你思考的東西。然後捫心自問,為什麼這讓我煩惱?由此去突破現存的問題。當然,如果你已經有了一個很好的想法,那就去做吧。

https://www.toutiao.com/a6733148760001479181/

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2656378/,如需轉載,請註明出處,否則將追究法律責任。

相關文章