浪潮之巔,程式設計師如何擁抱新技術?

騰訊雲+社群發表於2020-07-02

回想從前,AI、雲端計算、5G……幾年前還覺得遙遠的技術,在快速發展之中,有了落地方案,慢慢成為了新的基礎設施。展望未來,自動駕駛、邊緣計算、量子計算……這些新技術又將會帶來怎樣的變革?本文是對騰訊量子實驗室專家研究員郝少剛、PreAngel合夥人 & 騰訊雲最具價值專家(TVP)李卓桓、青寧信安科技聯合創始人 & 騰訊雲最具價值專家(TVP)白慧冬(筆名青潤)三位老師在「雲+社群沙龍online」的分享整理,希望與大家一同交流。

點選視訊,檢視完整直播回放

01 技術開拓者們的成長故事 

浪潮之巔,程式設計師如何擁抱新技術?

青潤:我接觸計算機最早的是 86 年,那個時候還是小學,就從 basic 開始學起,我本科學的是材料加工工程,畢業後又在中科院待了一年多,隨後出來轉行當程式設計師,算得上是中國最早一批職業軟體工程師。實際上在 98 ~99 年之前,中國是沒有軟體工程師的,那個時候都是個體的程式設計師為主。

在這個行業幹了幾年之後, 05 年我離開中國電信又回到中科院,開始做人臉識別和行為分析,從事現在大家經常提到的人工智慧的一些基礎科研工作。後來開始出來創業,第一次創業失敗之後,去中國教育電視臺待了幾年,再次出來的時候自己發明了一個新的技術點,解決了一個基於能源再分配的節能方案,然後就有了我現在的公司。

我們現在在做畜牧業、動物保護等與動物相關的技術,其中一個技術方向可能聽起來有點玄幻,但是這個方向我們認為是可以實現的,稱之為跨物種語言互通技術。這個技術仍在延續中,目前還只是初始階段,相信將來會有更多的人加入到這個領域。

郝少剛:我的名字是郝少剛,我是 06 年在清華物理系畢業,然後到了美國能源部國家實驗室做科研工作,後來又轉戰工業界,首先在半導體光刻機公司 ASML 工作了幾年,後來又到谷歌工作了幾年,去年加入了騰訊量子實驗室,現在在做一些跟量子計算相關的工作。我們做的工作有偏科研的部分,也有在騰訊雲上做一些應用架構方面的落地工作。

我是從學術界跨界到工業界的,所以對新技術是非常感興趣的,甚至是一些現在看似很無厘頭的比如生物類、半導體之類的新技術,我都充滿著濃厚的興趣。整個行業從科研的核心到硬體、半導體這一層,接著是外面的軟體層面我都有從事過,我也幫金融領域的朋友寫過一些自動化交易的演算法,總之就是做的和接觸到的東西比較“雜”。 

李卓桓:先介紹一下我自己的工作,其實我在過去 10 年裡一直是在做早期天使基金的投資工作,所以我現在的身份是一個投資人。我們過去 10 年在整個移動網際網路、人工智慧等方向進行投資。我工作的基金叫 PreAngel 是一個很早期的小基金,我們投過了大概幾百個早期的移動網際網路初創專案,還有一些其他的技術,比如區塊鏈和我最近關注的人工智慧,尤其是 NLP 對話,關於如何用計算機智慧來替代掉人的一些重複性工作。 

我本身是一個熱衷新技術的技術愛好者,現在我在投資之外,在 Github 上面也有一個特別大的開源專案叫 Wechaty,現在已經有接近 1 萬個 star 了,被很多開發者用來專門做各種各樣的聊天機器人,所以大家如果感興趣的話,歡迎去看看或者和我交流聊天機器人方面的技術。

Git地址:https://github.com/wechaty/wechat

其實我也有30年的程式碼經驗,可以稱得上是一名資深程式設計師。我在初中的時候就通過大家熟知的小霸王學習機自學了 basic ,然後在高中的時候自學了 C 和 C++ 等,後來 97 年到清華讀書的時候,因為清華的網路很好就有幸參與到了第一輪網際網路浪潮中來。當時中國第一個知名的門戶是 ChinaRen,後來被搜狐收購了,我在裡面做網路工程師。在第二輪網際網路浪潮到來的時候,我又最早加入到優酷網,在優酷網負責所有的技術團隊的組建,還有開發運維,我當時職位是首席科學家,專門負責所有的技術。

之後我自己出來創業,做了國內比較早的類似 Twitter 的網站 嘰歪,後來這個專案並沒有做下去。在 2010年之後我開始基於我之前對技術的理解,還有在投資界的朋友與創業者的關係,集中精力去幫助早期的技術方向創業者,在公司早期創立的過程中,通過天使投資的方式幫助到他們。 

在最早期網際網路時期, HTML 和 JacaScript 大行其道的時代,在 Web 1.0 和 2.0 還沒有普及開 CSS 的時期,乃至到後來 08 年開始的移動網際網路時代,再到現在的人工智慧領域,深度演算法、 AI 模型上,我都傾注了很多的時間在研究這些新技術,所以我絕對是一個鐵桿的技術愛好者。

02 大咖們眼中的新技術 

郝少剛::因為我接觸的領域比較雜,一開始在搞科研的時候,主要是做一些平行計算的工作,所以那時候主要是用 Fortran 在寫一些東西。所以當接觸C++ 這些物件導向的概念的時候,我覺得是比較新穎的。後來轉戰到工業界,特別是軟體行業每隔幾年就會有一個新的語言或者新的一套框架出來,我就想:面對這些層出不窮的技術,我們該怎麼樣去追?

我的一個體會就是從最核心的基礎科學,到外面的硬體半導體層,再到軟體應用層面,和更外層如金融領域中的應用,越往內層的創新對時間跨度的控制就會越長,越外層的那些技術創新對時間的控制可能就會比較短,迭代的速度也會更快一些。

