Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
  Facebook: Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
 
Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程  
Apache Spark + Scala Big Data Machine Learning Training Course Training 課程 Apache Spark + Scala Big Data Machine Learning Training Course Training 課程

想定期知道最新課程及優惠嗎?
免費訂閱本中心的課程通訊!

課堂錄影隨時睇 10 大優點之時間自由:無論您是夜班或輪班工作,在日間或晚間亦可隨時來上課!而視像會在您到達時才開始播放,亦可按您需要而隨時暫停,不會因遲到或人有三急而錯過課程任何重點!

Apache Spark + Scala 大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 技術基礎課程
課程簡稱:Apache Spark + Scala Big Data Machine Learning Training Course

  • 課程時間
  • 課程簡介
  • 課程內容
  • 詳細內容

課程優惠!現凡同時報讀以下三個課程:
即減 $930!報讀其中兩個即減 $500!

推介服務:課堂錄影隨時睇 (在家觀看 = 0%,在校觀看 = 100%)
學員使用電話或本網頁報名,待本中心確認已為學員留位後,即可使用 轉數快 繳付學費,過程簡便!
編號 地點 可預約星期及時間 學費低至 85 折  
JU2403MV 旺角 一至五:14:30 - 22:15   六:13:45 - 21:30   日:10:15 - 18:00 (公眾假期休息) 95 折後只需 $2,831 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
JU2403OV 觀塘 一至五:14:15 - 22:00   六及日:12:15 - 20:00   (星期三及公眾假期休息) 9 折後只需 $2,682 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
JU2403PV 北角 一至五:14:15 - 22:00   六及日:12:15 - 20:00   (星期三及公眾假期休息) 9 折後只需 $2,682 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
JU2403SV 沙田 一至五:14:15 - 22:00   六及日:12:15 - 20:00   (星期三及公眾假期休息) 85 折後只需 $2,533 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
JU2403YV 屯門 一至五:14:15 - 22:00   六及日:12:15 - 20:00   (星期一、三及公眾假期休息) 85 折後只需 $2,533 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
* 各政府部門可使用 P Card 付款  
如使用 P Card 繳付考試費,考試費需另加 1.3% 附加費  
在校免費試睇: 首 1 小時,請致電與本中心職員預約。 查看各地點電話
旺角 2332-6544
觀塘 3563-8425
北角 3580-1893
沙田 2151-9360
屯門 3523-1560
在校免費重睇: 學員可於享用時期內於報讀地點不限次數地重看課堂錄影,從而可反覆重溫整個課程!
導師解答: 學員可於觀看某一課堂錄影後提出課堂直接相關的問題,課程導師會樂意為學員以單對單的形式解答!
課時: 12 小時
享用時期: 報讀日至 4 星期內,進度由您控制,可快可慢。
課堂錄影導師: Franco (任教課程清單)
在校觀看: 詳情及示範片段


推介服務:課堂錄影隨時睇 (在家觀看 = 100%,在校觀看 = 0%)
學員使用電話或本網頁報名,待本中心確認已為學員留位後,即可使用 轉數快 繳付學費,過程簡便!
編號 地點 星期及時間 費用  
JU2403HH 在家 享用時期內每星期 7 天 (包括公眾假期),每天 24 小時全天候不限次數地觀看。 $2,980 按此報名:Apache Spark + Scala Big Data Machine Learning Training Course Training 課程
* 各政府部門可使用 P Card 付款  
如使用 P Card 繳付考試費,考試費需另加 1.3% 附加費  
在校免費試睇: 首 1 小時,請致電與本中心職員預約。 查看各地點電話
旺角 2332-6544
觀塘 3563-8425
北角 3580-1893
沙田 2151-9360
屯門 3523-1560
導師解答: 學員可於觀看某一課堂錄影後提出課堂直接相關的問題,課程導師會樂意為學員以單對單的形式解答!
課時: 12 小時
在家觀看時禁用程式: 一些危害課堂錄影版權的程式。
享用時期: 報讀日至 4 星期內,進度由您控制,可快可慢。
課堂錄影導師: Franco (任教課程清單)
在家觀看: 服務條款及守則、報讀程序及示範片段


