回首頁  
帳號
 
關於博碩 博碩好讀 校園圖書 MOCC認證 下載教學 元學堂

博碩好讀
  新書推薦
  出版預告
  名家名著
  iT達人祕笈
 

分類索引

 

出版總覽

 

讀者服務

  徵求作者
 
首頁 >> 書籍介紹
 
 
點我可放大圖片
 
書名:Python+Spark 2.0+Hadoop機器學習與大數據分析實戰
書號:MP21622 作者:林大貴 ISBN: 978-986-434-153-5
定價:NT$680元 印刷:單色 頁數:576頁
書籍規格:17*23 上市日:2016/10/2 譯者:(無)
學習定位:無 本書附件:無   快速前往 範例
前往購買 >> 天瓏 類別:電腦技術  
       
快速前往 快速前往        

 

 

    ◆本書淺顯易懂的原理說明
    ◆Step by Step實機操作
    ◆範例程式詳細解說
    ◆大幅降低機器學習與大數據技術的學習門檻

    機器學習正熱門
    機器學習是近20多年興起的多領域學科,機器學習演算法可從大量數據中建立模型,並利用模型對未知數據進行預測。近年來各大公司google、facebook、microsoft、IBM…等,全力投入機器學習研究與應用,以Google為例,Google早已將機器學習,運用在垃圾郵件判斷、自動回覆、照片分類與搜尋、翻譯、語音辨識等功能。在你在不知不覺中,機器學習已經讓日常生活更便利。

    「大數據」與「機器學習」相輔相成
    大數據的特性: 大量資料、多樣化、速度快。因此如何從大量資料中擷取出有用的資訊,是大數據的主要課題。機器學習需要大量資料進行訓練,並且訓練過程需大量運算。正好大數據的興起帶來大量資料,以及可儲存大量數據的分散式儲存技術,例如:Hadoop HDFS、NoSQL..。還有分散式運算可進行大量運算,例如Spark 基於記憶體內的分散式運算框架,可以大幅提升效能。

    Python與Spark與Hadoop的完美結合
    本書的主題是Python+Spark+Hadoop機器學習與大數據分析:使用Python開發Spark應用程式,具有多重好處,既可以享有Python語言特性所帶來的好處:程式碼簡明、易學習、高生產力的特質。再加上Spark基於記憶體內的分散式運算框架,非常適合需多次重覆運算的機器學習演算法,可以大幅提升效能。Spark可輕易讀取Hadoop分散式儲存技術HDFS。Spark也可以在Hadoop 新MapReduce架構YARN執行。

    Python與Spark機器學習與資料視覺化
    Python資料分析的相關模組如NumPy、Matplotlib、Pandas、Scikit-learn,讓Python成為資料分析主要語言之一。使用Python開發Spark機器學習應用時,你仍然可以繼續使用這些模組,這對於Python開發者帶來很大的方便,例如:你可以使用Spark ML Pipeline機器學習、訓練、預測。並且可以將Spark DataFrames轉換為Pandas DataFrame。轉換後你就可以運用Python豐富的資料視覺化套件,例如matplotlib、Bokeh…等,進行資料視覺化。

    本書特色:實機操作建置Spark+Hadoop機器學習與大數據平台
    一般人學習大數據的困難是,沒有多台機器建立分散式系統,但是透過本書介紹使用Virtual Box虛擬機器的方法,就能在自家電腦演練建立Hadoop叢集,並且建立Python Spark機器學習開發環境。

    本書特色:以實務範例程式學會Python+Spark機器學習與大數據
    以大數據實務案例MovieLens(電影喜好推薦引擎)、StumbleUpon (網頁二元分類)、Covtype(森林覆蓋多元分類),BikeSharing(類Ubike租借數量迴歸分析),介紹如何使用Python Spark運用機器學習演算法:決策樹、邏輯迴歸、支持向量機器SVM、單純貝氏。進行資料處理、訓練、建立模型、訓練驗證找出最佳模型、預測結果。
 

    Chapter01 Python Spark機器學習與Hadoop大數據
    1.1 機器學習介紹
    1.2 Spark介紹
    1.3 Spark資料處理RDD、DataFrame、Spark SQL
    1.4 使用Python開發Spark機器學習與大數據應用
    1.5 Python Spark 器學習
    1.6 Spark ML Pipeline機器學習流程介紹
    1.7 Spark 2.0介紹
    1.8 大數據定義
    1.9 Hadoop簡介
    1.10 Hadoop HDFS分散式檔案系統
    1.11 Hadoop MapReduce介紹
    1.12 結論

    Chapter02 Virtual Box虛擬機器軟體安裝
    2.1 VirtualBox下載安裝
    2.2 設定Virtual Box儲存資料夾
    2.3 在VirtualBox建立虛擬機器
    2.4 結論

    Chapter03 Ubuntu Linux作業系統安裝
    3.1 Ubuntu Linux的作業系統安裝
    3.2 在Virtual Box設定Ubuntu虛擬光碟檔案
    3.3 開始安裝Ubuntu
    3.4 啟動Ubuntu
    3.5 安裝Guest Additions
    3.6 設定預設輸入法
    3.7 設定終端機程式
    3.8 設定終端機白底黑字
    3.9 設定共用剪貼簿
    3.10 設定最佳下載伺服器
    3.11 結論

    Chapter04 Hadoop Single Node Cluster安裝
    4.1 安裝JDK
    4.2 設定SSH無密碼登入
    4.3 下載安裝Hadoop
    4.4 設定Hadoop環境變數
    4.5 修改Hadoop組態設定檔
    4.6 建立與格式化HDFS目錄
    4.7 啟動Hadoop
    4.8 開啟Hadoop Resource Manager Web介面
    4.9 NameNode HDFS Web介面
    4.10 結論

    Chapter05 Hadoop Multi Node Cluster安裝
    5.1 複製Single Node Cluster到data1
    5.2 VirtualBox介面卡設定
    5.3 設定data1伺服器
    5.4 複製data1伺服器至data2、data3、master
    5.5 設定data2伺服器
    5.6 設定data3伺服器
    5.7 設定master伺服器
    5.8 master連線至data1、data2、data3建立HDFS目錄
    5.9 建立與格式化NameNode HDFS目錄
    5.10 啟動Hadoop Multi Node Cluster
    5.11 開啟Hadoop ResourceManager Web介面
    5.12 開啟NameNode Web介面
    5.13 停止Hadoop Multi Node Cluster
    5.14 結論

    Chapter06 Hadoop HDFS命令介紹
    6.1 啟動Hadoop Multi-Node Cluster
    6.2 建立與查看HDFS目錄
    6.3 從本機複製檔案到HDFS
    6.4 將HDFS 上的檔案複製到本機
    6.5 複製與刪除HDFS檔案
    6.6 Hadoop HDFS Web UI介面瀏覽HDFS
    6.7 結論

    Chapter07 Hadoop MapReduce介紹
    7.1 wordCount.java介紹
    7.2 編輯wordCount.java
    7.3 編譯wordCount.java
    7.4 建立測試文字檔
    7.5 執行wordCount.java
    7.6 查看執行結果
    7.7 結論

    Chapter08 Python Spark介紹與安裝
    8.1 Scala介紹與安裝
    8.2 安裝SPARK 2.0
    8.3 啟動pyspark互動介面
    8.4 設定pyspark顯示訊息
    8.5 建立測試文字檔
    8.6 本機執行pyspark程式
    8.7 在Hadoop YARN執行pyspark
    8.8 建置Spark standalone cluster執行環境
    8.9 在Spark standalone執行pyspark
    8.10 Spark Web UI介面
    8.11 結論

    Chapter09 在IPython Notebook 執行Python Spark程式
    9.1 安裝Anaconda
    9.2 在IPython Notebook使用Spark
    9.3 開啟IPython Notebook筆記本
    9.4 插入程式儲存格
    9.5 加入註解與設定程式碼說明標題
    9.6 關閉IPython Notebook
    9.7 使用IPython Notebook在hadoop yarn-client模式執行
    9.8 使用IPython Notebook在Spark Stand Alone模式執行
    9.9 在不同的模式執行IPython Notebook指令整理
    9.10 結論

    Chapter10 Python Spark RDD介紹
    10.1 RDD的特性
    10.2 開啟IPython Notebook
    10.3 基本RDD「轉換」運算
    10.4 多個RDD「轉換」運算
    10.5 基本「動作」運算
    10.6 RDD Key-Value基本「轉換」運算
    10.7 多個RDD Key-Value「轉換」運算
    10.8 Key-Value「動作」運算
    10.9 Broadcast廣播變數
    10.10 accumulator累加器
    10.11 RDD Persistence持久化
    10.12 使用Spark 建立WordCount
    10.13 Spark WordCount詳細解說
    10.14 結論

    Chapter11 Python Spark整合開發環境介紹
    11.1 下載與安裝eclipse Scala IDE
    11.2 安裝pyDev
    11.3 設定字串替代變數
    11.4 PyDev 設定Python程式庫
    11.5 PyDev 設定anaconda2程式庫路徑
    11.6 PyDev 設定Spark Python程式庫
    11.7 PyDev 設定環境變數
    11.8 新增PyDev專案
    11.9 加入WordCount.py程式
    11.10 輸入WordCount.py程式
    11.11 建立測試檔案並上傳測試檔至HDFS目錄
    11.12 使用spark-submit來執行WordCount程式
    11.13 在hadoop yarn-client執行WordCount程式
    11.14 在Spark Standalone Cluster 執行WordCount程式
    11.15 在eclipse外部工具執行Python Spark程式
    11.16 在eclipse執行spark-submit yarn-client
    11.17 在eclipse執行spark-submit Standalone
    11.18 結論

    Chapter12 Python Spark建立推薦引擎
    12.1 推薦演算法介紹
    12.2 「推薦引擎」大數據分析使用情境
    12.3 ALS 推薦演算法介紹
    12.4 如何蒐集資料?
    12.5 啟動IPython Note Book
    12.6 如何資料準備?
    12.7 如何訓練模型?
    12.8 如何使用模型進行推薦?
    12.9 顯示推薦的電影的名稱
    12.10 建立Recommend 推薦系統
    12.11 執行RecommendTrain.py推薦程式碼
    12.12 建立Recommend.py推薦程式碼
    12.13 在eclipse執行Recommend.py
    12.14 結論

    Chapter13 Python Spark MLlib決策樹二元分類
    13.1 決策樹介紹
    13.2 「StumbleUpon Evergreen」大數據問題
    13.3 決策樹二元分類機器學習
    13.4 如何蒐集資料?
    13.5 使用iPython Note Book 示範
    13.6 如何資料準備?
    13.7 如何訓練模型?
    13.8 如何使用模型進行預測?
    13.9 如何評估模型的準確率?
    13.10 模型的訓練參數如何影響準確率?
    13.11 如何找出準確率最高的參數組合?
    13.12 如何確認是否Overfitting(過度訓練)?
    13.13 建立RunDecisionTreeBinary.py程式
    13.14 開始輸入RunDecisionTreeBinary.py程式
    13.15 執行RunDecisionTreeBinary.py
    13.16 查看DecisionTree的分類規則
    13.17 結論

    Chapter14 Python Spark MLlib邏輯迴歸二元分類
    14.1 邏輯迴歸分類介紹
    14.2 RunLogisticRegressionWithSGDBinary.py程式說明
    14.3 執行RunLogisticRegressionWithSGDBinary.py進行參數評估
    14.4 執行找出最佳參數組合
    14.5 修改程式使用最佳參數進行預測
    14.6 結論

    Chapter15 Python Spark MLlib 支援向量機器SVM二元分類
    15.1 支援向量機器SVM演算法基本概念
    15.2 執行SVMWithSGD.py進行參數評估
    15.3 執行SVMWithSGD.py訓練評估參數,找出最佳的參數組合
    15.4 執行SVMWithSGD.py使用最佳參數進行預測
    15.5 結論

    Chapter16 Python Spark MLlib單純貝氏二元分類
    16.1 單純貝氏分析原理介紹
    16.2 RunNaiveBayesBinary.py程式說明
    16.3 執行RunNaiveBayesBinary.py進行參數評估
    16.4 執行訓練評估參數,找出最好的參數組合
    16.5 修改RunNaiveBayesBinary.py直接使用最佳參數進行預測
    16.6 結論

    Chapter17 Python Spark MLlib決策樹多元分類
    17.1 「森林覆蓋樹種」大數據問題分析情境
    17.2 UCI Covertype資料集介紹
    17.3 下載與查看資料
    17.4 修改PrepareData()資料準備
    17.5 修改trainModel 訓練模型程式
    17.6 使用訓練完成的模型預測資料
    17.7 執行RunDecisionTreeMulti.py進行參數評估
    17.8 執行RunDecisionTreeMulti.py訓練評估參數,找出最好的參數組合
    17.9 執行RunDecisionTreeMulti.py不進行訓練評估
    17.10 結論

    Chapter18 Python Spark MLlib決策樹迴歸分析
    18.1 Bike Sharing大數據問題分析
    18.2 Bike Sharing資料集
    18.3 下載與查看資料
    18.4 修改PrepareData()資料準備
    18.5 修改以DecisionTree.trainRegressor訓練模型
    18.6 以RMSE 評估模型準確率
    18.7 訓練評估找出最好的參數組合
    18.8 使用訓練完成的模型預測資料
    18.9 執行RunDecisionTreeMulti.py進行參數評估
    18.10 執行RunDecisionTreeMulti.py訓練評估參數,找出最好的參數組合
    18.11 執行RunDecisionTreeMulti.py不進行訓練評估
    18.12 結論

    Chapter19 Python Spark SQL、DataFrame、RDD資料統計與視覺化
    19.1 RDD、DataFrame、Spark SQL比較
    19.2 建立RDD、DataFrame 與Spark SQL tempTable
    19.3 SELECT顯示部分欄位
    19.4 增加計算欄位
    19.5 篩選資料
    19.6 單一欄位排序資料
    19.7 多欄位排序資料
    19.8 顯示不重複資料
    19.9 群組統計資料
    19.10 Join關聯資料
    19.11 以Pandas DataFrame繪圖
    19.12 結論

    Chapter20 Spark ML Pipeline機器學習流程二元分類
    20.1 資料準備
    20.2 介紹機器學習pipeline流程的元件
    20.3 建立機器學習pipeline流程
    20.4 使用pipeline進行資料處理與訓練
    20.5 使用pipelineModel進行預測
    20.6 評估模型的準確率
    20.7 使用TrainValidation進行訓練驗證找出最佳模型
    20.8 使用crossValidation交叉驗證找出最佳模型
    20.9 使用隨機森林RandomForestClassifier分類器
    20.10 結論

    Chapter21 Spark ML Pipeline機器學習流程多元分類
    21.1 資料準備
    21.2 建立機器學習pipeline流程
    21.3 使用dt_pipeline進行資料處理與訓練
    21.4 使用pipelineModel進行預測
    21.5 評估模型的準確率
    21.6 使用TrainValidation進行訓練驗證找出最佳模型
    21.7 結論

    Chapter22 Spark ML Pipeline機器學習流程迴歸分析
    22.1 資料準備
    22.2 建立機器學習pipeline流程
    22.3 使用dt_pipeline進行資料處理與訓練
    22.4 使用pipelineModel進行預測
    22.5 評估模型的準確率
    22.6 使用TrainValidation進行訓練驗證找出最佳模型
    22.7 使用crossValidation進行交叉驗證找出最佳模型
    22.8 使用GBT Regression
    22.9 結論

    Appendix A 本書範例程式下載與安裝說明
    A.1 下載範例程式
    A.2 開啟本書iPython Note Book範例程式
    A.3 開啟eclipse PythonProject範例程式

 

    林大貴

    作者從事IT產業多年,涉獵系統設計、網站開發、數位行銷與商業智慧等多領域,具備豐富實務開發經驗。近年來,開始從事書籍創作與教學,著重在人工智慧、機器學習、大數據等領域,並著有暢銷書《Hadoop+Spark大數據巨量分析與機器學習整合開發實戰》一書。

 

範例下載
 
  1. 範例 39.2MB
 
 
     

博碩文化客服信箱
 

[email protected]

 
文教業務團隊
台北、新北、桃園、基隆、宜蘭、花蓮、金門
汪 玉 鳳
LINE ID:0925177716
0925-177716
[email protected]
郭 南 彤
LINE ID:rgtech101
0917-727778
[email protected]
助理分機 519
新竹、苗栗、台中、彰化、南投、雲林
林 世 昌
LINE ID:0925275775
0925-275775
[email protected]
助理分機 519
嘉義、台南、高雄、屏東、台東、澎湖
林 月 玲
LINE ID:0926858627
0926-858627
[email protected]
助理分機 238
 
MOCC 認證小組
 
  林 雯 玲 電話:02-2696-2869 分機:623 [email protected]

 

 
 

 

博碩文化股份有限公司 DrMaster Press Co., Ltd.
台灣新北市汐止區新台五路一段112號10樓A棟
Building A, 10F, No.112, Xintai 5th Rd., Sec.1,Xizhi Dist., New Taipei City 221, Taiwan
Tel:02-2696-2869 Fax:02-2696-2867 劃撥帳號:17484299

Copyright© DrMaster Press Co., Ltd. All Rights Reserved.