日本免费精品视频,男人的天堂在线免费视频,成人久久久精品乱码一区二区三区,高清成人爽a毛片免费网站

在線客服
Hadoop + Spark 大數(shù)據(jù)巨量分析與機器學習整合開發(fā)實戰(zhàn)圖書
人氣:25

Hadoop + Spark 大數(shù)據(jù)巨量分析與機器學習整合開發(fā)實戰(zhàn)

手把手教你學習Hadoop + Spark免費贈送范例程序下載 提供微博交流學習及技術(shù)支持

作者簡介

林大貴,作者從事IT產(chǎn)業(yè)多年,包括系統(tǒng)設(shè)計、網(wǎng)站開發(fā)等諸多領(lǐng)域,具備豐富實戰(zhàn)開發(fā)經(jīng)驗,多版多部具有影響力的作品。

目錄

第1章 大數(shù)據(jù)與機器學習 1

1.1 大數(shù)據(jù)定義 2

1.2 Hadoop簡介 2

1.3 Hadoop HDFS分布式文件系統(tǒng) 3

1.4 Hadoop MapReduce的介紹 5

1.5 Spark的介紹 6

1.6 機器學習的介紹 8

第2章 VirtualBox虛擬機軟件的安裝 11

2.1 VirtualBox的下載和安裝 12

2.2 設(shè)置VirtualBox語言版本 16

2.3 設(shè)置VirtualBox存儲文件夾 17

2.4 在VirtualBox創(chuàng)建虛擬機 18

第3章 Ubuntu Linux操作系統(tǒng)的安裝 23

3.1 下載安裝Ubuntu的光盤文件 24

3.2 在Virtual設(shè)置Ubuntu虛擬光盤文件 26

3.3 開始安裝Ubuntu 28

3.4 啟動Ubuntu 33

3.5 安裝增強功能 34

3.6 設(shè)置默認輸入法 38

3.7 設(shè)置“終端”程序 40

3.8 設(shè)置“終端”程序為白底黑字 42

3.9 設(shè)置共享剪貼板 43

第4章 Hadoop Single Node Cluster的安裝 46

4.1 安裝JDK 47

4.2 設(shè)置SSH無密碼登錄 50

4.3 下載安裝Hadoop 53

4.4 設(shè)置Hadoop環(huán)境變量 56

4.5 修改Hadoop配置設(shè)置文件 58

4.6 創(chuàng)建并格式化HDFS目錄 62

4.7 啟動Hadoop 63

4.8 打開Hadoop ResourceManager Web界面 66

4.9 NameNode HDFS Web界面 67

第5章 Hadoop Multi Node Cluster的安裝 69

5.1 把Single Node Cluster復(fù)制到data1 71

5.2 設(shè)置VirtualBox網(wǎng)卡 73

5.3 設(shè)置data1服務(wù)器 76

5.4 復(fù)制data1服務(wù)器到data2、data3、master 84

5.5 設(shè)置data2、data3服務(wù)器 87

5.6 設(shè)置master服務(wù)器 91

5.7 master連接到data1、data2、data3創(chuàng)建HDFS目錄 94

5.8 創(chuàng)建并格式化NameNode HDFS目錄 98

5.9 啟動Hadoop Multi Node Cluster 99

5.10 打開Hadoop ResourceManager Web界面 102

5.11 打開NameNode Web界面 103

第6章 Hadoop HDFS命令 104

6.1 啟動Hadoop Multi-Node Cluster 105

6.2 創(chuàng)建與查看HDFS目錄 107

6.3 從本地計算機復(fù)制文件到HDFS 109

6.4 將HDFS上的文件復(fù)制到本地計算機 114

6.5 復(fù)制與刪除HDFS文件 116

6.6 在Hadoop HDFS Web用戶界面瀏覽HDFS 118

第7章 Hadoop MapReduce 122

7.1 介紹wordCount.Java 123

7.2 編輯wordCount.Java 124

7.3 編譯wordCount.Java 127

7.4 創(chuàng)建測試文本文件 129

7.5 運行wordCount.Java 130

7.6 查看運行結(jié)果 131

