本書每章一個主題,介紹了各種大數據分析技術與機器學習算法。本書能夠讓讀者掌握大數據分析和機器學習的相關技術的大致脈絡,為之后的進階學習提供參考與指導。本書適合大數據技術入門者、希望對大數據技術有所了解,以及想要學習大數據技術但是不知道應該從何處入手的讀者閱讀。
Vijay Srinivas Agneeswaran 博士,1998 年於SVCE 的馬德拉斯分校獲得計算機科學與工程專業的學士學位,2001 年獲取了印度理工學院馬德拉斯分校的碩士學位(研究性質),2008年又獲取了該校的博士學位。他曾在瑞士洛桑的聯邦理工學院的分布式信息系統實驗室(LSIR)擔任過一年的博士后研究員。之前7 年先后就職於Oracle、Cognizant 及Impetus,對大數據及雲領域的工程研發貢獻頗多。目前擔任Impetus 的大數據實驗室的執行總監。他的研發團隊在專利、論文、受邀的會議發言以及下一代產品創新方面都處於領導地位。他主要研究的領域包括大數據管理、批處理及實時分析,以及大數據的機器學習算法的實現范式。最近8 年來,他一直是計算機協會(ACM)以及電氣和電子工程師協會(IEEE)的專家成員,並於2012年12 月被推選為IEEE 的資深成員。他在美國、歐洲以及印度的專利局都申請過專利(並持有美國的兩項專利)。他在前沿的期刊及會議,包括IEEE transaction 上都發表過論文。他還是國內外多個會議的特邀發言人,譬如O』Reilly 的Strata 大數據系列會議。最近一次公開發表論文是在Liebertpub 的大數據期刊上。他與妻子及兒女一起居住在班加羅爾,對印度、埃及、巴比倫以及希臘古代的文化與哲學的研究非常感興趣。
前言
致謝
關於作者
1 引言:為什麼要超越 Hadoop Map-Reduce
Hadoop的適用范圍
大數據分析之機器學習實現的革命
第一代機器學習工具/范式
第二代機器學習工具/范式
第三代機器學習工具/范式
小結
參考文獻
2 何為伯克利數據分析棧(BDAS)
實現 BDAS的動機
Spark:動機
Shark:動機
Mesos:動機
BDAS的設計及架構
Spark:高效的集群數據處理的范式
Spark的彈性分布式數據集
Spark的實現
Spark VS分布式共享內存系統
RDD的表達性
類似 Spark的系統
Shark:分布式系統上的 SQL接口
Spark為 Shark提供的擴展
列內存存儲
分布式數據加載
完全分區智能連接
分區修剪
機器學習的支持
Mesos:集群調度及管理系統
Mesos組件
資源分配
隔離
容錯性
小結
參考文獻
3 使用 Spark實現機器學習算法
機器學習基礎知識
機器學習:隨機森林示例
邏輯回歸:概述
二元形式的邏輯回歸
邏輯回歸估計
多元邏輯回歸
Spark中的邏輯回歸算法
支持向量機
復雜決策面
支持向量機背后的數學原理
Spark中的支持向量機
Spark對 PMML的支持
PMML結構
PMML的生產者及消費者
Spark對朴素貝葉斯的 PMML支持
Spark對線性回歸的PMML支持
在Spark中使用MLbase進行機器學習
參考文獻
4 實現實時的機器學習算法
Storm簡介
數據流
拓撲
Storm集群
簡單的實時計算例子
數據流組
Storm的消息處理擔保
基於Storm的設計模式
分布式遠程過程調用
Trident:基於Storm的實時聚合
實現基於Storm的邏輯回歸算法
實現基於Storm的支持向量機算法
Storm對朴素貝葉斯PMML的支持
實時分析的應用
工業日志分類
互聯網流量過濾器
Storm的替代品
Spark流
D-Streams的動機
參考文獻
5 圖處理范式
Pregel:基於BSP的圖處理框架
類似的做法
開源的Pregel實現
Giraph
GoldenORB
Phoebus
Apache Hama
Stanford GPS
GraphLab
GraphLab:多核版本
分布式的GraphLab
PowerGraph
通過 GraphLab實現網頁排名算法
頂點程序
基於GraphLab實現隨機梯度下降算法
參考文獻
6 結論:超越Hadoop Map-Reduce的大數據分析
Hadoop YARN概覽
Hadoop YARN的動機
作為資源調度器的 YARN
YARN上的其他框架
大數據分析的未來是怎樣的
參考文獻
附錄 A代碼筆記