久久99精品欧美一级,欧美精品V国产不卡在线观看,日韩精品亚洲专区第一页,亚洲稚嫩视频在线

  • <sup id="b4a6x"></sup>
    <sub id="b4a6x"></sub>
    1. 河南考試信息網(wǎng),全網(wǎng)考試資訊一網(wǎng)打盡!

      網(wǎng)站地圖 聯(lián)系我們

      河南考試信息網(wǎng)

      有什么問題請留言

      我們將及時回復(fù)您!

      當(dāng)前位置: 首頁 > 職業(yè)資格 > 考試介紹

      淺談算法工程師的職業(yè)定位與發(fā)展

      時間:2021-12-01 08:57作者:河南考試信息網(wǎng)來源:河南考試信息網(wǎng) 分享文章:
      本文發(fā)布時間是2021年12月01日08點57分,當(dāng)前時間是,請注意辨別時效性!下面就一起來看下河南考試信息網(wǎng)為您介紹的關(guān)于【淺談算法工程師的職業(yè)定位與發(fā)展】的相關(guān)問題,希望對您有所幫助!

      讀史使人明智,讀詩使人靈秀,數(shù)學(xué)使人周密,自然哲學(xué)使人精邃,倫理學(xué)使人莊重,邏輯學(xué)使人善辯。——培根
      淺談算法工程師的職業(yè)定位與發(fā)展

      隨著大數(shù)據(jù)和以深度學(xué)習(xí)為代表的人工智能技術(shù)的飛速發(fā)展,算法工程師這個職業(yè)逐漸成為國內(nèi)互聯(lián)網(wǎng)行業(yè)的標配。2016年3月,谷歌旗下DeepMind公司的圍棋程序“AlphaGo”戰(zhàn)勝職業(yè)九段棋手李世石。這場著名的科技秀把人工智能的熱潮從學(xué)術(shù)界席卷到工業(yè)界、新聞媒體和廣大群眾。

      外行人眼中的算法工程師是高收入和高科技的職業(yè);而新入行的人往往覺得算法工程師門檻低導(dǎo)致內(nèi)卷化(人才飽和導(dǎo)致過度競爭)。隨著算法相關(guān)的工具越來越成熟,很多算法工程師自嘲為調(diào)包俠、調(diào)參俠,于是也開始有人唱衰這個職業(yè)。

      本人作為有一些算法研究和實踐經(jīng)驗的過來人,想分享一些自己在企業(yè)做算法工作的心得,順便為想入行做算法以及剛從事算法工作的朋友提供一些參考。本文的觀點基于個人的工作經(jīng)驗和理解,如有不對的地方歡迎指正。

      本文接下來的內(nèi)容分為六個部分:

      1. 什么是算法

      2. 算法的應(yīng)用場景

      3. 算法技術(shù)介紹

      4. 算法工程師的職業(yè)定位

      5. 算法工程師的職業(yè)發(fā)展

      6. 總結(jié)

      1. 什么是算法

      提到算法,有人可能會聯(lián)想到人工智能。個人覺得人工智能是個非常大的概念(很多算法技術(shù)似乎都可以歸類到人工智能),所以為了使敘述更清晰和聚焦,本文會避免用“人工智能”這樣的術(shù)語,而是盡量用更精確的詞匯來描述算法相關(guān)的技術(shù)。

      狹義地看,算法是用計算機程序求解 計算問題的方法。定義一個計算問題有兩個要素:輸入和輸出。

      例(素數(shù)判定問題):給定一個整數(shù),判斷它是否為素數(shù)(素數(shù)是只能被1和自身整除且大于1的整數(shù))。

      以素數(shù)判定問題為例,它的輸入是一個整數(shù),輸出是一個布爾值:“是”或“否”。求解素數(shù)判定問題的算法是一個滿足上述輸入和輸出條件的計算機程序。

      在實際應(yīng)用中,首先要明確算法需要解決的具體問題,以及對應(yīng)的輸入和輸出,然后才是設(shè)計與實現(xiàn)算法。我們可以把一個算法理解成一個滿足輸入與輸出要求的硬件裝置或軟件模塊。從這個角度來看,算法工程師與軟件、硬件工程師的工作是相似的:實現(xiàn)滿足輸入與輸出要求的算法(軟件、硬件)模塊。

      算法工程師的工作目標是實現(xiàn)“又快又好”的算法。具體來說,需要關(guān)注兩個要素:

      解的質(zhì)量算法輸出的結(jié)果稱為“解”。它的解是否“正確”或者說有多好?

      解的效率算法的計算時間有多長?

      更多關(guān)于算法的介紹可以參考經(jīng)典教材《Introduction to Algorithms》(中文:算法導(dǎo)論),作者:T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein。

      前面介紹了算法的基本概念,接下來我們看看算法在商業(yè)中的應(yīng)用價值。

      2. 算法的應(yīng)用場景

      算法產(chǎn)生商業(yè)價值有兩個思路:

      產(chǎn)品研發(fā) 算法本身是商業(yè)產(chǎn)品的一個核心模塊。例如,“詞典筆”可以直接“掃一掃”書本上的文字就能實現(xiàn)單詞或句子的查詢和翻譯功能。

      與傳統(tǒng)的詞典相比,它不僅提供了更方便的查詢方式,而且體積小巧、方便攜帶。為了實現(xiàn)這樣的產(chǎn)品功能,背后的一個核心算法是文本圖像識別(稱為OCR技術(shù))。它解決的算法問題是這樣的:輸入一張文本照片,輸出照片中的文本內(nèi)容。我們不難發(fā)現(xiàn),決定這個產(chǎn)品體驗好壞的關(guān)鍵因素之一就是文本識別的準確率。

      降低業(yè)務(wù)的復(fù)雜性 當(dāng)企業(yè)的規(guī)模增大,業(yè)務(wù)必然會變得越來越復(fù)雜。這個時候可能會導(dǎo)致兩種問題:

      組織運轉(zhuǎn)效率降低,典型的表現(xiàn)就是人力成本高、協(xié)作困難、決策流程冗長;

      各業(yè)務(wù)節(jié)點之前存在依賴關(guān)系,導(dǎo)致需要決策的“變量”太多以及決策“空間”太大。

      由于任何一種決策結(jié)果都會帶來顯著的成本,因此尋求低成本高收益的決策變得非常困難。在這樣的背景下,只有把復(fù)雜的業(yè)務(wù)抽象成一個個高內(nèi)聚、低耦合的模塊,然后用算法代替人工決策,才能達到降低成本、提高效率的目的。

      接下來我們從三個角度介紹一些算法的商業(yè)應(yīng)用:

      自動化解決重復(fù)勞動。

      車牌識別汽車進入單位、小區(qū)、上高速、停車等日常場景,管理人員一般都需要記錄車牌號以及出入場地時間。有了車牌識別技術(shù),在這些場景下軟件系統(tǒng)可以代替人工,精準地記錄車輛號牌和出入場時間。

      人臉識別人臉識別技術(shù)為金融和安防領(lǐng)域提供了廉價、準確且高效的身份核驗?zāi)芰?。以安檢為例,以往身份核驗流程是首先由被檢人提供證件,之后檢查官做人證對比,最后在后臺查詢被檢人的犯罪記錄。整個過程既費人又費時。有了人臉識別技術(shù),被檢人只要面對攝像頭,系統(tǒng)就可以在1秒內(nèi)完成身份核驗。

      紙箱推薦在網(wǎng)絡(luò)購物中,商品發(fā)貨時一般需要被裝入紙箱。而紙箱的大小對用戶體驗和成本有著直接的影響。如果選擇更大的紙箱,對工人來說裝箱比較容易,但是成本高而且容易造成商品損壞;選擇稍小的紙箱,對工人來說裝箱耗時更長,會降低工作效率。

      基于選擇紙箱這個頻繁操作的場景,我們設(shè)計了一套裝箱算法,為打包工人推薦最合適的紙箱,不僅節(jié)省了裝箱成本而且提升了用戶體驗。

      個性化解決用戶需求。

      內(nèi)容推薦基于人的瀏覽行為與“內(nèi)容”進行匹配,其中內(nèi)容包括文章、商品、廣告等,素材形式有文本、圖片、語音和視頻。好的推薦算法可以讓用戶在APP中看到更多自己感興趣的內(nèi)容,就會沉迷其中難以自拔。

      換句話會說,用戶在APP上停留的時間越長,APP就可以把更多的廣告呈現(xiàn)在用戶面前,于是賺取更多的廣告費。

      地圖導(dǎo)航生活中出差、旅行、接人、上班等場景大概率需要用到地圖導(dǎo)航。輸入出發(fā)地、目的地、交通方式等信息,背后的路徑規(guī)劃算法會根據(jù)地理信息自動幫我們規(guī)劃出一條路徑,甚至能避開擁堵和限行。

      由于出行是人們的剛需,因此地圖導(dǎo)航是人們的必需品。它的商業(yè)價值不僅體現(xiàn)在廣告的觸達能力,更重要的是可以直接獲取珍貴的“線下”數(shù)據(jù)(出行數(shù)據(jù)),從而為其它的商業(yè)決策提供有價值的輸入,例如商業(yè)選址、餐館和景點的推薦等。

      客服機器人在電商業(yè)務(wù)中,客服需要回答用戶的售前和售后提問,例如商品、活動、物流、保修等各種咨詢。尤其是在大促期間,常常會出現(xiàn)用戶咨詢量過大導(dǎo)致等待時間長的問題。

      我們通過知識圖譜技術(shù)構(gòu)建商品和物流相關(guān)的知識庫,然后把用戶經(jīng)常咨詢的問題進行分類,基于自然語言處理的技術(shù)對用戶的提問進行解析和回答,從而在一定程度上提升用戶體驗并降低客服成本。

      系統(tǒng)化解決復(fù)雜問題。

      客服排班給客服安排上班的班次。當(dāng)客服人數(shù)多達百人時,這個問題往往變得非常棘手。原因是現(xiàn)實中考慮的約束條件非常多,例如:

      每個班次的客服人數(shù)不能低于指定的數(shù)量;

      一個客服每個月必須休息8天,至少保證每月一次2天連休;

      客服安排晚班之后,第二天不能上早班(因為需要休息);

      一天同一個人只能安排一個班次;

      每個人的晚班天數(shù)差異盡可能??;

      當(dāng)客服規(guī)模達到一定數(shù)量時,這個問題的復(fù)雜程度顯然出過了人的經(jīng)驗?zāi)芰?。我們因此研發(fā)了一套排班算法來解決上述問題。

      庫存調(diào)度用戶在網(wǎng)上下單之后,商品一般會從用戶所在區(qū)域的倉庫發(fā)貨,稱為本地發(fā)貨。由于不同客戶購買的商品和數(shù)量可能不同,因此單個倉庫的商品可能會發(fā)生供需不均的情況。

      我們需要對全國各倉庫之間的商品進行調(diào)撥,目標是提高倉庫的本地發(fā)貨率。這樣一來不僅能節(jié)約配送成本,而且能提高配送時效。

      庫存調(diào)度要解決如下問題:

      哪些商品需要調(diào)度?

      從哪調(diào)到哪?

      調(diào)撥量如何計算?

      安排幾輛貨車?

      實際中需要考慮的限制因素也非常多:

      箱規(guī):按整箱調(diào)撥;

      調(diào)撥限制:有些商品在只能調(diào)撥到特定倉庫;

      倉庫產(chǎn)能:倉庫每日可調(diào)撥的件數(shù)有限;

      貨車容量:貨車的長寬高有尺寸限制;

      大促和平銷的目標:平銷控成本,大促控本地缺貨;

      我們自研了一套調(diào)撥系統(tǒng),可支持日均10萬商品的調(diào)撥計劃自動生成。試想一下,如果這背后沒有算法的支持,我們的人力成本、溝通協(xié)作成本以及軟件成本將會隨著業(yè)務(wù)的發(fā)展呈指數(shù)增長。

      用戶觸達隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,商家觸達用戶變得越來越容易。常見的線上觸達方式有APP內(nèi)的消息推送、短信和在線廣告。在這樣的背景下,商家觸達用戶需要從全局的角度來考慮,否則不僅浪費成本而且可能帶來極差的用戶體驗。

      例如:一個用戶可能在同一天內(nèi)被短信、消息推送和廣告彈窗的騷擾,從而引起用戶對商家的反感。因此,我們觸達用戶時需要對四個要素做決策:觸達人群、觸達時機、觸達方式和觸達內(nèi)容。

      由于不同的觸達方式對應(yīng)不同的成本與收益,我們自研的這套全渠道觸達決策系統(tǒng)不但可以從全局優(yōu)化“投入產(chǎn)出比”,還能為被觸達用戶提供個性化的文案和紅包等權(quán)益。這背后的算法系統(tǒng)除了要考慮商業(yè)價值和用戶體驗,還要考慮如何在現(xiàn)有業(yè)務(wù)中以低成本、低風(fēng)險的方式進行落地。

      通過前文介紹的案例,我們可以看到算法既能作為商業(yè)產(chǎn)品的核心模塊輸出價值,也能簡化業(yè)務(wù)、降本提效,從而讓業(yè)務(wù)更快更好地發(fā)展。值得注意的是,算法是一個寬廣的技術(shù)領(lǐng)域,涉及的技術(shù)方向較多。下面我們列舉一些常見的算法技術(shù)。

      3. 算法技術(shù)介紹

      本節(jié)介紹的算法技術(shù)(或方向)僅限拋磚引玉,不宣稱公認的分類,也談不上深刻的理解。技術(shù)方向之間或多或少有重疊,也無法涵蓋所有算法方向。之所以列出這些方向,要么出于本人在工作中發(fā)現(xiàn)了它的應(yīng)用價值,要么源自于本人的興趣。

      算法理論

      這里提到的算法理論實際上是指算法相關(guān)的基礎(chǔ)知識,主要分為兩塊:1. 數(shù)據(jù)結(jié)構(gòu);2. 算法設(shè)計與分析。數(shù)據(jù)結(jié)構(gòu)是算法的基石,掌握必要的數(shù)據(jù)結(jié)構(gòu)才有可能去實現(xiàn)一個算法。前文提到算法工程師還關(guān)心解的質(zhì)量和效率,而算法設(shè)計與分析的理論可以有效地指導(dǎo)我們?nèi)绾巫鲞@件事。

      在實際工作中,或許90%以上的項目都可以使用現(xiàn)有的算法工具求解,而不需要我們親自設(shè)計算法。但是一旦遇到真正棘手的問題,它需要我們有能力應(yīng)對,這也是算法工程師的價值所在。

      我們曾經(jīng)做包材推薦項目時需要求解一個三維裝箱問題。根據(jù)算法理論,三維裝箱問題是一個 NP-難 問題。這意味著(在NP不等于P的假設(shè)下),它不存在“又快又好”的算法(即,多項式時間的精確算法)。于是我們設(shè)計算法方案的時候分兩部分考慮:

      當(dāng)問題規(guī)模較小時采用精確算法;

      當(dāng)問題規(guī)模較大時采用啟發(fā)式算法。

      在求解小規(guī)模三維裝箱問題時,我們對計算效率有較高要求。當(dāng)時開源的求解器不能滿足我們的需求,因此我們決定自研一套算法。這個時候就要求我們對算法設(shè)計的方法有一定了解。在項目中,我們用到了 規(guī)約(Reduction)的技巧,把一個三維裝箱問題轉(zhuǎn)化成 圖(Graph)上的搜索問題,然后利用圖相關(guān)的數(shù)據(jù)結(jié)構(gòu)簡化三維裝箱操作。

      概率統(tǒng)計

      數(shù)據(jù)往往是企業(yè)的寶貴資產(chǎn),因為它不僅可以為商業(yè)決策提供依據(jù),還是業(yè)務(wù)的護城河。數(shù)據(jù)之所以會有價值,還依賴于正確的數(shù)據(jù)加工和使用方法。而概率統(tǒng)計提供了描述數(shù)據(jù)規(guī)律的方法,利用數(shù)據(jù)的規(guī)律,使得我們可以預(yù)判未來的趨勢、提高決策效率、降低決策成本。

      雖然這是個大數(shù)據(jù)時代,但不意味著我們想要的數(shù)據(jù)應(yīng)有盡有。在實際項目中,我們常常面臨樣本量不足的問題。以銷量預(yù)測為例,假設(shè)我們要預(yù)測每個商品在 “雙十一”期間的銷量。這個時候我們發(fā)現(xiàn)一共才搞過四次雙十一活動。換句話說,每個商品關(guān)于歷史雙十一的銷量最多只有四個樣本點。如果簡單地擬合這個規(guī)律,在實際中容易出現(xiàn)過擬合的問題,即導(dǎo)致預(yù)測值與真實值偏差很大。

      在這種情況下,我們可以考慮結(jié)合主觀經(jīng)驗與客觀事實。例如,假設(shè)雙十一的銷量與平銷的差異服從某個規(guī)律,然后借助歷史上幾次雙十一的銷售數(shù)據(jù)來修正這個規(guī)律。這套方法在統(tǒng)計上稱為貝葉斯估計(Bayesian Estimation):主觀經(jīng)驗得到的規(guī)律稱為 先驗分布,利用客觀事實修正后得到的規(guī)律稱為 后驗分布。貝葉斯估計提供了一套主觀經(jīng)驗與客觀事實結(jié)合的方法,能有效地彌補實際情況下樣本量不足的問題。

      機器學(xué)習(xí)

      網(wǎng)絡(luò)上每天生產(chǎn)著海量的文本、圖片、語音和視頻信息,它們也是企業(yè)珍貴的數(shù)據(jù)資產(chǎn),有著巨大的商業(yè)價值。那么如何用算法對這些信息進行分類、理解以及分發(fā)?

      深度學(xué)習(xí)普及之前,業(yè)界主流仍然是采用基于統(tǒng)計的方法處理這些數(shù)據(jù),即,利用概率分布函數(shù)來表示數(shù)據(jù)的規(guī)律。注意到數(shù)字媒體這一類數(shù)據(jù)的維度非常高,例如,一張手機照片的像素點就高達千萬,好處是它能表達的內(nèi)容非常豐富。但是從算法的角度來看,這一類高維數(shù)據(jù)非常難以處理,因為已知的概率分布函數(shù)難以表達這種規(guī)律,即使這些規(guī)律在人看來很簡單。以文本識別為例,人可以快速識別出照片中的文字,但是我們很難找到一個函數(shù)把圖片上的像素值和它表達的文字關(guān)聯(lián)起來。

      而深度學(xué)習(xí)提供了一種“逼近”這種復(fù)雜函數(shù)的方法。它通過定義“元函數(shù)”(稱為激活函數(shù))和仿射變換,然后利用海量的數(shù)據(jù)來擬合出這種復(fù)雜的函數(shù)關(guān)系(這個步驟稱為“訓(xùn)練”),從而可以表達“樣本”與“標簽”之間的聯(lián)系。

      例如,通過輸入大量包含水果的照片“訓(xùn)練”一個深度學(xué)習(xí)模型,從而讓計算機有能力識別照片中的水果。這背后并不是數(shù)據(jù)讓計算機有了真正的智能,而是它把照片的像素值作為算法模型的輸入,用類似于最小二乘回歸的方法擬合出了一個復(fù)雜的函數(shù),把像素值與“水果”之間的規(guī)律表達出來。

      深度學(xué)習(xí)這種自動化的擬合能力使它可以在海量數(shù)據(jù)中學(xué)習(xí)數(shù)據(jù)與標簽之間的聯(lián)系,因而非常適合用來解決分類問題,例如人臉識別、圖像分割、語音識別、機器翻譯等。隨著機器學(xué)習(xí)工具和相關(guān)計算硬件(GPU、TPU、FPGA等)的發(fā)展成熟,機器學(xué)習(xí)應(yīng)用的門檻進一步降低,模型的訓(xùn)練和部署已經(jīng)變得非常便捷。我們有理由相信,未來有只要數(shù)據(jù)的地方就有機器學(xué)習(xí)算法創(chuàng)造價值的機會。

      建模與優(yōu)化

      數(shù)學(xué)建模是一種把復(fù)雜問題抽象化的技術(shù),它用數(shù)學(xué)語言描述現(xiàn)實世界的問題,使得我們可以用系統(tǒng)的方法對它求解和分析。而優(yōu)化方法可以看作是求解數(shù)學(xué)模型的工具,例如前文提到的深度學(xué)習(xí)技術(shù),本質(zhì)上是用梯度下降的方法解一個優(yōu)化問題。

      在企業(yè)經(jīng)營中,利潤和成本結(jié)構(gòu)往往是非常復(fù)雜的。以網(wǎng)易嚴選的電商業(yè)務(wù)為例,我們的業(yè)務(wù)鏈路包含商品研發(fā)、采購、倉儲、質(zhì)檢、配送、營銷、渠道和售后。業(yè)務(wù)節(jié)點之間的成本(或利潤)可能同時存在依賴和沖突的關(guān)系,因此各節(jié)點做好自己的業(yè)務(wù)不一定意味著整體業(yè)務(wù)會好。

      如何站在全局的角度來思考并解決業(yè)務(wù)中的復(fù)雜問題?需要分三步:

      充分理解業(yè)務(wù);

      把業(yè)務(wù)問題抽象化;

      用數(shù)學(xué)語言表達然后求解。

      構(gòu)建數(shù)學(xué)模型可以使用一套標準方法,即梳理數(shù)學(xué)模型的四要素:參數(shù)、變量、目標和約束,其中參數(shù)是指問題的輸入。

      以數(shù)獨游戲(Sudoku)為例,把數(shù)字1-9填入下圖的空格子中。

      填入的數(shù)字必須滿足三個條件:

      每個區(qū)塊包含數(shù)字1-9;

      (圖中灰色方框包含的3×3小格子代表一個區(qū)塊)

      每行包含數(shù)字1-9;

      每列包含數(shù)字1-9。

      問題的 輸入?yún)?shù) 是圖中給定的數(shù)字;變量 是空白處需要填入的數(shù)字;約束 是上述三個條件。這個問題沒有優(yōu)化目標。這樣一來,我們可以得到求解數(shù)獨問題的數(shù)學(xué)模型:

      利用通用的求解工具求解這個數(shù)學(xué)模型,即可得到數(shù)獨問題的解。

      我們研發(fā)的決策產(chǎn)品, 例如庫存平衡系統(tǒng)、自動補貨系統(tǒng)、排班系統(tǒng)和全渠道觸達系統(tǒng),都是以抽象的數(shù)學(xué)模型為基礎(chǔ),并持續(xù)地迭代模型和算法。這些算法產(chǎn)品在提升業(yè)務(wù)目標的同時,推動業(yè)務(wù)沿著低復(fù)雜性的方向發(fā)展。

      個性化技術(shù)

      在電商業(yè)務(wù)中,一個殺手級的功能是可以為用戶帶來個性化的購物體驗(俗稱“千人千面”),因而使得網(wǎng)絡(luò)購物比線下購物更高效。個性化技術(shù)的典型代表是內(nèi)容推薦技術(shù),在電商業(yè)務(wù)中,推薦的內(nèi)容以商品為主。

      為了實現(xiàn)更精準的推薦,技術(shù)層面要不僅要參考商品和用戶的特征,甚至還需要考慮營銷活動、庫存、用戶體驗等因素。這背后可能還需要圖像處理、音視頻處理和自然語言處理等技術(shù)的協(xié)同。

      以生成商品頁面為例,一般它包含了賣點文案、圖片和視頻介紹。為了給用戶呈現(xiàn)個性化的文案、圖片和視頻風(fēng)格,從而刺激用戶下單,我們用自然語言處理技術(shù)抽取商品信息并生成賣點文案,用圖像生成技術(shù)制作不同風(fēng)格的商品圖片。

      通過算法挖掘商品評論,我們可以自動化地提取商品賣點并呈現(xiàn)給用戶,促進用戶下單;對差評原因分類,從而改進商品和提升購物體驗;通過建立商品知識圖譜,用對話生成的技術(shù)回答用戶的售前和售后提問,從而提升用戶體驗并降低客服成本。

      回顧前文提到的深度學(xué)習(xí)技術(shù),它的成功離不開它在圖像、音視頻和自然語言領(lǐng)域的突破。而個性化技術(shù)本質(zhì)上也是在海量非結(jié)構(gòu)化數(shù)據(jù)中擬合人與內(nèi)容的聯(lián)系。因此,應(yīng)用深度學(xué)習(xí)技術(shù)可以有效地實現(xiàn)多種場景下的個性化能力,例如猜你喜歡、新品推薦、個性化文案等。

      更多的技術(shù)

      前文提到的算法技術(shù)只是工業(yè)應(yīng)用中的冰山一角。還有非常多不同的算法在工業(yè)界中大放異彩,例如計算機圖形學(xué)用于動畫、游戲和工業(yè)設(shè)計中的三維建模,有限元分析用于建筑和橋梁設(shè)計,同步定位與地圖構(gòu)建技術(shù)(SLAM)用于機器人和自動駕駛等等。

      世界在變化,用戶需求在變化,因而企業(yè)面對的問題也在不斷變化。技術(shù)人員應(yīng)該意識到?jīng)]有哪門技術(shù)能解決所有問題,而技術(shù)交叉越來越普遍,因此我們需要保持技術(shù)嗅覺和好奇心,堅持學(xué)習(xí),然后用適合的技術(shù)解決問題。

      4. 職業(yè)定位

      前文介紹了一些算法技術(shù),但實際上并沒有在技術(shù)細節(jié)層面展開,而是始終圍繞技術(shù)在商業(yè)中的應(yīng)用價值,目的是想強調(diào)兩點:一是在企業(yè)中技術(shù)必須創(chuàng)造商業(yè)價值,這樣才能讓企業(yè)在競爭中領(lǐng)先,同時促進行業(yè)的進步;二是算法工程師的職責(zé)以“應(yīng)用”算法為主,不能脫離業(yè)務(wù)。

      我把算法工程師分為三種類型(我承認可能過于狹隘,畢竟某些企業(yè)還存在學(xué)術(shù)型的算法人才):

      產(chǎn)品研發(fā)型

      為產(chǎn)品研發(fā)提供技術(shù)支持。這種情況下,算法一般是商業(yè)產(chǎn)品的一個模塊。例如:詞典筆的文本識別功能、汽車的自動駕駛系統(tǒng)、電商APP的搜索功能等。

      產(chǎn)品研發(fā)型的算法工程師主要關(guān)心產(chǎn)品的技術(shù)實現(xiàn),用算法技術(shù)為用戶提供極致的體驗。這種情況下,只要產(chǎn)品賣得好,算法的價值就能充分體現(xiàn)。因此,產(chǎn)品研發(fā)型的算法工程師一般出現(xiàn)在商業(yè)模式比較清晰的業(yè)務(wù)(例如賣產(chǎn)品、賣廣告)。

      業(yè)務(wù)優(yōu)化型

      當(dāng)業(yè)務(wù)發(fā)展到一定階段可能會面臨兩種局面:一是規(guī)模太大,例如用戶數(shù)、員工數(shù)、設(shè)備數(shù)、產(chǎn)品數(shù)等非常龐大;二是業(yè)務(wù)復(fù)雜,業(yè)務(wù)節(jié)點之間依賴與競爭并存,導(dǎo)致成本和利潤構(gòu)成復(fù)雜。這樣會造成業(yè)務(wù)的運轉(zhuǎn)效率降低,企業(yè)成本增加。

      在這樣的背景下,算法工程師需要為企業(yè)降本提效。例如:

      實現(xiàn)業(yè)務(wù)節(jié)點的自動化;

      做精細化的決策;

      業(yè)務(wù)建模與流程仿真。

      以零售中的補貨為例,庫存量的多少直接影響到企業(yè)的成本和利潤。一般來說,從下采購單到貨品入庫需要制造和運輸時間(稱為提前期,短則數(shù)周長則數(shù)月),因此商家需要預(yù)估未來一段時間的銷售量,依此計算采購量。由于預(yù)測不可能精準,所以會導(dǎo)致計算的采購量與實際需求有偏差。采購多了不僅占用資金而且會增大庫存積壓的風(fēng)險;采購少了就會造成缺貨,從而損失銷售利潤。因此,采購量的計算模型直接影響到商家的成本和利潤。

      類似這樣的決策問題在零售業(yè)中比比皆是,算法工程師需要建立符合業(yè)務(wù)的數(shù)學(xué)模型,用科學(xué)的方法為企業(yè)做出最優(yōu)決策。

      業(yè)務(wù)優(yōu)化型算法工程師的價值在于創(chuàng)造“增量”價值,即帶來成本的節(jié)約、效率的提升或利潤的增加。在日常工作中,我們需要評估算法項目帶來的增量價值,避免把過多的精力放在價值不高的事情上。

      需求洞察型

      技術(shù)研發(fā)最難的地方有時候不是解決問題,而是發(fā)現(xiàn)問題。比如復(fù)盤業(yè)務(wù)數(shù)據(jù)的時候,發(fā)現(xiàn)用戶規(guī)?;蚪?jīng)營利潤不達標,這個屬于業(yè)務(wù)癥狀。那么造成這些癥狀背后的主要原因是什么?這是我們需要回答的問題。算法工程師要有能力從數(shù)據(jù)的角度發(fā)現(xiàn)問題、抽象問題以及提供解決方案。

      有人可能會質(zhì)疑,難道這不是數(shù)據(jù)分析師的職責(zé)嗎?沒錯,數(shù)據(jù)分析師當(dāng)然可以做這件事。但是對其能力的要求可能不僅限統(tǒng)計分析,還要有一定的建模和計算能力。事實上,發(fā)現(xiàn)技術(shù)問題的本質(zhì)是定義技術(shù)問題,而定義技術(shù)問題需要對技術(shù)有較深的理解。

      下面我舉一個例子來說明這個觀點。我們曾經(jīng)做一個包材項目,目標是降低消耗紙箱的成本。我們的技術(shù)思路是研發(fā)一套三維裝箱算法,給倉庫打包的工人推薦最優(yōu)箱型,從而節(jié)省裝箱成本。事實證明這套算法確實產(chǎn)生了顯著的效果。那么后續(xù)如何進一步降低紙箱成本呢?

      經(jīng)過思考我們發(fā)現(xiàn),這套三維裝箱算法還可以用來優(yōu)化紙箱的尺寸,從而達到進一步降低紙箱成本的目的。之后我們用算法設(shè)計的新箱型,用歷史訂單進行了一次模擬,評估發(fā)現(xiàn)確實可以顯著降低紙箱成本,于是推動了新箱型在業(yè)務(wù)中的落地?;仡欉@個案例,我們從紙箱推薦問題出發(fā),進而研發(fā)紙箱設(shè)計算法。這個研發(fā)需求的變化來源于我們對業(yè)務(wù)的理解和技術(shù)的認知。

      算法工程師走到這個階段,除了對技術(shù)能力的要求,還需要承擔(dān)部分數(shù)據(jù)分析、產(chǎn)品設(shè)計甚至是業(yè)務(wù)操作的職能。從另外一個角度來看,數(shù)據(jù)分析師、產(chǎn)品經(jīng)理、業(yè)務(wù)人員也應(yīng)該掌握一些算法能力,以便從技術(shù)角度思考問題或者讓技術(shù)人員更快速地定位問題。

      小結(jié)隨著技術(shù)工具越來越成熟,技術(shù)應(yīng)用的門檻越來越低,個人覺得未來對復(fù)合型人才的需求會越來越旺盛。作為算法工程師的你,不妨問自己幾個問題:

      我們的商業(yè)產(chǎn)品是什么?它是否以算法為核心的產(chǎn)品?

      我參與的算法項目,產(chǎn)生的商業(yè)價值是多少?

      我們的商業(yè)模式是什么?業(yè)務(wù)的機會點在哪?

      企業(yè)在不同的發(fā)展階段和不同的項目中對算法人才的要求是不一樣的,因此要求我們能夠在不同角色之間切換。技術(shù)是我們的出發(fā)點,但解決問題才是我們的終點。只有站在商業(yè)的角度思考技術(shù),才能洞察需求和創(chuàng)造商業(yè)價值,進而提升自身的競爭力。

      5. 職業(yè)發(fā)展

      技術(shù)在進步,需求在變化。只有洞察變化,才有可能引領(lǐng)技術(shù)創(chuàng)新,進而提升自己的職場競爭力。下面我站在職業(yè)發(fā)展的角度,探討一下算法工程師需要具備的能力(我承認又狹隘了,畢竟作者本人菜雞一只)。

      技術(shù)能力

      技術(shù)能力是技術(shù)人員的立身之本。站在算法的角度,這里的技術(shù)能力主要是算法應(yīng)用能力,包括閱讀論文、算法實現(xiàn)、工程化以及相關(guān)文檔的撰寫。

      技術(shù)人員常見的一個認知誤區(qū)是技術(shù)大于一切,認為只要技術(shù)做好了,就應(yīng)該得到認可或獎勵。事實上,技術(shù)在大多數(shù)情況下只是商業(yè)中的一環(huán),技術(shù)做得好不能確保商業(yè)上的成功。

      以自營電商為例,技術(shù)人員做一款功能強大的購物APP不難,但同時必須有商品研發(fā)、供應(yīng)鏈和物流配送才能完成一個極小的商業(yè)閉環(huán)。此外,要想商品賣得好得有市場和運營團隊一起發(fā)力。在這樣的背景下,購物APP只是諸多商業(yè)環(huán)節(jié)中的一個節(jié)點,因此僅僅依賴軟件研發(fā)技術(shù)顯然不足以實現(xiàn)商業(yè)上的成功。好的技術(shù)團隊必須始終圍繞各商業(yè)環(huán)節(jié),有能力定位問題,并研發(fā)工具有效地解決問題。

      業(yè)務(wù)能力

      作為算法工程師,在立項和需求評審時,需要有能力評估項目為業(yè)務(wù)帶來的價值以及算法在整個項目中的價值,從而避免把精力浪費在“投入產(chǎn)出比”不高的事情上。如何做到這一步呢?除了有扎實的技術(shù),還需要深入了解業(yè)務(wù)。

      需要了解的業(yè)務(wù)知識包括(但不限于)商業(yè)模式、業(yè)務(wù)流程、業(yè)務(wù)限制以及與當(dāng)前業(yè)務(wù)相關(guān)的技術(shù)等等。算法工程師了解業(yè)務(wù)的另一個好處是洞察需求,解決問題的同時可以發(fā)現(xiàn)更多的技術(shù)問題,從而推動業(yè)務(wù)的進步。

      技術(shù)人員最難跨越的是從技術(shù)能力到業(yè)務(wù)能力的提升。有兩方面原因:一是技術(shù)人員主觀上不太愿意處理業(yè)務(wù)問題(扯皮的事情較多);二是技術(shù)人員晉升和跳槽時主要被考察的還是技術(shù),因此業(yè)務(wù)能力在有些技術(shù)人員看來短期的收益不高。

      架構(gòu)能力

      架構(gòu)能力是一種解決復(fù)雜問題的能力,它需要考慮業(yè)務(wù)的現(xiàn)狀和未來,把復(fù)雜問題分解成簡單問題,然后給出解決方案。與軟件架構(gòu)相比,算法架構(gòu)更偏向業(yè)務(wù),不僅要對業(yè)務(wù)進行建模和抽象,還要考慮工程實現(xiàn),以便技術(shù)方案在實際業(yè)務(wù)中落地。因此,良好的技術(shù)能力和業(yè)務(wù)能力是算法架構(gòu)能力的基礎(chǔ)。

      算法相關(guān)的技術(shù)項目可能涉及到與其它技術(shù)工種的配合,例如:產(chǎn)品經(jīng)理、數(shù)據(jù)分析、數(shù)據(jù)開發(fā)、前端、后端、測試、運維等。因此,算法工程師設(shè)計的技術(shù)方案應(yīng)該考慮到算法模塊與其它技術(shù)模塊的解耦與協(xié)同。

      算法工程師做解決方案時應(yīng)該從全局出發(fā):一是技術(shù)上不僅考慮算法而且還要考慮工程實現(xiàn)和產(chǎn)品化(切忌手里有錘子,看什么都是釘子的想法);二是從整體業(yè)務(wù)的角度考慮項目帶來的收益。例如,假設(shè)推薦系統(tǒng)的重構(gòu)可以帶來推薦模塊的轉(zhuǎn)化率提升。那么這件事情一定值得做嗎?我們還應(yīng)該評估這個提升效果對大盤利潤的影響。如果對大盤利潤的提升有限,或許應(yīng)該把精力投入在更有價值的項目中。

      管理能力

      在互聯(lián)網(wǎng)行業(yè),多工種協(xié)作是常態(tài),但管理能力卻恰恰是技術(shù)人員最容易忽略的一項能力。這里說的管理能力不是站在管理人的角度,而是站在取得業(yè)務(wù)結(jié)果的角度。它主要體現(xiàn)在:溝通協(xié)作、項目管理、目標管理和風(fēng)險管理。

      簡單來說,就是把自己負責(zé)的事情做好而且講明白,即:

      把要做的事講清楚;

      按要求交付工作內(nèi)容;

      把業(yè)務(wù)結(jié)果講清楚;

      把風(fēng)險講清楚。

      我在工作中發(fā)現(xiàn),不重視管理能力的技術(shù)人員常常面臨這樣的尷尬局面:辛辛苦苦寫了很多代碼,最后項目卻沒有上線;或者項目上線了卻說不清收益。然后看著自己的同事,覺得他代碼能力不如自己,研究能力也不如自己,卻屢次升職加薪。于是內(nèi)心抱怨著命運的不公:寫代碼的不如寫PPT的!

      管理能力的提升不是一朝一夕,希望算法工程師們重視管理能力,在實際項目中不斷磨練自己。說不定升職加薪不過是水到渠成的事。

      6. 總結(jié)

      本文花了較大篇幅介紹算法的概念、應(yīng)用場景和算法技術(shù),目的是強調(diào)算法技術(shù)必須創(chuàng)造商業(yè)價值。隨著科技進步和全球數(shù)字化時代的到來,商業(yè)決策只會變得越來越復(fù)雜,而算法產(chǎn)生價值的空間一定越來越大。

      從前文提到的應(yīng)用場景,我們看到算法工程師這個職業(yè)的工作內(nèi)容是非常多元化的??鋸埖卣f,算法工作簡直沒有邊界,這也對算法工程師提出了更高的要求。我總結(jié)成兩點:

      1. 算法工程師有三種類型:產(chǎn)品研發(fā)型、業(yè)務(wù)優(yōu)化型和需求洞察型。企業(yè)在不同階段以及不同項目中,對算法的需求是不同的。我們需要有能力洞察需求,并按需切換自己的角色。

      2. 從職業(yè)發(fā)展的角度來看,算法工程師需要掌握四種能力:技術(shù)能力、業(yè)務(wù)能力、架構(gòu)能力和管理能力。業(yè)務(wù)能力和管理能力非常重要,但往往容易被技術(shù)人員輕視。

      最后聲明一下,文中的觀點基于個人工作經(jīng)驗,由于個人經(jīng)歷的狹隘和認知的不足,難免有不正確的地方,歡迎讀者指出。

      ?推薦閱讀:2022新疆高考防疫須知

      ?推薦閱讀:西藏:2022年度房地產(chǎn)估價師職業(yè)資格考試報名工作的通知

      ?推薦閱讀:吉林2023年二級建造師考試準考證打印時間:考前一周內(nèi)

      ?推薦閱讀:營養(yǎng)師證報名入口是什么 一年有幾次機會

      ?推薦閱讀:高中美術(shù)教師資格證考試科目有哪些 報名條件有哪些

      以上內(nèi)容由河南考試信息網(wǎng)為您收集整理!如果您覺得有用,歡迎分享給朋友!掃描下方二維碼關(guān)注我們,獲取更多有用考試信息!


      推薦閱讀

      熱門標簽

      關(guān)注我們