7.7 Hadoop MapReduce的缺點 132

第8章 Spark的安裝與介紹 133

8.1 Spark的Cluster模式架構(gòu)圖 134

8.2 Scala的介紹與安裝 135

8.3 安裝Spark 138

8.4 啟動spark-shell交互界面 141

8.5 設(shè)置spark-shell顯示信息 142

8.6 啟動Hadoop 144

8.7 本地運行spark-shell程序 145

8.8 在Hadoop YARN運行spark-shell 147

8.9 構(gòu)建Spark Standalone Cluster執(zhí)行環(huán)境 149

8.10 在Spark Standalone運行spark-shell 155

第9章 Spark RDD 159

9.1 RDD的特性 160

9.2 基本RDD“轉(zhuǎn)換”運算 161

9.3 多個RDD“轉(zhuǎn)換”運算 167

9.4 基本“動作”運算 169

9.5 RDD Key-Value 基本“轉(zhuǎn)換”運算 171

9.6 多個RDD Key-Value“轉(zhuǎn)換”運算 175

9.7 Key-Value“動作”運算 178

9.8 Broadcast廣播變量 181

9.9 accumulator累加器 184

9.10 RDD Persistence持久化 186

9.11 使用Spark創(chuàng)建WordCount 188

9.12 Spark WordCount詳細解說 191

第10章 Spark的集成開發(fā)環(huán)境 195

10.1 下載與安裝eclipse Scala IDE 197

10.2 下載項目所需要的Library 201

10.3 啟動eclipse 205

10.4 創(chuàng)建新的Spark項目 206

10.5 設(shè)置項目鏈接庫 210

10.6 新建scala程序 211

10.7 創(chuàng)建WordCount測試文本文件 213

10.8 創(chuàng)建WordCount.scala 213

10.9 編譯WordCount.scala程序 215

10.10 運行WordCount.scala程序 217

10.11 導(dǎo)出jar文件 220

10.12 spark-submit的詳細介紹 223

10.13 在本地local模式運行WordCount程序 224

10.14 在Hadoop yarn-client運行WordCount程序 226

10.15 在Spark Standalone Cluster上運行WordCount程序 230

10.16 本書范例程序的安裝說明 231

第11章 創(chuàng)建推薦引擎 236

11.1 推薦算法介紹 237

11.2 “推薦引擎”大數(shù)據(jù)分析使用場景 237

11.3 ALS推薦算法的介紹 238

11.4 ml-100k推薦數(shù)據(jù)的下載與介紹 240

11.5 使用spark-shell導(dǎo)入ml-100k數(shù)據(jù) 242

11.6 查看導(dǎo)入的數(shù)據(jù) 244

11.7 使用ALS.train進行訓(xùn)練 247

11.8 使用模型進行推薦 250

11.9 顯示推薦的電影名稱 252

11.10 創(chuàng)建Recommend項目 255

11.11 Recommend.scala程序代碼 257

11.12 創(chuàng)建PrepareData()數(shù)據(jù)準備 259

11.13 recommend()推薦程序代碼 261

11.14 運行Recommend.scala 263

11.15 創(chuàng)建AlsEvaluation.scala調(diào)校推薦引擎參數(shù) 266

11.16 創(chuàng)建PrepareData()數(shù)據(jù)準備 269

11.17 進行訓(xùn)練評估 270

11.18 運行AlsEvaluation 279

11.19 修改Recommend.scala為參數(shù)組合 281

第12章 StumbleUpon數(shù)據(jù)集 282

12.1 StumbleUpon數(shù)據(jù)集簡介 283

12.2 下載StumbleUpon數(shù)據(jù) 285

12.3 用LibreOffice Calc 電子表格查看train.tsv 288

12.4 二元分類算法 291

第13章 決策樹二元分類 292

13.1 決策樹的介紹 293

13.2 創(chuàng)建Classification項目 294

13.3 開始輸入RunDecisionTreeBinary.scala程序 296

13.4 數(shù)據(jù)準備階段 298

13.5 訓(xùn)練評估階段 303

13.6 預(yù)測階段 308

13.7 運行RunDecisionTreeBinary.scala 311

