標籤:

本科數學,想從事人工智慧或大數據方面的工作,該怎麼規劃?

目前在某C9數院,是在本科時選修部分計算機課程,研究生轉CS還是有可能的話,直接本科轉計算機專業?怎麼樣比較合適?


謝邀,首先恭喜你,你是數院的,有很好的數學基礎,而人工智慧和大數據需要你這樣的基礎。

1)確認下你是否已經掌握了如下的基礎知識:深度學習煉丹清單:從「入坑」到「放棄」;

2)人工智慧這個話題好廣泛,有AI+計算機視覺,AI+NLP,AI+語音處理,AI+robot等等,請確定你要往哪個方向發展?知乎中這方面的討論很多,因此給你的建議是先定義自己的方向;

3)若是AI+robot,那就繼續往下看: @YY碩 大神的學習計劃 機器人工程師學習計劃,供你參考,大神之作堪稱經典;

4)當然也可以像我一樣,個人承認能力一般,所以可以參考:知乎用戶:自學工業機器人難不難?,作為機器人的入門規劃;

5)當然,若你是入了門,也掌握了AI的相關知識,可以看看這篇:預告:分享Pieter Abbeel和Sergey Levine基於深度增強學習在機器人中的應用(論文)。

上述僅供參考,當然也可以選擇AI+其他。

對於大數據,這又是一塊很大的領域,有工業大數據、雲端大數據、金融大數據、物流大數據等等,實在是太廣泛,因此還是建議你聚焦到某個點,說到點,讓我想起了 @空白白白白 ,他們在做數據分析,而他們的公司就叫 "POINT.小數點數據"。

無論如何,從基礎做起,做專做深度,做某個領域的某個點,術業有專攻。


嘿嘿,小破孩,你怎麼知道我能夠回答這個問題

上半年我正好分享過一篇如何轉崗數據分析/數據挖掘的文章,就從那個文章中截取部分回答如何轉崗大數據這塊吧


這裡,我們以當前熱門的大數據相關崗位分析為例:

從大數據信息分別從底層基礎平台、中間層通用技術、上層行業應用進行歸納

而我們這次探討的數據採集和數據分析崗位就屬於中間層通用技術。

大數據崗位爆發背景:

1. 處理器速度的加快,大規模數據處理技術的日漸成熟,使得在Big Data中快速提取有價值信息成為可能。現在,PB級別的數據也可以在短時間內完成機器學習的模擬訓練。這讓包括Face++、科大訊飛等這些高度依賴深度學習的圖像、語音識別公司得以對產品進行快速迭代;

2. 互聯網行業的快速發展,使得很多企業都存儲了海量數據,如何挖掘這座數據寶庫,也推動了大數據本身發展;

3. 同樣,也衍生出很多數據相關公司發展,比如通過監測海量數據,做數據價值變現的TalkingData等,以及做底層架構的支持服務商阿里雲、UCloud等等

各方面的需求導致目前人才供給相對不足,供需失衡決定大數據從業人員待遇更高

同樣的,這些崗位相對於傳統軟體工程,也有更高的挑戰空間和更大難度,也吸引更多人才進入到這個領域

目前在大數據中層通用技術領域主要企業分布概述:

法數據挖掘工程師——核心在於數據的價值挖掘

即通常利用演算法、機器學習等方式,從海量數據中挖掘出有價值信息,但由於企業業務場景不同,對該崗位的技能也會有不同側重點

1. 演算法工程師——這類團隊面對的問題通常是明確而又有更高難度的,比如人臉識別、比如在線支付的風險攔截。這些問題經過了清晰的定義和高度的抽象,本身又存在足夠難度,因此需要求職者在所研究問題上有足夠的專註力,對相關演算法有足夠深度的了解,才能夠把模型調到極致,進而解決問題。企業一般給這類職位的title——多為演算法工程師