地區 地址 電話 教育局註冊編號
旺角 九龍旺角亞皆老街 109 號,皆旺商業大廈 18 樓 1802 - 1807 室 2332-6544 533459
觀塘 九龍觀塘成業街 7 號寧晉中心 12 樓 G2 室 3563-8425 588571
北角 香港北角馬寶道 41-47 號華寶商業大廈 3 樓 01-02 號舖 3580-1893 591262
沙田 新界沙田石門安群街 3 號京瑞廣場 1 期 10 樓 M 室 2151-9360 604488
屯門 新界屯門屯喜路 2 號屯門柏麗廣場 17 樓 1708 室 3523-1560 592552
注意! 客戶必須查問報讀學校的教育局註冊編號,以確認該校為註冊學校,以免蒙受不必要的損失!


Apache Spark 是高速叢集運算框架 (Lightning-fast cluster computing framework)。 它擴充及優化了傳統的 MapReduce 模型令 Apache Spark 變得更易擴展 (scalable)、更具彈性 (flexible) 及具備容錯功能 (fault-tolerant)。能夠操作 Apache Spark 的程式語言亦有不少的選擇,例如 Scala、Java 等。而 Scala 是被視為最能夠發揮 Apache Spark 功能的程式語言。

Apache Spark 提供了一個全面而統一的框架以進行大數據分析 (Big Data Analysis),當中包括 RDD (Resilient Distributed Datasets)、Map Reduce、Spark SQL、GraphX 等,有了上述的元素,就能更簡便地進行不同形式的大數據分析 (Big Data Analysis)。

除大數據分析 (Big Data Analysis) 外,Apache Spark 亦提供了一系列用作機器學習 (Machine Learning) 的函式庫 (libraries),這強大的函式庫能夠:

  • 向用戶推薦用戶可能有興趣的產品
  • 從文章有效地選出關鍵字 (例如能夠理解 I, is 等不是關鍵字)
  • 理解消費者會同時購買甚麼產品
  • 製作決策樹
  • 將數據分類
  • 線性回歸 (Linear Regression) 分析
  • 更多

由於大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 的技術相當獨特,所謂萬事起頭難,在初次學習 Apache Spark 難免遇到不同程度的障礙。本基礎課程旨在有系統地,透過具針對性的實戰例子教授學員 Apache Spark 的大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 的技術。請 按此 了解詳細的課程內容。

課程名稱: Apache Spark + Scala 大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 技術基礎課程
- 簡稱:Apache Spark + Scala Big Data Machine Learning Training Course
課程時數: 12 小時 (共 4 堂)
適合人士:

必要的背景知識:

  • 建議學員在報讀本課程前需要具備 “Java EE 程式編寫基礎課程 (主要教授 JSP, Servlet, JSTL 和 EL)” 中第 4 課 [Java 語言 (基礎語法)]、第 5 課 [Java 語言 (物件導向概念)] 及第 6 課 [Java 語言 (常用類別)] 的知識以便學習 Scala。
  • 亦由於導師會將 Apache Spark 安裝在 Linux 上進行示範,故此建議學員在報讀本課程前需要具備基本的 Linux 操作知識,例如具備 “Shell Script Linux 自動化課程” 中的第 2 課 [Linux 的指令介面] 的知識。

非必要的背景知識:

  • 由於 Hadoop 擅長於分散式儲存 (distributed storage),Apache Spark 亦可以接駁到 Hadoop 以取得大數據並進行大數據分析及機器學習。為更全面了解大數據技術,建議大家學習 Hadoop 大數據技術基礎課程 (Big Data),但從學習 Apache Spark 的角度而言,並非必需。