這可能是一種自然規律,越到內部它是有一些自然界規律支配的趨勢,比如說量子力學現在都發展 100 多年了,但是人們現在才剛剛開始做量子計算機沒多少年,所以前面的路還很長。半導體從上世紀四五十年代開始,大家做矽基半導體電晶體到現在再往前至少還能看到十到二十年的持續,所以這跨度也很長。

但是到了軟體這個層面,可能幾年間就會有一個新的框架或者新的語言出來,比如金融領域更是會不停的產生這樣那樣的投資組合來規避風險,可能很快就會有一個新的策略出現,所以技術迭代的時間尺度在不同的層面上跨度是不太一樣的,這是我對新技術的一點體會。

李卓桓:少剛,我這裡有一個問題想問你:作為一名量子領域的專家,在過去很長一段時間裡,硬體的摩爾定律都一直有效,硬體的效能增長也非常快,但最近我們發現 CPU 速度開始漸漸跟不上了,這無疑會對未來產生很大的影響,甚至不少人開始對硬體的效能產生了一些悲觀,不知道你怎麼看待這一點?

郝少剛:對的,這裡肯定是會到達一個極限的。我之前待過的半導體公司 ASML 是一個光刻機裝置公司,我們做的是一些平行計算的模擬,現在像臺積電還有三星已經可以量產 7 奈米的晶片了,甚至現在 5 奈米的晶片都已經有了。摩爾定律是每 18 個月電晶體的密度要翻一番,所以 5 奈米下一代就是 3 奈米,再往下可能是 2 奈米等等。

光刻技術我們可以假定它就像版畫一樣,做版畫可能是先刻一個板,然後套在一個紙上,再刷上相應的顏色,就得到了你的畫。最重要的瓶頸在什麼地方呢?在於你要刻多種顏色的時候要套色,然後下一次又拿另外一層放上來做對齊的時候,發現對不齊了,它的極限就在 2 奈米這個地方,這是它的一個極限。

所以到 2 奈米以下晶片的良率就會降低,那麼你的成本自然就提高了。這時候大家就會想出別的辦法,我相信總會有新的辦法出來的,不到萬不得已大家也不會去動底層的東西,因為工業界像英特爾這些大公司,他們有那麼多的投入在矽上面,所以矽的工業還會再往前走,只不過對於晶片的架構,可能在設計層面會有新的花樣出來。

李卓桓:最近中美國家間的齟齬越來越深,未來可以預見一段時間的技術封鎖,各技術領域的人才往晶片或者晶片相關的方向流動,你覺得這對於大家來說會是一個更好的機會嗎?

郝少剛:我覺得這裡是有機會的,現在在長三角地區其實已經看到這樣的趨勢了。我們從事半導體硬體行業的這些同學,他們的薪水開始提升。另外也有一些大的企業也開始從事生產一些相對沒那麼複雜的晶片,比如人工智慧晶片雖然賣的貴,但實際從技術角度來講,它比 CPU 還是要容易製作一些。另外包括有一些像光學類的晶片,它的線寬要求不必太細,可能微米量級就可以。也就是說現在可能不需要特別先進的裝置和技術我們也可以先突破,然後開始進入。而且最近我注意到海外也有很多這一類的人才開始迴流。

青潤:其實物理學是我特別感興趣的學科,可惜最後路走“偏”了,大學去了瀋陽的一個學校讀材料加工工程,最後卻發現,其實材料加工工程也是物理化學的一個很深入的方向。但是在那邊待了一年多之後,發現了一系列的問題,因為中國科研當時的體制讓我感覺不好發展,就直接自學計算機程式設計,自己學完了計算機相關的所有專業課程,隨後一畢業就改行了。當然畢業之後又在那邊幹了半年,完成了導師交待的最後一批實驗,也算是作為一名材料系學生所做的最後的貢獻,後來那個方向就徹底放棄了。

出來之後開始寫 JAVA 程式碼,當時也遇到了一些問題:就是大家都在寫程式碼,但上面的管理人員不懂,那個時候程式設計師的薪資確實比其他行業看上去要高一些,所以就有一些對技術不是特別感興趣的人“混”了進來。當然不好說人家是混進來的,別人能夠把這個事情接下來也說明自身是有一定的本事的,比如表達能力比較強,口才比較好等,更容易與一些上層管理來做溝通,而技術員往往拙於溝通,寫程式碼的時候才感到是最幸福的時候。

到現在我一直都覺得,在我當程式設計師 20多年的歷程裡面,最幸福的時候就是在 2000 年左右,那時我還是一名單純的程式設計師,我的任務就是想方設法的把功能實現。當時我們是在IBM的Websphere上寫東西,用的資料庫是 db2,結果發現國內沒有一本中文資料,只好到外網去查,當時國內能夠買到一本書就叫《DB 2 從入門到精通》,結果哪有什麼精通,就是把手冊翻譯了一遍就出書了。這也是後來我寫書的時候極力要去避免的事,我這人可能在這方面比較笨,第一本書寫了3年,後來又寫了 6 年之後出版了第二版,說白了就是我 10 年就只寫了一本書。

兩千年開始接觸 UML,剛開始也是各種牴觸,但是真正在專案裡把它用起來之後才發現這個東西真的很好用。尤其是從模型到程式碼的轉換過程會讓我們的視野從程式碼層面真正脫離出來進入到架構和模組級別以上。

當我發現了模型化之後,它會把你的視野從程式碼層提高到真正的架構層,例如當你進入到一個生產線上的時候,你很容易會被上面的某一個具體操作所吸引,這個很簡單的機器結構就會鎖住一個人,你會在那裡面永遠突破不出來,很難把自己的視野從這個點提升到整個生產線上。UML 就在軟體開發領域起到了這個作用。

隨後離開了電信,又進了中科院。為什麼進中科院?是因為當時我們的研究員李老師,他是國際上人臉識別領排名前幾位的專家,微軟最早的人臉識別就是他帶著團隊做出來的,這個技術方向吸引了我。

在這個階段中遇到了一系列的問題,比如當時人臉識別、行為分析和動態識別,現在大家經常提到的人工智慧在我們那個時候其實都已經在操作了,在操作的過程中遇到了相當多的問題,因為那個時候還有點早期,市場理解度並不夠,而且當時我也錯過了一些機會,比如在 07 年有一個廈門的老闆願意投 1500 萬,我當時直接傻了說:500 萬還可以 1500 萬我覺得我接不住,後來就錯過了這筆資金。