2. 數據挖掘工程師——這類團隊面對的挑戰不限於一個具體問題,而在於如何將複雜的業務邏輯轉化為演算法、模型問題,從而利用海量數據解決這個問題。因此不要求工程師在演算法上探索得足夠深,但需要足夠的廣度和交叉技能。需要了解常見的機器學習演算法,並知曉各種演算法利弊。同時也要有迅速理解業務的能力,知曉數據的來源、去向和處理的過程,並對數據有高度的敏感性。企業一般給這類職位的title以 數據挖掘工程師 居多

而從企業對崗位的招聘要求,我們可以分析出:

當然,這是理想中的,而實際中,在涉及大數據團隊搭建時,可以借鑒

1. 可以不求全才,但要求團隊成員各有所長,整體可形成配合——針對不同崗位吸收具有不同特長的人才

比如,以格靈深瞳為例,作為一家計算機視覺領域的大數據公司,團隊中既需要對演算法進行過透徹研究的人才,把圖像識別有關演算法模型調整到極致,也需要工程實力比較強的人才,將訓練好的演算法模型在產品中進行高性能實現,或幫團隊搭建一整套視頻圖像數據採集、標註、機器學習、自動化測試、產品實現的平台

所以,對前一種工程師,需要在深度學習演算法甚至在計算視覺領域都有過深入研究,編程能力可以稍弱一點;而對於後一種工程師,如果他擁有強悍的工程能力,即使沒有在深度學習演算法上進行過深入研究,也可以很快接手對應工作

同樣的,即使在演算法工程師團隊內部,不同成員之間的技能側重點也可能各不相同

以個性化內容推薦諮詢平台——一點資訊為例,演算法團隊中,一部分工程師會專註於核心演算法問題研究(比如解決一個非常明確問題,如通過語義分析進行文章分類問題,如判斷標題黨的問題等等,需要有足夠深度的了解);另一部分工程師會專註於演算法模型在產品中應用(對業務變化非常敏感,具有強悍的分析能力,能從複雜業務中理出頭緒,將業務問題抽象為演算法問題,並利用合適模型去解決)

所以,兩者一個偏重核心演算法研究,一個偏重業務分析與實現

從薪酬範圍看演算法工程師崗位:

有一種說法,在一線互聯網公司內部,演算法工程師薪酬區間基本就是三擋:

(這個數據是來自17年春季校招,今年秋季校招行情已經又不一樣了,所以供參考)

而從高校畢業生來源看

為演算法工程師貢獻的TOP5高校分別是 哈工大、北郵、中科院、中科大、浙大

TOP~TOP10分別是電子科大、北大、北航、清華和華中科大

而海歸人才佔比不到5%

至於如何轉型到演算法工程師

隨著人工智慧的爆髮式發展,以及深度學習、機器學習在使用工具上門檻已經降低,所以也有越來越多的程序員轉型到這個「高薪崗位」,而路徑主要就是通過自學or參加培訓班途徑為主

以國內一線互聯網公司校招和社招人員來看,其往往還是更看重從業者背景,即:

1. 校招——必須是科班碩士生或者海歸,要能有不錯的代碼能力,對機器學習有一定了解和研究經歷;當然針對演算法工程師面試,BAT也會要求筆試,基本就是leetcode中等題水平;換言之,一個工作三年通過自學或者參加培訓班轉型到演算法工程師領域同一個應屆生競爭同一個工作機會,一線互聯網公司往往還是更鐘情於應屆學生

2. 社招——演算法工程師崗位畢竟更偏學術派,從目前社招企業要求看,如果是非科班背景而言,企業往往更看重求職者的編程能力(這也是基於目前人才市場供給嚴重不足導致),而業內很多企業其實都會借用校友圈這個更偏學術交流的圈層進行招聘。比如通過請高校學術大佬擔任首席科學家,他的博士學生「順帶」也會全部打包過來

所以除非是特別想在演算法領域真有所作為,個人不是特別建議在找工作中中途轉型,畢竟這個領域還是更偏學術派

如何從數據分析轉型到數據挖掘工程師