13.6 修改RunDecisionTreeBinary調(diào)校訓(xùn)練參數(shù) 313

13.7 運行RunDecisionTreeBinary進行參數(shù)調(diào)校 320

13.8 運行RunDecisionTreeBinary不進行參數(shù)調(diào)校 323

第14章 邏輯回歸二元分類 326

14.1 邏輯回歸分析介紹 327

14.2 RunLogisticRegression WithSGDBinary.scala程序說明 328

14.3 運行RunLogisticRegression WithSGDBinary.scala進行參數(shù)調(diào)校 331

14.4 運行RunLogisticRegression WithSGDBinary.scala不進行參數(shù)調(diào)校 335

第15章 支持向量機SVM二元分類 337

15.1 支持向量機SVM算法的基本概念 338

15.2 RunSVMWithSGDBinary.scala 程序說明 338

15.3 運行SVMWithSGD.scala進行參數(shù)調(diào)校 341

15.4 運行SVMWithSGD.scala不進行參數(shù)調(diào)校 344

第16章 樸素貝葉斯二元分類 346

16.1 樸素貝葉斯分析原理的介紹 347

16.2 RunNaiveBayesBinary.scala程序說明 348

16.3 運行NaiveBayes.scala進行參數(shù)調(diào)校 351

16.4 運行NaiveBayes.scala不進行參數(shù)調(diào)校 353

第17章 決策樹多元分類 355

17.1 “森林覆蓋植被”大數(shù)據(jù)問題分析場景 356

17.2 UCI Covertype數(shù)據(jù)集介紹 357

17.3 下載與查看數(shù)據(jù) 359

17.4 創(chuàng)建RunDecisionTreeMulti.scala 361

17.5 修改RunDecisionTreeMulti.scala程序 362

17.6 運行RunDecisionTreeMulti.scala進行參數(shù)調(diào)校 367

17.7 運行RunDecisionTreeMulti.scala不進行參數(shù)調(diào)校 371

第18章 決策樹回歸分析 373

18.1 Bike Sharing大數(shù)據(jù)問題分析 374

18.2 Bike Sharing數(shù)據(jù)集 375

18.3 下載與查看數(shù)據(jù) 375

18.4 創(chuàng)建RunDecisionTreeRegression.scala 378

18.5 修改RunDecisionTreeRegression.scala 380

18.6 運行RunDecisionTreeRegression. scala進行參數(shù)調(diào)校 389

18.7 運行RunDecisionTreeRegression. scala不進行參數(shù)調(diào)校 392

第19章 使用Apache Zeppelin 數(shù)據(jù)可視化 394

19.1 Apache Zeppelin簡介 395

19.2 安裝Apache Zeppelin 395

19.3 啟動Apache Zeppelin 399

19.4 創(chuàng)建新的Notebook 402

19.5 使用Zeppelin運行Shell 命令 403

19.6 創(chuàng)建臨時表UserTable 406

19.7 使用Zeppelin運行年齡統(tǒng)計Spark SQL 407

19.8 使用Zeppelin運行性別統(tǒng)計Spark SQL 409

19.9 按照職業(yè)統(tǒng)計 410

19.10 Spark SQL加入文本框輸入?yún)?shù) 412

19.11 加入選項參數(shù) 414

19.12 同時顯示多個統(tǒng)計字段 416

19.13 設(shè)置工具欄 419

19.14 設(shè)置段落標題 420

19.15 設(shè)置Paragraph段落的寬度 422

19.16 設(shè)置顯示模式 423

在線預(yù)覽

第 1 章 大數(shù)據(jù)與機器學習

1.1 大數(shù)據(jù)定義1.2 Hadoop簡介1.3 Hadoop HDFS分布式文件系統(tǒng)1.4 Hadoop MapReduce的介紹1.5 Spark的介紹1.6 機器學習的介紹