後來我出來創業的時候發現個體的力量在一個體系面前幾乎是沒有機會的,所以那次創業後來也失敗了。大家感興趣也可以搜尋找到當時的一些資訊,包括周華安做的水木社群上面,我的經歷都曾經上過好幾次十大排行榜。我覺得水木是一個非常奇葩的社群,到現在還是每天都有好幾萬人,甚至高峰的時候是 20萬人同時線上,這是一個非常奇葩的事情。

李卓桓:當年大家沒有其他的溝通渠道,我覺得在我們們的成長過程中,像早期的 BBS 技術交流,對我們產生了巨大的影響。我身邊很多大神朋友都是當年的在 BBS 上認識的,因為當時能上網的人還很少,所以能見到的同時又學得很早的幾乎都很厲害。

青潤:其實這一項提到的新技術點還有一個事情,比如我 05 年再次進入中科院,離開企業應用軟體行業,06 年突然聽說Spring 架構如何,我想說我畢竟寫了那麼多年架構程式碼,就回去看了一眼,結果發現這不就是 02 年我們用過的東西嗎?只是當年我們沒有把它提煉出來而已,沒什麼區別。所以如果你去查的話,可以找一本2002年出版的叫《J2EE核心模式》的書,那本書上有一個 helper 模式,和 Spring 幾乎是完全相同的,大家可以有興趣的可以去查一下,當然這都是翻老古董的東西了,沒有書的話不查也無所謂了。

所以我們再來看,新的技術點到底是什麼?其實就是有些人把經常重複的東西提煉成為一個通用的點,然後把它標新立異提出來了。如果你沒有提出來,那麼就只能反省,在枯燥的工作中,自己為什麼就沒有想想,把它做個簡化提煉的工作呢?是抱怨自己的工作枯燥重複無意義,為什麼就沒有想過更簡單更可以偷懶的方式呢?程式設計師本來就是為了偷懶才來當程式設計師的嘛。 

李卓桓:真正經典的東西,其實都是已經存在生活中很多年,但是我覺得有一些新技術,它的價值在於會有一批人能夠把重複出現的這些東西總結出來,並且把它做成一種模式,可以讓未來的所有人不用再去從頭總結,或者再重複這些過去已經總結出來的東西,進而產生了新的一輪迭代。

郝少剛:現在市面上大家常用到的這些人工智慧上的演算法,可能都是幾年前甚至 10 年前的論文,只不過現在用的人更多了,大家發現可以在更多的應用場景裡面用到它們,然後才開始擴散開來,所以這些東西大家可能以為它是新的,其實很多都已經是 10 年前的產物了。

李卓桓:這裡關於新舊的概念我覺得也要分一下,一個東西出現了,我覺得在沒有被大眾知道的情況下,在沒有被大量應用到實際的生產生活中之前,就不可能真正去改造世界和創造價值,我認為就不能稱之為存在。

真正的存在應該就像少剛剛才說的那樣,比如人工智慧反向梯度這種學習方法,其實是上世紀就有的東西,但是它沒法匹配相應的硬體能力,只有那麼一些演算法、論文放在那裡。我覺得從廣義上來講,一個很厲害的新技術只有被人民群眾用起來,這個瞬間才應該叫誕生。 

郝少剛:其實對這種轉變我是很有體會的,因為那個時候搞科研,你會覺得你做的東西都很好,只要寫成論文然後放在那裡就已經非常好了,有句詩說的是「花自有本心,何求美人折」,意思指的是:我已經長得這麼好看了,即使沒有人來折我也是可以的。

但是到了工業界以後,你就會發現這些成果最好還是能儘量改變到我們的日常生活,就像另一首詩「遲遲白日晚,嫋嫋秋風生。歲華盡搖落,芳意竟何成」。最後你這朵花也開了,開完也敗了,但是沒有人欣賞,芳意竟何成就是沒有意義,沒有感覺,所以會有兩個比較大的對比。

李卓桓:我發現很多技術圈的牛人同時也是文人,剛才少剛的詩已經達到了騷客的級別。 

青潤:我記得大概是 96 年,當我還在讀本科的時候。我師姐做了一個鑄造流體模型的計算,它的這個計算需要差不多 5 天以上的時間,經常在電腦上貼了一個「請勿關機正在做計算」的紙條,後來有一天我偶然幫她看了一下程式碼,我說:“你的這個模型最後處理出結果的那段,可以把它放到最後一塊出”,就這麼一句話,讓整體的計算時間從 5 天多變成了 6 個多小時。 

2005 年的時候,我們在做人臉識別,當時有一個叫活體檢測技術。像現在大家看到的活體檢測技術其實叫活動檢測,看你眨眼、晃晃頭、笑一下和張張嘴,這叫活動檢測,不叫活體檢測。其實活體檢測的是你的眼球對應的反光點的不規則波動,我們在 04 年的時候就已經做到,但是當時如果做這個事情,我們人臉識別的速度就會從 20 多秒直接變成了 5 分鐘,使用者肯定沒法接受了,這個時間大家等不起,所以這個技術後來就被拿下來了。

這代表了什麼?說明當時的計算能力真的不夠,我記得當時我在自動化所還拼湊了 1 臺搭配 4 個 32G 記憶體掛載 10 塊硬碟的一臺機器,然後發現一臺變壓器完全帶不動,最後弄了兩個變壓器來帶這臺機器。在我離開之後這臺機器也就被分拆成兩臺機器,因為確實太耗電了。當時的處理能力相比現在真的差太多了,可以這樣說,現在隨便一臺普通智慧手機都比我們當年奔四的計算機處理能力要強,現在手機上幾乎都能夠做人臉識別了。 

李卓桓:我覺得我們都是在各種暴露年齡啊,當年硬碟真是存 100 塊好像都趕不上現在手機的儲存容量大。