這個領域的在職人員背景相比而言就寬泛多了,我們不乏看出從程序員、運營崗甚至法務崗都有成功轉型的,畢竟薪資更高嘛,況且從事數據分析對編程要求相對不是特別高,但是對於跨行業泛知識要求有很深認識。不過,也有很大的不同:

比如,日常數據分析工作主要就是SQL提數,活動效果跟蹤以及寫數據報告等工作,但是在轉型到數據挖掘(尤其一線互聯網公司)中,往往都需要涉及到數據挖掘的底層設計和應用,這對非科班出身人員也是很大的挑戰

不過,同樣的,目前國內數據挖掘的人才供給不足,很多企業往往也會降低要求或者有意識調整工作內容和權重,比如給出的建議:

1. 提升數據可視化能力和數據分析報告撰寫能力,掌握多種可以進行輔助數據分析的工具以及熟悉常用的模型,未來可以往數據分析程序員或者數據產品經理轉型

2. 掌握Python或者R語言,熟悉Hadoop等資料庫,熟練掌握數據分析工具,也可以嘗試往數據挖掘領域更靠近一點

這是我第一次用網頁端回答問題,結果發覺還是不舒服,為什麼沒有表格一欄呢,搞得我只能截圖自己的再加上去 @知一聲

回答題主的,目前是數學系專業,所以我們很多企業在進行演算法工程師面試,如果是數學系專業都會有加分項,所以別過於痴迷CS。

嘿嘿,覺得有用就多給幾個贊啊

這樣我也有動力分享如何轉崗到人工智慧領域:)


清華數據院今年7月發了個《2017頂級數據團隊建設全景報告》

其中關於人才部分的目錄是:數據團隊價值落地艱難、業務團隊缺乏合作動力、數據團隊存在人才缺口。

本科數學,可選擇範圍非常廣泛,據我所知某幾大保險公司,近 2 年招的數據工程師,必須是本科數學專業的。

而轉型人工智慧方向,如果從學科設置的話來說,目前只有北航開設了人工智慧方向的研究生

新聞鏈接 :北京航空航天大學首招人工智慧方向研究生

當然自學的地方還是不少的,比如,知乎各種大拿分享的機器學習、深度學習相關的知識。

還有的是,類似吳恩達所開設的斯坦福大學公開課:機器學習課程,強推這個課程,但是建議在學習效率最高的時候學習這個,實在是吳恩達的聲音催眠效果不錯。

好啦,說千言不如做一遍。


大數據在學校里是學不到的,最好儘早參加工作,一邊研究生一邊實習也行。了解數據真正的價值所在,還是需要在商業背景下。沒有人會為沒有價值的演算法付你工資。何況只有大公司才能為你提供真正穩定的數據,省的你把時間浪費在數據清理上。在公司里一個月的實戰其實等於一年的書本研究。


瀉藥。

數學系的人做AI最大的優勢就是數學基礎遠強於CS,所以你大可不必焦慮。

第一,大學本科四年扎紮實實學好本專業學科,不為一定要跟AI相關,而是要培養好數學思維。

第二,從大二後半程,在你數學分析學得紮實了以後。可以考慮看看一些NIPS和ICML或者JMLR的文章。看看AI的人都在研究些什麼,用了哪些數學工具。

一開始你可以看得寬泛一些,但你要有目的地去找自己的興趣所在。想做優化方法呢,還是深度學習可解釋性呢,又或者統計學習相關呢。

最重要的是你要有意識的去學習發現問題的能力。

第三、在大三的時候,對AI有了一定認識,對一些基本的機器學習方法有了初步理解以後,可以考慮和CS的同學合作,參加一些比賽或者項目。看看做AI的人如何在應用中落地。這會極大的提升你對AI的演算法的核心思想的認知。順便學習一下編程的技能和思想,可以隨時跟CS的人交流。