1.1 大數(shù)據(jù)定義大數(shù)據(jù)(Big data)又稱為巨量資料、巨量數(shù)據(jù)或海量數(shù)據(jù)。一般來說大數(shù)據(jù)的特性可歸類為3V:? Volume(大量數(shù)據(jù))? 因特網(wǎng)、企業(yè) IT、物聯(lián)網(wǎng)、社區(qū)、短信、電話、網(wǎng)絡(luò)搜索、在線交易等,隨時都在快速累積龐大的數(shù)據(jù)。? 數(shù)據(jù)量很容易達到TB(Terabyte,1024 GB),甚至 PB(Petabyte,1024TB)或EB(Exabyte,1024 PB)的等級。? Variety(多樣性)大數(shù)據(jù)的數(shù)據(jù)類型非常多樣化,可分為非結(jié)構(gòu)化信息和結(jié)構(gòu)化信息。? 非結(jié)構(gòu)化信息:文字、圖片、圖像、視頻、音樂、地理位置信息、個人化信息——如社區(qū)、交友數(shù)據(jù)等。? 結(jié)構(gòu)化信息:數(shù)據(jù)庫、數(shù)據(jù)倉庫等。? Velocity(時效性)? 數(shù)據(jù)的傳輸流動:隨著帶寬越來越大、設(shè)備越來越多,每秒產(chǎn)生的數(shù)據(jù)流越來越大。? 組織必須能實時處理大量的信息:因為時間太久就失去了數(shù)據(jù)的價值,數(shù)據(jù)必須能在最短時間內(nèi)得出分析結(jié)果。大數(shù)據(jù)的影響已經(jīng)深入到各個領(lǐng)域和行業(yè),在商業(yè)、經(jīng)濟及其他領(lǐng)域中,將大量數(shù)據(jù)進行分析后,就可得出許多數(shù)據(jù)的關(guān)聯(lián)性。可用于預(yù)測商業(yè)趨勢、營銷研究、金融財務(wù)、疾病研究、打擊犯罪等。決策行為將基于數(shù)據(jù)和分析的結(jié)果,而不是依靠經(jīng)驗和直覺。1.2 Hadoop 簡介Hadoop是存儲與處理大量數(shù)據(jù)的平臺,是Apache軟件基金會的開放源碼、免費且廣泛使用的軟件。Hadoop名稱來自于原作者孩子的黃色小象玩具。這個名字容易拼字與發(fā)音,適合作為軟件開發(fā)代碼,黃色小象因此成為Hadoop的標志。? Hadoop的發(fā)展歷史2002年Doug Cutting與Mike Cafarelia開始進行Nutch項目。2003年Google發(fā)表GFS(Google File System)與MapReduce論文。2004年Doug Cutting開始將DFS與MapReduce加入Nutch項目。2006年Doug Cutting加入Yahoo團隊,并將Nutch改名為Hadoop。2008年Yahoo使用Hadoop包含了910個集群,對1TB的數(shù)據(jù)排序花了297秒。? Hadoop特性特性 說明可擴展性(Scalable) 由于Hadoop采用分布式計算與存儲,當我們擴充容量或運算時,不需要更換整個系統(tǒng),只需要增加新的數(shù)據(jù)節(jié)點服務(wù)器即可經(jīng)濟性(Economical) 由于Hadoop采用分布式計算與存儲,不必使用昂貴高端的服務(wù)器,只需一般等級的服務(wù)器就可架構(gòu)出高性能、高容量的集群彈性(Flexible) 傳統(tǒng)的關(guān)系數(shù)據(jù)庫存儲數(shù)據(jù)時必須有數(shù)據(jù)表結(jié)構(gòu)schema(各個數(shù)據(jù)對象的集合),然而Hadoop存儲的數(shù)據(jù)是非結(jié)構(gòu)化(schema-less)的,也就是說可以存儲各種形式、不同數(shù)據(jù)源的數(shù)據(jù)性(Reliable) Hadoop采用分布式架構(gòu),因此即使某一臺服務(wù)器硬件壞掉,甚至整個機架壞掉,HDFS仍可正常運行,因為數(shù)據(jù)還會有另外2個副本1.3 Hadoop HDFS分布式文件系統(tǒng) HDFS采用分布式文件系統(tǒng)(Hadoop Distributed File System),可以由單臺服務(wù)器擴充到數(shù)千臺服務(wù)器,如圖1-1所示。 圖1-1 HDFS采用分布式文件系統(tǒng)的可擴充架構(gòu)? NameNode服務(wù)器負責管理與維護HDFS目錄系統(tǒng)并控制文件的讀寫操作。? 多個DataNode服務(wù)器負責存儲數(shù)據(jù),在圖1-1中我們只列出3個DataNode,實際上大型的集群可以有成千上萬個節(jié)點。? HDFS設(shè)計的前提與目標? 硬件故障是常態(tài)而不是異常(Hardware Failure)HDFS是設(shè)計運行在低成本的普通服務(wù)器上的。硬件故障是常態(tài),而不是異常,所以HDFS被設(shè)計成具有高度容錯能力,能夠?qū)崟r檢測錯誤并且自動恢復(fù),這是HDFS最核心的設(shè)計目標。? Streaming流式數(shù)據(jù)存取(Streaming Data Access)運行在HDFS上的應(yīng)用程序會通過Streaming存取數(shù)據(jù)集。HDFS的主要設(shè)計是批處理,而不是實時互動處理,優(yōu)點是可以提高存取大量數(shù)據(jù)的能力,但是犧牲了響應(yīng)時間。? 大數(shù)據(jù)集(Large Data Sets)為了存儲大數(shù)據(jù)集,HDFS提供了cluster集群架構(gòu),用于存儲大數(shù)據(jù)文件,集群可擴充至數(shù)百個節(jié)點。? 簡單一致性模型(Simple Coherency Model)HDFS的存取模式是一次寫入多次讀取(write-once-read-many)。一個文件被創(chuàng)建后就不會再修改。這樣設(shè)計的優(yōu)點是:可以提高存儲大量數(shù)據(jù)的能力,并簡化數(shù)據(jù)一致性的問題。? 移動“計算”比移動“數(shù)據(jù)”成本更低(Moving Computation is Cheaper than Moving Data)當我們的cluster集群存儲了大量的數(shù)據(jù)時,要搬移數(shù)據(jù)必須耗費大量的時間成本。因此如果我們有“計算”數(shù)據(jù)的需求時,就會將“計算功能”在接近數(shù)據(jù)的服務(wù)器中運行,而不是搬移數(shù)據(jù)。? 跨硬件與軟件平臺HDFS在設(shè)計時就考慮到平臺的可移植性。這種特性有利于Hadoop的推廣。? HDFS文件存儲架構(gòu)(見圖1-2) 圖1-2 HDFS文件存儲架構(gòu)? 文件分割? 當用戶以HDFS命令要求存儲文件時,系統(tǒng)會將文件切割為多個區(qū)塊(Block),每個區(qū)塊是64MB。在圖1-2中,文件被分割為A、B、C共3個區(qū)塊。? 區(qū)塊副本策略? 一個文件區(qū)塊默認會復(fù)制成3份,你可以在Hadoop配置中設(shè)置文件區(qū)塊要創(chuàng)建幾個副本。? 文件區(qū)塊損壞時,NameNode會自動尋找位于其他DataNode上的副本來恢復(fù)數(shù)據(jù),維持3份的副本策略。? 機架感知? 在圖1-2中,共有Rack1、Rack2、Rack3共3個機架,每個機架都有4臺DataNode服務(wù)器。? HDFS具備機架感知功能,如圖1-2所示。以Block C為例:及時份副本放在Rack1機架的節(jié)點,第二份放在同機架Rack1的不同節(jié)點,一份放在不同機架Rack3的不同節(jié)點。? 這樣設(shè)計的好處是防止數(shù)據(jù)遺失,有任何機架出現(xiàn)故障仍可以保障恢復(fù)數(shù)據(jù),提高網(wǎng)絡(luò)性能。1.4 Hadoop MapReduce的介紹利用大數(shù)據(jù)進行數(shù)據(jù)分析處理時,數(shù)據(jù)量龐大,所需的運算量也巨大。Hadoop MapReduce的做法是采用分布式計算的技術(shù):? Map將任務(wù)分割成更小任務(wù),由每臺服務(wù)器分別運行,如圖1-3所示。? Reduce將所有服務(wù)器的運算結(jié)果匯總整理,返回的結(jié)果。通過MapReduce方式,可以在上千臺機器上并行處理巨量的數(shù)據(jù),大大減少數(shù)據(jù)處理的時間。? MapReduce 版本2.0 YARNHadoop 新的MapReduce架構(gòu)稱為YARN(Yet Another Resource Negotiator,另一種資源協(xié)調(diào)者),是效率更高的資源管理核心。可以到下列網(wǎng)址查看YARN架構(gòu)圖(見圖1-4):hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html 圖1-4 YARN資源管理系統(tǒng)的架構(gòu)圖從圖1-4中可以看到:? 在Client客戶端,用戶會向Resource Manager請求執(zhí)行運算(或執(zhí)行任務(wù))。? 在NameNode會有Resource Manager統(tǒng)籌管理運算的請求。? 在其他的DataNode會有Node Manager負責運行,以及監(jiān)督每一個任務(wù)(task),并且向Resource Manager匯報狀態(tài)。? Hadoop MapReduce的計算框架如圖1-5所示,Hadoop MapReduce在運算時,需要將中間產(chǎn)生的數(shù)據(jù)存儲在硬盤中。然而,磁盤I/O往往是性能的瓶頸,因此會有讀寫數(shù)據(jù)延遲的問題。 圖1-5 Hadoop MapReduce運算過程的示意圖在后續(xù)章節(jié),我們介紹的Spark是基于內(nèi)存的計算框架,可以大幅提升性能。1.5 Spark的介紹Apache Spark是開放源碼的集群運算框架,由加州大學伯克利分校的AMPLab開發(fā)。Spark是一個彈性的運算框架,適合進行Spark Streaming數(shù)據(jù)流處理、Spark SQL互動分析、MLlib機器學習等應(yīng)用,因此Spark可成為一個用途廣泛的大數(shù)據(jù)運算平臺。Spark允許用戶將數(shù)據(jù)加載到cluster集群的內(nèi)存中存儲,并多次重復(fù)運算,非常適合用于機器學習的算法。? Spark in-memory的計算框架如圖1-6所示,Spark是基于內(nèi)存的計算框架。Spark在運算時,將中間產(chǎn)生的數(shù)據(jù)暫存在內(nèi)存中,因此可以加快運行速度。尤其是需要反復(fù)操作的次數(shù)越多,所需讀取的數(shù)據(jù)量越大,就越能看出Spark的性能。Spark在內(nèi)存中運行程序,命令運行速度(或命令周期)能比Hadoop MapReduce的命令運行速度快上100倍,即便是運行于硬盤上時Spark的速度也能快上10倍。 圖1-6 Spark in-memory的計算框架? Spark發(fā)展歷史年代 說明2009 由Matei Zaharia在加州大學伯克利分校的AMPLab開發(fā)2010 通過BSD授權(quán)條款開放源碼2013 該項目被捐贈給Apache軟件基金會2014/2 Spark成為Apache的頂級項目2014/11 Databricks團隊使用Spark刷新數(shù)據(jù)排序的世界紀錄2015/3 Spark 1.3.1版? Spark特色特色 說明命令周期短 Spark是基于內(nèi)存計算的開放源碼集群運算系統(tǒng),比原先的Hadoop MapReduce快100倍易于開發(fā)程序 目前Spark支持多種語言:Scala、Python、Java,也就是說開發(fā)者可以根據(jù)應(yīng)用的環(huán)境來決定使用哪一種語言開發(fā)Spark程序,更具彈性,更符合開發(fā)時的需求Hadoop兼容 Spark提供了Hadoop Storage API,使它支持Hadoop的HDFS存儲系統(tǒng)。并且支持Hadoop YARN,可共享存儲資源與運算,而且?guī)缀跖cHive兼容可在各平臺運行 ? 我們可以在本地端的機器上運行Spark程序,只需要import Spark的鏈接庫即可? 也可以在自有的群集上運行Spark程序,例如Mesos、Hadoop YARN等自行建立的群集? 針對更大規(guī)模的計算工作,我們可以選擇將Spark程序送至AWS的EC2平臺上運行,按照用戶使用的計算資源計費? Spark主要功能(參考圖1-7) 圖1-7 Spark的主要功能模塊功能 說明Spark SQL Spark SQL可以使用熟知的SQL查詢語言來運行數(shù)據(jù)分析Spark Streaming Spark Streaming可實現(xiàn)實時的數(shù)據(jù)串流的處理,具有大數(shù)據(jù)量、容錯性、可擴充性等特點GraphX GraphX是Spark上的分布式圖形處理架構(gòu),可用圖表計算MLlib MLlib是一個可擴充的Spark機器學習庫,可使用許多常見的機器學習算法,簡化大規(guī)模機器學習的時間。算法包括分類與回歸、支持向量機、回歸、線性回歸、決策樹、樸素貝葉斯、聚類分析、協(xié)同過濾等1.6 機器學習的介紹由于機器學習技術(shù)的進步,應(yīng)用相當廣泛,例如推薦引擎、定向廣告、需求預(yù)測、垃圾郵件過濾、醫(yī)學診斷、自然語言處理、搜索引擎、欺詐檢測、證券分析、視覺識別、語音識別、手寫識別等。? 機器學習架構(gòu)機器學習(Machine Learning)是通過算法,使用歷史數(shù)據(jù)進行訓(xùn)練,訓(xùn)練完成后會產(chǎn)生模型。未來當有新的數(shù)據(jù)提供時,我們可以使用訓(xùn)練產(chǎn)生的模型進行預(yù)測。機器學習訓(xùn)練用的數(shù)據(jù)是由Features、Label組成的。? Feature:數(shù)據(jù)的特征,例如濕度、風向、風速、季節(jié)、氣壓。? Label:數(shù)據(jù)的標簽,也就是我們希望預(yù)測的目標,例如降雨(0.不會下雨、1.會下雨)、天氣(1.晴天、2.雨天、3.陰天、4.下雪)、氣溫。如圖1-8所示,機器學習可分為以下兩個階段。? 訓(xùn)練階段(Training)訓(xùn)練數(shù)據(jù)是過去累積的歷史數(shù)據(jù),可能是文本文件、數(shù)據(jù)庫或其他來源。經(jīng)過Feature Extraction(特征提取),產(chǎn)生Feature(數(shù)據(jù)特征)與Label(預(yù)測目標),然后經(jīng)過機器學習算法的訓(xùn)練后產(chǎn)生模型。? 預(yù)測階段(Predict)新輸入數(shù)據(jù)(可能是文本文件、數(shù)據(jù)庫或其他來源),經(jīng)過Feature Extraction(特征提取)產(chǎn)生Feature,使用訓(xùn)練完成的模型進行預(yù)測,產(chǎn)生預(yù)測結(jié)果。 圖1-8 機器學習的兩個階段? 機器學習分類對于有監(jiān)督的學習(Supervised Learning),從現(xiàn)有數(shù)據(jù)我們希望預(yù)測的答案有下列分類。? 二元分類我們已知濕度、風向、風速、季節(jié)、氣壓等數(shù)據(jù)特征,希望預(yù)測當天是否會下雨(0. 不會下雨、1. 會下雨)。因為希望預(yù)測的目標Label只有2種選項,所以就像是非題。? 多元分類我們已知濕度、風向、風速、季節(jié)、氣壓等數(shù)據(jù)特征,希望預(yù)測當天的天氣(1. 晴天、2. 雨天、3. 陰天、4. 下雪)。因為希望預(yù)測的目標Label有多個選項,所以就像選擇題。? 回歸分析我們已知濕度、風向、風速、季節(jié)、氣壓等數(shù)據(jù)特征,希望預(yù)測當天的氣溫。因為希望預(yù)測的目標Label是連續(xù)值,所以就像是計算題。但是對于無監(jiān)督的學習(Unsupervised Learning),從現(xiàn)有數(shù)據(jù)我們不知道要預(yù)測的答案,所以沒有Label(預(yù)測目標)。cluster聚類分析的目的是將數(shù)據(jù)分成幾個相異性較大的群組,而群組內(nèi)的相似性較高。根據(jù)上述內(nèi)容我們可以整理出下列表格。分類 算法 Features(特征) Label(預(yù)測目標)有監(jiān)督的學習 二元分類(Binary Classification) 濕度、風向、風速、季節(jié)、氣壓…… 只有0與1選項(是非題)0. 不會下雨、1. 會下雨有監(jiān)督的學習 多元分類(Multi-Class Classification) 濕度、風向、風速、季節(jié)、氣壓…… 有多個選項(選擇題)1. 晴天、2. 雨天、3. 陰天、4. 下雪有監(jiān)督的學習 回歸分析(Regression) 濕度、風向、風速、季節(jié)、氣壓…… 值是數(shù)值(計算題)溫度可能是 -50~50度的范圍無監(jiān)督的學習 聚類分析(Clustering) 濕度、風向、風速、季節(jié)、氣壓…… 無LabelCluster聚類分析;目的是將數(shù)據(jù)分成幾個相異性較大的群組,而群組內(nèi)的相似性較高機器學習分類可以整理成圖1-9。 圖1-9 機器學習的分類