其實不同的年代都會有很多技術特別吸引人,尤其是對我自己而言,我其實從很小的時候一直都會被各種技術所吸引,現在回想起來似乎每一年吸引我的技術後來都有了很大發展,但當時我只是覺得很好玩。

比如在初中的時候覺得遊戲機很好玩,然後就會思索這個東西是怎麼做出來,就去自學了 basic。在90年代的時候,basic 應該也屬於很前衛的技術,雖然 basic 不是最好的語言。

在初中的時候就已經能用 basic 實現一些小資料的控制,然後發現還有很多的資料需要處理,所以我在高中的時候就自學了 FoxSpace,也屬於那種很早期的資料庫,我覺得很多的新技術它是取決於人身邊的各種需求,這種需求解決的時候就會出現很多以前沒有的技術,現在為了解決這個需求所誕生的這種新技術在未來就會對很多事情做出改變。

我在上大學的時候首選北京,主要因為當時想要上網。我高中的時候我們那個地區沒有網,所以只能抱著電腦報看,電腦報是很早的一個電腦報紙,上面就有很多大城市的人說:“我又加了個 BBS ,我的電話線在晚上歡迎打給我,我的電話號碼是多少等等”,因為那個時候想上網需要先打電話給那臺伺服器,並且那臺伺服器同時只能服務一個人,那個時代就會有這樣的站長。

後來到了北京之後,覺得網際網路能夠讓你實時得到那麼多的東西,能夠讓你沒有任何限制得到那麼多的資訊,就感覺很興奮。當時我就做了一個動漫站,因為我很喜歡動漫,喜歡到處下動漫,當時也沒有視訊全都是小圖片,但有很多小圖片就已經很令人興奮了,因為自己有這種收集資料的訴求,當時我就做了全清華最大的一個 FTP— “紫霞 FTP”。

紫霞站就是我的站,所以 zixia.net 這個域名就是當時我租下來自用的。我最開始試圖想做一個網站,第一步是用 ASP,在 98~99年那時候,它還屬於很先進的技術。因為那個時候沒有開發成型的語言,就用 ASP 做論壇,當時用起來也確實很不錯。但是再往前走,就會發現有一些限制,然後再去請教一些人,他們告訴我還有更好的東西,所以在那個時候我又接觸了 leedays,為了實現所有的站,我就開始學習各種各樣配置網路伺服器的技術。 

為了滿足自己的玩興而學了很多東西,所以我覺得如果你真的想玩一些很前衛的技術,你就會發現有一些技術需要去學習,那麼你就去學它就對了,因為你要相信自己喜歡的東西在未來一定不會錯。

後來到了第一輪網際網路浪潮的時候,我供職於國內一個叫  ChinaRen 的網站,後來被搜狐收購,當時我在的部門基本上只有 3 個人,但所有的伺服器都要由我們來做核心編譯,包括各種郵件伺服器的架裝置份等,所有的都要做,也需要不斷的學。 

藉著做這個的經歷,我寫了我的第一本書《leedays 網路程式設計》,還是在清華讀書期間寫成的,後來隨著需要做的東西不斷增多,我又自學了 perl,甚至有一段時間任何東西我都想用 perl 來寫,因為 perl 當時還很好。然後為了做畢設又不得不自學了JAVA ,在很多公司還要做 DBA,後來為了做伺服器,要學當年超級難用的 RPC。雖然很多東西后來也不再用了,意外卻發現當年學的這些技術有很多竟成為了網際網路中非常重要的一些能力。

給我的感受就是:自己喜歡一個什麼樣的應用場景,當你想要在這個場景裡面成為主人的時候,你就需要有很多 Powerful 的能力。這些技能點其實我覺得就選自己喜歡的去點亮,會有很大的概率點亮到一個未來能夠改變世界的,尤其是當年網際網路興起的時代,我們看見這些技術對於之後的十年乃至更久都有很大的顛覆機會。

比如2008 年移動網際網路誕生的時候,因為大家當時都在用電腦,你會發現很多人希望有一個隨身的移動裝置,如果能夠移動上網,拍腦袋想都知道這是特別炫酷的一件事。為此我甚至去學了 iOS 程式設計和安卓程式設計,還寫了很多小的 demo,試圖更深刻的理解它們。雖然自己沒有在移動網際網路做公司,但是我們 PreAngel 當時投了很多移動網際網路公司,到最近這 5 年,我的興趣又被一個新的技術完完全全所吸引,它就是AI。為什麼會喜歡它呢?還是因為我是一個特別笨特別懶的人,所以我就特別希望找到一個方法能夠讓我借力。不過因為我在清華讀的不是計算機系,演算法基礎相對較差,如果讓我去做人臉識別,我覺得和青潤比起來,簡直完全不知道發生了什麼事情。

現在的人工智慧有一個什麼樣的機會呢?機會就在於現在算力有了很大提升以及讓我們擺脫了過去所有演算法的桎梏。我們發現我們不需要去了解那些細節,以前的機器需要你告訴它具體怎麼做,它才能夠把這個事做好。現在的機器你會發現能夠有一個新的能力,這種能力叫做「授之以魚不如授之以漁」,就是你要教會機器自己去做,而不是說手把手的教它如何去做。現在的電腦我覺得已經到了一個新的階段,電腦能夠自己去總結出來一些規律,而不需要你總結了之後讓它背下來再去做。

我還發現這樣的一個新技術在未來一定能夠真正改變人類生產力,我和朋友分享說人工智慧可能比網際網路還要偉大,超過兩個量級都不止。這是我對新技術的感受,找到一個自己喜歡的新技術,我相信大家只要能做進去,最後收穫都不會小。 

郝少剛:非常同意卓桓的說法,因為在量子計算領域我們傳統的辦法都是一種演繹的辦法,就是從最基本的原理出發,然後用公式推理出來。但是到了一定程度你再進行模擬的話,它的時間複雜度是非常高的,代價很大,可能這個時候就沒辦法進行擴充套件。有 AI 我們就可以從另外一方面,用歸納和統計的辦法從資料側來看,所以我們現在也在做一個新的嘗試,希望用 AI 的辦法幫助我們加速量子計算,也就是量子模擬。

