精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

數據科學家應該擁有的好習慣

責任編輯:editor004

2016-12-07 11:57:53

摘自:網絡大數據

在實際的數據分析過程中,數據可視化可以揭示很多insights:從選擇什么樣的模型,選擇哪些feature建模,到如何分析結果,解釋結果等等。

摘要:分析數據前,一定要盡可能多的進行數據可視化!可視化!可視化!

數據分析的好習慣

1. 分析數據前,一定要盡可能多的進行數據可視化!可視化!可視化!做exploratory data analysis

我上過的幾乎所有的應用性的統計課程上的老師都會強調這一點。這個習慣對于數據科學家、統計學家來說估計是最最實用的。

在實際的數據分析過程中,數據可視化可以揭示很多insights:從選擇什么樣的模型,選擇哪些feature建模,到如何分析結果,解釋結果等等。

給一個很著名的例子, Anscombe's quartet (安斯庫姆四重奏):這個例子包含四組數據。每組數據有11個(x, y)數據樣本點。

四組數據樣本里x的均值方差全相等,y的均值方差基本相等,x與y的相關系數也很接近。

導致的結果是,四組數據線性回歸的結果基本一樣。但是,這四組數據本身差別很大。如下圖。

  如果不做可視化,簡單跑一個線性回歸,我們只能得到同樣的回歸線。

數據可視化后,很直觀的,左上圖是傳統的線性回歸;右上圖需要high-order nonlinear term;左下圖x和y是線性關系,但是有outlier;右下圖x和y沒有線性關系,也有outlier, etc.

每一個數據科學家都應該熟悉各種圖的畫法,更重要的是,不同的圖如何反映不同的信息以及面對不同的數據類型時,應該選擇哪種圖才能最好的揭示數據里蘊含的信息。

為此,強烈推薦關于R里ggplot包的教程:ggplot2 - Elegant Graphics for Data Analysis

當然另一方面,如果數據量太大維度太高,數據可視化做起來就比較困難。這時候就需要一些經驗技巧了。

2.跑完程序得到模型結果時,一定提醒自己:任務只完成50%,分析,驗證,解釋結果才是根本

很多時候,我們以為寫完code跑完程序就完事了。能做到這一步只能算是一個合格的data analyst。這離數據科學家,統計學家還差遠了。

分析,驗證,解釋結果才是根本! 這個過程更需要data sense, domain knowledge, and statistical expertise.

在拿到結果的時候,一定要多問自己為什么。

模型assumptions是否滿足?結果是否make sense?能否解答research question?

特別當結果不符合expectation時,要么有新發現,要么有錯誤!如果有錯,錯在哪里?

如果模型假設不成立,如何修正?是否有outliers,如何處理?

或有missing values,missing的機制是啥樣的(missing at random, completely at random, or NOT at random)?

是否有multicollinearity?

數據收集是否有bias (如selection bias)?