第四,現在做AI,對數學系的人來說最好的出路應該是出國讀博。個人認為不論一個行業是否熱,讀深讀精都是沒錯的。對於數學系的人來說,不論留高校還是去企業,動手能力一直就是其相對於CS學生的薄弱的環節。而呆在學校里,不受到各種業務或者評級的壓力,可以慢慢把CS的東西學起來。到了企業或學校,不論你做什麼,都別想依賴別人幫你做實現,那時候壓力大了什麼都只能學個半吊子,難免捅婁子。

見過太多數學系的人實現的代碼出現嚴重的內存泄漏和效率低下的問題,代碼重用性差的一批。這些無論是對做業務還是科研都是致命傷。

anyway,加油。


真想做就馬上做 規劃100遍不如動手一遍


研究生再轉 考研和讀研都會輕鬆很多

數學系看計算機考研的那幾門專業課簡直是小說 數學課那是兒科 剩下英語學好點

別擔心編程 手熟爾


本科時選修部分計算機課程,研究生再轉吧。說實話國內計算機本科教的內容和人工智慧以及大數據所使用的演算法關係不是太大。如果要搞這方面演算法的話,通信工程專業,統計學專業,數學專業都比計算機專業有優勢。


建議研究生轉CS,數學基礎好很有優勢,多關注python編程


「從事人工智慧或大數據的工作」,這個範圍很廣,無論是計算機專業,統計學專業,數學專業,都可以找到適合的方向。反而是計算機專業的可能最後做的都是應用層的東西,價值可能還沒有學數學專業來做建模,優化演算法,創造新演算法更有價值。薪資當然也會更高。

當前人工智慧和大數據都有零基礎培訓班了,應用層的東西自學就夠了,不一定非要學個計算機專業。

瀉藥,想了解更多人工智慧相關內容,可以關注


入門人工智慧,數學是繞不過去的門檻。對於當下大部分想轉行人工智慧的程序員或者其他行業從業人員來講,沒有任何一個時代,像今天這樣感覺數學如此重要。

上圖是當下典型的人工智慧入門路線圖,從圖中我們可以看出數學的重要性。具體地講,當下的人工智慧(主要是指弱人工智慧)取得重大突破的原因,主要歸功於機器學習演算法(深度學習是機器學習的一類演算法),因此機器學習是入門人工智慧的必經之路。而機器學習演算法用到了大量微積分、矩陣論、概率論和優化的知識,因此說,入門人工智慧需要紮實的數學基礎。

我們所(有幸畢業於中科院自動化所)的研究員以及博士中有不少數學專業的,在機器學習模型以及演算法改進層面上,具有較大優勢。

針對您的具體情況,我個人建議本科可以不用轉CS,多看一些人工智慧科普類書籍,比如李開復老師寫的《人工智慧》,了解人工智慧包含哪些領域,哪些方向是自己感興趣的;將數學功底打紮實,同時多培養演算法、編程方面的技能,這些都是基本功。學有餘力的情況下,學習機器學習的知識,參加Kaggle或者阿里天池平台上的大賽,增加些實踐經驗和興趣。

讀研時,再轉向CS。


除了有數學基礎外,語言底子也是有要求的,你可以選學校的語言編程自己學,也不是非要轉的吧,人工智慧的基礎語言是python,你可以先攻這個,另外推薦你一些關於人工智慧的資料,可以查看一下!

了解人工智慧,30份書單不容錯過(附電子版PDF下載)(是介紹人工智慧不同行業的報名,可以查看一下)

機器學習 數據科學必讀的經典書籍,內附資料包!

從入門到研究,人工智慧領域最值得一讀的10本資料


推薦閱讀:

國際象棋和圍棋都已經進行過「人機大戰」了,之後還有什麼遊戲值得人工智慧挑戰嗎?
身為程序員, 2017年你有什麼一定想實現的願望?
你覺得Alpha Go 對李世石會幾比幾贏?
機器學習中如何處理缺失數據?
"圖靈機器人"(http://www.tuling123.com/)這款智能自動問答應用在業界處於什麼水平?應用前景如何

TAG:人工智慧 |