授課語言: 以廣東話為主,輔以英語
課程筆記: 本中心導師親自編寫中文為主筆記,而部份中文字附有英文對照。


課程名稱:Apache Spark + Scala 大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 技術基礎課程
- 簡稱:Apache Spark + Scala Big Data Machine Learning Training Course

第一部份:Scala 語言

Scala 語言是被視為最能夠發揮 Apache Spark 功能的程式語言。這部份會教授 Scala 語言。


第二部份:Apache Spark 的大數據分析 (Big Data Analysis)

在第二部份會開始安裝 Apache Spark (Single-node 及 Multi-node Cluster),並開始教授 RDD (Resilient Distributed Dataset) 內的各種 transformations、actions 及 persistence。然後使用上述技術實踐經典的 Word Count。這部份最後會教授 Spark SQL,令大家可以透過大家已經熟悉的 SQL 進行各項有趣的操作,例如使用 SQL 操作 JSON 數據。


第三部份:Apache Spark 的機器學習 (Machine Learning)

在第三部份會集中教授 Apache Spark 的機器學習 (Machine Learning) 函式庫 (libraries) 進行以下的機器學習活動。

  • 背景知識
    • Vectors [org.apache.spark.mllib.linalg.Vector]
    • LabeledPoint [org.apache.spark.mllib.regression.LabeledPoint]
    • Statistics [org.apache.spark.mllib.stat.Statistics]
    • count, max, min, mean, variance, etc.
  • 向用戶推薦用戶可能有興趣的產品 [org.apache.spark.mllib.recommendation.ALS]
  • 從文章有效地選出關鍵字 (例如能夠理解 I, is 等不是關鍵字) [org.apache.spark.mllib.feature.{HashingTF, IDF}]
  • 理解消費者會同時購買甚麼產品 [FP-Growth algorithm 及 org.apache.spark.mllib.fpm.FPGrowth]
  • 製作決策樹 [org.apache.spark.mllib.tree.DecisionTree]
  • 將數據分類 [org.apache.spark.mllib.clustering.KMeans]
  • 線性回歸 (Linear Regression) 分析 [org.apache.spark.mllib.regression.LinearRegressionWithSGD]


詳細課程內容請參考桌面版網頁 http://www.systematic.com.hk/apache-spark-scala-big-data-analysis-machine-learning.htm?panel=3




1 Spark 介紹

2 Scala 語言
2.1 Scala 介紹
2.1.1 Functional programming (函數程式語言)
2.2 安裝及環境設定
2.2.1 安裝 Linux
2.2.2 安裝 Java
2.2.3 設定並測試 Java
2.2.4 安裝 Scala
2.2.5 設定並測試 Scala
2.2.6 安裝 ScalaIDE
2.2.7 設定並開啟 ScalaIDE
2.2.8 編寫 Hello World 程式
2.2.8.1 實習:使用 ScalaIDE 編寫 Scala Hello World 程式
2.2.8.2 實習:使用文字檔編寫 Scala Hello World 程式

