7 年算法工程師的工作總結,太精闢了!

機器學習算法與Python學習2019-06-12 02:41:05

大家好,我是chris,入行前5年在一家上市遊戲公司做算法,從數據挖掘算法在業務線落地開始,涉及機器學習、深度學習,後來逐步負責整個算法團隊建設。

 

現在在阿里,也是負責算法方面的工作,涉及到的領域涵蓋CV、NLP、架構等,業務線也擴展到廣告、運營、客服、風控等各個方面。


在外行人眼中,算法工程師可能拿到最近某大神新發的Paper,或者自己鑽研理論推公式產出理論成果,通過並行編程實現其支持大規模數據訓練,然後打敗現有模型,ctr提升200%,收入提高200%。然而實際情況是:


理想中的算法工程師:提出假設->收集數據->訓練模型->解釋結果。

實際中的算法工程師:提出假設->收集數據->預處理->預處理->訓練模型->調試->調試->重新收集數據->預處理->收集更多數據->調試->調試->調試->…->放棄


作為算法部門負責人,我曾經面試過很多候選人,一般我通常從邏輯思維、基礎算法與數據結構、數學、深度學習、表達能力和工程經驗等幾個方面考察。


我發現其實很多人只是自認為懂得算法,刷了一遍西瓜書就敢出來面試了,另外有數理基礎的應屆生,算法掌握得也不錯,但實際3年可能寫了不到1000行代碼,實操能力極差。


在面試了好幾個簡歷優秀的年輕人後,我驚訝得發現原來很多初學者對數據挖掘/算法工程師實際上的工作流都不是很瞭解,導致職業技能偏差。這就是為什麼,企業收到的簡歷越來越多,但公司實際可用的就那麼一兩個,而且開價不菲,忍痛簽下還可能被同行挖走了。


那麼算法崗位具體的工作流程是怎樣的?我們先來用一個小型NLP項目流程來舉例,讓大家瞭解機器學習項目有哪些大的環節:


1.瞭解需求,獲取數據。與產品和運營開會,瞭解需求,然後提取公司積累大量的數據和自己網上下載、爬取的數據。


2.數據預處理。數據處理大概會佔到整個50%-70%的工作量,通過數據洗清、分詞、詞性標註、去停用詞四個大的方面來完成語料的預處理工作。


3.特徵工程。做完語料預處理之後,接下來需要考慮如何把分詞之後的字和詞語表示成計算機能夠計算的類型。把中文分詞的字符串轉換成數字,有兩種常用的表示模型分別是詞袋模型和詞向量。


4.特徵選擇。構造好的特徵向量,是要選擇合適的、表達能力強的特徵。特徵選擇是一個很有挑戰的過程,更多的依賴於經驗和專業知識,並且有很多現成的算法來進行特徵的選擇。


5.模型訓練。對於不同的應用需求,我們使用不同的模型,傳統的有監督和無監督等機器學習模型,如 KNN、SVM、Naive Bayes、決策樹、GBDT、K-means 等模型;深度學習模型比如 CNN、RNN、LSTM、 Seq2Seq、FastText、TextCNN 等。


6.評價指標。訓練好的模型,上線之前要對模型進行必要的評估,目的讓模型對語料具備較好的泛化能力。


7.模型上線應用。模型線上應用,線下訓練模型,然後將模型做線上部署,發佈成接口服務以供業務系統使用。


以上流程從業務流程來看,機器學習項目基本就是瞭解業務需求 ->調研業界方案 -> 查看是否適用 -> 上線效果不難發現,在對待具體業務上,算法工程師如何通過“實踐”提升自己的機器學習水平,以及如何通過機器學習/深度學習實際應用來改善企業的業務等級和營收能力至關重要。


我經常說算法只是工具,重要的是在正確的行業和產品認知上,實現業務目標。


所以有人恐慌算法工程師會被自己的算法替代,這是極其可笑的。機器可以做的雖然很多,但是無法代替人對數據的理解,這是算法工程師存在的價值。Deep Learning雖然在某種程度上代替人提取特徵,但是它最多隻能解決特徵變換問題,仍然處理不了數據清洗和預處理中需要用到領域知識的情況。


在我的經歷裡,我傾向於算法工程師是技術+產品經理為一體的綜合型人才。


而對於跨專業的學生/從業者來說,跨界反而是優勢,不是障礙。特別是如果你作為本身是一個其他行業(物理,工程,化學,醫學,農業,衛星地圖識別,網絡安全領域,社會科學)的普通程序員,在本行業有比較深的理論和實驗背景,能接觸到海量數據,那麼你完全可以做一些創新性和交叉性的工作,這就是人工智能+的人才。


現在有很多的機器學習課程和教科書,它們大都是關於如何從零開始製造烤箱,而不是如何烹飪和創新配方。但對大多數企業而言,其實他們需要的只是烹飪方法——即解決他們業務問題的方法。


為了能讓更多初學者瞭解機器學習/數據分析/數據挖掘等崗位的工作流程,找到入門的切入點,我特地邀請了兩位人工智能不同領域的專家,一位BAT的數據挖掘工程師@熊貓醬,一位計算機視覺方向的專家@Angela,還有我阿里高級算法工程師@Chris,以自身具體的工作流為核心,舉辦連續四場人工智能入門分享會。



