想成為一名人工智能算法工程師?
前面的回答已經有很多大神解釋了是否要學好數學,那么小宅就來和大家分享菊廠一位無線算法工程師的故事吧,希望對大家了解算法工程師這個職業有所啟發。
有人說,“算法是無線通信的靈魂”,這話一點不假。回頭看無線算法20年來的征途,我們的“理想”并不是個虛無縹緲的東西,它滲透到了無線的每個角落,決定了芯片的每一步發展,影響了算法人的每一次抉擇……“三十歲之前,路總是很長,我們總是展望。三十而立,就再也不敢展望了,低頭趕路吧。” 這是王小波在《三十而立》中說的。但是,我在三十歲時聽到的話,跟它恰恰是相反的。2005年,三十歲的我,剛入職華為,進入3G算法項目組。同事告訴我,別顧著埋頭趕路,我們做無線算法的,是有理想的,要引領無線通信的變革。算法是什么?生活中的算法無處不在,當你按下電梯按鈕的時候,電梯運行的算法幫你最優化調度資源,縮短等待時間;當你駕車穿行于早晚高峰的時候,交通運行的算法根據變化的車流量實時調控紅綠燈,幫助車輛行人更有效地通行……無線算法也是如此,它通過一系列復雜的數學公式和指令解決無線通信中遇到的各種棘手問題,讓用戶可以隨時隨地享受高質量的語音、視頻、上網等體驗。據說算法剛起步的那幾年,團隊有一個預研部,很多人曾開玩笑說,他們做的不是預研,是預言,因為第一款商用芯片里的算法必將從這里誕生,將影響數以萬計的人。2002年的一天,能擔當大任的算法似乎出現了。外場測試傳來消息:一款“干擾對消算法”(IC)的樣機通過了測試,提升了50%的系統容量!理論上,如果實現了IC,就能通過消除噪聲達到讓運營商在同一頻段上多服務一倍用戶的效果,對于用戶來說,通話體驗也將大大得到提升。但是,這款樣機帶來的激動心情根本沒持續多久——性能提升了一倍,但復雜度卻提升了三倍,這種劃不來的做法,直接否定了它商用的可能。IC特性的復雜,讓它成為通信領域的人人都想吃,但人人不敢碰的香餑餑。算法組只能忍痛放棄這款樣機,轉身研究其他的特性。那個冬天寒冷異常,到2003年底,團隊成員已經從近30人,減少至不到10人。還在堅持的有從1999年就開始進行無線算法研發的元老級人物,李化加。2004年,團隊終于向公司爭取了部門公開招聘的機會,收到了至少500封簡歷。“要做最好的算法,就得最好的人才。”李化加親自篩選和面試,憑著一股寧缺毋濫的勁兒,抵住了人力緊缺的壓力,最終只留下了最想要的5個人。從這時候開始,整個算法組開始形成了一種心照不宣的學究氣質。李化加跟汪少波等人,像學校實驗室師兄師姐們一樣,投入大把時間對新員工們進行點對點的技術細節討論,包括如何研究、如何開展算法設計、如何進行文檔寫作,每篇分析文檔都是千錘百煉后才能同意歸檔,好多習慣都在那時候被奠定下來。2005年的我初來乍到,聽到前輩們的故事,雖未經歷始末,但硝煙四起之感叢生。這年年底,在一款芯片的算法設計即將被凍結的緊要關頭,李化加匆匆找到汪少波,說他在業界技術調研的時候,想到了一個以低復雜度實現IC特性的靈感。那時候,算法的特性都是要做到硬件里去的,也就是說,算法一旦設計完成,就無法再改動——不僅這一版的芯片要依照這個算法去生產,下一版的算法還要跟這一版的算法能配合運作。算法的路只能向前,不能回頭。可是IC特性能夠減少噪聲擴大容量,實實在在提升每個用戶的體驗,所以,即使算法的每一步都承擔巨大風險,即使這款芯片已經到了算法交付的最后環節,他們還是當機立斷,決定把IC這個特性加進去!“不做IC,這款芯片頂多是性能上的優勢,而性能優勢是很容易被超越的。做IC,我們就實現了友商還實現不了的特性,這是算法的競爭力。”汪少波的這句話,在三年后的沃達豐比拼上,得到了印證。在那場業界關注的技術比拼上,這款芯片的迭代版本,為華為拿到了第一名。CCPIC(控制信道并行干擾對消)這個名稱,由李化加和汪少波開創,到后來成為了華為的專用術語。“殺敵一千,自損一千二”的理論漩渦每個人的一生,總會有自己的“關鍵時刻”。對我而言,那就是2007年。這一年,中國移動決定在珠峰海拔5200米、6500米處采用華為設備建設移動通信基站;這一年,我被任命為第一版商用IC算法的設計人。帶著初生牛犢不怕虎的沖勁,我們設計出了新的IC版本。然而,在推導的過程中卻出現了一個奇怪的現象,就是在消除干擾信號的過程中,也損傷了信息本身有用的信號。就像消滅敵人的時候,自己人也受了傷。如果消滅的敵人大大超過自己人,問題不大。可萬一出現“殺敵一千,自損一千二”的情況呢?這正是算法區別于其他專業的地方,即使是一個小小的理論假設,我們也無法視而不見,或者暫時擱置,因為誰也說不準,現在的理論假設,是否會成為最后壓垮整個算法設計的致命稻草。可是,業界友商沒有實現IC的先例,學界論文也沒有這個問題的相關描述——我很清楚,可能要做第一個吃螃蟹的人了。攻關組馬上成立,除了“苦思冥想,連續作戰”,沒有捷徑。探討、推導、測試、驗證,循環往復。在接下來兩個月時間里,我們從什么是信號、什么是噪聲這些最基本的概念出發,一點點摳細節,探尋問題的本質。那些攻關的晚上,我經常做一個夢,在夢里我自己變成了信號,和干擾信號大戰三百回合。每每醒來,渾身是汗。鉆得深了,我才得以留意到以前沒有注意過的運算細節——我們的算法里引入了一個特殊項,既包括信號,也包含噪聲,這就是為什么在消除噪聲的同時,信號也有損傷的原因。找到關鍵突破點后,我們經過準確的運算分析,得出了一個意外結論——“殺敵一千,自損一千二”只是理論推測,真實場景根本不會發生。揭開這個苦苦追尋的答案,壓在我們胸口幾個月的大石終于卸了下來。理論漩渦的平息,也讓我們吃了一顆定心丸。一顆“螺絲釘”扭轉乾坤理論問題得到了解決,算法設計也順利進入收尾階段。然而,測試結果卻猶如晴天霹靂:性能提升的效果極其不穩定,對用戶的影響就是一會兒信號好,一會兒信號差。這種情況真是稱得上“血案”級別,別說做業界最好算法的雄心,連商用的信心都快沒有了。而且,目前這個階段不可能對芯片本身進行任何改動,唯一能接受的只能是修改可編程部分。就好比臨近交房,設計師對房子圖紙不滿意,想重新改造,打破一面墻,再造一個門,可是急于入住的房主能接受的,只是挪動一個螺絲釘。下班時,只有路燈在等著我。它們有的昏暗無光,有的明亮異常,有時把我的影子拉得很偉岸,有時甚至讓我找不到自己的影子。做算法,孤獨的時刻有很多,但從來沒有一次像那天一樣強烈。那段時間,定位組、開發組、測試組、攻關組的同事成天混在一起,每天早出晚歸。當時每排除一個疑點,項目經理都激動地請大家吃飯,后來有人都忍不住說,“還是搞定了一起請吧,不然要把你吃的傾家蕩產了……”四個月的時間,上千次的測試仿真,日日夜夜的歸納推演,我們終于找到揪住了“嫌犯”:定點過程中的不當截位。通常的截位應該采用四舍五入方式,而我們為了實現方便,采用了直接丟棄的方式,相當于“九舍無入”。通常“九舍無入”都沒有大問題,但當多個芯片合并時,舍入誤差被急速放大了,正是這個“小”誤差,釀成了這次的大錯誤。當時,入職僅兩年的朱有團靈機一動,提出了一個“負數加1”的方案——只對數值的最后一個比特進行更改,就達到了“四舍五入”的效果,用非常小的代價解決了這個非常棘手的問題。本來要砸墻的房子,真的靠旋轉了一顆螺絲釘就扭轉了乾坤!朱博也由此一戰成名,還榮獲了當年公司級的金牌個人。后來我們才知道,原來友商也一直在尋求IC的商用化模式,只是沒有做出有效的算法,于是走了另外一條降低干擾的路徑。在沃達豐的現場比拼中,技術分值華為第一,不得不說,IC算法確實是助力登上寶座的最大利器。IC商用化的傳奇就此開啟,華為基站的接收能力再未遇過來自友商的實質挑戰。送上門的真經,我們沒有要
2009年,我們急切地把視線拓展出去,以期尋找新的突破。巧的是,友商Q基于產業發展的考慮,主動與華為無線達成戰略合作意向,向華為分享他們掌握的IC技術。擁有豐富的IC運營經驗,保持CDMA系統最重要的基本專利,連世界公認的算法巨匠都曾供職于此,友商Q理所應當是我們膜拜的“佛祖”。同事們都戲稱,這簡直是一次千載難逢的“西天送經”。果然,它的算法設計能力帶給我們的震撼是巨大的。其中最令人稱奇的是,他們可以通過對消歷史信息來提升性能。這種設計,不僅是我們從來沒有過的算法思維,也更達到了我們從未達到過的卓越性能。不用苦苦搜尋,無需反復求證,我們只要在這個基礎上稍做優化,就會得到日思夜想的算法“真經”!我興奮異常,其他小伙伴們也難掩激動之情。然而,伴隨著交流的深入,我們卻發現了這種算法的“阿喀琉斯之踵”:為了擁有足夠多的歷史信息,這種算法要將每個用戶的重傳率設得比較大。容量固然可以提升,但時延也會變長,給用戶的感知就是增加了等待時間。一邊是卓越的性能增益,這是算法人夢寐以求的目標;一邊是提升用戶的體驗,這是算法最樸素也最深刻的奧義。每個人的心中好像出現了一座天平,到底要往哪邊傾? 大家都猶豫了。“不能為了一張好看的成績單,讓用戶的體驗受損。”討論會上,黃心曄的一句話擲地有聲。上上下下一致同意,我們要舍棄跟進友商的算法設計。“佛祖”送上門的真經,被我們拒絕了。不過,他們的思維方法卻極大地激發了我們的靈感。在信息的傳送過程中,既有傳送成功的信息,也有傳送失敗的信息,友商沒有對后者進行快速對消,我們是不是可以補上這個空缺?為確保方案的有效性,我們在仿真平臺上全方位對比了我們和友商Q的方案,結果表明,設定短時延下,我們的算法優于友商,設定長時延下,與友商基本相當。為了萬無一失,我們累計梳理了50多個可能的影響因素,并在樣機項目中逐一排除其影響。最終這個特性順利交付,實驗室測試的結果不負眾望,40%以上的增益實實在在地呈現在面前。自掘三尺地,新一輪自虐行動4G商用加速發展,3G新版芯片如何推出新的算法特性?不破不立,我們準備先自掘三尺地,從版本的現有問題中,嘗試挖掘金礦。有人開著車沿著測試外場不停轉圈測業務數據,有人縮在實驗室里一遍遍分析性能曲線,還有人抽絲剝繭梳理方案和應用場景,終于找到了IC算法新的增長點。原版本的設計有一個“毫不利己,專門利人”的特點——控制信道給其他信道提供增益,自己卻不能享受增益,這其實阻礙了整體性能的提升。既然如此,我們能不能把它變成“利人又利己”呢?問題找到了,但給出解決方案更非易事。李**、楊**等團隊的“最強大腦”們,立馬成立幾個小分隊,多方向地嘗試思考。有人提出改變現有的并行處理方式,而讓多個用戶串在一起,前一個用戶對消掉的干擾,可以提升下一個用戶的性能,間接實現“利己”。理論驗證這個辦法確實有效,但操作起來工作量太大,不適合全面施展。這個角度的思考倒打開了我們的思路,我們決定嘗試在現有方案上增加一次并行處理,迂回地解決“利人又利已”的難題。當然,這絕非是描述的這么簡單,大量的配套方案和針對性改進才是真正的“幕后英雄”。還能不能再往前走一步?當目前方案已經獲得驗證之后,我們展開了新一輪的“自虐行動”。受友商Q思路的啟發,我們有了新的想法:如果能在信息還未出發之前,預測它將會帶上哪些“行李”,對消掉不必要的東西,就能給旅途減負。把這種思路和并行方案嫁接起來,新的方案呼之欲出了!整整兩年內,從毫無頭緒到漸露曙光,從單點試探到全面開花,我們發揮想象,給出了絢爛的算法方案。干擾對消算法最終浴火重生,在本以為到達巔峰的情況下,又提升了15%的系統容量。攀登不止,初心依舊從初創小團隊的摸索,到與瑞研專家的合作,再到現在與法國、俄羅斯、德國、美國等至少7個國家的聯動……歷經近20年的光陰,算法團隊經歷了從純粹國產、中外協作、到全球深度融合的成熟之路。全球智慧、理論大家和實踐能手的無敵組合,讓我們對5G算法的研發充滿了信心。我一直很喜歡孔子說的“知不可為而為之”這句話。對于算法人而言,這句話的意義便是,做事不問可不可能,但問應不應該。別人能做到,我們應該也能做到。別人做不到的,我們應該搶先做到。我們已經做到的,還應該要做到更好。一首小詩和所有的算法人共勉:我不是思想家,我引領無線通信變革。我不是指揮家,軟硬件系統因我而協奏。我不是發動機,我驅動無線核心競爭力。我是數學公式,更是理論與工程的完美統一。你們看不到我,但我在你身邊。我是算法,無線通信的靈魂。“我們做無線算法的,是有理想的”,三十歲那年聽到的話,似乎又在耳畔響起。《華為人》版權所有,請勿轉載上一篇取反指令用法
下一篇對于行業內的龍頭企業來說