另外一點我覺得卓桓說的也特別好,就像我們的生活,每一天你要得到一些正反饋,然後你才能夠比較開心的進入下一天。你喜歡那個東西,然後你得到了正反饋,才能更好持續下去,有收穫。如果我們得到的是負反饋,比如覺得學的這些新東西是生活所迫必須要學,這就不是很開心了,效果也不會很好。

青潤:興趣很重要,就像我到現在還記得86年學計算機的時候,我是怎麼成為老師最好的學生的,是因為有一天我把他氣哭了,之後就特別內疚,才想要好好學習這門課,而且發現這門學科確實很有意思。

想想在 86 年那個時候,你能夠在一個電腦螢幕上顯示出自己定製的一些花紋紋路,還可以操作一些事物,類似於街頭遊戲機裡面的一些東西,還可以自己把它拼裝起來,那是一個多麼新穎的事情啊。

後來街頭的遊戲機我就不去玩了,我發現我自己好像自己也能幹,於是就開始自己編。當然編的就很一般了,因為那時候用的只有一個配色,硬體用的就是 310 機和蘋果I型II型機,當時蘋果I型II型我們還不能經常用,因為價值很貴,我們用的最多就是 310,這個 310 是日本模仿蘋果的一款機型,很多朋友大概也就在書本上見過。

我最近在知乎上遇到了一個人,他說自己是因為興趣才來做計算機的,然後越做越枯燥,就覺得很無聊。我就回了一句話,我說怎麼可能越做越無聊,真正有興趣的人絕對不會因為你做的事情的重複性而感到無聊,只會覺得可能還有地方沒做好,所以這一點特別重要。

03 處理與新技術的關係

李卓桓:我們們都做了那麼多年,在感嘆過去這些“新”技術的時候,未來我相信還會有更多的新興技術會出現。大家覺得未來還會有哪些重大的技術將會出現,另外從技術人職業發展角度來看,我們每一個人應該怎樣做好選擇以應對未來技術發展? 

郝少剛:我先談一談,如果是我的話,第一我覺得還是興趣驅動,首先是你願意去接觸它,它是來發動你,激起你內心好奇的一個點。當你對日常正在做的事情已經很熟悉了,可能處在一個舒適區中,每天的事情在可以很有效率得做完的情況下,你會有一些其他的時間,看一點這些東西,這個時候興趣在其中會起到非常大的作用。 

如果把興趣拋開,就是你對未來趨勢的一個判斷,你可能對這個技術沒什麼興趣,但是現在好像很多人都很關注這塊,它以後可能會變成一個大事件,這時候你也可以對它有所關注。你希望以後也能投身於這個領域,做出一些東西來,對整個社群和大家的生活產生一些貢獻。這是目前我覺得兩大比較基本的因素,可能會驅使一個人去找他比較喜歡的技術點。

另外我覺得如果我們時間更多一些,或者你的好奇心更重一些,那就可以對一些“不沾邊”的東西看得更廣一些,比如說現在我們獲得知識的渠道太多了,而且非常的便宜。像上網獲得知識的成本很低,資源非常多,所以我覺得可以花很少的時間對很多東西都可以掌握個大概。比如二八原則,我們花 20% 的精力,就可以對一個東西有 80% 的掌握,這樣就可以把我們的知識面和視野鋪的更大一些。在新的領域裡面,你可能又會發現一些使你感到有興趣或者是你感到興奮的一些點。

李卓桓:我覺得少剛說的很對,現在和 10 年前不一樣了,和過去比起來,我們獲取資訊的渠道越來越豐富,而且從另外一個角度來看,網際網路上能夠製作出特別優秀內容的內容生產者,隨著整個網際網路的基數變大,也會越來越多。所以如果我們能夠用英文來搜尋的話,我們基本上能夠很快的得到全球上最好最先進的新技術,以及那些頂級的講師或者寫手他們總結出來的特別高質量的文章和知識的教程。

所以從這個角度來講,其實我們現在獲取新知識的能力變得比以前強了很多。其次我想引申出來另外一個觀點,從某種角度來說,隨著技術迭代的變快,我們不可避免的會面臨著我們學過的知識會“過期”。

其實我一直不太相信知識會過期,因為當你能夠學到一個新的知識的時候,最重要的是你要能學到這個知識背後的通用模式與思考問題的方法。其實如果我們大家寫程式用的語言多了之後,你會發現其實語言之間就是語法不同,思維模式和解決問題的思路都是相通的,我們是可以通過不斷學習這種新知識而沉澱出來,變成自己內化的一個通用的思維模式。所以對於學習新技術,我覺得完全可以只是看它是否有足夠有新的點能夠去解決新的問題,而且我覺得學了都不虧。

郝少剛:通用的東西在你身上沉澱下來以後,你學新的東西就會更快。你個人其實也是在不停的迭代,而且每次都迭代得更快,你就變成了一個更有效率的學習者,所以相當於我們在訓練自己大腦裡面那些神經元,你訓練的越多,它就越願意去學習,越主動,越有好奇心,我覺得正反饋是非常好的。

青潤:就像剛才說到的人臉識別,其實我現在也寫不動人臉識別程式碼了,雖然人臉識別程式碼不是我寫的,但是對於人臉識別的理解,我反而有一定的心得,這也是我現在能夠去做跨物種的語言互通技術的原因。

我把這套思維的方式轉換到了一個應用場景內,比如說你們家有寵物狗,當它聽到過一個聲音,或者發出某一個聲音的時候,會習慣性的抬一下左手,這時候我就會記錄下來。當你需要它抬左手的時候,能讓你發出的聲音在狗那邊聽到的就是讓它抬左手的指令,這樣做到跨物種的語言互通,而不是依靠傳統的巴普洛夫效應讓狗遵從指令。 