3 Scala (Scalable Language) 語言
3.1 變數 (variables) / Identifiers
3.1.1 變數 (variables) / Identifiers 概念
3.1.2 Scala 的 data types
3.1.3 實習:變數 (variables) / Identifiers
3.2 Classes 與 objects in Scala
3.2.1 Classes 與 objects in Scala 概念
3.2.2 實習:Classes 與 objects in Scala
3.3 Inheritance in Scala
3.3.1 Inheritance in Scala 概念
3.3.2 實習:Inheritance in Scala
3.4 If, then, else in Scala
3.4.1 If, then, else in Scala 概念
3.4.2 實習:If, then, else in Scala
3.5 Function in Scala
3.5.1 Function in Scala 概念
3.5.2 實習:Function in Scala
3.6 Closure in Scala
3.6.1 Closure in Scala 概念
3.6.2 實習:Closure in Scala
3.7 String in Scala
3.7.1 String in Scala 概念
3.7.2 實習:String in Scala
3.8 Formatted string in Scala
3.8.1 Formatted string in Scala 概念
3.8.1.1 %f
3.8.1.2 %d
3.8.1.3 %s
3.8.2 實習:Formatted string in Scala
3.8.2.1 實習:Formatted string in Scala:%f
3.8.2.2 實習:Formatted string in Scala:%d
3.8.2.3 實習:Formatted string in Scala:%s
3.9 String interpolation in Scala
3.9.1 String interpolation in Scala 概念
3.9.2 實習:String interpolation in Scala
3.10 Array in Scala
3.10.1 Array in Scala 概念
3.10.2 實習:Array in Scala
3.11 Multidimensional arrays in Scala
3.11.1 Multidimensional arrays in Scala 概念
3.11.2 實習:Multidimensional arrays in Scala
3.12 Array concatenation
3.12.1 Array concatenation 概念
3.12.2 實習:Array concatenation
3.13 Range in Scala
3.13.1 Range in Scala 概念
3.13.2 實習:Range in Scala
3.14 Trait in Scala
3.14.1 Trait in Scala 概念
3.14.2 實習:Trait in Scala
3.15 Regex in Scala
3.15.1 Regex in Scala 概念
3.15.2 實習:Regex in Scala
3.16 Exception handling in Scala
3.16.1 Exception handling in Scala 概念
3.16.2 實習:Exception handling in Scala
3.17 FileI/O in Scala
3.17.1 FileI/O: write file in Scala
3.17.1.1 FileI/O: write file in Scala 概念
3.17.1.2 實習:FileI/O: write file in Scala
3.17.2 FileI/O: read console in Scala
3.17.2.1 FileI/O: read console in Scala 概念
3.17.2.2 實習:FileI/O: read console in Scala
3.17.3 FileI/O: read file in Scala
3.17.3.1 FileI/O: read file in Scala概念
3.17.3.2 實習:FileI/O: read file in Scala
3.17.4 FileI/O: delete file in Scala
3.17.4.1 FileI/O: delete file in Scala概念
3.17.4.2 實習:FileI/O: delete file in Scala

4 Apache Spark 安裝 (一台伺服器) 及進行相關的系統設定
4.1 Apache Spark 的結構
4.2 Cluster
4.2.1 Cluster 詞彙表
4.2.2 Cluster 元件間的關係
4.2.3 Cluster 資源分配 (多部 nodes 的情況)
4.2.3.1 Static allocation
4.2.3.1.1 例子:5 Nodes (each node have 16 cores, 64 GB RAM)
4.2.3.1.1.1 Number of cores
4.2.3.1.1.2 Number of executors
4.2.3.1.1.3 Memory for each executor
4.2.3.2 Dynamic allocation
4.3 安裝Spark (一台伺服器)