網(wǎng)友評論(不代表本站觀點)

來自匿名用**的評論:

質(zhì)量還不錯

2017-01-13 17:25:54
來自w***8(**的評論:

內(nèi)容不錯!給開發(fā)人員用的

2017-02-10 22:02:44
來自cqxuche**的評論:

沒什么用,就是截圖加上粘貼

2017-02-11 17:51:51
來自匿名用**的評論:

種類齊全,值得購買

2017-02-23 15:08:55
來自p***2(**的評論:

包裝印刷都不錯。

2017-03-08 21:03:01
來自匿名用**的評論:

挺好的,發(fā)貨送貨都很快

2017-03-15 19:02:26
來自巒***(**的評論:

適合模仿學習。

2017-04-15 14:39:08
來自無昵稱**的評論:

還沒看完看完再評論

2017-04-20 11:06:28
來自寧***s(**的評論:

專業(yè)用書 非常好 正版 在當當買書放心

2017-04-23 14:02:49
來自寧***s(**的評論:

非常好的專業(yè)書,正版1

2017-04-27 09:01:43
來自**(匿名**的評論:

內(nèi)容淺顯易懂,入門級書籍

2017-05-22 18:42:50
來自匿名用**的評論:

很實用,方便

2017-06-04 20:06:06
來自春***7(**的評論:

有點簡單,適合初學

2017-06-18 23:01:50
來自無昵稱**的評論:

還沒看應(yīng)該是本不錯的指南

2017-06-26 09:31:08
來自無昵稱**的評論:

紙張很好!

2017-07-07 23:03:04
來自無昵稱**的評論:

包裝完好,物流很快!

2017-07-07 23:19:12
來自無昵稱**的評論:

紙張很好!

2017-07-07 23:26:39
來自無昵稱**的評論:

書很好?。?

2017-07-07 23:51:13
來自無昵稱**的評論:

紙張很好!

2017-07-07 23:51:43
來自無昵稱**的評論:

紙張很好!

2017-07-08 00:15:35
來自匿名用**的評論:

很好的商品

2017-07-28 23:00:42
來自無昵稱**的評論:

還不錯,還沒來及看,先評論了!

2017-07-31 13:54:32
來自匿名用**的評論:

包裝不錯 性價比很高 印刷很正 紙質(zhì)好 排版不錯包裝不錯 性價比很高 印刷很正 紙質(zhì)好 排版不錯

2017-08-21 17:49:24
來自無昵稱**的評論:

不錯,很實用,紙質(zhì)也很好,很喜歡

2017-08-28 14:36:11
來自無昵稱**的評論:

速度快,一步步講解很詳細,適合新人

2017-09-10 10:50:26
來自shuobud**的評論:

得著時間好好研究

2017-09-16 01:21:17
來自無昵稱**的評論:

感覺還行…

2017-11-01 12:49:02
來自匿名用**的評論:

很專業(yè)的書,對于我這種還沒入門的,不太容易看懂,但是看起來還是挺好的

2017-11-08 12:47:14

免責聲明

更多出版社