這是我在第二次進中科院之後掌握到的最重要的東西,反而不是寫的那些程式碼。還有人說你看看你現在多失敗,你那麼早進入人臉識別領域,現在的人臉識別公司卻沒有一個和你有關的。我說確實是沒有一個和我有關的,但是現在幾乎主流的人臉識別公司裡面都有我們那個組或者我們那組相關聯的痕跡在裡面。其實不代表說你自己一定要在裡面獲得一些直接的東西,這些工作可能會在另一個層面上產生相應的作用。 

李卓桓:我還有另外一個建議,我們大家在學習新技術的時候,最好不要為了學而學,最好能找到一個讓技術實際去落地的場景,哪怕是非常初級的一個場景,但是隻要你能夠把它實際用起來,你的學習收穫、感覺就會完全不一樣。因為它不再是一個死的知識,而是一個活的東西,是真正能解決問題的知識。

04 Q&A 

Q:我們處在機器配置這麼好的年代,為什麼感覺產出卻不如以前呢?

李卓桓:其實這個問題是很有代表性的,我覺得如果我們要做的話,首先就要把心態放長遠。分為兩塊,第一,過去這 10 年,有很多的基礎資料,具有代表性的像準確度,像坐火箭一樣往上漲,但我們不能期待以後永遠是這樣的。為什麼?因為過去 10 年的人工智慧發展,無論是影像還是 NLP ,它們最大的特點就是已經把過去所有基礎研究的能力釋放乾淨了。

像80~90年代的反向梯度傳播和很久之前就有的卷積神經網路,最早是因為我們沒有算力,所以它們沒有辦法被釋放出能力。但其實在過去的這5年多甚至10年中,很多基礎研究的能力,典型的如影像的準度已經從92%、95%、97%,到現在人臉識別的準度都能達到百分之九十九點幾了。所以接下來做這個領域的時候,並不是說我們的機器配置好了,就沒有再提升的機會了,而是因為我們已經提升很多了。

接下來我們要做的事情我覺得會有兩個很大的機會,第一就是做新的基礎研究,不是把 95%變成 95.5%,只專注於提升一兩個百分點。而是要發掘新的問題,找到問題的新的解決辦法。比如在自然語言處理裡,很多語義的問題到現在其實還沒有被真正解決,甚至都沒有被定義出來,我覺得要在學術領域努力解決這些問題,才會真的對人類產生很大的積極貢獻。

第二點可能更切實際一點,我們的開發者其實有一個很大的機會,現在有很多的人工智慧演算法可能已經達到了 99% 的準度,但其實它在真正的人文生活應用中,在真正的產品化落地上還非常的侷限,有很多的場景,並沒有把技術真正用起來。比如說影像識別裡面的物體檢測就有很多的場景,它需要大量的這種能力,但是到現在為止並沒有一個產品真正能解決它們的問題,而像這樣的落地機會也還有很多。

青潤:我補充兩點,第一,人臉識別的準確度還沒有到九十九點幾,這更多是一種商業上的宣傳。實際上在人臉識別裡面我們做的方式是什麼?就是拿你的歷史資料,抽取一個特徵碼,當你再一次過來驗證的時候,就會再拍一張照片,用同樣的演算法來提取特徵碼,提取完兩種特徵碼中間肯定有差異,比如光照、傾角、臉的傾斜度都會有差異,然後這兩者我做數值異或。數值異或的速度是非常快的,大家知道計算機裡面最快的計算就是異或,計算這個百分比有多少是相似的,多少是不相似的,如果相差比較大的話,可能會再做一些圖形的變換,比如說做一個傾角的轉換,最後再來比較。

其實這裡提到的就是兩個概念:一個是識別率,另一個是誤識率。這兩者之和是大於100%的。具體的原因有興趣的朋友可以詳細瞭解一下人臉識別的相關技術以及定義方式。即使是識別率中等相似的那部分它也是有價值的,因為每個人不同時間的兩張照片是不可能做到100%相似的,甚至80%以上的相似概率都很低,於是在商業計算中會把那個20%(這裡是一個假設的數值)直接去掉然後折算出來的結果往往就可以達到90%多以上了。

實際上現在和我們10多年前做的那套人臉識別演算法和數值異或上的差異,到現在也沒有特別大的突破,數值得分大概就在70%左右。但實際上在60%左右的時候就已經可以識別出是這個人了,15年前58%就已經是一個比較高的得分了。

假如你用到的人臉識別裝置比較多的話,會發現很多時候經常會折騰到不認識,還得重新識別才可能識別出來。這就是為什麼我們在不斷的調整門限,把這個門限值設定為70%還是65%還是60%,很有可能你會偶然碰出一個很高的數值出來。

這就有人提到說人臉識別的時候,比如我帶張人皮會怎麼樣呢?其實這個是真的可以矇混過關的,不要認為是矇混不過去的。如果讓我來破解的話,可以說我有很多種方法來攻擊現有這些系統,但是這種方式我們一般不對外講,因為講多了沒有太大意義,只能說明我們自己這塊東西沒做好。

目前在計算能力上還是不夠,這個確實沒有辦法,真正計算力夠的時候是什麼時候呢?現在有可能在矽基晶片上是看不到了,可能量子計算機會帶來希望。 

郝少剛:我可能沒有青潤那麼悲觀,我覺得矽基半導體晶片還是可以試一下,也歡迎大家到我們騰訊雲上來試一試,我們騰訊雲上有很強大的 GPU 叢集,歡迎跟我們聯絡。

Q:學AI要從那種語言開始學起?

郝少剛:我覺得大家比較常用都是先從Python開始,因為像 PyTorch、TensorFlow 都支援得很好,另外 Python 是一個比較容易上手,對新使用者比較友好的一種語言,我覺得用 Python 開始就很好。

Q:AI藥物研發到底前景如何?還有多長的路要走? 

郝少剛:AI 藥物研發已經是一個趨勢了,最近我看到國外權威雜誌(《自然》雜誌還是《科學》雜誌)上發表了一篇文章,他們用 AI 做了一些輔助的藥物研發,在很短的時間內就進入了FDA 的審批流程,所以 AI 對藥物研發的幫助還是非常大的。

