計算技術一般用來分析數據,而理解數據則依賴於機器學習。多年來,對於大多數開發者來講,機器學習倒是很是遙遠、一直是難以企及的。算法
這多是如今收益最高,也是最受歡迎的一項技術之一。毫無疑問——做爲開發人員,機器學習是一個可以大展身手的舞臺。網絡
圖1:機器學習的構成機器學習
機器學習是簡單數據檢索與存儲的合理擴展。經過開發各類組件,使計算機更加智能學習和發生行爲。工具
機器學習使得挖掘歷史數據和預測將來趨勢成爲可能。你可能還沒意識到,但的確已經在使用機器學習,並受益頗多。與機器學習有關的例子不少,如搜索引擎產生結果、在線推薦、廣告投放、欺詐檢測以及垃圾郵件過濾等。oop
機器學習依賴數據進行決策。直覺雖然重要,但卻也很難超越經驗數據。學習
一旦你開始深刻探索機器學習,你會遇到如下幾個問題:大數據
1. 有監督與無監督的學習
2. 分類
3. 馬爾科夫模型、貝葉斯網絡等搜索引擎
Apache Mahout項目的目的是創建一個可擴展的機器學習庫。編碼
大數據分析與hadoop之間存在必定程度的重疊spa
Mahout內置聚類、分類以及協同過濾等算法。除此以外還有:
1. 基於矩陣分解的推薦系統
2. K-均值,模糊k-均值聚類算法
3. 隱含狄利克雷分配算法
4. 奇異值分解
5. 邏輯迴歸分類器
6. (互補)樸素貝葉斯分類器
7. 隨機森林分類器
機器學習曾經須要複雜的軟件與高端的計算機,以及數據科學家。。而對於如今的機器學習,即預測分析來說,所須要的是一個全管理的雲服務。
經過使用拖拽(drag-and-drop)與一些數據流圖就能夠進行一些實驗,就如寫代碼通常利用起高大上的算法。
對於統計與數據挖掘的來講,R是一個很受歡迎的開源項目。好消息是R可以很容易的集成到ML Studio中。我有不少朋友在使用機器學習的功能語言,如F#。可是很顯然的,R在此領域仍佔統治地位。
數據挖掘的測驗與調查顯示,近年來R受歡迎的程度逐漸加強。R是由新澤西的Auckland大學的Ross Ihaka 與Robert Gentleman發明的,目前由R核心開發組(R Development Core Team)負責研發,其中Chambers也是開發成員之一。R的命名主要是根據前兩個R做者名字的首字母。R是一個GNU項目,主要是用C語言與Fortran寫的。
理解機器學習的最好方法就是將分析分解爲3個問題:
1. 發生了什麼?
a) 從歷史角度去看
2. 將發生什麼?
a) 預測將來
3. 下一步應該怎麼作?
a) 規範與指引
1. 信息工做者
a) 一般使用自助服務工具Power BI:Office 365的Power BI是一種自我服務的事務智能解決途徑,可以經過BI Excel 與Office 365給信息工做者提供數據分析與鑑別數據深層事務預測可視化的能力。
2. IT專家
a) 涉及數據轉換、數據倉庫、建立數據分析立方體及數據建模
3. 數據科學家
a) 深層次的技術與技能,包括編碼、數學、統計以及機率
b) 可以經過一系列技術將機率用於預測(如將來18小時內價格上漲的機率爲42%)
c) 如蒙特卡羅(Monte Carlo)模擬,模型參數化
d) 數據科學家應具有的素質
i. 領域知識
ii. 對於科學方法的清晰理解:目標、假設、驗證、透明度
iii. 擅長數學與統計學
iv. 求知慾與極強的思考能力
v. 圖形化描述與溝通能力
vi. 高級計算與數據管理能力
學術背景
若是你想進入學校,經過學習成爲一個數據科學家,可選擇的課程以下:
1. 應用數學
2. 計算機科學
3. 經濟學
4. 統計學
5. 工程學
從數據科學中受益的行業包括: