在回答這個問題之前,希望你先想想另外乙個問題:為什麼要成為資料科學家?當然,如果你是為了10萬美元的年薪也無可厚非,但是我衷心希望你能將這個職業和自己的價值感掛鉤。因為成為資料科學家的路途會很辛苦,但如果你將其看成是實現個人價值的一種方式,那麼追尋目標才能帶來長久的成就感,在這個過程中會感到快樂並且動力十足。
要回答「如何成為……」這樣的問題,首先當然需要知道想要成為的物件是個什麼樣子。圖1是乙個資料科學家的技能表。
圖1 資料科學家的技能
首先程式設計能力是資料科學家需要的基本技能。資料讀取、整合、建模分析和視覺化的整個環節都需要用到這些工具。在業界環境中,整個資料鏈大概分為5塊:
sql客戶端。資料科學家需要通過sql從資料庫中讀取相應資料。根據資料庫的不同,使用sql的型別和語法也略有不同,但大體上非常相似。掌握基本的資料庫讀取操作是非常必要的。
結果報告。這裡會用到基於d3.js的互動視覺化,rmarkdown自動化報告以及shiny應用。
圖2是資料流程構架圖。
圖2 資料流程構架
另外乙個重要的技能是分析建模。這個模組可以進一步細分成下面幾個:
除了技術能力以外,還需要其他一些非技術的能力。這些包括將實際問題轉化成資料問題的能力,這一過程需要交流,也就要求良好的交流溝通能力。關注細節,分析是乙個需要細心和耐心的職業。還有就是展示結果的能力,如何讓沒有分析背景的客戶理解模型的結果,並且最終在實踐中應用模型的結論。
這個單子還可以一直列下去。看起來是不是不只一點嚇人?其實這個技能單是動態的,你一開始不必具有上面列出的所有技能,但在工作過程中,需要不斷的學習成長。乙個優秀的資料科學家不是通過資料找到標準答案的人,而是那個接受和適應這個充滿不確定性的世界,給出有用方案的人。乙個成熟的資料科學家面對分析專案時會看到多種可能性和多種分析方法,給出結果後依舊時刻關注這個結果,不停地保持小幅度頻繁更新。再次強調自學能力和成為乙個終生學習者是優秀的資料科學家的必要條件。
現在你對資料科學家需要具備的技能應該有個大致的概念了。接下來的問題是如何獲取這些技能。這個問題的答案部分取決於你的專業背景。當前資料科學家的背景其實很雜,這裡主要著眼於數學、統計、計算機或其它定量分析學科(電子工程、運籌學等)本科以上學歷的情況。數學統計背景的學生,需要加強計算機方面能力的培養。而計算機背景的學生需要更多的了解統計理論。如果是其他定量分析學科,可能需要同時加強這兩者。
其他專業的學生成為資料科學家有兩種情況:
從事和自己專業相關行業公司的資料分析。比如在一些精準農業應用的公司,會常常看到資料科學家是生態學博士,或者土壤學博士。其實這些人不能算是廣義上的資料科學家。因為他們處理的問題侷限於非常特定的領域,對生態和土壤的了解的要求高於對資料分析的要求。
雖然是其他專業,但是本身有著很強的計算機技能,比如物理學專業的學生會成為資料科學家或者量化交易員,這因為他們通常具有很好的程式設計能力。
有的人問我怎麼選擇學習課程。通常情況下我會看講課的老師,如果是想要徹底清晰地了解某種技術,那就去搜下寫這個領域相關書籍的人,如果他們有開課,可以選這些課;或者那些在資料科學行業名字如雷貫耳的,比如吳恩達這樣的。選這樣的人講的課,才能聽得明白,因為這些人對相關的專業知識足夠了解。
在資料科學的應用中有哪些常見誤區?
會開車的只是司機,要當汽車工程師,僅靠會開車是不行的。這點放在資料科學領域也是一樣。不需要你背下模型背後的所有數學公式,但是至少需要學過一遍,讓你可以翻著書解釋模型機理。
在實際應用中需要同時考慮收益和成本。如果模型精確度是90%,但是提高到95%需要複雜得多的模型,因此需要大量的計算裝置投入,同時帶來的邊際收益很小的話,滿足於精確度小的模型就好了。模型選擇和評估可能是資料分析流程中最難的環節。
接受這個現實,人常常是不理性的,我們的行為和對周遭的態度受感情的影響。你永遠看不到乙隻單純的狗,你看到的是乙隻可愛或者不可愛的狗,我們總是會對所有的事情加上自己的主觀判斷。當然,你公司的同事,領導看待你的方式也受到主觀的影響。很遺憾,這個主觀的感受通常更多的來自於你作為人的部分,而不是機器的部分。你覺得自己技術好是一件事情,領導覺得你技術好是另一件事情,領導覺得你的技術是有用的那又是新的一件事情了。這點,美國中國貌似沒差。所以「做技術」不等於「情商低點沒關係」。
我理解,這種感覺很不好受。有的時候我感覺自己永遠都是菜鳥,但現在我才明白,這才是當前世界的真實狀況。不斷公升級將會是一種常態,這不僅僅是資料科學,你必須這麼做,因為所有的東西都在公升級,就像軍備競賽一樣,公升級已經成為事物本身的存在方式。無論你使用一樣工具的時間有多長,公升級後你又會變成乙個菜鳥。所以做菜鳥是可以的,但是不明覺厲,隨意跟風是不允許的。面對不懂的技術,要麼就說不懂,要麼就去學。其實你真正鼓起勇氣,開始認真去學習這麼技術的時候,會發現其實沒有那麼神秘。當然,馬上又會有新的神秘的東西出現,這個過程又會重複。但你就是在這樣迴圈反覆中成長的,產品是這樣,人也是這樣。
我們從資料上看看資料科學的現狀吧。從最大的職業社交**領英(linkedin)的資料看來,資料科學家職位的年薪在7.5萬~ 17萬美元之間,中位數是11.3萬美元。
其中僱傭資料科學家的公司主要集中在微軟、ibm、fackbook、亞馬遜、google這些計算機網際網路公司,圖3為前10名僱傭資料科學家最多的公司。
圖3 前10名僱傭資料科學家最多的公司
資料科學家所處的行業也集中在科技或者研究性組織,圖4是排名前10的行業。
圖4 前10名資料科學家集中的行業
不同公司的資料科學團隊架構不一樣。主要有如下2種:
資料科學家這個職位還比較新,所以從團隊建設和職業軌跡上都還在發展,具有很好的前景。希望你能成為乙個不斷思考,終生學習的資料科學家!
附錄:r**
下面是文章中兩幅圖的r**,感興趣的讀可以執行下面的**:
library(ggplot2)
library(dplyr)
# 前10的公司
df %
select(companies, comct)
colnames(df)
df$company
ggplot(df, aes(x=company, y = counts, fill=company))+
geom_bar(stat="identity")+theme_minimal() +
coord_flip()+ theme(legend.position="none")
# 前10的行業
df %
select(industries, comct)
colnames(df)
df$industry
ggplot(df, aes(x=industry, y = counts, fill=industry))+
geom_bar(stat="identity")+theme_minimal() +
coord_flip() + theme(legend.position="none")
如何成為一名資料科學家
作者簡介 在回答這個問題之前,希望你先想想另外乙個問題 為什麼要成為資料科學家?當然,如果你是為了10萬美元的年薪也無可厚非,但是我衷心希望你能將這個職業和自己的價值感掛鉤。因為成為資料科學家的路途會很辛苦,但如果你將其看成是實現個人價值的一種方式,那麼追尋目標才能帶來長久的成就感,在這個過程中會感...
轉型為一名資料科學家的正確開啟方式
摘要 如果你是一名初級入門者,或者是一名軟體工程師,亦或者是一名數學物理系畢業生,想要轉型為一名資料科學家,按照我的建議一步乙個腳印的去做,你會事半功倍。維基百科是你在資料科學領域解惑最佳的方式之一,但它所提供的資訊要麼就是特別簡單,要麼就是特別複雜。同樣的,在資料科學職業建議這方面也一樣 有些帖子...
如何成為優秀的科學家
打工久了自然就會遇到瓶頸,通常在遇到挫折時才會發現瓶頸,這時你就需要好好反思一下自己了。平時工作時你很難全面地認識自己,只有在和朋友八卦或者看一些好文時,你才能接觸多方面的資訊,才能有所反思。下面是一篇好文,講述了一些科研圈的潛規則,以及如何成為一名優秀的科研工作者。q cell stem cell...