因為從分子治藥角度來講,那些小分子資料庫裡面的分子量太大了,都是一些有機的東西,能達到上億的量級。所以在大資料領域裡,從資料這邊來找規律,看哪些東西能夠匹配到蛋白質的某一個特殊靶點位置等等這些,都是很有效率很有意義的。 

至於說還有多長的路要走,需要看你怎麼定義你認為的彼岸是多遠?如果你的意思僅僅是 AI 技術用在製藥領域的話,那麼我們現在已經在用了,而且可能還會一直會用下去,經歷不停的迭代、加速優化的整個過程,模型也會做得越來越好。所以我覺得不是問還有多長的路要走,而是說我們可能以後用 AI 變成一個常態,在製藥領域大家都會選擇這個工具,它變成了一個不可或缺的工具,可能還需要相當長的一段時間。

Q:AI 技術水平越來越成熟了,在未來發展後會代替人工嗎?

青潤:這個問題背後會牽扯涉及到人類的生存安全的問題,而這個問題也是長期引發社會廣泛思考和討論的問題之一。關於 AI 將來會不會真的來害人,甚至國內某知名高校成立了一個學院,要專門研究人工智慧法律基礎相關的東西,儘量減少人工智慧對人的傷害。

我從寫了多年程式碼的程式設計師角度來考慮,如果大家有看過一個連續劇——終結者外傳,裡面有這樣一個畫面,一個液態金屬機器人在一大樓上指著下面和主角說:“你看路面上的各種機械車輛,它會按照紅綠燈的指示來進行通過,但是沒有一個機器人會闖紅燈突破這個過程,所以會犯錯的機器人是一個特別特殊的存在”。從目前的技術基礎來說,所有的不管你是什麼形態的程式碼形成之後的人工智慧演算法或者它的邏輯實現演算法都有自身的基礎的,它還是基於一個程式碼序列層展現出來的。 

如果在程式碼序列展現中出現了這種闖紅燈行為,說明了什麼?它其實是程式碼出現錯誤或者記憶體溢位了,但是這種溢位行為可能有連續性嗎?其實從目前來看,還做不到溢位行為之後的連續性,他如果不能有連續性,換句話他這時候出錯之後會帶來什麼結果?就是手機鎖死了,隨後手機就直接重啟,重啟之後他又恢復到正常狀態,也就是說他的錯誤行為不會出現連續性的行為。

即使是我設定了這是一個殺人機器人,他就是為了殺人而存在的,假設有這樣瘋狂的技術員出現,這也是有可能的。但是他設定的也只是針對一定目標行為之下的連續性的程式延伸,也不會出現他會把所有的殺人模式都實現出來,也就是說因為異常而滅絕人類的殺人機器人不可能出現,但是針對單一目標的殺戮機器是有可能出現的。

再者你可以想到一點,人工智慧能代替哪些人工呢?其實基礎的可重複性的勞動都是可以取代的。

我從2004年開始有一個自己的研究方向,不是剛才所說的跨物種語音互通技術方向,而是抽象化腦力勞動的量化模型研究。這些東西最初的來源是在哪裡?其實就來源於我 2000 年開始接觸的 UML 的建模方法。從那裡我發現了,也許能夠把程式設計師的抽象化勞動,逐層量化出來一個可能的實現途徑,於是就開始往下推進這一系列動作。類似於腦力勞動的抽象化量化,實際上機器將來能夠帶來的絕大部分也都是可以具體量化出來的東西,也就是說目前能被量化出來的工作,就是機器最優先會被取代的東西。

當然有人會說,現在連類似畢加索的畫都能被機器畫出來,但其實那也是一套程式碼和模型演算出來的結果,並不是真的。所以不要認為那就是一個畫家,其實還是一種模仿性的行為。

Q:關於人工智慧中自然語言處理在商業領域的應用,老師能給哪些建議?

李卓桓:這個問題正好問到了我的專業領域,我現在主要關注的就是人工智慧技術領域裡面,尤其 NLP 這個領域的應用,還有像多輪對話,如何在微信上面做這種自動化的客服問答,以及其他類似的這種人工智慧應用。

回到在商業領域來應用這個話題裡,我覺得這個問題最大的價值在於說,我們要意識到現在的 AI 演算法其實是有很多的侷限性,即便對於很多的資料能夠分類得很好,即便它在很多的場景裡能夠不知疲倦的工作,比人的效率還高,但是當它到了對話領域的時候,會面臨著很大的挑戰,尤其是和 CV影像處理比起來。因為CV影像處理中很多應用場景相對來講都是客觀的場景,圖中有沒有一隻貓或一隻狗是一個絕對客觀的場景,它的演算法做起來比較容易。

但是到了自然語言領域的時候就帶來了很多的不確定性,比如一個人跟你說話的時候,可能同樣的一句話代表著不同的意思,甚至是代表著截然相反的意思。在很多時候,我們在跟別人說話的時候,其實別人的語氣以及當時現場的情境都和表達的真正意思有很深的關聯,如果你只是把說的語音轉成文字的話,可能會錯失掉很多的資訊。

所以對話領域如果要商業落地的話,我覺得第一點就一定要意識到人工智慧在這個場景裡面有非常大的先天不足。那麼是不是說就沒有辦法去做了?我覺得完全不是,其實現在有大量的機會可以把這種對話能力應用在不同場景裡的。

舉一個很簡單的例子,比如我們可以去做一些降維打擊的事情,比如現在我們的自然語言處理已經可以對基本的單輪對話的語音轉文字有很高的準確度,大家如果用微信語音轉文字就會發現真的很好用。另外如果你去提問一個很清晰的問題,比如你作為乙方去應聘,把電腦當做甲方,你可以很認真的跟它講明白一件事,其實基本上也能達到清晰溝通的效果,事實上在單輪對話裡 AI 已經可以解決絕大多數的問題了。

那麼我們該如何抓住這其中的商業落地的機會呢?需要我們去找到真正這樣的場景,然後分辨清楚哪一些是超出我們能力的,再把它們剔除掉,剩下的有能力做的這些簡單場景裡面,哪一些又是屬於價值最大的,我們就把它拿過來,在這些裡面再去做最後的篩選。