5 Spark Core 及大數據分析
5.1 Spark Shell 與 SparkContext
5.1.1 Spark Shell
5.1.1.1 實習:啟動 Spark Shell
5.1.2 SparkContext (org.apache.spark.SparkContext)
5.1.2.1 實習:取得 SparkContext 現有的設定
5.1.3 Log levels
5.1.3.1 實習:設定 Log levels
5.2 RDD (Resilient Distributed Dataset)
5.2.1 RDD 介紹
5.2.2 產生 RDD
5.2.2.1 實習:產生 RDD (Int)
5.2.2.2 實習:產生 RDD (String)
5.2.3 RDD transformations (Single RDD)
5.2.3.1 map
5.2.3.1.1 實習:map (做法1 [for Int])
5.2.3.1.2 實習:map (做法2 [for Int])
5.2.3.1.3 實習:map (做法3 [for Int])
5.2.3.1.4 實習:map (做法4 [for String])
5.2.3.1.5 實習:map (做法5 [for String to (String, Int) Pair])
5.2.3.1.6 實習:map (做法6 [for String to Class])
5.2.3.2 filter
5.2.3.2.1 實習:filter (做法1)
5.2.3.2.2 實習:filter (做法2)
5.2.3.3 distinct
5.2.3.3.1 實習:distinct (例子 1)
5.2.3.3.2 實習:distinct (例子 2)
5.2.3.4 randomSplit
5.2.3.4.1 實習:randomSplit
5.2.3.5 “不 random” 的 split
5.2.3.5.1 實習:“不 random” 的 split
5.2.3.6 flatmap
5.2.3.6.1 實習:flatmap
5.2.3.7 map vs flatmap
5.2.3.7.1 實習:map vs flatmap
5.2.4 RDD transformations (Multiple RDDs)
5.2.4.1 Union
5.2.4.1.1 實習:Union (做法1)
5.2.4.1.2 實習:Union (做法2)
5.2.4.2 Intersection
5.2.4.2.1 實習:Intersection
5.2.4.3 Subtract
5.2.4.3.1 實習:Subtract
5.2.4.4 Cartesian
5.2.4.4.1 實習:Cartesian
5.2.5 RDD actions
5.2.5.1 first
5.2.5.1.1 實習:first
5.2.5.2 take
5.2.5.2.1 實習:take
5.2.5.3 takeOrdered
5.2.5.3.1 實習:takeOrdered (用法 1)
5.2.5.3.2 實習:takeOrdered (用法 2)
5.2.5.3.3 實習:takeOrdered (用法 3)
5.2.5.3.4 實習:takeOrdered (用法 4)
5.2.5.4 RDD 的基本統計操作
5.2.5.4.1 實習:RDD 的基本統計操作
5.2.5.4.1.1 實習:RDD 的基本統計操作:min
5.2.5.4.1.2 實習:RDD 的基本統計操作:max
5.2.5.4.1.3 實習:RDD 的基本統計操作:stdev
5.2.5.4.1.4 實習:RDD 的基本統計操作:count
5.2.5.4.1.5 實習:RDD 的基本統計操作:sum
5.2.5.4.1.6 實習:RDD 的基本統計操作:mean
5.3 Single key value pair RDD transformations
5.3.1 實習:取得所有 keys
5.3.2 實習:取得所有 values
5.3.3 實習:基於 key 進行過濾 (filter)
5.3.4 實習:基於 value 進行過濾 (filter)
5.3.5 實習:基於 key 進行排序 (sort) [第一部份]
5.3.6 實習:基於 key 進行排序 (sort) [第二部份]
5.3.7 實習:基於 value 進行排序 (sort) [第一部份]
5.3.8 實習:基於 value 進行排序 (sort) [第二部份]
5.3.9 實習:map (基本應用)
5.3.10 實習:map (key 與 value 反轉)
5.3.11 實習:mapValues
5.3.12 實習:reduceByKey (做法1)
5.3.13 實習:reduceByKey (做法2)
5.4 Multiple key value pair RDDs transformations
5.4.1 Join
5.4.1.1 實習:Join
5.4.1.2 實習:leftOuterJoin
5.4.1.3 實習:rightOuterJoin
5.4.2 subtractByKey
5.4.2.1 實習:subtractByKey
5.5 Key Value RDD actions
5.5.1 first
5.5.1.1 實習:first (Basic)
5.5.1.2 實習:first (key)
5.5.1.3 實習:first (value)
5.5.1.4 實習:取出單一項目的 key
5.5.1.5 實習:取出單一項目的 value
5.5.2 take
5.5.2.1 實習:take (Basic)
5.5.2.2 實習:take (keys)
5.5.2.3 實習:take (values)
5.5.3 countByKey
5.5.3.1 實習:countByKey
5.5.4 countByValue
5.5.4.1 實習:countByValue
5.5.5 collectAsMap
5.5.5.1 實習:collectAsMap (第一部份 [with bugs])
5.5.5.2 實習:bug fix with reduceByKey
5.5.6 在 Pair RDD 中從 key 取得 value(s)
5.5.6.1 實習:在 Pair RDD 中從 key 取得 value(s)
5.6 Partition
5.6.1 實習:Partition
5.7 RDD Persistence
5.7.1 實習:從檔案建立 RDD
5.7.2 實習:RDD Persistence
5.8 RDD transformation 的懶惰 (laziness)
5.8.1 實習:感受 RDD transformation 的懶惰 (laziness)
5.8.2 懶惰 (laziness) 的好處
5.9 Aggregate
5.9.1 實習:Aggregate
5.10 綜合例子
5.10.1 Word Count
5.10.1.1 實習:Word Count
5.10.2 π estimation
5.10.2.1 π estimation 背後的數學理論
5.10.2.1.1 圓形、正方形及畢氏定理
5.10.2.1.2 π 與圓形、正方形及畢氏定理的關係
5.10.2.2 實習:π estimation by Apache Spark
5.10.3 分析Apache access_log
5.10.3.1 實習:Apache access_log

6 Apache Spark Cluster 安裝及設定 (多台伺服器)
6.1 Network topology (網絡接駁圖)
6.2 安裝 Apache Spark Cluster
6.2.1 Apache Spark Cluster 安裝流程圖
6.2.2 安裝 Apache Spark Cluster
6.2.2.1 DNS / host file
6.2.2.2 SSH connections
6.2.2.3 安裝 Java, Scala 和Apache Spark
6.2.2.4 設定 spark workers / slaves
6.2.2.5 設定 spark-env.sh
6.2.2.6 啟動 Apache Spark Cluster
6.3 使用 Apache Spark Cluster

7 Spark SQL
7.1 Spark SQL 介紹
7.2 DataFrame
7.2.1 DataFrame
7.2.2 JSON (JavaScript Object Notation)
7.2.3 實習:JSON 與 DataFrame
7.2.3.1 實習:建立 JSON 檔案
7.2.3.2 實習:From JSON to DataFrame 並顯示整個 2D table
7.2.3.3 實習:From DataFrame to JSON
7.2.3.4 實習:顯示首一個 row 的資料
7.2.3.5 實習:顯示首 2 個 row 的資料
7.2.3.6 實習:顯示欄位內容
7.2.3.7 實習:顯示合共有多少筆資料
7.2.3.8 實習:過濾 (跟SQL statement 的 WHERE 相似)
7.2.3.9 實習:多重過濾
7.2.3.10 實習:排序 (順序)
7.2.3.11 實習:排序 (倒序)
7.2.3.12 實習:多重排序
7.2.3.13 實習:只顯示某一欄位的資料
7.2.3.14 實習:以樹狀顯示 Schema
7.2.4 實習:DataFrame 的aggregate functions 與其他常用的 functions
7.2.4.1 實習:事前準備
7.2.4.2 實習:max
7.2.4.3 實習:min
7.2.4.4 實習:sum
7.2.4.5 實習:mean
7.2.4.6 實習:distinct
7.2.5 由原始資料建立 DataFrame
7.2.5.1 實習:由原始資料建立 DataFrame (基本:第一部份)
7.2.5.2 實習:由原始資料建立 DataFrame (基本:第二部份)
7.2.5.3 實習:由原始資料建立 DataFrame (具 Scala class 概念)
7.3 RDD 與 DataFrame 的轉換
7.3.1 實習:CSV → Scala case class → RDD → DataFrame
7.3.1.1 實習:準備 CSV
7.3.1.2 實習:建立 Scala case class
7.3.1.3 實習:建立 RDD 再透過 RDD 建立 DataFrame
7.3.2 實習:DataFrame → RDD
7.3.2.1 實習:DataFrame → RDD (方法1)
7.3.2.2 實習:DataFrame → RDD (方法2 [較好])
7.3.2.3 實習:DataFrame → Dataset
7.4 TempView 與 SQL statements
7.4.1 實習:TempView 與 SQL statements
7.5 Parquet files (Apache Parquet)
7.5.1 Apache Parquet 介紹
7.5.2 實習:寫入 Parquet files
7.5.3 實習:讀取 Parquet files
7.5.4 實習:JSON → Parquet files