建模是否忽略了confounding factors (Simpson's paradox)?

3. 養成story-telling的習慣

把分析結果跟你的boss或者collaborator講!務必讓他們明白!這個太需要技巧了, 特別是當你的collaborator是layperson的時候。

不會說只能等著被虐,哪怕analysis做的再好!

數據科學的好習慣

1、永遠不要輕信自己的分析結果,多用業務和常識去檢驗

很多時候,我們的分析都是含有一些潛在的假設,而在分析過程中被忽略。比如最經典的案例是在1948年,蓋洛普錯誤地預測了杜威能擊敗杜魯門而當選總統。

原因是多方面的,但是抽樣中的潛在不平均是不可否認的!再比如有個人分析結果得到剛畢業的專科的平均薪資比同專業的本科要高,就找一堆理由來說明這個結論。

但是領導說這個不符合常識,打回去重新分析。之后發現是因為樣本男女比例不均衡導致的。

所以,我們不要輕信自己的分析結果,尤其是不能給自己的分析找正向的理由!

因為只有你找理由,總會能給自己的結論找到一堆理由。有多從實際出發,如果不符合常識,那就更要多方面論證,才能發聲!否則,就會是個笑話!

2、閱讀人文:數據科學不僅是一門科學,也是一門藝術

數據科學,你可以認為是一門探索人性的科學。

我經常跟周圍做數據或者IT人的說的一點是,因為我們是做數據或者寫一些代碼的,這里的數字是1就是1,不會是2,TRUE了就不會是FALSE,所以做久了,人容易偏執,不會享受生活,那就無法把藝術引進!

這里也舉一個例子,美國有一家大型商場,業務經理想能否預測一個客戶是否是孕婦,以此來針對性的營銷呢?

他們的數據科學家通過分析找到了一個模型來預測。那么他們是直接把孕婦相關產品推薦給客戶嗎?

不是的,因為這個數據科學家不僅是數學好還是一個社會學家,他說如果全部推薦相關產品,那么客戶會覺得自己的隱私被侵犯,甚至會覺得反感,所以他的策略是把真正想要推薦的東西放在一堆其他東西里。

當然,這里只是簡寫,實際過程非常有趣。

3、了解行業信息和業務信息

這一點非常重要。分析和挖掘,最終都是要落到具體的業務上來的。所以做數據,不能脫離業務和行業規律。了解行業信息,能夠讓你在分析的時候更加的接地氣、更好的把握分析框架!

尤其是,聯系剛才說的第一點,你積累的行業信息和業務信息都會幫助你檢驗你的分析,同時讓你更還的認識到什么樣的分析是有價值的分析。

對于業務中的亂七八糟的各種概念更是要深入理解,不能停留在表面。有時候,一個業務概念理解失誤(比如0是否有參與計算),會導致分析出完全相反的結論。

據說,數據分析會導致經驗累積加速,簡單的說一般業務人員工作10年的工作經驗,數據分析5年就能掌握。

4、好奇心與多溝通

愛因斯坦說過,提出一個好問題比找到一個合適的答案更重要!

在我個人經驗中,按照既定的一些分析框架分析,一般都只是完成了既定的任務而已。但是,你對分析中的一些異常多問幾個為什么,很容易找到一些業務的突破口。

比如你分析銷售業績,你發現一個人,成單比例總是比別人高,甚至有時候比特別有經驗的人還高,你就問問為什么呢?否則,你就只能發現這個數字而已。

后來,你通過分析和直接詢問等方法,發現他發現了新注冊的用戶容易成單,所以每天盯著新用戶呢!

當然,這樣的例子是比較多的,比如為什么要讓用戶自己選擇一些信息呢?然后一個數據產品就出來了。

5、多實踐與多走一步

這里涉及到模型了,也是我個人做的比較多的地方。

在數值計算(或者任何其他工程領域)里,知道一個東西的基本算法和寫出一個能在實際中工作得很好的程序之間還是有一段不小的距離的。

有很多可能看似無關緊要的小細節小 trick,可能會對結果帶來很大的不同。

當然這樣的現象其實也很合理:因為理論上的工作之所以漂亮正是因為抓住了事物的主要矛盾,忽略“無關”的細節進行了簡化和抽象,從而對比較“干凈”的對象進行操作,在一系列的“assumption”下建立起理論體系。

但是當要將理論應用到實踐中的時候,又得將這些之前被忽略掉了的細節全部加回去,得到一團亂糟糟,在一系列的“assumption”都不再嚴格滿足的條件下找出會出現哪些問題并通過一些所謂的“engineering trick”來讓原來的理論能“大致地”繼續有效。

這些東西大概就主要是 Engineer 們所需要處理的事情了吧?這樣說來 Engineer 其實也相當不容易。這樣的話其實 Engineer 和 Scientist 的界線就又模糊了,就是工作在不同的抽象程度下的區別的樣子。

在工作和平時學習練習中,都是這樣。很多人問的太多,做的太少,導致眼高手低。比如你問用Ensemble,會怎么怎么樣呢?對哇,很多人能問這個問題,但是就是不去試一試。

再比如,有偏樣本的問題,有過抽樣、欠抽樣、閾值調整等等方法,都可以去自己實踐一下,才會有更加直觀的認識,否則只停留在討論階段是沒用的。多走一步,每個問題都是自己成長的階梯。

對于其他的,比如責任心、細心啥的,這些是其他職業也要求的,而專業性,這個就更不用說了。

鏈接已復制,快去分享吧

企業網版權所有?2010-2025 京ICP備09108050號-6京公網安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 永寿县| 呈贡县| 宝鸡市| 东乡族自治县| 磐石市| 中山市| 五家渠市| 长乐市| 丘北县| 印江| 南丰县| 封开县| 百色市| 驻马店市| 常德市| 保亭| 永善县| 原阳县| 沙雅县| 九江县| 伊宁市| 辉南县| 开江县| 喀什市| 南京市| 临澧县| 蕉岭县| 康马县| 察雅县| 石屏县| 伊川县| 建阳市| 锡林郭勒盟| 青岛市| 克什克腾旗| 威宁| 饶平县| 汉阴县| 托克托县| 南丹县| 卓尼县|