其實某種角度來講這並不是一個技術問題,像現在我們的騰訊雲提供的很多模型裡面,我們有很多 API 能夠做很多的事情,但關鍵還是在於你能否有那個創意。舉一個簡單的例子,移動網際網路的時候,我們大家都有手機,我們都知道怎麼寫程式,怎麼畫一個方塊,怎麼填色,甚至怎麼做一個3D的東西,但是這些東西在你的手上,你是不是就能做出一個使用者都很喜歡願意傳播的手機應用出來呢?

很多的應用原理都很簡單,並不需要很深的、很複雜的演算法或者一些複雜的邏輯,但是它就能夠打動使用者。我覺得在接下來的人工智慧領域,其實有大量這樣的機會,如果大家能夠找到這樣的機會,保持對人工智慧侷限的認知,去尋找一個沒有被解決好的場景,並且判斷清楚這個場景是否真的有價值?如果未來有價值就去試一試,這裡面的機會真的非常多。

最後我再稍微做一個小廣告,我過去幾年專門研究過怎麼做聊天機器人的多輪對話,所以在今年3月份的時候,我和另外一個朋友專門出版了一本書《ChatBot 從零到一》,專門講述一些如何來做對話和如何思考聊天機器人的應用場景,所以大家也可以去參考一下那本書,我是第二個作者。

Q:作為售前工程師而不是程式設計師出身,想請教老師怎樣才能更好擁抱技術,掌握和提升軟體技術或架構思維水平?

郝少剛:其實我也不是程式設計師出身,我是學物理的,青潤兄是學材料的,卓桓是學機械的,我們三個都不是程式設計師出身的。那麼怎樣更好地擁抱新技術呢?首先你要喜歡它,對它有好奇心,然後你一定要去實際操作,你跟著做一遍,把裡面的坑都踩一遍,等你再回頭看的時候,就能更深入的理解它了,等你下次再碰到這個事情的時候,你就知道該怎麼辦了。

Q:5G會對AI產生什麼影響呢?

青潤:因為我畢業之後在電信待過很多年,所以通訊也算是我的專業之一了。尤其是這幾年我們在藏區以犛牛開始做研究,也會注重相應的通訊技術對我們的影響。其實現在 5G 和 AI 這兩者並沒有太大直接關係,大家不用多想了,但是通訊技術對 AI 一定是有很重大的影響的。

為什麼這麼說?因為通訊在它的傳輸速率以及通訊方式上,會決定將來 AI 的響應速度以及最終拿到的結果,所以這兩者看似沒有什麼直接關係,但還是可以互動產生很有意思的事情。

例如我們將來考慮在科技館做一些展示,比如把某一個地方的場景直接 3D 還原出來,還原出一個真實的犛牛生活場景,但這些東西以目前的通訊技術來說,只能通過 5G 技術來進行傳輸,因為 4G 的傳輸量是達不到我們要求的。

在驅趕犛牛的過程中,我們會給使用者一個相應的方式,讓他能和犛牛之間產生一個互動。當然我們不會做過於強迫動物行為的一些操作,比如使用者跟它說右邊的草質很好,指揮著犛牛往那邊過去,這樣的行為我們會處理成一個犛牛能聽懂的指令給到它,這種形態其實就是我們正在和運營商一起合作推動的事情。

Q:5G的廣泛應用會將計算工作全部放在雲,捨棄端側的算力嗎?

李卓桓:這個問題很好,也是我相信的一個趨勢,只不過我覺得要修正一點,永遠都沒有絕對極端的情況,我們是不會把所有的算力都放在雲上的。但是我相信越來越多的算力,我們可以從雲上面直接拿來用,尤其是這樣一些場景,我們的隨身裝置沒有足夠強的算力,當然原因是很多種的,比如出於成本上的考量,可能是電池或者功耗不夠,或者是一些其他情況等等。

但是我們都知道現在雲端的算力很強大,那我們是不是能夠直接把雲端的算力拿到我的移動裝置上來用?比如我的手機可能就不需要用很多的電來計算我 3D 圖形,只需要把任務丟給雲,然後把結果拿回來用就行,在這種全依賴雲的情況下,我的手機電池也許可以用兩天三天甚至更久,這就是一個很大的提升,所以我相信這絕對會是一個趨勢。

再舉一個例子,是我個人非常喜歡的一個產品,如果大家感興趣可以去網上搜一搜,谷歌有一個產品叫做 Stadia 。它是一個遊戲手柄,這個手柄拿回家之後,你不需要任何其他東西,就能用這個手柄來玩遊戲。可能有人會疑惑主機在哪?主機其實就在谷歌雲上面。

當你開啟這個手柄,需要做的就是連線到你家裡的 WiFi,連線好以後所有的遊戲都在雲上,玩的時候也不需要下載。你家裡的電視也是連線到 WiFi,通過 Google Ground Caster這麼一個專門用來投屏的裝置顯示遊戲1080P的渲染畫面,甚至它還支援 4K 渲染,只不過對頻寬要求高一些,全部內容都在 Server 上。

所以就意味著你在本地操作遊戲手柄往前走,你的命令會轉到雲上,然後雲上將三維圖形渲染,每一秒推給你 30 幀甚至 60 幀的畫面,這樣你就完全可以在本地來玩這個遊戲了。你也不用再下載遊戲了,大家都知道現在遊戲安裝包越來越大,下載安裝都很費勁。第二,你也不再需要什麼主機了,更新的麻煩也可以省去。只要你有一個手柄,家裡有電視,你就能玩的很好,這就是一個家用遊戲的場景。

其實我覺得谷歌做這個場景更大的戰略應該是放眼未來,比如如果現在我們把手機做成眼鏡那樣的形式,面臨的主要問題是沒有很大的電池。但是以後如果網路足夠好的話,我們就只需要把視訊傳走,再把視訊拿回來,現在的硬體發展處理這些東西是非常省力氣的,所以我覺得除了剛才提到的遊戲以外,未來的人工智慧尤其是很複雜的人工智慧,也會受益於這種模式,讓我們的使用者體驗變得更好。

相關文章