本文的主題是Hadoop+Spark大數(shù)據(jù)分析與機(jī)器學(xué)習(xí)。眾所周知,Hadoop是運(yùn)用最多的大數(shù)據(jù)平臺(tái),然而Spark 異軍突起,與Hadoop兼容而且運(yùn)行速度更快,各大公司也開(kāi)始加入Spark的開(kāi)發(fā)。例如,IBM公司加入Apache Spark社區(qū),打算培育百萬(wàn)名數(shù)據(jù)科學(xué)家。谷歌(Google)公司與微軟公司也分別應(yīng)用了Spark的功能來(lái)構(gòu)建服務(wù)、發(fā)展大數(shù)據(jù)分析云與機(jī)器學(xué)習(xí)平臺(tái)。這些大公司的加入,也意味著未來(lái)更多公司會(huì)采用Hadoop+ Spark進(jìn)行大數(shù)據(jù)的數(shù)據(jù)分析。
然而,目前市面上雖然很多大數(shù)據(jù)的書(shū),但是多半偏向理論或應(yīng)用層面的介紹,網(wǎng)絡(luò)上的信息雖然很多,但是也很雜亂。本文希望能夠用淺顯易懂的原理介紹和說(shuō)明,再加上上機(jī)實(shí)踐操作、范例程序,來(lái)降低大數(shù)據(jù)技術(shù)的學(xué)習(xí)門檻,帶領(lǐng)讀者進(jìn)入大數(shù)據(jù)與機(jī)器學(xué)習(xí)的領(lǐng)域。當(dāng)然整個(gè)大數(shù)據(jù)的生態(tài)系非常龐大,需要學(xué)習(xí)的東西太多。希望讀者通過(guò)本文的學(xué)習(xí),有了基本的概念后,能比較容易踏入這個(gè)領(lǐng)域,以便繼續(xù)深入與研究其他大數(shù)據(jù)的相關(guān)技術(shù)。
文檔內(nèi)容簡(jiǎn)介
本文檔從淺顯易懂的“大數(shù)據(jù)和機(jī)器學(xué)習(xí)”原理介紹和說(shuō)明入手,講述大數(shù)據(jù)和機(jī)器學(xué)習(xí)的基本概念,如:分類、分析、訓(xùn)練、建模、預(yù)測(cè)、機(jī)器學(xué)習(xí)(推薦引擎)、機(jī)器學(xué)習(xí)(二元分類)、機(jī)器學(xué)習(xí)(多元分類)、機(jī)器學(xué)習(xí)(回歸分析)和數(shù)據(jù)可視化應(yīng)用。為降低讀者學(xué)習(xí)大數(shù)據(jù)技術(shù)的門檻,書(shū)中提供了豐富的上機(jī)實(shí)踐操作和范例程序詳解,展示了如何在單臺(tái)Windows系統(tǒng)上通過(guò)Virtual Box虛擬機(jī)安裝多臺(tái)Linux 虛擬機(jī),如何建立Hadoop集群,再建立Spark開(kāi)發(fā)環(huán)境。文中介紹搭建的上機(jī)實(shí)踐平臺(tái)并不限制于單臺(tái)實(shí)體計(jì)算機(jī)。對(duì)于有條件的公司和學(xué)校,參照文中介紹的搭建過(guò)程,同樣可以將實(shí)踐平臺(tái)搭建在多臺(tái)實(shí)體計(jì)算機(jī)上,以便更加接近于大數(shù)據(jù)和機(jī)器學(xué)習(xí)真實(shí)的運(yùn)行環(huán)境。
章節(jié)介紹
第1章大數(shù)據(jù)與機(jī)器學(xué)習(xí):介紹大數(shù)據(jù)、Hadoop、HDFS、MapReduce、 Spark、 機(jī)器學(xué)習(xí)
第2章VirtualBox虛擬機(jī)軟件的安裝:上機(jī)實(shí)踐操作。安裝Virtual Box虛擬機(jī),讓你可以在Windows系統(tǒng)上安裝多臺(tái)Linux虛擬機(jī)
第3章Ubuntu Linux操作系統(tǒng)的安裝:上機(jī)實(shí)踐操作。安裝Ubuntu Linux操作系統(tǒng)
第4章Hadoop Single Node Cluster的安裝:上機(jī)實(shí)踐操作。安裝單臺(tái)機(jī)器的Hadoop Single Node Cluster
第5章Hadoop Multi Node Cluster的安裝:上機(jī)實(shí)踐操作。安裝多臺(tái)機(jī)器的Hadoop Multi Node Cluster
第6章Hadoop HDFS命令:上機(jī)實(shí)踐操作。示范如何使用HDFS命令
第7章Hadoop MapReduce:介紹Hadoop MapReduce的原理。WordCount.java范例程序。示范使用Hadoop MapReduce計(jì)算文章內(nèi)的每一個(gè)單詞出現(xiàn)的次數(shù)
第8章Spark的安裝與介紹:上機(jī)實(shí)踐操作。Spark安裝與spark-shell交互界面在不同環(huán)境中的運(yùn)行示范
第9章Spark RDD:上機(jī)實(shí)踐操作。介紹Spark最基本的功能RDD ( Resilient Distributed Dataset,彈性分布式數(shù)據(jù)集)的基本運(yùn)算
第10章Spark的集成開(kāi)發(fā)環(huán)境:上機(jī)實(shí)踐操作。安裝集成開(kāi)發(fā)環(huán)境(IDE)。WordCount.scala范例程序。示范使用SparkMapReduce計(jì)算文章內(nèi)的每一個(gè)單詞出現(xiàn)的次數(shù)
第11章創(chuàng)建推薦弓|擎:介紹如何使用Spark MLlib 以MovieLens 數(shù)據(jù)集建立電影的推薦引擎(Recommendation Engine)。Recommend.scala范例程序。示范如何獲取數(shù)據(jù)、訓(xùn)練模型、推薦用戶或電影,建立電影的推薦系統(tǒng)。AlsEvalution.scala范例程序。示范如何調(diào)試推薦引擎參數(shù),找出最佳的參數(shù)組合
第12章StumbleUpon數(shù)據(jù)集:StumbleUpon數(shù)據(jù)集屬于二元分類問(wèn)題,可以根據(jù)網(wǎng)頁(yè)的特征預(yù)測(cè)哪些網(wǎng)頁(yè)是暫時(shí)性的或是可以長(zhǎng)久存在的
第13章決策樹(shù)二元分類:RunDecisionTreeBinary.scala范例程序。示范如何使用決策樹(shù)二元分類分析StumbleUpon數(shù)據(jù)集,預(yù)測(cè)哪些網(wǎng)頁(yè)是暫時(shí)性的或可以長(zhǎng)久存在的,并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第14章邏輯回歸二元分類:RunLogisticRegressionWithSGDBinary.scala范例程序。示范如何使用決策樹(shù)二元分類分析StumbleUpon數(shù)據(jù)集,預(yù)測(cè)哪些網(wǎng)頁(yè)是暫時(shí)性的或是可以長(zhǎng)久存在的,并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第15章支持向量機(jī)SVM二元分類:RunSVMWithSGDBinary.scala范例程序。示范如何使用支持向量機(jī)SVM二元分類分析StumbleUpon數(shù)據(jù)集,預(yù)測(cè)哪些網(wǎng)頁(yè)是暫時(shí)性的或是可以長(zhǎng)久存在的,并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第16章樸素貝葉斯二元分類:RunNaiveBayesBinary.scala范例程序。示范如何使用樸素貝葉斯(Naive-Bayes)二元分類分析StumbleUpon 數(shù)據(jù)集,預(yù)測(cè)哪些網(wǎng)頁(yè)是暫時(shí)性的或是可以長(zhǎng)久存在的,并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第17章決策樹(shù)多元分類:RunDecisionTreeMulti.scala范例程序。示范如何使用決策樹(shù)多元分類分析Covtype數(shù)據(jù)集(森林覆蓋植被),根據(jù)不同的土地條件可以預(yù)測(cè)該地的植被,并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第18章決策樹(shù)回歸分析:RunDecisionTreeRegression.scala范例程序。示范介紹決策樹(shù)回歸分析,分析Bike Sharing數(shù)據(jù)集。根據(jù)天(和假日條件,可以預(yù)測(cè)每一小時(shí)租借的數(shù)量, 并且找出最佳的參數(shù)組合,提高預(yù)測(cè)準(zhǔn)確度
第19章使用Apache Zeppelin數(shù)據(jù)可視化:上機(jī)實(shí)踐操作。安裝Zeppelin并使用ml-100k數(shù)據(jù)集,示范使用Spark SQL進(jìn)行數(shù)據(jù)分析與數(shù)據(jù)可視化
一般人可能會(huì)認(rèn)為大數(shù)據(jù)需要在很多臺(tái)機(jī)器的環(huán)境下才能學(xué)習(xí),實(shí)際上通過(guò)虛擬機(jī)的方法,就能在自家電腦上演練建立Hadoop集群,并且建立Spark開(kāi)發(fā)環(huán)境。本書(shū)以實(shí)際操作介紹Hadoop中的MapReduce與HDFS基本概念,以及Spark中的RDD與MapReduce基本概念。
以大數(shù)據(jù)分析實(shí)際案例-MoiveLens(電影推薦引擎)、StumbleUpon (網(wǎng)頁(yè)二元分類)、CovType (森林覆蓋植被運(yùn)算)、Bike Sharing ( Ubike類租賃預(yù)測(cè)分析)。配合范例程序代碼詳解各種機(jī)器學(xué)習(xí)算法,示范如何獲取數(shù)據(jù)、分析數(shù)據(jù)、建立模型、預(yù)測(cè)結(jié)果,由淺入深地介紹Spark機(jī)器學(xué)習(xí)。
這份《Hadoop+Spark大數(shù)據(jù)》小編已經(jīng)為大家整理好了,由于文檔的內(nèi)容太多,小編沒(méi)有辦法在這里為大家一一展示,如果需要這份文檔,只需要點(diǎn)此加入即可,記住一定要轉(zhuǎn)發(fā)!謝謝大家!