8 Apache Spark 機器學習 (Machine Learning)
8.1 背景知識
8.1.1 Vectors [org.apache.spark.mllib.linalg.Vector]
8.1.1.1 實習:Vectors [org.apache.spark.mllib.linalg.Vector]
8.1.2 LabeledPoint [org.apache.spark.mllib.regression.LabeledPoint]
8.1.2.1 實習:LabeledPoint [org.apache.spark.mllib.regression.LabeledPoint]
8.1.3 RDD → VectorRDD
8.1.3.1 實習:RDD → VectorRDD
8.1.4 Statistics [org.apache.spark.mllib.stat.Statistics]
8.1.4.1 實習:Statistics [org.apache.spark.mllib.stat.Statistics]
8.1.4.1.1 實習:事前準備
8.1.4.1.2 實習:count
8.1.4.1.3 實習:max
8.1.4.1.4 實習:min
8.1.4.1.5 實習:mean
8.1.4.1.6 實習:numNonzeros
8.1.4.1.7 實習:variance
8.2 向用戶推薦用戶可能有興趣的產品 [org.apache.spark.mllib.recommendation.ALS]
8.2.1 ALS (Alternating Least Squares) 推薦演算法介紹
8.2.1.1 用戶評價 / 點擊率
8.2.2 實習:推薦演算法小試牛刀
8.2.2.1 實習:建立模型
8.2.2.2 實習:向某一客戶推薦 5 個產品
8.2.2.3 實習:了解客戶對某一產品的喜歡程度
8.2.2.4 實習:了解有甚麼潛在客戶喜歡某一產品
8.2.3 實習:透過大數據向用戶推薦用戶可能有興趣的產品
8.2.3.1 實習:事前準備
8.2.3.2 實習:建立模型
8.2.3.3 實習:向客戶 88 推薦 10 個產品
8.2.3.4 實習:向客戶 88 對產品 800 的潛在評價
8.2.3.5 實習:列出 10 位潛在客戶 “應該” 喜歡產品 800
8.3 從文章有效地選出關鍵字 [org.apache.spark.mllib.feature.{HashingTF, IDF}]
8.3.1 is, am, are 等是否關鍵字?
8.3.2 TF-IDF (Term Frequency–Inverse Document Frequency)
8.3.2.1 TF (Term Frequency)
8.3.2.2 IDF (Inverse Document Frequency)
8.3.3 實習:從文章有效地選出關鍵字
8.3.3.1 實習:事前準備
8.3.3.2 實習:Term Frequency (TF) vectors
8.3.3.3 實習:Inverse Document Frequency (IDF) model
8.3.3.4 實習:TD-IDF RDD[Vector]
8.3.3.5 實習:分析結果
8.4 理解消費者會同時購買甚麼產品
8.4.1 Beer and diapers (啤酒和尿布) / Affinity analysis
8.4.2 FP-Growth 演算法
8.4.2.1 步驟 1:基本數據處理
8.4.2.2 步驟 2:製作 FP Tree
8.4.2.3 步驟 3:數據挖掘:例子1:購買產品 p 會同時購買甚麼產品
8.4.2.4 步驟 4:數據挖掘:例子2:購買產品 m 會同時購買甚麼產品
8.4.2.5 步驟 5:數據挖掘:例子3:購買產品 b 會同時購買甚麼產品
8.4.3 實習:理解消費者會同時購買甚麼產品
8.4.3.1 實習:基本數據處理
8.4.3.2 實習:建立模型
8.4.3.3 實習:分析結果
8.4.3.3.1 實習:列出所有關聯
8.4.3.3.2 實習:只列出產品 p 跟其化產品的關聯 [呼應章節 8.4.2.3]
8.4.3.3.3 實習:只列出產品 m 跟其化產品的關聯 [呼應章節 8.4.2.4]
8.4.3.3.4 實習:只列出產品 b 跟其化產品的關聯 [呼應章節 8.4.2.5]
8.5 製作決策樹 (Decision tree)
8.5.1 決策樹 (Decision tree)
8.5.1.1 簡單的情景
8.5.1.2 複雜一點的情景
8.5.2 實習:製作決策樹 (Binary Decision tree)
8.5.2.1 實習:製作決策樹 (Binary Decision tree):一個因素
8.5.2.1.1 實習:基本數據處理
8.5.2.1.2 實習:建立模型
8.5.2.1.3 實習:分析結果
8.5.2.2 實習:製作決策樹 (Binary Decision tree):有部份 “無用” 的因素
8.5.2.2.1 實習:基本數據處理
8.5.2.2.2 實習:建立模型
8.5.2.2.3 實習:分析結果
8.5.2.3 實習:製作決策樹 (Binary Decision tree):多個因素
8.5.2.3.1 實習:基本數據處理
8.5.2.3.2 實習:建立模型
8.5.2.3.3 實習:分析結果
8.6 將數據分類
8.6.1 KMean / Lloyd-Forgy / Forgy's algorithm
8.6.2 實習:將數據分類
8.6.2.1 實習:基本數據處理
8.6.2.2 實習:建立模型
8.6.2.3 實習:分析結果
8.7 線性回歸 (Linear Regression) 分析
8.7.1 線性回歸分析
8.7.1.1 實習:線性回歸分析
8.7.1.1.1 實習:基本數據處理
8.7.1.1.2 實習:建立模型
8.7.1.1.3 實習:分析結果
8.7.2 多元線性回歸分析
8.7.2.1 實習:多元線性回歸分析 (學習微調 step size)
8.7.2.1.1 實習:基本數據處理
8.7.2.1.2 實習:建立模型
8.7.2.1.3 實習:分析結果

