要獲得「機器學習或數據科學」的工作,到底選哪種編程語言更好?

如果想要獲得機器學習或者數據科學這樣的工作的話,開發者到底應該學習哪種編程語言呢?這是一個非常重要的問題。

Indeed.com上使用趨勢搜索。

它可以根據時間搜尋實際工作機會中特定的條款。

這表明了僱主們正在尋找擁有該技能的人才。

然而,請注意,這並不是一項有效使用技能的民意調查。

這種指標更能體現技能的受歡迎程度。

趨勢搜索可以自定義添加要查詢的語言

在此搜索了「機器學習」和「數據科學」一起使用的技能。

  • 搜索選項包括編程語言Java、C、C+++和JavaScript;
  • 然後還包括了Python和R,因為我們知道它在機器學習和數據科學方面很受歡迎;
  • 當然還有Scala,考慮到它與Spark的關係,再加上Julia,一些開發中認為這是「the next big thing」;
  • 也加入了Go、PHP等語言,為了使得調查更為完整,所以竟可能多的加入語言。

運行這個查詢,我們得到的數據如下:

匹配工作崗位的百分比

當我們關注機器學習時,我們得到了類似的數據:

我們能從這些數據中得到什麼啟示呢?

  1. 我們看到的並不是某一種語言獨佔鰲頭,數據差距並不是太大,各種機器學習編程語言都很受歡迎,但是Python位列第一。
  2. 所有這些編程語言都在急劇增長。能夠反映出在過去幾年裡,企業對機器學習和數據科學的關注和需求正在急速增加。
  3. Python很明顯的領導者,其次是Java,然後是R,再然後是C++。必須承認,我很驚訝地看到Java名列第二;我本來是以為是R語言。畢竟R語言多用於數據挖掘和機器學習,而Java大多應用於企業級開發應用。
  4. Scala的增長令人印象深刻。它在三年前幾乎是不存在的,現在和這些成熟的編程語言幾乎在同一個層面。
  5. Julia的受歡迎程度雖然不明顯,但肯定有上升的趨勢。

如果我們忽略Scala和Julia,以便能夠聚焦其他編程語言的增長,那麼我們毫無疑問可以確認:Python和R的增長速度要快於通用語言。

考慮到增長率的差異,R的受歡迎程度可能很快就會超過Java。

當我們專註於深度學習這個問題時,數據是完全不同的:

深度學習的排行榜

根據這個數據我們可以得知:

Python仍然是領導者,但C++現在是第二,然後是C,而Java在第四,R只在第5。

這裡顯然強調了高性能計算語言。Java正在快速發展。它可以很快達到第二名,就像一般的機器學習一樣。R不會很快接近頂部。Julia不存在。

到這時,到底哪種語言才是最受歡迎的學習語言呢?答案應該已經很清楚了。

  1. 當涉及到機器學習和數據科學工作時,Python、Java和R是最流行的技能。
  2. 而你想專註於深度學習,而不是一般的機器學習,那麼,在某種程度上來說C++、C也是值得考慮的。

然而,請記住,這只是分析問題的一種方式。如果你想找一份工作,或者你只是想在業餘時間學習機器學習和數據科學,你可能會得到不同的答案。

不同背景的人,所側重的語言學習是不一樣的,如果是金融專業做數據分析的話,可能Python或R更適合一些。而一個Java開發人員可以使用他最喜歡或者最擅長的語言會更好。

因此,在花大量時間學習一門語言之前,根據自己的情況來決定選擇哪種編程語言,切記千萬不可跟風。

時間就是生命,允許插播一條小廣告,12月18日Java新手脫產班1元成團,名額有限

點擊鏈接(zuikc.com/mobwechat/hom

),了解課程及活動詳情。


推薦閱讀:

TAG:編程語言 | 機器學習 | 數據科學 |