我們將分別從各自擅長的領域:python數據分析、機器學習理論、機器學習數學、算法工作流,以我們在大廠具體工作流逆向指導理論學習,規劃學習路線,是不可多得的入門級課程,旨在為廣大的AI愛好者和跨行學習者提供堅實的基礎。

福利一:

《人工智能入門分享會》

適合人群:入門、初中級學員

 

1. 6月11日 20:30

一線大廠算法工作流講解及機器學習路線 

2. 6月13日  20:30

機器學習常見算法推導中的數學基礎

3. 6月16日  20:30

從零開始,90分鐘入門python數據分析

4. 6月18日  20:30

阿里專家:神經網絡原理與人工智能就業指南

(*可領取錄播,添加助教:BT474849領取)


本次分享會將為你解答以下疑問:


我適不適合學習人工智能?我是醫學生,現在AI醫療就業情況怎麼樣?數據分析/數據挖掘/算法工程師的區別是什麼?算法工程師對算法需要理解到何種程度?模型選擇和參數調優技術,是否是通用的?深度學習算法的應用場景……(~你的所有疑惑,在這裡將全部解決!


千萬不要在本該快速成長的時候錯過機會。參加本期訓練營,一線導師將盡心為你在線解答疑問,更有同伴一起相互監督鼓勵!本期更是免費幫你分析具體職業進階方向!


第一期300名試學學員獲得一致好評!

↓↓↓

▲第一期課程體驗反饋+群內交流答疑


福利二:學習資料

機器學習從入門到實戰視頻課程


另外,前500名成功報名這門課程的同學,都可以獲得由這份由上海北大、清華、交大等名校導師以及大廠一線工程師聯合組寫價值1388元的《機器學習從入門到實戰視頻課程》,包含python基礎、數據分析、大數據、機器學習、實戰等五大類目的精華乾貨視頻,課件和源碼都能下載,以下是目錄。

《機器學習從入門到實戰視頻課程》

 ——五大章節,63講


一、Linux與python編程基礎

1. vmware虛擬機的安裝

2. centos6.9操作系統的安裝

3. linux基本命令使用

4. python介紹

5. python安裝

6. python環境安裝

7. 第一個python程序

8. pycharm(Python開發神器)的使用

9. 變量、整型、浮點型、字符串類型

10. 空值、布爾值、列表、元組、字典、集合

11. if條件語句、input函數

12. 循環語句

13. 函數介紹、函數的定義、函數的調用、函數的參數

14. 函數的返回值

15. 全局變量和局部變量

16. 學生管理系統框架

17. 學生管理系統的增加和查看模塊的編寫

18. 學生管理系統的修改和刪除、家庭作業


二、Python數據分析

19. Python數據科學入門

20. Python常用庫介紹

21. 數據分析環境搭建

22. Numpy數據類型和索引的處理

23. NumpyAPI和矩陣運算

24. Numpy高級特性和通用函數

25. Panda概述和Serise

26. Pandas_DataFrame精講

27. DataFrame和Series的索引


三、大數據與數據處理

28. 大數據是什麼

29. 大數據,人工智能,機器學習三者的關係

30. 數據量與高併發(高併發一定是代表數據量大嗎?)

31. hadoop精講:HDFS簡介,架構組成,實操演練

32. hadoop精講:Mapreduce簡介,Wordcount實例,框架流程

33. spark簡介,環境搭建,集群安裝,實例演示


四、機器學習入門

34. 機器學習簡介

35. 機器學習開發環境

36. 機器學習IDE介紹

37. 機器學習基礎理論與哲理

38. 機器學習算法分類

39. 機器學習常見任務

40. 數據清洗

41. 數據標準化

42. Python與Sklearn數據標準化實踐

43. 機器學習中的相似性度量

44. KNN算法

45. 案例:基於 KNN (sklearn)的鳶尾花卉數據分類

46. 案例:基於 KNN(python)的鳶尾花卉數據分類

47. 一元線性迴歸

48. 多元線性迴歸

49. 多項式迴歸

50. sklearn線性迴歸實踐

51. python線性迴歸實踐

52. 案例:基於線性迴歸的廣告收益分析實戰

53. 邏輯迴歸分類算法

54. 二分類分類器處理多分類問題

55. 案例:基於邏輯迴歸(sklearn)的鳶尾花卉數據分類

56. 案例:基於邏輯迴歸(python)的鳶尾花卉數據分類


五、機器學習5大實戰

57. 前言

58. 準備工作

59. 高端又一般的詞雲

60. DCgan人臉圖片生成

61. 股票價格預測

62. Tensorflow物體檢測

63. 天馬行空的Deep Dream

當然任何資料都只是輔助,分享會最重要的是能跟著老師們一起動手實操,學習一線開發的人工智能思維,瞭解大廠具體工作流,邁出人工智能的最堅實的一步!


福利領取:

掃碼添加助教小姐姐微信

回覆“人工智能”即可領取

福利1:人工智能入門訓練營資格

福利2:人工智能入門與進階視頻資源


https://weiwenku.net/d/200840518