9 Appendix: Graph-parallel computation by GraphX
9.1 Graph-parallel computation
9.1.1 Graphs
9.1.1.1 Vertex
9.1.1.2 Edge
9.1.1.3 Triplet
9.1.1.3.1 組合
9.1.1.3.2 方向性
9.1.1.3.3 多重關係
9.2 實習:Graph-parallel computation by GraphX
9.2.1 實習:事前準備
9.2.2 實習:建立 Vertex
9.2.3 實習:建立 Edge
9.2.4 實習:建立 Graph
9.2.5 實習:分析 Graph
9.2.5.1 實習:分析 Graph:從 Graph 中分析 Vertex:例子1
9.2.5.2 實習:分析 Graph:從 Graph 中分析 Vertex:例子2
9.2.5.3 實習:分析 Graph:從 Graph 中分析 Edge
9.2.5.4 實習:分析 Graph:從 Graph 中分析 Vertex 和 Edge:列出所有關係
9.2.5.5 實習:分析 Graph:從 Graph 中分析 Vertex 和 Edge:多重分析


 

更多綜合課程
  攝影課程
  • 攝影初級
  • 攝影中級 (風景專題)
  英文課程
  • IPA 拼音:級別 1 2 3 4
  普通話課程
  • 基礎普通話拼音 (免費)
  • 進階普通話拼音
  • 普通話會話:級別 1 2 3
  西班牙語文課程
  • 級別 1 2 3
  中醫課程
  • 濕疹與皮膚敏感病
  • 暗瘡與色斑 | 鼻敏感與感冒
  • 脫髮與白髮 | 從五官看健康
  風水命理課程
  • 紫微斗數:級別 1 2 3
  • 子平八字:級別 1 2 3
  • 八字風水:級別 1 2 3
  • 奇門遁甲:級別 1 2 3